/* =============================================================================
   Altos Coturnos — Design System Tactical Hybrid 2.0 · TOKENS (R02-B)
   Valores extraídos 1:1 do protótipo homologado (prototypes/r02a/v2/assets/css/core.css).
   Prefixo --ac-* : não colide com os tokens F4 (--c-*, --s-*, --r-*). Só variáveis: sem efeito visual por si.
   Carregado apenas onde o DS é habilitado (ver inc/design-system.php).
   ============================================================================= */
@font-face { font-family: "Jost DS"; font-weight: 100 900; font-style: normal; font-display: swap; src: url("../../fonts/jost-latin-var.woff2") format("woff2"); }

:root {
  /* ---- Cores · paleta bruta (grafite, oliva, areia, osso) ---- */
  --ac-graphite-950: #0A0F14; --ac-graphite-900: #111820; --ac-graphite-850: #161E27; --ac-graphite-800: #1B242E; --ac-graphite-700: #2A3542; --ac-graphite-600: #3B4757; --ac-graphite-400: #6B7683;
  --ac-olive-950: #141D17; --ac-olive-900: #1C2821; --ac-olive-800: #26352C; --ac-olive-700: #34473B; --ac-olive-600: #44594B;
  --ac-sand-300: #D6C196; --ac-sand-500: #C0A46B; --ac-sand-600: #A88B52; --ac-sand-700: #7A6230; --ac-sand-100: #F1EADB;
  --ac-bone-50: #FBFAF7; --ac-bone-100: #F5F3EE; --ac-bone-200: #ECE8DF; --ac-bone-300: #DDD7CA; --ac-stone: #E9E5DC; --ac-white: #FFFFFF;

  /* ---- Cores · semânticas ---- */
  --ac-bg: var(--ac-bone-100);              /* fundo principal */
  --ac-bg-dark: var(--ac-graphite-900);     /* fundo escuro */
  --ac-bg-olive: var(--ac-olive-800);
  --ac-bg-light: var(--ac-bone-50);         /* fundo claro (superfície elevada) */
  --ac-surface: var(--ac-white);            /* campos e cards claros */
  --ac-surface-dark: var(--ac-graphite-800);
  --ac-text: var(--ac-graphite-900);        /* texto principal */
  --ac-text-2: #39424C;                     /* texto principal reforçado */
  --ac-text-muted: #545B63;                 /* texto secundário (≥ 4,5:1 sobre osso) */
  --ac-text-inverse: var(--ac-bone-100);    /* texto invertido (sobre escuro) */
  --ac-text-inverse-2: #A9B0B8; --ac-text-inverse-3: #7E8792;
  --ac-accent: var(--ac-sand-500);          /* ação sobre fundo escuro */
  --ac-accent-strong: var(--ac-sand-700);   /* acento tipográfico sobre fundo claro (areia nunca é texto no claro) */
  --ac-border: #E1DCD0; --ac-border-strong: #857F72; --ac-border-dark: rgb(245 243 238 / .12);
  --ac-disabled-text: #8D96A0; --ac-disabled-bg: var(--ac-bone-200); --ac-disabled-border: var(--ac-bone-300);
  --ac-success: #2F6B3A; --ac-success-bg: #E5F0E7; --ac-error: #B3261E; --ac-error-bg: #FBE9E7;
  --ac-warning: #8A5A00; --ac-warning-bg: #FBF0D9; --ac-info: #2B5C7A; --ac-info-bg: #E3EEF4;
  --ac-focus-light: 0 0 0 2px var(--ac-white), 0 0 0 4px var(--ac-graphite-900);   /* anel de foco sobre claro */
  --ac-focus-dark: 0 0 0 2px var(--ac-graphite-900), 0 0 0 4px var(--ac-sand-500); /* anel de foco sobre escuro/oliva */

  /* ---- Gradientes (palco do produto) ---- */
  --ac-stage: radial-gradient(120% 90% at 50% 38%, #FDFCF9 0%, #F1EEE7 52%, #E4DFD4 100%);
  --ac-stage-dark: radial-gradient(90% 80% at 55% 42%, #2B3744 0%, #161E27 48%, #0A0F14 100%);
  --ac-stage-olive: radial-gradient(80% 80% at 50% 45%, #46584B, var(--ac-olive-950));

  /* ---- Tipografia ---- */
  --ac-font: "Jost DS", Jost, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --ac-font-mono: ui-monospace, "SFMono-Regular", "JetBrains Mono", "DejaVu Sans Mono", Menlo, Consolas, monospace;
  --ac-fs-mono: .6875rem; --ac-fs-xs: .75rem; --ac-fs-sm: .875rem; --ac-fs-md: 1rem; --ac-fs-lg: 1.125rem; --ac-fs-xl: 1.375rem;
  --ac-fs-2xl: clamp(1.6rem, 1.25rem + 1.3vw, 2.25rem); --ac-fs-3xl: clamp(2rem, 1.3rem + 2.8vw, 3.5rem);
  --ac-fs-4xl: clamp(2.1rem, 1.1rem + 5.4vw, 6rem); --ac-fs-mega: clamp(5rem, 2rem + 14vw, 17rem);
  --ac-fw-thin: 200; --ac-fw-regular: 400; --ac-fw-medium: 500; --ac-fw-semibold: 600; --ac-fw-bold: 700; --ac-fw-black: 800;
  --ac-lh-display: .92; --ac-lh-heading: 1.12; --ac-lh-body: 1.6; --ac-lh-lead: 1.55;
  --ac-ls-display: -.035em; --ac-ls-heading: -.015em; --ac-ls-label: .08em; --ac-ls-mono: .16em;

  /* ---- Espaçamento (escala do protótipo) ---- */
  --ac-sp-1: .25rem; --ac-sp-2: .5rem; --ac-sp-3: .75rem; --ac-sp-4: 1rem; --ac-sp-5: 1.5rem; --ac-sp-6: 2rem; --ac-sp-7: 3rem; --ac-sp-8: 4.5rem; --ac-sp-9: 6rem; --ac-sp-10: 8rem;

  /* ---- Layout ---- */
  --ac-container: 88rem; --ac-gutter: clamp(1rem, 3.2vw, 2.5rem); --ac-tap: 44px;
  /* Breakpoints (media queries não aceitam var()): 700px (celular → tablet) · 900px · 1000px (desktop) · 1024px · 1100px */

  /* ---- Componentes ---- */
  --ac-btn-h: 52px; --ac-btn-h-lg: 60px; --ac-btn-h-sm: 44px; --ac-field-h: 52px; --ac-size-chip: 52px;
  --ac-r-1: 4px; --ac-r-2: 8px; --ac-r-3: 14px; --ac-r-4: 22px; --ac-r-pill: 999px;
  --ac-shadow-1: 0 1px 2px rgb(17 24 32 / .05); --ac-shadow-2: 0 18px 40px -22px rgb(17 24 32 / .35); --ac-shadow-3: 0 40px 80px -30px rgb(10 15 20 / .55);
  --ac-shadow-boot: drop-shadow(0 28px 26px rgb(17 24 32 / .28)) drop-shadow(0 6px 6px rgb(17 24 32 / .18));
  --ac-shadow-boot-dark: drop-shadow(0 40px 40px rgb(0 0 0 / .65)) drop-shadow(0 8px 10px rgb(0 0 0 / .45));
  --ac-t1: 140ms; --ac-t2: 240ms; --ac-t3: 420ms; --ac-t4: 700ms;
  --ac-ease: cubic-bezier(.2, .75, .15, 1); --ac-ease-out: cubic-bezier(.16, 1, .3, 1);
}
@media (prefers-reduced-motion: reduce) { :root { --ac-t1: 0ms; --ac-t2: 0ms; --ac-t3: 0ms; --ac-t4: 0ms; } }
