/* e-PGM · "Meu atendimento" do Assistente do Núcleo Fiscal, em quadro.
 *
 * Carregada depois das demais folhas de quadro (núcleos, protocolo, painel,
 * diligências e consultivo), cujas peças reaproveita: colunas, cartões,
 * filtros de um clique, "Continuar do próximo", coluna recolhível e o
 * seletor das telas estreitas. Aqui ficam só a cor de cada etapa, o topo com
 * o balcão (CPF/CNPJ e "Novo atendimento"), o painel do contribuinte, o
 * cartão do requerimento, a Lista e os retoques da ficha e do cadastro do
 * atendimento fiscal. Usa só os tokens de vidro.css, nos dois temas. Sem
 * esta folha a tela continua legível, no desenho do painel. */

/* ---------- cor de cada etapa ---------- */

.assist-pagina {
  --assist-azul: var(--acento); --assist-azul-claro: var(--acento-suave);
  --assist-ambar: #b76e00; --assist-ambar-claro: rgba(214, 139, 0, .13);
  --assist-anil: #4f46e5; --assist-anil-claro: rgba(79, 70, 229, .11);
  --assist-verde: var(--verde); --assist-verde-claro: color-mix(in srgb, var(--verde) 13%, transparent);
  --assist-cinza: #7a7d85; --assist-cinza-claro: rgba(118, 118, 128, .12);
  --assist-teal: #0b7285; --assist-teal-claro: rgba(11, 114, 133, .1);
}
html[data-tema="escuro"] .assist-pagina {
  --assist-ambar: #f5b942; --assist-ambar-claro: rgba(245, 185, 66, .15);
  --assist-anil: #a5b4fc; --assist-anil-claro: rgba(165, 180, 252, .16);
  --assist-cinza: #a1a4ad; --assist-cinza-claro: rgba(255, 255, 255, .08);
  --assist-teal: #5ccfe6; --assist-teal-claro: rgba(92, 207, 230, .14);
}
.assist-pagina [data-coluna] { --cor-coluna: var(--assist-azul); --cor-coluna-claro: var(--assist-azul-claro); }
.assist-pagina [data-coluna="complementacao"] { --cor-coluna: var(--assist-ambar); --cor-coluna-claro: var(--assist-ambar-claro); }
.assist-pagina [data-coluna="procurador"] { --cor-coluna: var(--assist-anil); --cor-coluna-claro: var(--assist-anil-claro); }
.assist-pagina [data-coluna="decididos"] { --cor-coluna: var(--assist-verde); --cor-coluna-claro: var(--assist-verde-claro); }
.assist-pagina [data-coluna="concluidos"] { --cor-coluna: var(--assist-cinza); --cor-coluna-claro: var(--assist-cinza-claro); }
.assist-pagina :is(.quadro-coluna, .assist-lista-grupo) { --cor-nucleo: var(--cor-coluna); --cor-nucleo-claro: var(--cor-coluna-claro); }

/* ---------- página e topo ---------- */

.assist-pagina { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; min-width: 0; }
.assist-pagina > * { min-width: 0; margin: 0; }
.assist-corpo { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; min-width: 0; }
.assist-corpo > * { min-width: 0; margin: 0; }
.assist-corpo .fila-filtro-resumo { margin: -6px 0 0; }
.assist-carregando { margin: 8px 2px; color: var(--tinta-fraca); font-size: 13.5px; }

