/* Gerado por build-css.mjs. Não editar à mão; edite os JSON. */
/* 1. Primitivos */
:root {
  --color-branco-0: #FFFFFF;
  --color-branco-50: #F5F5F7;
  --color-branco-100: #E8E8ED;
  --color-cinza-200: #D2D2D7;
  --color-cinza-400: #A1A1A6;
  --color-cinza-500: #86868B;
  --color-cinza-600: #6E6E73;
  --color-cinza-800: #3A3A3C;
  --color-preto-900: #1D1D1F;
  --color-preto-950: #0B0B0C;
  --color-indigo-100: #ECEBFC;
  --color-indigo-300: #7F75EE;
  --color-indigo-500: #4F46E5;
  --color-indigo-700: #3627B0;
  --color-indigo-900: #1630C2;
  --color-indigo-violeta: #56239C;
  --color-positivo-100: #DDF3E4;
  --color-positivo-500: #1D8A4A;
  --color-negativo-100: #FBE1E5;
  --color-negativo-500: #C8102E;
  --color-atencao-100: #FCEBD6;
  --color-atencao-500: #B25E00;
  --color-serie-1: #4F46E5;
  --color-serie-2: #EB6834;
  --color-serie-3: #1BAF7A;
  --color-serie-4: #EDA100;
  --color-serie-1-escuro: #7F75EE;
  --color-serie-2-escuro: #D95926;
  --color-serie-3-escuro: #199E70;
  --color-serie-4-escuro: #C98500;
  --color-plataforma-openai: #412991;
  --color-plataforma-gemini: #8E75B2;
  --color-plataforma-google: #4285F4;
  --color-plataforma-perplexity: #1FB8CD;
  --font-family-display: Geist, "SF Pro Display", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --font-family-sans: Geist, "SF Pro Text", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --font-family-mono: "Geist Mono", "SF Mono", ui-monospace, monospace;
  --font-size-2xs: 12px;
  --font-size-xs: 13px;
  --font-size-sm: 15px;
  --font-size-md: 17px;
  --font-size-lg: 21px;
  --font-size-xl: 28px;
  --font-size-2xl: 40px;
  --font-size-3xl: 56px;
  --font-size-4xl: 72px;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-line-height-tight: 1.05;
  --font-line-height-snug: 1.2;
  --font-line-height-normal: 1.5;
  --font-line-height-relaxed: 1.6;
  --font-tracking-titulo: -0.03em;
  --font-tracking-corpo: -0.01em;
  --font-tracking-label: 0.06em;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;
  --space-32: 128px;
  --radius-sm: 10px;
  --radius-md: 14px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-2xl: 36px;
  --radius-full: 9999px;
  --size-container: 1120px;
  --size-touch: 44px;
  --size-icon: 18px;
}

/* 2. Semânticos. Claro é o padrão; escuro por [data-theme="dark"] ou na classe .inverso (bloco escuro dentro da página clara). */
:root {
  color-scheme: light;
  --bg: var(--color-branco-0);
  --bg-suave: var(--color-branco-50);
  --bg-card: var(--color-branco-0);
  --bg-inverso: var(--color-preto-950);
  --text: var(--color-preto-900);
  --text-muted: var(--color-cinza-600);
  --text-subtle: var(--color-cinza-500);
  --text-inverso: var(--color-branco-0);
  --border: rgba(0,0,0,0.08);
  --border-forte: rgba(0,0,0,0.14);
  --primary: var(--color-preto-950);
  --on-primary: var(--color-branco-0);
  --accent: var(--color-indigo-500);
  --accent-soft: var(--color-indigo-100);
  --accent-strong: var(--color-indigo-700);
  --link: var(--color-indigo-500);
  --gradient-marca: linear-gradient(120deg, var(--color-indigo-900) 0%, var(--color-indigo-700) 45%, var(--color-indigo-violeta) 100%);
  --positive: var(--color-positivo-500);
  --positive-soft: var(--color-positivo-100);
  --negative: var(--color-negativo-500);
  --negative-soft: var(--color-negativo-100);
  --warning: var(--color-atencao-500);
  --warning-soft: var(--color-atencao-100);
  --series-1: var(--color-serie-1);
  --series-2: var(--color-serie-2);
  --series-3: var(--color-serie-3);
  --series-4: var(--color-serie-4);
  --shadow-card: 0 0 0 0.5px rgba(0,0,0,0.04), 0 1px 2px rgba(0,0,0,0.04), 0 8px 24px -8px rgba(0,0,0,0.10);
  --shadow-elevated: 0 0 0 0.5px rgba(0,0,0,0.05), 0 2px 6px rgba(0,0,0,0.05), 0 28px 60px -20px rgba(0,0,0,0.22);
  --shadow-botao: 0 1px 0 rgba(255,255,255,0.12) inset, 0 8px 20px -10px rgba(0,0,0,0.6);
  --focus-ring: 0 0 0 3px rgba(79,70,229,0.35);
}

[data-theme="dark"], .inverso {
  color-scheme: dark;
  --bg: var(--color-preto-950);
  --bg-suave: var(--color-preto-900);
  --bg-card: var(--color-preto-900);
  --bg-inverso: var(--color-branco-0);
  --text: var(--color-branco-50);
  --text-muted: var(--color-cinza-400);
  --text-subtle: var(--color-cinza-500);
  --text-inverso: var(--color-preto-950);
  --border: rgba(255,255,255,0.10);
  --border-forte: rgba(255,255,255,0.18);
  --primary: var(--color-branco-0);
  --on-primary: var(--color-preto-950);
  --accent: var(--color-indigo-300);
  --accent-soft: rgba(127,117,238,0.18);
  --accent-strong: var(--color-indigo-300);
  --link: var(--color-indigo-300);
  --gradient-marca: linear-gradient(120deg, var(--color-indigo-900) 0%, var(--color-indigo-700) 45%, var(--color-indigo-violeta) 100%);
  --positive: #4CC46F;
  --positive-soft: rgba(76,196,111,0.16);
  --negative: #FF5C6E;
  --negative-soft: rgba(255,92,110,0.16);
  --warning: #F0A04B;
  --warning-soft: rgba(240,160,75,0.16);
  --series-1: var(--color-serie-1-escuro);
  --series-2: var(--color-serie-2-escuro);
  --series-3: var(--color-serie-3-escuro);
  --series-4: var(--color-serie-4-escuro);
  --shadow-card: 0 0 0 0.5px rgba(255,255,255,0.06), 0 10px 30px -10px rgba(0,0,0,0.8);
  --shadow-elevated: 0 0 0 0.5px rgba(255,255,255,0.08), 0 30px 70px -20px rgba(0,0,0,0.9);
  --shadow-botao: 0 1px 0 rgba(255,255,255,0.4) inset, 0 8px 20px -10px rgba(0,0,0,0.6);
  --focus-ring: 0 0 0 3px rgba(127,117,238,0.45);
}

/* 3. Componente */
:root {
  --secao-padding-y: clamp(64px, 9vw, 120px);
  --botao-height: 48px;
  --botao-height-sm: 38px;
  --botao-radius: var(--radius-full);
  --botao-padding-x: 24px;
  --card-radius: var(--radius-lg);
  --card-padding: var(--space-6);
  --linha-altura: 40px;
  --input-height: 48px;
  --input-radius: var(--radius-md);
  --motion-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
  --motion-ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
  --motion-duration-press: 160ms;
  --motion-duration-ui: 200ms;
  --motion-duration-reveal: 600ms;
}
