/* ============================================================
   AC Solução — Design tokens
   Copiados literalmente de sistema-solucao-design-system.html.
   Tema escuro (padrão da marca) em :root e tema claro aplicado
   por escopo com a classe .theme-light (mesmos valores do DS).
   Não editar valores aqui sem atualizar o Design System.
   ============================================================ */
:root{
  color-scheme: dark;

  /* --- PRIMITIVOS: azuis oficiais da marca --- */
  --blue-900:#081738; --blue-800:#0D2754; --blue-700:#123A7A;
  --blue-600:#1740C4; --blue-500:#1D50F7; --blue-400:#4777FC;
  --blue-300:#6D99FC; --blue-200:#8DB6FF; --blue-100:#C0DAFF;
  --blue-050:#CDE1FE;

  /* --- PRIMITIVOS: neutros azulados --- */
  --ink-950:#050A16; --ink-900:#070E20; --ink-850:#0A1227;
  --ink-800:#0B1630; --ink-700:#122244; --ink-600:#1B2E55;
  --slate-500:#53647D; --slate-300:#9FB4D6;
  --gray-300:#CECECC; --gray-400:#B2B2B2; --gray-500:#999999;
  --white:#FFFFFF; --paper:#F8FAFB;

  /* --- PRIMITIVOS: paleta complementar oficial (uso pontual) --- */
  --accent-lime:#FFFF89; --accent-lime-soft:#FFFFBB;
  --accent-coral:#FF644A; --accent-coral-soft:#FF9688;
  --accent-violet:#CC76F4; --accent-violet-soft:#DBA0F9;
  --accent-mint:#8CF4C2; --accent-mint-soft:#9FFFCF;

  /* --- SEMÂNTICOS: superfícies --- */
  --bg:var(--ink-950);
  --surface-1:#070E20;
  --surface-2:#0A1227;
  --surface-3:#0E1A36;
  --surface-inset:rgba(5,10,22,.55);
  --surface-glass:rgba(13,30,66,.42);
  --surface-glass-strong:rgba(10,22,52,.72);
  --overlay:rgba(3,6,14,.72);

  /* --- SEMÂNTICOS: bordas e linhas --- */
  --border-subtle:rgba(141,182,255,.13);
  --border-strong:rgba(141,182,255,.28);
  --border-glass:rgba(192,218,255,.20);
  --divider:rgba(141,182,255,.10);
  --grid-line:rgba(109,153,252,.07);

  /* --- SEMÂNTICOS: texto --- */
  --text-primary:#FFFFFF;
  --text-secondary:#C0DAFF;
  --text-muted:#9FB4D6;
  --text-inverse:#081738;
  --text-brand:#8DB6FF;

  /* --- SEMÂNTICOS: marca e estados --- */
  --brand:var(--blue-500);
  --brand-hover:#3463FF;
  --brand-press:#1740C4;
  --brand-contrast:#FFFFFF;
  --brand-ghost:rgba(29,80,247,.14);
  --focus-ring:#8DB6FF;

  --success:#8CF4C2; --success-bg:rgba(140,244,194,.12);
  --warning:#FFFF89; --warning-bg:rgba(255,255,137,.12);
  --danger:#FF9688;  --danger-bg:rgba(255,100,74,.14);
  --info:#6D99FC;    --info-bg:rgba(109,153,252,.13);

  /* --- GRADIENTES --- */
  --grad-brand:linear-gradient(135deg,#1D50F7 0%,#4777FC 52%,#6D99FC 100%);
  --grad-deep:linear-gradient(160deg,#081738 0%,#0B1630 45%,#050A16 100%);
  --grad-surface:linear-gradient(180deg,rgba(29,80,247,.10) 0%,rgba(29,80,247,0) 70%);
  --grad-light:radial-gradient(60% 60% at 50% 0%,rgba(29,80,247,.38) 0%,rgba(29,80,247,0) 70%);
  --grad-glass:linear-gradient(135deg,rgba(192,218,255,.16) 0%,rgba(192,218,255,.03) 48%,rgba(29,80,247,.10) 100%);
  --grad-edge:linear-gradient(90deg,transparent,rgba(141,182,255,.55),transparent);
  --grad-text:linear-gradient(100deg,#FFFFFF 0%,#C0DAFF 48%,#4777FC 100%);

  /* --- SOMBRAS E ELEVAÇÃO --- */
  --shadow-1:0 1px 2px rgba(3,6,14,.5);
  --shadow-2:0 8px 24px -12px rgba(3,6,14,.8);
  --shadow-3:0 20px 48px -20px rgba(3,6,14,.9);
  --shadow-4:0 40px 90px -36px rgba(3,6,14,.95);
  --shadow-glass:0 24px 60px -28px rgba(3,6,14,.9), inset 0 1px 0 rgba(192,218,255,.16);
  --glow-brand:0 0 0 1px rgba(71,119,252,.35), 0 12px 40px -14px rgba(29,80,247,.75);
  --glow-soft:0 10px 50px -20px rgba(71,119,252,.55);

  /* --- VIDRO --- */
  --glass-blur:18px; --glass-blur-strong:28px; --glass-saturate:135%;

  /* --- TIPOGRAFIA --- */
  --font-primary:'Poppins', 'Segoe UI', system-ui, -apple-system, Arial, sans-serif;
  --font-mono:ui-monospace, 'SFMono-Regular', 'JetBrains Mono', Menlo, Consolas, monospace;
  --fw-thin:100; --fw-extralight:200; --fw-light:300; --fw-regular:400;
  --fw-medium:500; --fw-semibold:600; --fw-bold:700; --fw-extrabold:800; --fw-black:900;

  --fs-manifesto:clamp(2.75rem,7.2vw,6rem);
  --fs-display:clamp(2.25rem,5.4vw,4.25rem);
  --fs-h1:clamp(2rem,4.2vw,3.25rem);
  --fs-h2:clamp(1.625rem,3vw,2.5rem);
  --fs-h3:clamp(1.375rem,2.2vw,1.875rem);
  --fs-h4:clamp(1.1875rem,1.7vw,1.5rem);
  --fs-h5:1.125rem; --fs-h6:1rem;
  --fs-body-lg:clamp(1.0625rem,1.1vw,1.1875rem);
  --fs-body:1rem; --fs-body-sm:.9375rem;
  --fs-label:.875rem; --fs-caption:.8125rem; --fs-micro:.6875rem;

  --lh-tight:1.04; --lh-snug:1.18; --lh-heading:1.26; --lh-body:1.62; --lh-relaxed:1.75;
  --ls-manifesto:-.035em; --ls-display:-.025em; --ls-heading:-.015em;
  --ls-body:0; --ls-label:.02em; --ls-eyebrow:.18em;
  --measure:65ch; --measure-narrow:52ch;

  /* --- ESPAÇAMENTO (base 4) --- */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:20px; --sp-6:24px;
  --sp-8:32px; --sp-10:40px; --sp-12:48px; --sp-16:64px; --sp-20:80px;
  --sp-24:96px; --sp-32:128px;

  /* --- RAIO --- */
  --radius-xs:6px; --radius-sm:10px; --radius-md:14px; --radius-lg:20px;
  --radius-xl:28px; --radius-2xl:40px; --radius-pill:999px;
  --radius-card:var(--radius-lg); --radius-field:var(--radius-md); --radius-button:var(--radius-pill);

  /* --- BORDA --- */
  --bw-hairline:1px; --bw-regular:1.5px; --bw-strong:2px;

  /* --- LAYOUT --- */
  --container-max:1240px; --container-wide:1440px; --container-text:720px;
  --gutter:clamp(16px,4vw,40px); --grid-cols:12; --grid-gap:clamp(16px,2vw,24px);
  --sidebar-w:264px;
  --bp-sm:480px; --bp-md:768px; --bp-lg:1024px; --bp-xl:1280px;

  /* --- MOTION --- */
  --dur-instant:120ms; --dur-fast:200ms; --dur-standard:320ms;
  --dur-slow:520ms; --dur-cinematic:800ms;
  --ease-standard:cubic-bezier(.22,1,.36,1);
  --ease-entrance:cubic-bezier(.16,1,.3,1);
  --ease-exit:cubic-bezier(.4,0,1,1);
  --ease-inout:cubic-bezier(.65,0,.35,1);
  --stagger:70ms;

  /* --- Z-INDEX --- */
  --z-base:0; --z-raised:10; --z-sticky:100; --z-header:200;
  --z-drawer:300; --z-overlay:400; --z-modal:500; --z-toast:600; --z-cursor:700;
}

/* Tema claro (DS: :root[data-theme="light"]) aplicado por seção */
/* ---------- TEMA CLARO ---------- */
.theme-light{
  color-scheme: light;
  --bg:var(--paper);
  --surface-1:#FFFFFF;
  --surface-2:#F2F6FC;
  --surface-3:#E8F0FD;
  --surface-inset:rgba(8,23,56,.04);
  --surface-glass:rgba(255,255,255,.66);
  --surface-glass-strong:rgba(255,255,255,.86);
  --overlay:rgba(8,23,56,.45);

  --border-subtle:rgba(8,23,56,.10);
  --border-strong:rgba(8,23,56,.20);
  --border-glass:rgba(8,23,56,.10);
  --divider:rgba(8,23,56,.09);
  --grid-line:rgba(18,58,122,.07);

  --text-primary:#081738;
  --text-secondary:#123A7A;
  --text-muted:#53647D;
  --text-inverse:#FFFFFF;
  --text-brand:#1740C4;

  --brand-hover:#1740C4;
  --brand-press:#123A7A;
  --brand-ghost:rgba(29,80,247,.08);
  --focus-ring:#1D50F7;

  --success:#0B7A52; --success-bg:rgba(11,122,82,.10);
  --warning:#8A6A00; --warning-bg:rgba(255,214,0,.16);
  --danger:#C7331C;  --danger-bg:rgba(199,51,28,.10);
  --info:#1740C4;    --info-bg:rgba(23,64,196,.09);

  --grad-deep:linear-gradient(160deg,#FFFFFF 0%,#EEF4FE 48%,#E3ECFB 100%);
  --grad-surface:linear-gradient(180deg,rgba(29,80,247,.07) 0%,rgba(29,80,247,0) 70%);
  --grad-light:radial-gradient(60% 60% at 50% 0%,rgba(29,80,247,.16) 0%,rgba(29,80,247,0) 70%);
  --grad-glass:linear-gradient(135deg,rgba(255,255,255,.9) 0%,rgba(255,255,255,.55) 48%,rgba(29,80,247,.08) 100%);
  --grad-edge:linear-gradient(90deg,transparent,rgba(18,58,122,.35),transparent);
  --grad-text:linear-gradient(100deg,#081738 0%,#123A7A 45%,#1D50F7 100%);

  --shadow-1:0 1px 2px rgba(8,23,56,.07);
  --shadow-2:0 8px 24px -14px rgba(8,23,56,.22);
  --shadow-3:0 20px 48px -24px rgba(8,23,56,.26);
  --shadow-4:0 40px 90px -40px rgba(8,23,56,.30);
  --shadow-glass:0 20px 50px -30px rgba(8,23,56,.35), inset 0 1px 0 rgba(255,255,255,.9);
  --glow-brand:0 0 0 1px rgba(29,80,247,.22), 0 14px 36px -18px rgba(29,80,247,.55);
  --glow-soft:0 12px 40px -22px rgba(29,80,247,.35);
}