.assist-topo { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 14px 28px; }
.assist-topo-texto { flex: 1 1 420px; min-width: 0; }
.assist-topo-rotulo {
  display: flex; align-items: center; gap: 9px; margin: 0 0 5px; color: var(--tinta-terciaria);
  font-size: 11.5px; font-weight: 720; letter-spacing: .06em; text-transform: uppercase;
}
.assist-topo-rotulo .selo-nucleo { letter-spacing: 0; text-transform: none; }
.assist-topo-texto h2 { margin: 0; font-size: 24px; font-weight: 700; letter-spacing: -.026em; }
/* Frase do dia: uma frase só; cada número leva à sua coluna. */
.assist-frase { margin: 8px 0 0; max-width: 84ch; color: var(--tinta-fraca); font-size: 14px; line-height: 1.75; }
.assist-frase .painel-dia-parte, .assist-frase .painel-dia-parte:first-child {
  margin: 0 -3px; padding: 1px 3px; border-radius: 6px; background: transparent; color: var(--tinta-fraca);
}
.assist-frase .painel-dia-parte:hover { background: var(--controle-fundo); color: var(--tinta); }
.assist-frase .painel-dia-parte + .painel-dia-parte::before { content: none; }
.assist-frase .painel-dia-parte strong { font-size: 15px; }
.assist-frase-espera { color: var(--tinta-terciaria); }
.assist-frase-espera .painel-dia-parte { color: var(--tinta-terciaria); }
.assist-frase-espera .painel-dia-parte strong { color: var(--tinta-fraca); font-size: 14px; }

/* Balcão: CPF/CNPJ do contribuinte e o botão grande de novo atendimento. */
.assist-balcao {
  display: flex; align-items: flex-end; gap: 10px; flex: 1 1 560px; max-width: 700px; min-width: 0; padding: 12px 12px 12px 14px;
  border: 1px solid var(--vidro-contorno); border-radius: 18px; background: var(--superficie-cartao); box-shadow: var(--sombra-cartao);
}
.assist-balcao-campo { flex: 1 1 auto; min-width: 0; }
.assist-balcao .campo { margin: 0; }
#conteudo .assist-balcao .campo input {
  height: 48px; padding-left: 14px; border-radius: 12px; font-size: 15.5px; letter-spacing: .015em;
}
.assist-balcao input::-webkit-search-cancel-button { display: none; }
.assist-balcao .documento-pessoa-estado { right: 14px; }
/* Sem estado a mostrar, o campo usa a largura toda (o espaço à direita é do
 * aviso "CPF válido" ou "dígitos verificadores não conferem"). */
:is(.assist-balcao, .assist-novo-cartao) .campo-documento-pessoa:not(.doc-valido, .doc-invalido, .doc-incompleto) input {
  padding-right: 14px !important;
}
.assist-novo {
  display: inline-flex; flex: none; align-items: center; gap: 11px; min-height: 48px; padding: 6px 18px 6px 8px;
  border: 0; border-radius: 13px; background: var(--acento); color: #fff; font: inherit; text-align: left;
  cursor: pointer; white-space: nowrap;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), 0 1px 2px rgba(10, 102, 214, .3), 0 8px 18px -10px rgba(10, 102, 214, .6);
  transition: background-color .15s ease, transform .1s ease;
}
.assist-novo:hover { background: var(--acento-forte); }
.assist-novo:active { transform: scale(.985); }
.assist-novo:focus-visible { outline: none; box-shadow: var(--anel-foco); }
.assist-novo-mais {
  display: grid; flex: none; place-items: center; width: 34px; height: 34px; border-radius: 10px;
  background: rgba(255, 255, 255, .2); font-size: 22px; font-weight: 500; line-height: 1;
}
.assist-novo-texto { display: flex; flex-direction: column; gap: 1px; line-height: 1.2; }
.assist-novo-texto strong { font-size: 15px; font-weight: 680; letter-spacing: -.01em; }
.assist-novo-texto small { font-size: 11.5px; font-weight: 520; opacity: .86; font-variant-numeric: tabular-nums; }

