/* bFlow — generated from tokens.json */
:root, [data-theme="light"] {
  --azul-100: #dce5ff;
  --azul-200: #b8cbff;
  --azul-300: #8aa8fc;
  --azul-400: #5c82fa;
  --azul-500: #315cf6;
  --azul-600: #1e3fbf;
  --azul-700: #14298a;
  --lima-100: #f1f9d2;
  --lima-200: #e3f39f;
  --lima-300: #d2ec5e;
  --lima-400: #bae314;
  --lima-500: #8db000;
  --lima-600: #5c7400;
  --lima-700: #3c4c00;
  --noite-100: #f4f6fb;
  --noite-200: #dde2f1;
  --noite-300: #c9cfea;
  --noite-400: #9ba3c7;
  --noite-500: #5a6185;
  --noite-600: #1f2440;
  --noite-700: #0a0f2c;
  --sucesso: #1e8e4e;
  --atencao: #b8760a;
  --erro: #d7263d;
  --bg: #f4f6fb;
  --bg-elevado: #ffffff;
  --bg-sutil: #eef0f8;
  --borda: #dde2f1;
  --borda-forte: #9ba3c7;
  --texto: #0a0f2c;
  --texto-corpo: #1f2440;
  --texto-suave: #5a6185;
  --marca: #315cf6;
  --marca-hover: #1e3fbf;
  --sobre-marca: #ffffff;
  --link: #1e3fbf;
  --acento: #8db000;
  --acento-texto: #5c7400;
  --acento-fundo: #f1f9d2;
  --foco: #315cf6;
  --nav-bg: #ffffff;
  --nav-texto: #1f2440;
  --nav-ativo-bg: #dce5ff;
  --nav-ativo-texto: #14298a;
  --logo-ink: #315cf6;
  --logo-acento: #8db000;
  --overlay: #0a0f2cb3;
  --logo-ink-nav: #315cf6;
  --logo-acento-nav: #8db000;
  --branco: #ffffff;
  --sombra-flutuante: 0 8px 24px rgba(10,15,44,0.10);
  --sombra-modal: 0 24px 64px rgba(10,15,44,0.18);
}
[data-theme="light-vibrant"] {
  --sucesso: #1e8e4e;
  --atencao: #b8760a;
  --erro: #d7263d;
  --bg: #ffffff;
  --bg-elevado: #ffffff;
  --bg-sutil: #e8edff;
  --borda: #dde2f1;
  --borda-forte: #9ba3c7;
  --texto: #0a0f2c;
  --texto-corpo: #1f2440;
  --texto-suave: #5a6185;
  --marca: #315cf6;
  --marca-hover: #1e3fbf;
  --sobre-marca: #ffffff;
  --link: #1e3fbf;
  --acento: #8db000;
  --acento-texto: #5c7400;
  --acento-fundo: #f1f9d2;
  --foco: #315cf6;
  --nav-bg: #ffffff;
  --nav-texto: #1f2440;
  --nav-ativo-bg: #315cf6;
  --nav-ativo-texto: #ffffff;
  --logo-ink: #315cf6;
  --logo-acento: #8db000;
  --overlay: #0a0f2cb3;
  --logo-ink-nav: #315cf6;
  --logo-acento-nav: #8db000;
  --sombra-flutuante: 0 8px 24px rgba(10,15,44,0.10);
  --sombra-modal: 0 24px 64px rgba(10,15,44,0.18);
}
[data-theme="dark-vibrant"] {
  --sucesso: #3dbb75;
  --atencao: #f0b13a;
  --erro: #f2607a;
  --bg: #0a0f2c;
  --bg-elevado: #141a3c;
  --bg-sutil: #1c2350;
  --borda: #262d58;
  --borda-forte: #5a6185;
  --texto: #ffffff;
  --texto-corpo: #c9cfea;
  --texto-suave: #9ba3c7;
  --marca: #315cf6;
  --marca-hover: #5c82fa;
  --sobre-marca: #ffffff;
  --link: #8aa8fc;
  --acento: #bae314;
  --acento-texto: #bae314;
  --acento-fundo: #1f2a12;
  --foco: #bae314;
  --nav-bg: #0f1538;
  --nav-texto: #c9cfea;
  --nav-ativo-bg: #1e3fbf;
  --nav-ativo-texto: #ffffff;
  --logo-ink: #ffffff;
  --logo-acento: #bae314;
  --overlay: #000000b3;
  --logo-ink-nav: #ffffff;
  --logo-acento-nav: #bae314;
  --sombra-flutuante: 0 8px 24px rgba(0,0,0,0.45);
  --sombra-modal: 0 24px 64px rgba(0,0,0,0.6);
}
[data-theme="ameixa"] {
  --sucesso: #4f7a00;
  --atencao: #7a4a00;
  --erro: #b42a35;
  --bg: #f6f3fa;
  --bg-elevado: #ffffff;
  --bg-sutil: #efe8f7;
  --borda: #e6ddf2;
  --borda-forte: #8a7ba3;
  --texto: #241246;
  --texto-corpo: #4a3d5e;
  --texto-suave: #6b5c80;
  --marca: #43075d;
  --marca-hover: #241246;
  --sobre-marca: #ffffff;
  --link: #43075d;
  --acento: #b2d300;
  --acento-texto: #4f5e00;
  --acento-fundo: #eaf4c4;
  --foco: #14b5bd;
  --nav-bg: #241246;
  --nav-texto: #d9cdeb;
  --nav-ativo-bg: #b2d300;
  --nav-ativo-texto: #241246;
  --logo-ink: #43075d;
  --logo-acento: #8db000;
  --overlay: #241246b3;
  --logo-ink-nav: #ffffff;
  --logo-acento-nav: #b2d300;
  --sombra-flutuante: 0 8px 24px rgba(10,15,44,0.10);
  --sombra-modal: 0 24px 64px rgba(10,15,44,0.18);
}
[data-theme="high-contrast"] {
  --sucesso: #4ade80;
  --atencao: #fbbf24;
  --erro: #f87171;
  --bg: #000000;
  --bg-elevado: #0f0f0f;
  --bg-sutil: #1a1a1a;
  --borda: #555555;
  --borda-forte: #e0e0e0;
  --texto: #ffffff;
  --texto-corpo: #ffffff;
  --texto-suave: #e0e0e0;
  --marca: #fbbf24;
  --marca-hover: #d97706;
  --sobre-marca: #000000;
  --link: #fbbf24;
  --acento: #ffffff;
  --acento-texto: #ffffff;
  --acento-fundo: #1a1a1a;
  --foco: #fbbf24;
  --nav-bg: #000000;
  --nav-texto: #ffffff;
  --nav-ativo-bg: #fbbf24;
  --nav-ativo-texto: #000000;
  --logo-ink: #ffffff;
  --logo-acento: #ffffff;
  --overlay: #000000cc;
  --logo-ink-nav: #ffffff;
  --logo-acento-nav: #ffffff;
  --sombra-flutuante: 0 8px 24px rgba(0,0,0,0.5);
  --sombra-modal: 0 24px 64px rgba(0,0,0,0.65);
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-2xl: 18px;
  --radius-icone: 22.5%;
  --radius-pill: 999px;
  --duracao-rapida: 120ms;
  --duracao-media: 200ms;
  --duracao-lenta: 240ms;
  --easing-saida: cubic-bezier(0.2, 0.8, 0.2, 1);
  --font-display: Sora, Inter, system-ui, sans-serif;
  --font-sans: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
}
.display { font-family: Sora, Inter, system-ui, sans-serif; font-size: 56px; line-height: 58px; font-weight: 800; letter-spacing: -0.04em; }
.titulo-1 { font-family: Sora, Inter, system-ui, sans-serif; font-size: 40px; line-height: 44px; font-weight: 800; letter-spacing: -0.03em; }
.titulo-2 { font-family: Sora, Inter, system-ui, sans-serif; font-size: 28px; line-height: 34px; font-weight: 700; letter-spacing: -0.02em; }
.titulo-3 { font-family: Sora, Inter, system-ui, sans-serif; font-size: 20px; line-height: 26px; font-weight: 700; letter-spacing: -0.01em; }
.numero-heroi { font-family: Sora, Inter, system-ui, sans-serif; font-size: 32px; line-height: 36px; font-weight: 800; letter-spacing: -0.03em; }
.logotipo { font-family: Sora, Inter, system-ui, sans-serif; font-size: 24px; line-height: 24px; font-weight: 700; letter-spacing: -0.05em; }
.corpo { font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; font-size: 16px; line-height: 25px; font-weight: 400; }
.corpo-pequeno { font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; font-size: 14px; line-height: 21px; font-weight: 400; }
.corpo-forte { font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; font-size: 14px; line-height: 21px; font-weight: 600; }
.rotulo { font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; font-size: 12px; line-height: 16px; font-weight: 600; letter-spacing: 0.12em; }
.legenda { font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; font-size: 12px; line-height: 16px; font-weight: 400; }
.botao { font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; font-size: 15px; line-height: 20px; font-weight: 600; }
.botao-pequeno { font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; font-size: 13px; line-height: 18px; font-weight: 600; }
.codigo { font-family: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; line-height: 20px; font-weight: 400; }
