/* viralizi.ai — generated from tokens.json */
:root, [data-theme="noite"] {
  --bg: #060b1a;
  --surface: #0d1834;
  --surface-2: #14224a;
  --line: #1e2c52;
  --line-strong: #4f6290;
  --ink: #eaf0f8;
  --ink-muted: #a9b6cc;
  --ink-subtle: #8d9bb6;
  --scan: #3fd3ff;
  --link: #3fd3ff;
  --action: #eaf0f8;
  --on-action: #0a1730;
  --focus: #3fd3ff;
  --success: #34d399;
  --warning: #fbbf24;
  --danger: #f87171;
  --level-bronze: #c98a5b;
  --level-prata: #b9c4d3;
  --level-ouro: #e8b64c;
  --level-diamante: #7fe3ff;
  --shadow-float: 0 18px 40px rgba(0,0,0,0.45);
  --shadow-card: 0 8px 24px rgba(0,0,0,0.30);
  color-scheme: dark;
}
[data-theme="gelo"] {
  --bg: #f5f8fc;
  --surface: #ffffff;
  --surface-2: #eef3f9;
  --line: #d3dce8;
  --line-strong: #7a88a3;
  --ink: #0a1730;
  --ink-muted: #4a5a74;
  --ink-subtle: #5a6a84;
  --scan: #0089c7;
  --link: #0071a8;
  --action: #0a1730;
  --on-action: #ffffff;
  --focus: #0089c7;
  --success: #0e8a5f;
  --warning: #a86200;
  --danger: #c2362f;
  --shadow-float: 0 18px 40px rgba(10,23,48,0.14);
  --shadow-card: 0 8px 24px rgba(10,23,48,0.08);
  color-scheme: light;
  color: var(--ink);
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
  --space-10: 128px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-pill: 999px;
  --ease-spring: cubic-bezier(0.3,1.6,0.5,1);
  --ease-out: cubic-bezier(0.2,0.8,0.2,1);
  --ease-in-out: cubic-bezier(0.65,0,0.35,1);
  --dur-fast: 160ms;
  --dur-base: 320ms;
  --dur-slow: 600ms;
  --stagger: 70ms;
  --font-sans: 'Schibsted Grotesk', 'Helvetica Neue', Arial, sans-serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, Menlo, monospace;
}
.display-xl {
  font-family: var(--font-sans);
  font-size: 88px;
  line-height: 0.95;
  font-weight: 800;
  letter-spacing: -0.045em;
}
.display-l {
  font-family: var(--font-sans);
  font-size: 64px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -0.04em;
}
.heading-1 {
  font-family: var(--font-sans);
  font-size: 44px;
  line-height: 1.05;
  font-weight: 700;
  letter-spacing: -0.03em;
}
.heading-2 {
  font-family: var(--font-sans);
  font-size: 32px;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -0.02em;
}
.heading-3 {
  font-family: var(--font-sans);
  font-size: 22px;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: -0.01em;
}
.body-l {
  font-family: var(--font-sans);
  font-size: 19px;
  line-height: 1.55;
  font-weight: 400;
}
.body {
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: 1.6;
  font-weight: 400;
}
.body-s {
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.5;
  font-weight: 400;
}
.label {
  font-family: var(--font-mono);
  font-size: 12px;
  line-height: 1.4;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.data {
  font-family: var(--font-mono);
  font-size: 14px;
  line-height: 1.4;
  font-weight: 500;
}
.data-l {
  font-family: var(--font-mono);
  font-size: 20px;
  line-height: 1.3;
  font-weight: 500;
}
