/* ============================================================
   BASE — Web Interface Guidelines (Vercel)
   https://github.com/vercel-labs/web-interface-guidelines

   Piso de acessibilidade e usabilidade do Painel EMC, compartilhado por todas
   as telas. Tudo em :where() (especificidade zero): o visual de cada tela
   continua mandando — o que não dá para desligar sem querer é o foco.

   Auditado em 23/08/2026. Antes disto: `maximum-scale=1.0` impedindo ampliar a
   tela, `outline:none` em quatro lugares (o foco do teclado sumia), nenhum
   prefers-reduced-motion e nenhum overscroll-behavior.

   NÃO vale para /bemvindo/: aquilo é cópia byte a byte do PROMPT-ARQ e o
   ajuste de lá mora no emc.css.
   ============================================================ */
:root{ color-scheme:dark }

/* --marca existe em todas as telas; o fallback cobre quem ainda não tem. */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:2px solid var(--marca,#f26a1b);outline-offset:2px;border-radius:4px}
:where(a,button,input,select,textarea,summary,[tabindex]):focus:not(:focus-visible){outline:none}

:where(a,button,input,select,textarea,summary,[role="button"],[tabindex]){touch-action:manipulation}

/* Painel de obra é tabela de número: dígito de largura fixa para comparar. */
:where(table,td,th,.num,.valor,.total){font-variant-numeric:tabular-nums}

:where(h1,h2,h3,h4){text-wrap:balance;scroll-margin-top:4rem}
:where(p,li){text-wrap:pretty}

/* Nome de obra e de colaborador vêm de texto livre: podem ser enormes. */
:where(td,.cartao,.item,.linha){min-width:0;overflow-wrap:anywhere}

:where(dialog,.modal,.drawer,.pop,.overlay){overscroll-behavior:contain}

/* :where() como o resto: a versão sem ele (0,0,1) vinha DEPOIS do body{padding:24px} de cada
   tela e zerava o recuo lateral em todas — visto no celular em 14/09/2026. */
:where(body){padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important;scroll-behavior:auto !important}
}
