/* Pêndulo Studio — gerado de tokens.json. Não edite à mão: altere tokens.json e gere de novo. */

:root {
  color-scheme: light;
  --surface: #f7f5fa;
  --surface-raised: #ffffff;
  --surface-sunken: #efecf4;
  --line: #e2ddea;
  --line-strong: #8a8299;
  --ink: #1d1828;
  --ink-muted: #5e5770;
  --ametista: #5b3bb0;
  --ametista-soft: #eee8fa;
  --on-ametista: #ffffff;
  --focus-ring: var(--ametista);
  --estado-deficiente: #1f6f96;
  --estado-deficiente-soft: #e3f1f8;
  --estado-equilibrado: #2a7448;
  --estado-equilibrado-soft: #e4f3ea;
  --estado-excessivo: #a9561a;
  --estado-excessivo-soft: #fbede1;
  --erro: #b3261e;
  --erro-soft: #fbe9e7;
  --mistico-noite: #0e0a1c;
  --mistico-noite-alta: #1a1233;
  --mistico-violeta: #7a4fd0;
  --mistico-luz: #c6a8ff;
  --mistico-vela: #f0c27a;
  --mistico-turmalina: #5cc6c0;
  --mistico-quartzo: #ebb7c2;
  --mistico-nevoa: #b9b0d3;
  --mistico-estrela: #f4f0ff;
  --shadow-raised: 0 1px 2px rgba(29,24,40,0.06), 0 6px 16px rgba(29,24,40,0.05);
  --shadow-glow: 0 0 48px rgba(198,168,255,0.35), 0 0 12px rgba(240,194,122,0.25);
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-20: 80px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 18px;
  --radius-pill: 999px;
  --font-display: Marcellus, "Cormorant Garamond", Georgia, serif;
  --font-sans: "Instrument Sans", "Segoe UI", system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, Consolas, monospace;
}

/* Tema escuro: escolha explícita */
:root[data-theme="dark"] {
  color-scheme: dark;
  --surface: #121019;
  --surface-raised: #1b1824;
  --surface-sunken: #0d0b12;
  --line: #2c2738;
  --line-strong: #6e6681;
  --ink: #edeaf3;
  --ink-muted: #a49db5;
  --ametista: #b49bf2;
  --ametista-soft: #2a2140;
  --on-ametista: #17112a;
  --estado-deficiente: #6cb8dd;
  --estado-deficiente-soft: #10293a;
  --estado-equilibrado: #6dc793;
  --estado-equilibrado-soft: #12301f;
  --estado-excessivo: #e59a5c;
  --estado-excessivo-soft: #3a2210;
  --erro: #f2867d;
  --erro-soft: #3a1513;
  --shadow-raised: 0 1px 2px rgba(0,0,0,0.5), 0 6px 16px rgba(0,0,0,0.35);
}

/* Tema escuro: preferência do sistema, quando o usuário não escolheu */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --surface: #121019;
    --surface-raised: #1b1824;
    --surface-sunken: #0d0b12;
    --line: #2c2738;
    --line-strong: #6e6681;
    --ink: #edeaf3;
    --ink-muted: #a49db5;
    --ametista: #b49bf2;
    --ametista-soft: #2a2140;
    --on-ametista: #17112a;
    --estado-deficiente: #6cb8dd;
    --estado-deficiente-soft: #10293a;
    --estado-equilibrado: #6dc793;
    --estado-equilibrado-soft: #12301f;
    --estado-excessivo: #e59a5c;
    --estado-excessivo-soft: #3a2210;
    --erro: #f2867d;
    --erro-soft: #3a1513;
    --shadow-raised: 0 1px 2px rgba(0,0,0,0.5), 0 6px 16px rgba(0,0,0,0.35);
  }
}

/* Estilos de texto */
.display-xl { font-family: var(--font-display); font-size: 64px; line-height: 68px; font-weight: 400; letter-spacing: 0.01em; }
.display-lg { font-family: var(--font-display); font-size: 42px; line-height: 48px; font-weight: 400; letter-spacing: 0.01em; }
.display-md { font-family: var(--font-display); font-size: 28px; line-height: 34px; font-weight: 400; letter-spacing: 0.02em; }
.title { font-family: var(--font-sans); font-size: 22px; line-height: 28px; font-weight: 600; letter-spacing: -0.01em; }
.heading { font-family: var(--font-sans); font-size: 17px; line-height: 24px; font-weight: 600; }
.body { font-family: var(--font-sans); font-size: 15px; line-height: 22px; font-weight: 400; }
.body-strong { font-family: var(--font-sans); font-size: 15px; line-height: 22px; font-weight: 600; }
.caption { font-family: var(--font-sans); font-size: 13px; line-height: 18px; font-weight: 400; }
.label { font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; }
.reading { font-family: var(--font-mono); font-size: 28px; line-height: 32px; font-weight: 500; }
.data { font-family: var(--font-mono); font-size: 13px; line-height: 18px; font-weight: 400; }