/* Contribuinte identificado pelo documento: pedidos anteriores e o novo. */
.assist-contribuinte {
  position: relative; display: grid; gap: 10px; padding: 14px 16px 14px 20px; overflow: hidden;
  border: 1px solid var(--vidro-contorno); border-radius: 16px; background: var(--superficie-cartao); box-shadow: var(--sombra-cartao);
}
.assist-contribuinte[hidden] { display: none; }
.assist-contribuinte::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--cor-coluna); }
.assist-contribuinte-cabeca { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 20px; }
.assist-contribuinte-cabeca > .acoes-linha { margin: 0; }
.assist-contribuinte-quem { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.assist-contribuinte-quem strong { font-size: 16.5px; font-weight: 700; letter-spacing: -.012em; overflow-wrap: anywhere; }
.assist-contribuinte-quem .recuo { font-size: 12.5px; }
.assist-contribuinte-lista { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.assist-contribuinte-lista > li { min-width: 0; max-width: 100%; }
.assist-anterior {
  display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 9px; max-width: 100%; min-height: 36px; padding: 5px 12px 5px 10px;
  border: 1px solid var(--linha); border-radius: 11px; background: var(--papel); color: var(--tinta);
  font: inherit; font-size: 12.5px; text-align: left; cursor: pointer;
  transition: border-color .15s ease, background-color .15s ease;
}
.assist-anterior:hover { border-color: var(--cor-coluna); }
.assist-anterior:focus-visible { outline: none; border-color: var(--acento); box-shadow: var(--anel-foco); }
.assist-anterior-id { display: inline-flex; align-items: center; gap: 7px; font-weight: 700; font-variant-numeric: tabular-nums slashed-zero; }
.assist-anterior-id::before {
  content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--cor-coluna); box-shadow: 0 0 0 3px var(--cor-coluna-claro);
}
.assist-anterior-fase { color: var(--cor-coluna); font-weight: 650; }
.assist-anterior-cat, .assist-anterior-data { color: var(--tinta-fraca); }
.assist-anterior-data { font-variant-numeric: tabular-nums; }
.assist-contribuinte-mais { margin: -2px 0 0; font-size: 12px; }

/* ---------- barra: filtros ---------- */

.assist-pagina .fila-filtro-comunicar::before { background: var(--assist-verde); }
.assist-pagina .fila-filtro-limite::before { background: var(--vermelho); box-shadow: 0 0 0 2px var(--vermelho-claro); }
.assist-pagina .fila-filtro-cda::before { background: var(--nucleo-fiscal); border-radius: 2px; }
.assist-pagina .quadro-proximo .fila-proximo-alvo { max-width: 260px; }

/* ---------- quadro: colunas e cartões ---------- */

/* Cabeçalho da coluna: título e total; embaixo, o que se faz ali e os
 * alertas com a palavra (a coluna estreita não esconde o rótulo). */
.assist-pagina .quadro-coluna-topo {
  display: grid; grid-template-columns: minmax(0, max-content) auto minmax(0, 1fr); align-items: center; gap: 3px 9px;
}
.assist-pagina .quadro-coluna-topo > .quadro-coluna-total { justify-self: start; }
.assist-coluna-linha {
  display: flex; grid-column: 1 / -1; align-items: center; gap: 8px; min-width: 0; min-height: 22px; padding-left: 18px; box-sizing: border-box;
}
.assist-coluna-sub {
  flex: 1 1 auto; min-width: 0; overflow: hidden; color: var(--tinta-terciaria);
  font-size: 11.5px; font-weight: 560; text-overflow: ellipsis; white-space: nowrap;
}
.assist-coluna-linha .quadro-pilulas { flex: none; flex-wrap: nowrap; margin-left: auto; }
.assist-coluna-linha .quadro-pilula { height: 20px; padding: 0 8px; font-size: 11px; }
.assist-coluna-linha .quadro-pilula-rotulo {
  position: static; width: auto; height: auto; overflow: visible; clip-path: none; white-space: nowrap;
}
.assist-coluna-linha .quadro-pilulas:empty { display: none; }
.quadro-pilula.assist-pilula-alerta { color: var(--assist-ambar); background: var(--assist-ambar-claro); }
.assist-pagina .quadro-pilula.destaque { color: var(--assist-verde); background: var(--assist-verde-claro); }

@media (min-width: 1280px) {
  .quadro-assistencia[data-colunas="5"] { --quadro-por-linha: 5; }
}

.assist-cartao { grid-template-columns: minmax(0, 1fr); gap: 2px; }
.assist-cartao .quadro-cartao-cabeca { flex-wrap: wrap; row-gap: 2px; }
.assist-cartao .quadro-cartao-fim { margin-left: auto; }
.assist-cartao-nome {
  margin: 2px 0 0; overflow: hidden; color: var(--tinta); font-size: 14px; font-weight: 640;
  letter-spacing: -.006em; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap;
}
.assist-cartao-sub {
  display: flex; align-items: baseline; gap: 6px; min-width: 0; margin: 0; overflow: hidden;
  color: var(--tinta-terciaria); font-size: 12px; line-height: 1.45; white-space: nowrap;
}
.assist-cartao-categoria { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.assist-cartao-categoria::before { content: "·"; margin-right: 6px; color: var(--tinta-terciaria); }
.assist-doc { flex: none; font-variant-numeric: tabular-nums; letter-spacing: .01em; }
.assist-doc-falta { color: var(--assist-ambar); font-weight: 600; }
.assist-cartao-pedido {
  margin: 5px 0 1px; padding: 6px 9px; border-radius: 8px; background: var(--assist-ambar-claro);
  color: var(--tinta); font-size: 12.5px; line-height: 1.42; overflow-wrap: anywhere;
}
.assist-cartao-pedido-texto { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.assist-cartao-pedido b { color: var(--assist-ambar); font-weight: 700; }
.assist-cartao-passo {
  display: -webkit-box; margin: 3px 0 0; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  color: var(--tinta-fraca); font-size: 12px; line-height: 1.42; overflow-wrap: anywhere;
}
.assist-cartao-passo::before { content: "→ "; }
.assist-cartao-passo.minha-vez { color: var(--azul-interativo); font-weight: 600; }
.assist-cartao.urgente .assist-cartao-passo { color: var(--vermelho); }

/* Rodapé: etiquetas em fluxo; a ação principal sempre à vista, no fim. */
.assist-cartao-rodape { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 6px; }
.assist-cartao-chips { display: flex; flex: 1 1 auto; flex-wrap: wrap; align-items: center; gap: 5px; min-width: 0; }
.assist-cartao-chips > .quadro-proximo-selo { order: -1; }
.assist-cartao-chips:empty { display: none; }
.assist-cartao .quadro-cartao-acoes {
  position: static; flex: 0 1 auto; min-width: 0; margin-left: auto; padding: 0; background: none; opacity: 1;
}
.assist-cartao .quadro-acao-principal {
  display: block; min-width: 0; overflow: hidden; background: var(--acento-suave); color: var(--azul-interativo);
  box-shadow: none; text-overflow: ellipsis;
}
/* Coluna estreita (quatro lado a lado em 1100 px): botão mais enxuto. */
@container quadro-coluna (max-width: 260px) {
  .assist-cartao .quadro-acao-principal { padding: 4px 9px; font-size: 12px; }
  .assist-cartao-nome { font-size: 13.5px; }
}
.assist-cartao:is(:hover, :focus-within, .proximo) .quadro-acao-principal {
  background: var(--acento); color: #fff; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), 0 1px 2px rgba(10, 102, 214, .3);
}
.assist-pagina .quadro-chip { max-width: 100%; }
.quadro-chip.assist-resultado { font-weight: 650; }
.quadro-chip.assist-resultado.tom-deferido { background: var(--verde-claro); color: var(--verde); }
.quadro-chip.assist-resultado.tom-deferido_parcialmente { background: var(--assist-teal-claro); color: var(--assist-teal); }
.quadro-chip.assist-resultado.tom-indeferido { background: var(--vermelho-claro); color: var(--vermelho); }
.quadro-chip.assist-alerta { background: var(--assist-ambar-claro); color: var(--assist-ambar); font-weight: 650; }
.quadro-chip.assist-docs { background: transparent; padding: 0 2px; color: var(--tinta-terciaria); }
.quadro-chip.assist-cda { font-variant-numeric: tabular-nums; }

/* ---------- lista: as mesmas etapas, uma linha por requerimento ---------- */

.assist-lista { display: grid; gap: 14px; }
.assist-lista-grupo {
  overflow: hidden; border: 1px solid var(--vidro-contorno); border-radius: 16px;
  background: var(--superficie-cartao); box-shadow: var(--sombra-suave);
}
.assist-lista-topo {
  display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; padding: 12px 16px 10px;
  border-bottom: 1px solid var(--linha); box-shadow: inset 0 3px 0 var(--cor-coluna);
}
.assist-lista-topo h3 { display: flex; align-items: center; gap: 9px; margin: 0; font-size: 14.5px; font-weight: 680; letter-spacing: -.012em; }
.assist-lista-topo h3::before {
  content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--cor-coluna); box-shadow: 0 0 0 3px var(--cor-coluna-claro);
}
.assist-lista-topo .assist-coluna-sub { flex: 0 1 auto; margin: 0; }
.assist-lista-itens { margin: 0; padding: 0; list-style: none; }
.assist-linha {
  display: grid; grid-template-columns: 176px minmax(0, 1.05fr) minmax(0, 1.45fr) 220px 112px 196px;
  align-items: center; gap: 6px 14px; padding: 10px 16px; border-top: 1px solid var(--linha); cursor: pointer;
  transition: background-color .15s ease;
}
.assist-linha:first-child { border-top: 0; }
.assist-linha:hover { background: var(--controle-fundo); }
.assist-linha.proximo { background: var(--acento-suave); }
.assist-linha.urgente { box-shadow: inset 3px 0 0 var(--vermelho); }
.assist-linha-id { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; min-width: 0; font-variant-numeric: tabular-nums slashed-zero; }
.assist-linha-id .dado-copiavel-texto { font-size: 13.5px; font-weight: 700; color: var(--tinta); }
.assist-linha-quem { display: flex; flex-direction: column; min-width: 0; }
.assist-linha-quem strong { overflow: hidden; font-size: 13.5px; font-weight: 640; text-overflow: ellipsis; white-space: nowrap; }
.assist-linha-quem small { overflow: hidden; color: var(--tinta-terciaria); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.assist-linha-passo {
  display: -webkit-box; min-width: 0; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  color: var(--tinta-fraca); font-size: 12.5px; line-height: 1.42;
}
.assist-linha-passo.minha-vez { color: var(--azul-interativo); font-weight: 600; }
.assist-linha.urgente .assist-linha-passo { color: var(--vermelho); }
/* Etiquetas e ação: colunas próprias no computador; uma linha no celular. */
.assist-linha-rodape { display: contents; }
.assist-linha-id { order: 1; } .assist-linha-quem { order: 2; } .assist-linha-passo { order: 3; }
.assist-linha-chips { order: 4; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 5px; min-width: 0; }
.assist-linha > .quadro-dias { order: 5; justify-self: end; }
.assist-linha-acao { order: 6; justify-self: end; white-space: nowrap; }
.assist-linha .botao-copiar, html[data-tema="escuro"] .assist-linha .botao-copiar {
  width: 22px; height: 22px; border-color: transparent; background: transparent; color: var(--tinta-terciaria); font-size: 12px; opacity: 0;
}
.assist-linha:is(:hover, :focus-within) .botao-copiar, .assist-linha .botao-copiar.copiado { opacity: 1; }

/* ---------- ficha e cadastro do atendimento ---------- */

.assist-trilha { display: flex; align-items: center; gap: 8px; min-width: 0; margin: 2px 0 16px; font-size: 13.5px; }
.assist-trilha-inicio {
  display: inline-flex; flex: none; align-items: center; gap: 7px; min-height: 34px; padding: 5px 13px 5px 11px;
  border: 1px solid var(--linha-forte); border-radius: 999px; background: var(--superficie-cartao); color: var(--azul-interativo);
  font: inherit; font-weight: 640; cursor: pointer; transition: background-color .15s ease, border-color .15s ease;
}
.assist-trilha-inicio:hover { border-color: var(--acento); background: var(--acento-suave); }
.assist-trilha-inicio:focus-visible { outline: none; box-shadow: var(--anel-foco); }
.assist-trilha-sep { color: var(--tinta-terciaria); }
.assist-trilha-atual {
  min-width: 0; overflow: hidden; color: var(--tinta-fraca); font-weight: 620; text-overflow: ellipsis; white-space: nowrap;
  font-variant-numeric: tabular-nums slashed-zero;
}
.assist-fase { display: flex; align-items: baseline; gap: 8px; margin: 2px 0 0; color: var(--tinta-fraca); font-size: 12.5px; line-height: 1.5; }
.assist-fase .bolinha { flex: none; width: 7px; height: 7px; background: var(--tinta-terciaria); transform: translateY(-1px); }
.assist-fase.alerta { color: var(--vermelho); font-weight: 560; }
.assist-fase.alerta .bolinha { background: var(--vermelho); }
.zona-soltar.realce-juntada { border-color: var(--acento); background: var(--acento-suave); box-shadow: 0 0 0 4px var(--acento-suave); }
.assist-novo-cartao .cartao-topo { align-items: center; }
/* Documento, nome, tipo e CDA numa linha; o pedido embaixo, inteiro. */
.assist-novo-cartao .formulario-requerimento {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1.4fr) minmax(0, 1.25fr) minmax(0, 1fr); align-items: end; column-gap: 16px;
}
.assist-novo-cartao .formulario-requerimento > .campo { min-width: 0; }
.assist-novo-cartao .campo-documento-pessoa .documento-pessoa-sugestao { position: relative; }
.assist-novo-nota { margin: 0 0 12px; }
.assist-novo-rodape { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 18px; margin-top: 14px; }
.assist-novo-rodape .recuo { flex: 1 1 360px; margin: 0; }
.assist-novo-rodape .acao.principal { min-height: 42px; padding-inline: 20px; }

/* ---------- telas menores ---------- */

@media (max-width: 1099.98px) {
  .assist-balcao { flex-basis: 100%; max-width: none; }
  .assist-novo-cartao .formulario-requerimento { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .assist-linha {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "id dias" "quem quem" "passo passo" "rodape rodape";
  }
  .assist-linha-id { grid-area: id; }
  .assist-linha > .quadro-dias { grid-area: dias; }
  .assist-linha-quem { grid-area: quem; }
  .assist-linha-passo { grid-area: passo; }
  .assist-linha-rodape { grid-area: rodape; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; min-width: 0; }
  .assist-linha-chips { flex: 1 1 auto; justify-content: flex-start; }
  .assist-linha-acao { margin-left: auto; }
}
@media (max-width: 640px) {
  /* Seletor das colunas desliza; a borda esmaecida mostra que há mais. */
  .quadro-assistencia .quadro-seletor {
    -webkit-mask-image: linear-gradient(to right, #000 86%, transparent); mask-image: linear-gradient(to right, #000 86%, transparent);
  }
  .assist-topo { gap: 12px; }
  .assist-topo-texto { flex-basis: 100%; }
  .assist-topo-texto h2 { font-size: 21px; }
  .assist-balcao { flex-direction: column; align-items: stretch; padding: 12px; border-radius: 16px; }
  .assist-novo { justify-content: center; }
  .assist-contribuinte { padding: 12px 12px 12px 16px; }
  .assist-contribuinte-cabeca > .acoes-linha { width: 100%; }
  .assist-contribuinte-cabeca > .acoes-linha > .acao.principal { flex: 1 1 auto; }
  .assist-contribuinte-lista > li { width: 100%; }
  .assist-anterior { width: 100%; }
  .assist-pagina .quadro-proximo .fila-proximo-alvo { max-width: 55%; }
  .assist-trilha { margin-bottom: 12px; }
  .assist-novo-rodape .acao.principal { width: 100%; }
  .assist-novo-cartao .formulario-requerimento { grid-template-columns: minmax(0, 1fr); }
  .assist-linha { padding: 10px 12px; }
}
@media (max-width: 520px) {
  /* O estado do documento desce para baixo do campo (vidro.css); o campo
   * volta a usar a largura inteira. */
  .assist-balcao .documento-pessoa-estado { right: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .assist-novo, .assist-anterior, .assist-linha, .assist-trilha-inicio { transition: none; }
  .assist-novo:active { transform: none; }
}
