/* Base comum a todos os hubs e módulos (WebFerragens, Disbrafix e as próximas empresas).
   Fonte, escala de tamanhos, pesos, espaçamentos, raios, sombras, larguras e cores neutras ficam AQUI e são iguais para todas as empresas.
   O que muda por empresa está só em theme-<slug>.css: --brand-primary, --brand-accent, --brand-surface, --on-primary, --on-accent (mais logo e favicon).
   Única tipografia: Poppins (OFL, pesos 400/500/600, woff2 local; sem Google Fonts). Nenhum tamanho de fonte em px fora deste arquivo. */
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url(/_hub/static/fonts/poppins/Poppins-Regular.51526808.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url(/_hub/static/fonts/poppins/Poppins-Medium.d9ae8225.woff2) format("woff2")}
/* Fonte de reserva com as métricas da Poppins (Arial + size-adjust e overrides calculados do hhea/largura média): a troca não mexe no layout */
@font-face{font-family:"Poppins Fallback";font-weight:400;src:local("Arial"),local("Liberation Sans"),local("Arimo"),local("Helvetica");size-adjust:111.76%;ascent-override:93.95%;descent-override:31.32%;line-gap-override:8.95%}
@font-face{font-family:"Poppins Fallback";font-weight:500;src:local("Arial"),local("Liberation Sans"),local("Arimo"),local("Helvetica");size-adjust:112.62%;ascent-override:93.23%;descent-override:31.08%;line-gap-override:8.88%}
@font-face{font-family:"Poppins Fallback";font-weight:600;src:local("Arial Bold"),local("Arial-BoldMT"),local("Liberation Sans Bold"),local("Arimo Bold"),local("Helvetica Bold");size-adjust:106.14%;ascent-override:98.93%;descent-override:32.98%;line-gap-override:9.42%}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url(/_hub/static/fonts/poppins/Poppins-SemiBold.2ae64cbe.woff2) format("woff2")}

