/* ════════════════════════════════════════════════════════════════════
   SOS · DESIGN TOKENS — FONTE DE VERDADE (canônica)
   ────────────────────────────────────────────────────────────────────
   Espelha o SOS Design System v3 (sos-design.html). Esta é a referência
   única dos tokens compartilhados da suíte. Hoje cada app ainda inlinea
   sua própria cópia (com nomes diferentes); o objetivo do P2 do roadmap
   é consolidar tudo aqui.

   Mapa de nomes por app (para a migração):
     Design/Health: --sos-*            (canônico, este arquivo)
     Cockpit:       --bg/--fg/--brand/--green/--amber/--red/--line(-s)
     Hub:           --bg/--fg/--c-cockpit/--c-health/--c-aura/--c-mente…
     Feelings:      --bg/--fg/--brand/--c-fluxo(verde)/--c-atencao(âmbar)/--c-ruido(vermelho)
     Aura:          hex/hsl próprios (motor de arte — fora do escopo)

   Como usar (futuro): <link rel="stylesheet" href="sos-tokens.css"> ou
   injeção no deploy (deploy-sos.ps1). Ver roadmap §Plataforma P2.
   ════════════════════════════════════════════════════════════════════ */

:root {
  /* Tipografia */
  --sos-font-sans: "DM Sans", ui-sans-serif, system-ui, -apple-system, sans-serif;
  --sos-font-mono: "SF Mono", "Roboto Mono", "Cascadia Code", ui-monospace, monospace;

  /* Superfícies & texto (claro) */
  --sos-bg:           oklch(98.3% .003 240);
  --sos-bg-elevated:  oklch(100% 0 0 / .86);
  --sos-bg-subtle:    oklch(95.8% .005 238);
  --sos-fg:           oklch(16% .012 242);
  --sos-fg-soft:      oklch(42% .012 248);
  --sos-fg-muted:     oklch(58% .011 248);
  --sos-line:         oklch(88% .007 242);
  --sos-line-soft:    oklch(91% .005 242 / .68);

  /* Prata / sistema (cor de identidade neutra do SOS) */
  --sos-primary:      oklch(56% .016 247);
  --sos-primary-soft: oklch(92% .006 247);
  --sos-silver:       oklch(56% .016 247);
  --sos-silver-hover: oklch(48% .015 247);
  --sos-silver-soft:  oklch(56% .016 247 / .13);

  /* Semânticas — significado fixo */
  --sos-green: oklch(66% .12 155);   /* positivo / conquista / saúde */
  --sos-amber: oklch(74% .13 82);    /* atenção / aviso / intermediário */
  --sos-red:   oklch(61% .18 25);    /* risco / crítico / destrutivo */

  /* Raios */
  --sos-radius-xs: .375rem;
  --sos-radius-sm: .5rem;
  --sos-radius-md: .625rem;
  --sos-radius-lg: .875rem;
  --sos-radius-xl: 1.125rem;

  /* Motion */
  --sos-motion-fast: .12s;
  --sos-motion-base: .2s;
  --sos-motion-slow: .38s;
  --sos-motion-ease: cubic-bezier(.16, 1, .3, 1);

  /* Marca por submarca (dot do wordmark + dot do chip Hub) */
  --sos-brand-hub:      oklch(56% .016 247);  /* prata */
  --sos-brand-cockpit:  oklch(63% .20 265);   /* azul */
  --sos-brand-health:   oklch(70% .15 195);   /* teal */
  --sos-brand-aura:     oklch(65% .14 310);    /* violeta */
  --sos-brand-feelings: oklch(64% .18 345);    /* magenta */
  --sos-brand-design:   var(--sos-fg);         /* tinta */
}

/* ── Tema escuro ── */
/* (mesmo bloco aplicado por preferência do sistema e por data-theme,
    espelhando a estratégia do sos-design.html) */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --sos-bg:           oklch(13.2% .008 248);
    --sos-bg-elevated:  oklch(18.5% .010 248 / .82);
    --sos-bg-subtle:    oklch(22.5% .010 248);
    --sos-fg:           oklch(95.8% .004 238);
    --sos-fg-soft:      oklch(80% .008 248);
    --sos-fg-muted:     oklch(64% .010 248);
    --sos-line:         oklch(30% .010 248);
    --sos-line-soft:    oklch(33% .010 248 / .65);
    --sos-primary:      oklch(74% .013 247);
    --sos-primary-soft: oklch(22% .010 247);
    --sos-silver:       oklch(74% .013 247);
    --sos-silver-hover: oklch(64% .014 247);
    --sos-silver-soft:  oklch(74% .013 247 / .14);
    --sos-green:        oklch(74% .118 155);
    --sos-amber:        oklch(82% .118 82);
    --sos-red:          oklch(70% .168 25);
    /* marca um pouco mais clara no escuro p/ contraste */
    --sos-brand-feelings: oklch(68% .18 345);
  }
}
:root[data-theme="dark"] {
  --sos-bg:           oklch(13.2% .008 248);
  --sos-bg-elevated:  oklch(18.5% .010 248 / .82);
  --sos-bg-subtle:    oklch(22.5% .010 248);
  --sos-fg:           oklch(95.8% .004 238);
  --sos-fg-soft:      oklch(80% .008 248);
  --sos-fg-muted:     oklch(64% .010 248);
  --sos-line:         oklch(30% .010 248);
  --sos-line-soft:    oklch(33% .010 248 / .65);
  --sos-primary:      oklch(74% .013 247);
  --sos-primary-soft: oklch(22% .010 247);
  --sos-silver:       oklch(74% .013 247);
  --sos-silver-hover: oklch(64% .014 247);
  --sos-silver-soft:  oklch(74% .013 247 / .14);
  --sos-green:        oklch(74% .118 155);
  --sos-amber:        oklch(82% .118 82);
  --sos-red:          oklch(70% .168 25);
  --sos-brand-feelings: oklch(68% .18 345);
}
