/* ============================================================================
   CAPANEMA — DESIGN SYSTEM v2 (tokens)
   Copiado literalmente de preview.html (:root + resets base), sem alterações.
   Fonte: C:\inetpub\wwwroot\portalcapanema\preview.html (linhas 14-66)
   ========================================================================== */
:root{
  /* Neutros — base fria, mais sofisticada que o cinza-concreto atual */
  --bg:#F6F5F3; --surface:#FFFFFF; --surface-2:#F3F2EF; --surface-3:#EAE8E3;
  --border:#E6E4DF; --border-strong:#D8D5CE;
  --ink-900:#0E1116; --ink-800:#181B20; --ink-700:#33383E; --ink-600:#4A4F56;
  --ink-500:#5C6066; --ink-400:#83878C; --ink-300:#AFACA7; --ink-200:#D8D5CE;

  /* Marca — vermelho herdado, levemente recalibrado */
  --brand:#B01828; --brand-600:#8F1220; --brand-700:#6E0E19; --brand-100:#F9E8EA; --brand-50:#FDF3F4;

  /* Semântico */
  --success:#2F7D63; --success-bg:#E7F3EE; --success-ink:#1F5C47;
  --warning:#9C7C3F; --warning-bg:#FBF4E4; --warning-ink:#7A5C1A;
  --danger:#B01828;  --danger-bg:#FDECEA;  --danger-ink:#8A1420;
  --info:#1F5FBF;    --info-bg:#EAF1FD;    --info-ink:#144A96;

  /* Casca escura (sidebar / topbar / login) */
  --shell-900:#0A0F14; --shell-800:#0E1620; --shell-700:#141F2A; --shell-600:#1B2733;
  --shell-line:rgba(255,255,255,.08); --shell-text:#EEF1F4; --shell-text-2:#8FA0AC; --shell-text-3:#5E6E79;

  /* Raio */
  --r-xs:6px; --r-sm:10px; --r-md:14px; --r-lg:18px; --r-xl:24px; --r-full:999px;

  /* Sombra — mais suave e em múltiplas camadas (estilo Linear/Stripe) */
  --shadow-1:0 1px 2px rgba(14,17,22,.04), 0 1px 8px rgba(14,17,22,.05);
  --shadow-2:0 2px 6px rgba(14,17,22,.05), 0 8px 24px rgba(14,17,22,.08);
  --shadow-3:0 8px 16px rgba(14,17,22,.06), 0 24px 64px rgba(14,17,22,.14);
  --shadow-brand:0 8px 24px rgba(176,24,40,.20);
  --shadow-inset:inset 0 0 0 1px rgba(14,17,22,.06);

  /* Tipografia */
  --font-display:'Manrope',sans-serif;
  --font-body:'Inter',system-ui,-apple-system,sans-serif;

  /* Motion */
  --ease:cubic-bezier(.2,.7,.3,1);
  --t-fast:.12s; --t-base:.18s; --t-slow:.32s;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
/* Garante que o atributo hidden vence qualquer display de classe
   (mesma proteção usada no portal real — public/index.html linha 30). */
[hidden]{display:none!important}
body{
  font-family:var(--font-body); background:var(--bg); color:var(--ink-900);
  line-height:1.55; -webkit-font-smoothing:antialiased; font-size:14px;
}
h1,h2,h3,h4{font-family:var(--font-display); font-weight:800; margin:0; color:var(--ink-900); letter-spacing:-.01em}
a{color:inherit; text-decoration:none}
button{font:inherit}
::selection{background:var(--brand-100)}
:focus-visible{outline:2.5px solid var(--brand); outline-offset:2px; border-radius:4px}

::-webkit-scrollbar{width:8px; height:8px}
::-webkit-scrollbar-thumb{background:var(--border-strong); border-radius:var(--r-full)}
::-webkit-scrollbar-track{background:transparent}
