/* ═══════════════════════════════════════════════════════════════════════════
   tokens.css — A CAMADA DE TOKENS, RECORTADA do styles.css (LOOP 05, 04/09/2026)

   ⚠️ ESTE ARQUIVO É UM RECORTE VERBATIM, ⛔ NÃO UMA REESCRITA. São as 68
      primeiras linhas do styles.css (o :root claro, o .theme-dark, o @media
      prefers-color-scheme, o reset *, o body e o .mono) + o par :root/.theme-dark
      dos --bat-* (bateria PING), que o escritorio.css consome.
   ⛔ NÃO "melhore", ⛔ não renomeie variável, ⛔ não reordene: qualquer edição
      aqui muda a cara do site inteiro. Token novo nasce NO styles.css e vem
      copiado para cá — as duas cópias TÊM de bater (é o preço de não ter build).
   ⚠️ POR QUE EXISTE: 23 páginas linkavam o styles.css inteiro (534 KB) e casavam
      de 5 a 12 das suas 3314 regras — todas elas aqui dentro. Medido com CSSOM
      (querySelector por regra), não estimado. Ver docs/LOOP-05-PESO-CSS-RELATORIO.md.
   ⛔ NÃO linke tokens.css NUMA página que já linka styles.css: são a mesma coisa,
      duas vezes. A página é de um lado ou do outro.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ───────────────── X-AVATAR — design tokens (LIGHT) ───────────────── */
:root {
  --bg-base: oklch(0.985 0.003 90);
  --bg-elev: oklch(0.965 0.004 90);
  --bg-elev-2: oklch(0.93 0.005 90);
  --bg-elev-3: oklch(0.88 0.006 90);
  --text: oklch(0.18 0.018 275);
  --text-mute: oklch(0.42 0.018 275);
  --text-dim: oklch(0.60 0.015 275);
  --border: oklch(0.86 0.006 90);
  --border-soft: oklch(0.92 0.004 90);
  --accent: oklch(0.68 0.26 0);
  --accent-strong: oklch(0.58 0.28 0);
  --accent-soft: oklch(0.78 0.16 0);
  --accent-bg: oklch(0.96 0.04 0);
  --twin: oklch(0.66 0.17 40);
  --twin-bg: oklch(0.96 0.06 40);
  --success: oklch(0.58 0.18 155);
  --danger: oklch(0.58 0.20 25);
  --radius-sm: 8px;
  --radius: 12px;
  --radius-lg: 18px;
  --radius-xl: 24px;
  --shadow-lg: 0 30px 80px -20px oklch(0.05 0.03 285 / 0.55), 0 12px 28px -12px oklch(0.05 0.03 285 / 0.6);
  --font-display: "Geist", -apple-system, BlinkMacSystemFont, "SF Pro Display", sans-serif;
  --font-mono: "Geist Mono", "JetBrains Mono", ui-monospace, "SF Mono", monospace;
  --cover-grad-1: oklch(0.92 0.05 285);
  --cover-grad-2: oklch(0.95 0.04 60);
  --cover-grad-3: oklch(0.97 0.02 80);
  --shadow-soft: 0 1px 0 oklch(0.96 0.004 90), 0 10px 30px -10px oklch(0.45 0.05 275 / 0.12);
}

/* ───── Dark mode — tokens (ative com .theme-dark no container) ───── */
.theme-dark {
  --bg-base: oklch(0.155 0.022 275);
  --bg-elev: oklch(0.205 0.023 275);
  --bg-elev-2: oklch(0.255 0.025 275);
  --bg-elev-3: oklch(0.305 0.028 278);
  --text: oklch(0.96 0.005 280);
  --text-mute: oklch(0.68 0.015 280);
  --text-dim: oklch(0.50 0.018 280);
  --border: oklch(0.30 0.02 278);
  --border-soft: oklch(0.245 0.018 278);
  --accent: oklch(0.78 0.22 0);
  --accent-strong: oklch(0.82 0.24 0);
  --accent-bg: oklch(0.30 0.12 0);
  --twin: oklch(0.74 0.17 40);
  --twin-bg: oklch(0.30 0.10 40);
  --success: oklch(0.76 0.17 155);
  --danger: oklch(0.74 0.18 25);
  color-scheme: dark;
}
@media (prefers-color-scheme: dark) { html:not(.theme-light) { --bg-base: oklch(0.155 0.022 275); --bg-elev: oklch(0.205 0.023 275); --bg-elev-2: oklch(0.255 0.025 275); --bg-elev-3: oklch(0.305 0.028 278); --text: oklch(0.96 0.005 280); --text-mute: oklch(0.68 0.015 280); --text-dim: oklch(0.50 0.018 280); --border: oklch(0.30 0.02 278); --border-soft: oklch(0.245 0.018 278); --accent: oklch(0.78 0.22 0); --accent-strong: oklch(0.82 0.24 0); --accent-bg: oklch(0.30 0.12 0); --twin: oklch(0.74 0.17 40); --twin-bg: oklch(0.30 0.10 40); --success: oklch(0.76 0.17 155); --danger: oklch(0.74 0.18 25); color-scheme: dark; } }


* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--bg-base);
  color: var(--text);
  font-family: var(--font-display);
  -webkit-font-smoothing: antialiased;
  font-feature-settings: "ss01", "cv11";
  letter-spacing: -0.005em;
}

.mono { font-family: var(--font-mono); font-feature-settings: "ss01", "zero"; letter-spacing: -0.01em; }

/* ───── tokens da bateria PING (recorte da L2733 do styles.css) ───── */
:root { --bat-red: oklch(0.55 0.21 25); --bat-amber: oklch(0.6 0.13 70); --bat-green: oklch(0.5 0.15 150); }
.theme-dark { --bat-red: oklch(0.72 0.2 25); --bat-amber: oklch(0.82 0.16 88); --bat-green: oklch(0.72 0.16 150); }