:root{
  --font:"Poppins","Poppins Fallback",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --font-mono:ui-monospace,Consolas,"Courier New",monospace;

  /* escala tipográfica */
  --fs-h1:1.75rem; --fs-h2:1.25rem; --fs-h3:1rem; --fs-body:.9375rem; --fs-label:.8125rem; --fs-small:.75rem;
  /* EXCEÇÃO documentada: telas de leitura a distância (bipagem no balcão). Só os 4 elementos abaixo podem usar --fs-display*; o teste barra qualquer outro uso.
     campo de leitura #scanInput = sm (48px); número da NF .r-nf = display (76px); cliente .r-cli = md (54px); número da prévia .pp-num = lg (84px). */
  --fs-display-sm:3rem; --fs-display:4.75rem; --fs-display-md:3.375rem; --fs-display-lg:5.25rem;
  --fw-regular:400; --fw-medium:500; --fw-semibold:600;
  --lh-h1:1.25; --lh-h2:1.3; --lh-h3:1.4; --lh-body:1.5; --lh-label:1.4; --lh-small:1.4;

  /* espaçamentos, raios, sombras, larguras e grade */
  --sp-1:.25rem; --sp-2:.5rem; --sp-3:.75rem; --sp-4:1rem; --sp-5:1.5rem; --sp-6:2rem;
  --radius-sm:8px; --radius:10px; --radius-lg:14px;
  --shadow-card:0 8px 22px #0000001a; --shadow-pop:0 20px 60px #0005; --shadow-toast:0 10px 30px #0006;
  --w-page:1320px; --w-narrow:520px; --w-form:370px; --h-logo:2rem; --h-bar:2.375rem;
  --grid-gap:.875rem; --grid-card:280px;

  /* cores neutras e de estado: iguais nas duas empresas, fora do tema */
  --text:#1F2328; --text-2:#5E6066;
  --line:#D6D6D6; --line-soft:#EEEEEF; --card:#FFFFFF;
  --ok:#1B7F3B; --ok-bg:#E3F4E9; --warn:#8A5A00; --warn-bg:#FFF2CC;
  --err:#B3261E; --err-bg:#FDECEA; --err-line:#F2B8B5;

  /* derivadas do tema (a empresa só define as variáveis de cor: brand-primary, brand-accent, brand-surface, on-primary, on-accent) */
  --bg:var(--brand-surface);
  --brand-primary-dark:color-mix(in srgb,var(--brand-primary) 75%,#000);
  --brand-accent-dark:color-mix(in srgb,var(--brand-accent) 82%,#000);
  --brand-accent-soft:color-mix(in srgb,var(--brand-accent) 12%,#fff);
  --brand-highlight:var(--brand-primary);   /* texto/ícone de destaque; o tema pode trocar (WebFerragens usa o vermelho, a Disbrafix não precisa) */
  --on-primary-soft:color-mix(in srgb,var(--on-primary) 80%,transparent);
  /* opcionais do tema (sem eles, WebFerragens e Disbrafix ficam como estavam):
     --brand-titulo = cor de TEXTO de h2, botão secundário e abas (padrão: --brand-primary; em tema de primária clara, defina uma cor escura);
     --bar-bg / --on-bar = fundo escuro e texto da barra do hub, do rodapé e do aviso de sessão; --tab-ativa-bg = fundo da aba ativa do cabeçalho */
  --brand-titulo:var(--brand-primary);
  --bar-bg:var(--brand-primary-dark); --on-bar:var(--on-primary);
  --on-bar-soft:color-mix(in srgb,var(--on-bar) 80%,transparent);
  --hover-sutil:color-mix(in srgb,var(--on-primary) 8%,transparent);   /* era #ffffff14 */
  --hover:color-mix(in srgb,var(--on-primary) 12%,transparent);        /* era #ffffff1f */
  --hover-bar:color-mix(in srgb,var(--on-bar) 12%,transparent);
  --tab-ativa-bg:var(--hover);
  --chrome-line:var(--brand-accent);   /* filete do cabeçalho e do rodapé (hub e módulos); o tema pode apontar para outra cor (ex.: a Pro, azul) */
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--lh-body);color:var(--text);background:var(--bg)}
h1{font-size:var(--fs-h1);font-weight:var(--fw-semibold);line-height:var(--lh-h1);margin:0 0 var(--sp-1)}
h2{font-size:var(--fs-h2);font-weight:var(--fw-semibold);line-height:var(--lh-h2);margin:0}
h3{font-size:var(--fs-h3);font-weight:var(--fw-medium);line-height:var(--lh-h3);margin:0}
p,td,li,dd{font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--lh-body)}
button,.btn,label,th,legend{font-size:var(--fs-label);font-weight:var(--fw-medium);line-height:var(--lh-label)}
input,select,textarea{font-family:var(--font);font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--lh-body)}
button,.btn{font-family:var(--font)}
small,.legenda,.ajuda,.sub-peq{font-size:var(--fs-small);font-weight:var(--fw-regular);line-height:var(--lh-small)}
code,pre,kbd,samp{font-family:var(--font-mono);font-size:var(--fs-small)}
.destaque,.numero-grande{font-size:var(--fs-h1);font-weight:var(--fw-semibold);line-height:var(--lh-h1)}
em,i{font-style:normal}
b,strong{font-weight:var(--fw-semibold)}
.logo-marca{height:var(--h-logo);width:auto;display:block}

/* Padrão do grupo (régua da Cotação Diretor, 04/11/2026): botão 7px 14px (34px de altura), raio 8, 13px/500; campo 7px 9px, raio 7;
   tabela 13px, th com fundo --line-soft (13px/500, 8px 9px), td 6px 9px; h2 da página 20px/600 (acima). Classes com mais especificidade mantêm o que já definem. */
button,.btn{padding:7px 14px;border-radius:var(--radius-sm)}
:where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea){padding:7px 9px;border-radius:7px}   /* :where = especificidade zero: classes dos módulos e do login mandam */
table{font-size:var(--fs-label)}
th,td{font-size:var(--fs-label)}
th{background:var(--line-soft);padding:8px 9px}
td{padding:6px 9px}
