/* GERADO por scripts/build-ds.mjs a partir de design-system/project/tokens.json — não edite à mão. */
:root{
  --brand-950:#071245;
  --brand-900:#0a195e;
  --brand-700:#16288a;
  --brand-500:#2a44c9;
  --brand-400:#3653e0;
  --brand-200:#9fb0ff;
  --brand-100:#dfe5ff;
  --surface-page:#f6f6f6;
  --surface-raised:#ffffff;
  --line:#e5e7eb;
  --ink:#111827;
  --ink-muted:#5b6270;
  --ring-on-page:#ffffff;
  --action:var(--brand-900);
  --action-hover:var(--brand-700);
  --on-action:#ffffff;
  --on-brand:#ffffff;
  --accent-text:var(--brand-900);
  --focus-ring:#2a44c9;
  --whatsapp:#15803d;
  --whatsapp-hover:#166534;
  --danger:#b91c1c;
  --danger-hover:#991b1b;
  --info:#2563eb;
  --success-bg:#dcfce7;
  --success-ink:#166534;
  --warning-bg:#fef3c7;
  --warning-ink:#92400e;
  --error-bg:#fee2e2;
  --error-ink:#991b1b;
  --glass:#fffffff2;
  --glass-ink:#111827;
  --scrim:#00000099;
  --toast-bg:#111827;
  --media-ground:#0b0d12;
  --placeholder-a:#e2e8f0;
  --placeholder-b:#e9eef4;
  --placeholder-ink:#475569;
  --shadow-card:0 1px 3px rgba(0,0,0,0.06);
  --shadow-card-hover:0 12px 28px rgba(0,0,0,0.12);
  --shadow-panel:0 4px 20px rgba(0,0,0,0.07);
  --shadow-float:0 6px 18px rgba(0,0,0,0.18);
  --shadow-modal:0 20px 50px rgba(0,0,0,0.3);
  --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:14px;
  --radius-pill:999px;
  --font-display:"DM Serif Display", Georgia, "Times New Roman", serif;
  --font-sans:Manrope, system-ui, -apple-system, "Segoe UI", sans-serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --surface-page:#0f1115;
  --surface-raised:#181b21;
  --line:#2a2f37;
  --ink:#f3f4f6;
  --ink-muted:#9ca3af;
  --ring-on-page:#2a2f37;
  --action:var(--brand-500);
  --action-hover:var(--brand-400);
  --accent-text:var(--brand-200);
  --focus-ring:#9fb0ff;
  --placeholder-a:#1e293b;
  --placeholder-b:#243247;
  --placeholder-ink:#94a3b8;
}}
:root[data-theme="dark"]{
  --surface-page:#0f1115;
  --surface-raised:#181b21;
  --line:#2a2f37;
  --ink:#f3f4f6;
  --ink-muted:#9ca3af;
  --ring-on-page:#2a2f37;
  --action:var(--brand-500);
  --action-hover:var(--brand-400);
  --accent-text:var(--brand-200);
  --focus-ring:#9fb0ff;
  --placeholder-a:#1e293b;
  --placeholder-b:#243247;
  --placeholder-ink:#94a3b8;
}
.text-display{font-family:var(--font-display);font-size:34px;line-height:40px;font-weight:400}
.text-heading-lg{font-family:var(--font-display);font-size:32px;line-height:38px;font-weight:400}
.text-heading-md{font-family:var(--font-display);font-size:26px;line-height:32px;font-weight:400}
.text-heading-sm{font-family:var(--font-display);font-size:20px;line-height:26px;font-weight:400}
.text-title-lg{font-family:var(--font-sans);font-size:24px;line-height:30px;font-weight:800;letter-spacing:0.01em}
.text-title-card{font-family:var(--font-sans);font-size:16px;line-height:22px;font-weight:700;letter-spacing:0.02em}
.text-body-lg{font-family:var(--font-sans);font-size:16px;line-height:26px;font-weight:400}
.text-body{font-family:var(--font-sans);font-size:15px;line-height:22px;font-weight:400}
.text-body-sm{font-family:var(--font-sans);font-size:14px;line-height:20px;font-weight:500}
.text-label{font-family:var(--font-sans);font-size:13px;line-height:18px;font-weight:600}
.text-caption{font-family:var(--font-sans);font-size:12px;line-height:16px;font-weight:600}
.text-button{font-family:var(--font-sans);font-size:14px;line-height:20px;font-weight:700}
.text-price{font-family:var(--font-sans);font-size:19px;line-height:24px;font-weight:800}
.text-price-lg{font-family:var(--font-sans);font-size:28px;line-height:34px;font-weight:800}
