/* =========================================================
   Values Corp · Design System — capa de tokens
   ---------------------------------------------------------
   GENERADO desde la entrega del sistema de diseño:
     "RV_ Primera entrega del sistema de diseño (versión provisoria)"
     -> globals.css (auto-generado por Style Dictionary, formato shadcn)

   Por qué existe este archivo y no usamos globals.css tal cual:
   globals.css es un artefacto de build de Tailwind v4. Contiene
   `@import "tailwindcss"`, `@theme inline` y `@source`, que son
   directivas de compilación (el navegador las ignora), y depende de
   text-styles.css y effect-styles.css, que NO vinieron en la entrega.
   Este sitio es HTML estático sin build, así que extraemos solo la
   capa de variables, que sí es 100% estándar.

   Cambios respecto del original (los únicos):
     - pesos tipográficos de nombre a numérico (SemiBold -> 600)
     - familias tipográficas con fallbacks de sistema
   Los valores de color, espaciado y sombra son idénticos a la entrega.

   Para actualizar cuando llegue una entrega nueva, re-generar. NO editar a mano.
   ========================================================= */

:root {
  /* Colors */
  --categorical-chart-1: #f54a00;
  --categorical-chart-2: #009689;
  --categorical-chart-3: #104e64;
  --categorical-chart-4: #ffb900;
  --categorical-chart-5: #fe9a00;
  --sentiment-positive: #009689;
  --sentiment-negative: #f54a00;
  --shades-fill: #bfdeff;
  --shades-stroke: #8ec5ff;
  --shades-fill-2: #aaccff;
  --shades-stroke-2: #3f8dff;
  --surface-base: var(--neutral-50);
  --surface-body: var(--white-alpha-100);
  --surface-raised: var(--white-alpha-100);
  --surface-floating: var(--white-alpha-100);
  --surface-input: var(--white-alpha-100);
  --surface-scrim: var(--black-alpha-60);
  --surface-media-overlay: var(--black-alpha-0);
  --surface-inverse: var(--brand-neutrals-900);
  --on-surface-primary: var(--brand-neutrals-950);
  --on-surface-raised: var(--brand-neutrals-950);
  --on-surface-floating: var(--brand-neutrals-950);
  --on-surface-secondary: var(--white-alpha-100);
  --on-surface-mid: var(--brand-neutrals-600);
  --on-surface-inverse: var(--brand-neutrals-50);
  --on-surface-contrast: var(--black);
  --fill-primary: var(--brand-shades-500);
  --fill-primary-hover: var(--brand-shades-400);
  --fill-primary-active: var(--brand-shades-300);
  --fill-secondary: var(--casal-500);
  --fill-secondary-hover: var(--casal-400);
  --fill-secondary-active: var(--casal-300);
  --fill-accent-0: var(--brand-neutrals-50);
  --fill-accent-2: var(--brand-neutrals-200);
  --fill-accent-3: var(--brand-neutrals-300);
  --fill-accent: var(--brand-neutrals-100);
  --fill-muted: var(--brand-neutrals-100);
  --fill-destructive: var(--mojo-500);
  --fill-destructive-subtle: var(--mojo-50);
  --fill-destructive-hover: var(--mojo-400);
  --fill-destructive-active: var(--mojo-300);
  --fill-success: var(--electric-lime-500);
  --fill-success-hover: var(--electric-lime-400);
  --fill-success-active: var(--electric-lime-300);
  --fill-ghost-rest: var(--white-alpha-001);
  --fill-ghost-hover: var(--black-alpha-5);
  --fill-ghost-active: var(--black-alpha-10);
  --fill-warning: var(--clementine-500);
  --fill-warning-hover: var(--clementine-400);
  --fill-warning-active: var(--clementine-300);
  --text-on-primary: var(--white);
  --text-on-secondary: var(--white-alpha-100);
  --text-on-accent: var(--brand-neutrals-900);
  --text-muted: var(--brand-neutrals-500);
  --text-on-destructive: var(--white-alpha-100);
  --text-on-success: var(--brand-neutrals-950);
  --text-destructive: var(--mojo-600);
  --text-on-ghost: var(--brand-neutrals-700);
  --text-on-warning: var(--white-alpha-100);
  --border-0: var(--brand-neutrals-50);
  --border-1: var(--brand-neutrals-100);
  --border-3: var(--brand-neutrals-300);
  --border-4: var(--brand-neutrals-400);
  --border-5: var(--brand-neutrals-500);
  --border-default: var(--brand-neutrals-200);
  --border-destructive: var(--mojo-500);
  --border-outline-rest: var(--white-alpha-10);
  --border-outline-hover: var(--black-alpha-333);
  --border-outline-active: var(--black-alpha-5);
  --ring-default: var(--brand-neutrals-300);
  --ring-error: var(--mojo-300);
  --shadow-subtle: var(--black-alpha-5);
  --shadow-default: var(--black-alpha-10);
  --decorative-gradient-1: var(--pink-500);
  --decorative-gradient-2: var(--sky-500);
  --decorative-gradient-3: var(--orange-500);
  --sidebar: var(--casal-900);
  --sidebar-foreground: var(--brand-neutrals-300);
  --sidebar-accent: var(--brand-neutrals-100);
  --sidebar-accent-foreground: var(--casal-900);
  --sidebar-primary: var(--surface-inverse);
  --sidebar-primary-foreground: var(--on-surface-inverse);
  --sidebar-border: var(--brand-neutrals-800);
  --sidebar-ring: var(--brand-neutrals-700);
  --sidebar-foreground-soft: var(--brand-neutrals-300);
  /* spacing */
  --0: 0;
  --1: 0.25rem;
  --2: 0.5rem;
  --3: 0.75rem;
  --4: 1rem;
  --5: 1.25rem;
  --6: 1.5rem;
  --7: 1.75rem;
  --8: 2rem;
  --9: 2.25rem;
  --10: 2.5rem;
  --11: 2.75rem;
  --12: 3rem;
  --14: 3.5rem;
  --16: 4rem;
  --20: 5rem;
  --24: 6rem;
  --28: 7rem;
  --32: 8rem;
  --36: 9rem;
  --40: 10rem;
  --44: 11rem;
  --48: 12rem;
  --52: 13rem;
  --56: 14rem;
  --60: 15rem;
  --64: 16rem;
  --72: 18rem;
  --80: 20rem;
  --96: 24rem;
  --0-5: 0.125rem;
  --0-75: 0.1875rem;
  --1-25: 0.3125rem;
  --1-5: 0.375rem;
  --2-5: 0.625rem;
  --3-5: 0.875rem;
  --infinite: 624.9375rem;
  /* shadows */
  --2xs-color: var(--shadow-subtle);
  --2xs-x: 0px;
  --2xs-y: 1px;
  --2xs-blur: 0px;
  --2xs-spread: 0px;
  --xs-color: var(--shadow-subtle);
  --xs-x: 0px;
  --xs-y: 1px;
  --xs-blur: 2px;
  --xs-spread: 0px;
  --sm-shadow-1-x: 0px;
  --sm-shadow-1-y: 1px;
  --sm-shadow-1-blur: 3px;
  --sm-shadow-1-spread: 0px;
  --sm-shadow-2-x2: 0px;
  --sm-shadow-2-y: 1px;
  --sm-shadow-2-blur: 2px;
  --sm-shadow-2-spread: -1px;
  --sm-color: var(--shadow-default);
  --md-color: var(--shadow-default);
  --md-shadow-1-x: 0px;
  --md-shadow-1-y: 4px;
  --md-shadow-1-blur: 6px;
  --md-shadow-1-spread: -1px;
  --md-shadow-2-x: 0px;
  --md-shadow-2-y: 2px;
  --md-shadow-2-blur: 4px;
  --md-shadow-2-spread: -2px;
  --lg-shadow-1-x: 0px;
  --lg-shadow-1-y: 10px;
  --lg-shadow-1-blur: 15px;
  --lg-shadow-1-spread: -3px;
  --lg-shadow-2-x: 0px;
  --lg-shadow-2-y: 4px;
  --lg-shadow-2-blur: 6px;
  --lg-shadow-2-spread: -4px;
  --lg-color: var(--shadow-default);
  --xl-color: var(--shadow-default);
  --xl-shadow-1-x: 0px;
  --xl-shadow-1-y: 20px;
  --xl-shadow-1-blur: 25px;
  --xl-shadow-1-spread: -5px;
  --xl-shadow-2-x: 0px;
  --xl-shadow-2-y: 8px;
  --xl-shadow-2-blur: 10px;
  --xl-shadow-2-spread: -6px;
  --2xl-color: var(--shadow-default);
  --2xl-x: 0px;
  --2xl-y: 25px;
  --2xl-blur: 50px;
  --2xl-spread: -12px;
  /* layout */
  --gutter-xs: 16px;
  --gutter-sm: 16px;
  --gutter-md: 24px;
  --gutter-lg: 24px;
  --gutter-xl: 32px;
  --gutter-2xl: 32px;
  --margin-xs: 16px;
  --margin-sm: 24px;
  --margin-md: 24px;
  --margin-lg: 32px;
  --margin-xl: 32px;
  --margin-2xl: 48px;
  --width-xs: 375px;
  --width-sm: 640px;
  --width-md: 768px;
  --width-lg: 1024px;
  --width-xl: 1280px;
  --width-2xl: 1536px;
  --height-xs: 800px;
  --height-sm: 800px;
  --height-md: 800px;
  --height-lg: 800px;
  --height-xl: 800px;
  --height-2xl: 800px;
  /* primitives-colors */
  --neutral-50: #fafafa;
  --neutral-100: #f5f5f5;
  --neutral-200: #e5e5e5;
  --neutral-300: #d4d4d4;
  --neutral-400: #a3a3a3;
  --neutral-500: #737373;
  --neutral-600: #525252;
  --neutral-700: #404040;
  --neutral-800: #262626;
  --neutral-900: #171717;
  --neutral-950: #0a0a0a;
  --red-50: #fef2f2;
  --red-100: #ffe2e2;
  --red-200: #fecaca;
  --red-300: #fca5a5;
  --red-400: #f87171;
  --red-500: #ef4444;
  --red-600: #dc2626;
  --red-700: #b91c1c;
  --red-800: #991b1b;
  --red-900: #7f1d1d;
  --red-950: #450a0a;
  --blue-50: #eff6ff;
  --blue-100: #dbeafe;
  --blue-200: #bfdbfe;
  --blue-300: #93c5fd;
  --blue-400: #60a5fa;
  --blue-500: #3b82f6;
  --blue-600: #2563eb;
  --blue-700: #1d4ed8;
  --blue-800: #1e40af;
  --blue-900: #1e3a8a;
  --blue-950: #172554;
  --white: #ffffff;
  --white-alpha-0: #ffffff00;
  --white-alpha-001: #ffffff01;
  --white-alpha-333: #ffffff08;
  --white-alpha-5: #ffffff0d;
  --white-alpha-10: #ffffff1a;
  --white-alpha-15: #ffffff26;
  --white-alpha-20: #ffffff33;
  --white-alpha-30: #ffffff4c;
  --white-alpha-40: #ffffff66;
  --white-alpha-50: #ffffff80;
  --white-alpha-60: #ffffff99;
  --white-alpha-70: #ffffffb2;
  --white-alpha-80: #ffffffcc;
  --white-alpha-90: #ffffffe6;
  --white-alpha-95: #fffffff2;
  --white-alpha-100: #ffffffff;
  --black: #000000;
  --black-alpha-0: #00000000;
  --black-alpha-001: #00000001;
  --black-alpha-333: #00000008;
  --black-alpha-5: #0000000d;
  --black-alpha-10: #0000001a;
  --black-alpha-15: #00000026;
  --black-alpha-20: #00000033;
  --black-alpha-30: #0000004c;
  --black-alpha-40: #00000066;
  --black-alpha-50: #00000080;
  --black-alpha-60: #00000099;
  --black-alpha-70: #000000b2;
  --black-alpha-80: #000000cc;
  --black-alpha-90: #000000e6;
  --black-alpha-95: #000000f2;
  --black-alpha-100: #000000ff;
  --slate-50: #f8fafc;
  --slate-100: #f1f5f9;
  --slate-200: #e2e8f0;
  --slate-300: #cbd5e1;
  --slate-400: #94a3b8;
  --slate-500: #64748b;
  --slate-600: #475569;
  --slate-700: #334155;
  --slate-800: #1e293b;
  --slate-900: #0f172a;
  --slate-950: #020617;
  --gray-50: #f9fafb;
  --gray-100: #f3f4f6;
  --gray-200: #e5e7eb;
  --gray-300: #d1d5db;
  --gray-400: #9ca3af;
  --gray-500: #6b7280;
  --gray-600: #4b5563;
  --gray-700: #374151;
  --gray-800: #1f2937;
  --gray-900: #111827;
  --gray-950: #030712;
  --zinc-50: #fafafa;
  --zinc-100: #f4f4f5;
  --zinc-200: #e4e4e7;
  --zinc-300: #d4d4d8;
  --zinc-400: #a1a1aa;
  --zinc-500: #71717a;
  --zinc-600: #52525b;
  --zinc-700: #3f3f46;
  --zinc-800: #27272a;
  --zinc-900: #18181b;
  --zinc-950: #09090b;
  --stone-50: #fafaf9;
  --stone-100: #f5f5f4;
  --stone-200: #e7e5e4;
  --stone-300: #d6d3d1;
  --stone-400: #a8a29e;
  --stone-500: #78716c;
  --stone-600: #57534e;
  --stone-700: #44403c;
  --stone-800: #292524;
  --stone-900: #1c1917;
  --stone-950: #0c0a09;
  --orange-50: #fff7ed;
  --orange-100: #ffedd5;
  --orange-200: #fed7aa;
  --orange-300: #fdba74;
  --orange-400: #fb923c;
  --orange-500: #f97316;
  --orange-600: #ea580c;
  --orange-700: #c2410c;
  --orange-800: #9a3412;
  --orange-900: #7c2d12;
  --orange-950: #431407;
  --amber-50: #fffbeb;
  --amber-100: #fef3c7;
  --amber-200: #fde68a;
  --amber-300: #fcd34d;
  --amber-400: #fbbf24;
  --amber-500: #f59e0b;
  --amber-600: #d97706;
  --amber-700: #b45309;
  --amber-800: #92400e;
  --amber-900: #78350f;
  --amber-950: #451a03;
  --lime-50: #f7fee7;
  --lime-100: #ecfccb;
  --lime-200: #d9f99d;
  --lime-300: #bef264;
  --lime-400: #a3e635;
  --lime-500: #84cc16;
  --lime-600: #65a30d;
  --lime-700: #4d7c0f;
  --lime-800: #3f6212;
  --lime-900: #365314;
  --lime-950: #1a2e05;
  --emerald-50: #ecfdf5;
  --emerald-100: #d1fae5;
  --emerald-200: #a7f3d0;
  --emerald-300: #6ee7b7;
  --emerald-400: #34d399;
  --emerald-500: #10b981;
  --emerald-600: #059669;
  --emerald-700: #047857;
  --emerald-800: #065f46;
  --emerald-900: #064e3b;
  --emerald-950: #022c22;
  --teal-50: #f0fdfa;
  --teal-100: #ccfbf1;
  --teal-200: #99f6e4;
  --teal-300: #5eead4;
  --teal-400: #2dd4bf;
  --teal-500: #14b8a6;
  --teal-600: #0d9488;
  --teal-700: #0f766e;
  --teal-800: #115e59;
  --teal-900: #134e4a;
  --teal-950: #042f2e;
  --cyan-50: #ecfeff;
  --cyan-100: #cffafe;
  --cyan-200: #a5f3fc;
  --cyan-300: #67e8f9;
  --cyan-400: #22d3ee;
  --cyan-500: #06b6d4;
  --cyan-600: #0891b2;
  --cyan-700: #0e7490;
  --cyan-800: #155e75;
  --cyan-900: #164e63;
  --cyan-950: #083344;
  --sky-50: #f0f9ff;
  --sky-100: #e0f2fe;
  --sky-200: #bae6fd;
  --sky-300: #7dd3fc;
  --sky-400: #38bdf8;
  --sky-500: #0ea5e9;
  --sky-600: #0284c7;
  --sky-700: #0369a1;
  --sky-800: #075985;
  --sky-900: #0c4a6e;
  --sky-950: #082f49;
  --indigo-50: #eef2ff;
  --indigo-100: #e0e7ff;
  --indigo-200: #c7d2fe;
  --indigo-300: #a5b4fc;
  --indigo-400: #818cf8;
  --indigo-500: #6366f1;
  --indigo-600: #4f46e5;
  --indigo-700: #4338ca;
  --indigo-800: #3730a3;
  --indigo-900: #312e81;
  --indigo-950: #1e1b4b;
  --violet-50: #f5f3ff;
  --violet-100: #ede9fe;
  --violet-200: #ddd6fe;
  --violet-300: #c4b5fd;
  --violet-400: #a78bfa;
  --violet-500: #8b5cf6;
  --violet-600: #7c3aed;
  --violet-700: #6d28d9;
  --violet-800: #5b21b6;
  --violet-900: #4c1d95;
  --violet-950: #2e1065;
  --purple-50: #faf5ff;
  --purple-100: #f3e8ff;
  --purple-200: #e9d5ff;
  --purple-300: #d8b4fe;
  --purple-400: #c084fc;
  --purple-500: #a855f7;
  --purple-600: #9333ea;
  --purple-700: #7e22ce;
  --purple-800: #6b21a8;
  --purple-900: #581c87;
  --purple-950: #3b0764;
  --fuchsia-50: #fdf4ff;
  --fuchsia-100: #fae8ff;
  --fuchsia-200: #f5d0fe;
  --fuchsia-300: #f0abfc;
  --fuchsia-400: #e879f9;
  --fuchsia-500: #d946ef;
  --fuchsia-600: #c026d3;
  --fuchsia-700: #a21caf;
  --fuchsia-800: #86198f;
  --fuchsia-900: #701a75;
  --fuchsia-950: #4a044e;
  --pink-50: #fdf2f8;
  --pink-100: #fce7f3;
  --pink-200: #fbcfe8;
  --pink-300: #f9a8d4;
  --pink-400: #f472b6;
  --pink-500: #ec4899;
  --pink-600: #db2777;
  --pink-700: #be185d;
  --pink-800: #9d174d;
  --pink-900: #831843;
  --pink-950: #500724;
  --rose-50: #fff1f2;
  --rose-100: #ffe4e6;
  --rose-200: #fecdd3;
  --rose-300: #fda4af;
  --rose-400: #fb7185;
  --rose-500: #f43f5e;
  --rose-600: #e11d48;
  --rose-700: #be123c;
  --rose-800: #9f1239;
  --rose-900: #881337;
  --rose-950: #4c0519;
  --green-50: #f0fdf4;
  --green-100: #dcfce7;
  --green-200: #bbf7d0;
  --green-300: #86efac;
  --green-400: #4ade80;
  --green-500: #22c55e;
  --green-600: #16a34a;
  --green-700: #15803d;
  --green-800: #166534;
  --green-900: #14532d;
  --green-950: #052e16;
  --yellow-50: #fefce8;
  --yellow-100: #fef9c3;
  --yellow-200: #fef08a;
  --yellow-300: #fde047;
  --yellow-400: #facc15;
  --yellow-500: #eab308;
  --yellow-600: #ca8a04;
  --yellow-700: #a16207;
  --yellow-800: #854d0e;
  --yellow-900: #713f12;
  --yellow-950: #422006;
  --brand-neutrals-50: var(--neutral-50);
  --brand-neutrals-100: var(--neutral-100);
  --brand-neutrals-200: var(--neutral-200);
  --brand-neutrals-300: var(--neutral-300);
  --brand-neutrals-400: var(--neutral-400);
  --brand-neutrals-500: var(--neutral-500);
  --brand-neutrals-600: var(--neutral-600);
  --brand-neutrals-700: var(--neutral-700);
  --brand-neutrals-800: var(--neutral-800);
  --brand-neutrals-900: var(--neutral-900);
  --brand-neutrals-950: var(--neutral-950);
  --brand-shades-50: var(--chelsea-cucumber-50);
  --brand-shades-100: var(--chelsea-cucumber-100);
  --brand-shades-200: var(--chelsea-cucumber-200);
  --brand-shades-300: var(--chelsea-cucumber-300);
  --brand-shades-400: var(--chelsea-cucumber-400);
  --brand-shades-500: var(--chelsea-cucumber-500);
  --brand-shades-600: var(--chelsea-cucumber-600);
  --brand-shades-700: var(--chelsea-cucumber-700);
  --brand-shades-800: var(--chelsea-cucumber-800);
  --brand-shades-900: var(--chelsea-cucumber-900);
  --brand-shades-950: var(--chelsea-cucumber-950);
  --brand-combinations-1-brand: var(--brand-shades-600);
  --brand-combinations-1-brand-foreground: var(--white);
  --brand-combinations-2-brand: var(--brand-shades-100);
  --brand-combinations-2-brand-foreground: var(--brand-shades-800);
  --brand-combinations-3-brand: var(--brand-shades-950);
  --brand-combinations-3-brand-foreground: var(--brand-shades-300);
  --chelsea-cucumber-50: #F4F8F1;
  --chelsea-cucumber-100: #E6F1DF;
  --chelsea-cucumber-200: #D0E4C3;
  --chelsea-cucumber-300: #B3D2A0;
  --chelsea-cucumber-400: #8CB874;
  --chelsea-cucumber-500: #76AD5A;
  --chelsea-cucumber-600: #598B42;
  --chelsea-cucumber-700: #466C36;
  --chelsea-cucumber-800: #3B5730;
  --chelsea-cucumber-900: #354B2D;
  --chelsea-cucumber-950: #192814;
  --casal-50: #DAFDFF;
  --casal-100: #A2F6FF;
  --casal-200: #50ECFF;
  --casal-300: #00BED7;
  --casal-400: #00697A;
  --casal-500: #00687A;
  --casal-600: #00576D;
  --casal-700: #004457;
  --casal-800: #003545;
  --casal-900: #002A3A;
  --casal-950: #001D29;
  --clementine-50: #FEF8EE;
  --clementine-100: #FDF0D7;
  --clementine-200: #F9DDAF;
  --clementine-300: #F5C47C;
  --clementine-400: #F0A247;
  --clementine-500: #EC8723;
  --clementine-600: #E5711A;
  --clementine-700: #B75317;
  --clementine-800: #92421A;
  --clementine-900: #763818;
  --clementine-950: #3F1B0B;
  --mojo-50: #FDF4F3;
  --mojo-100: #FBE7E5;
  --mojo-200: #F8D4D0;
  --mojo-300: #F3B4AE;
  --mojo-400: #EA897F;
  --mojo-500: #DD6256;
  --mojo-600: #C84437;
  --mojo-700: #A8382D;
  --mojo-800: #8C3128;
  --mojo-900: #752E27;
  --mojo-950: #3F1410;
  --electric-lime-50: #FAFFE7;
  --electric-lime-100: #EFFEC6;
  --electric-lime-200: #E3FD92;
  --electric-lime-300: #D3FB52;
  --electric-lime-400: #C5F520;
  --electric-lime-500: #C2F40B;
  --electric-lime-600: #99BA05;
  --electric-lime-700: #7D9108;
  --electric-lime-800: #69750E;
  --electric-lime-900: #5C6411;
  --electric-lime-950: #343905;
  /* Typography */
  --font-definitions-font-family-sans: 'Montserrat', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-definitions-font-family-serif: 'Montserrat', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-definitions-font-family-headings: var(--font-definitions-font-family-sans);
  --font-definitions-font-family-body: var(--font-definitions-font-family-sans);
  --font-definitions-font-family-monospace: 'Montserrat', ui-monospace, SFMono-Regular, monospace;
  --heading-h1-font-family: var(--font-definitions-font-family-headings);
  --heading-h1-weight: 600;
  --heading-h1-font-size: 3rem;
  --heading-h1-line-height: 3rem;
  --heading-h1-letter-spacing: -0.0937rem;
  --heading-h2-font-family: var(--font-definitions-font-family-headings);
  --heading-h2-weight: 600;
  --heading-h2-font-size: 2.25rem;
  --heading-h2-line-height: 2.25rem;
  --heading-h2-letter-spacing: -0.0781rem;
  --heading-h3-font-family: var(--font-definitions-font-family-headings);
  --heading-h3-weight: 600;
  --heading-h3-font-size: 1.875rem;
  --heading-h3-line-height: 1.875rem;
  --heading-h3-letter-spacing: -0.0625rem;
  --heading-h4-font-family: var(--font-definitions-font-family-headings);
  --heading-h4-weight: 600;
  --heading-h4-font-size: 1.5rem;
  --heading-h4-line-height: 1.8rem;
  --heading-h4-letter-spacing: -0.0625rem;
  --heading-h5-font-family: var(--font-definitions-font-family-headings);
  --heading-h5-weight: 600;
  --heading-h5-font-size: 1.25rem;
  --heading-h5-line-height: 1.5rem;
  --heading-h5-letter-spacing: 0;
  --heading-h6-font-family: var(--font-definitions-font-family-headings);
  --heading-h6-weight: 600;
  --heading-h6-font-size: 1rem;
  --heading-h6-line-height: 1.25rem;
  --heading-h6-letter-spacing: 0;
  --monospaced-font-size: 1rem;
  --monospaced-line-height: 1.5rem;
  --monospaced-spacing: 16;
  --monospaced-letter-spacing: 0;
  --monospaced-font-weight: 400;
  --caption-font-size: 0.875rem;
  --caption-line-height: 1.3125rem;
  --caption-spacing: 14;
  --caption-letter-spacing: 0.0938rem;
  --caption-font-weight: 400;
  --body-body-weight: 400;
  --body-body-bold-weight: 600;
  --body-body-medium-weight: 500;
  --body-lg-font-size: 1.125rem;
  --body-lg-line-height: 1.6875rem;
  --body-lg-letter-spacing: 0;
  --body-md-font-size: 1rem;
  --body-md-line-height: 1.5rem;
  --body-md-letter-spacing: 0;
  --body-sm-font-size: 0.875rem;
  --body-sm-line-height: 1.25rem;
  --body-sm-letter-spacing: 0;
  --body-xs-font-size: 0.75rem;
  --body-xs-line-height: 1rem;
  --body-xs-letter-spacing: 0;
}

/* Modo oscuro del sistema. Aplicar con <html class="dark">.
   El sitio público hoy corre solo en claro; queda listo para el portal. */
.dark {
  --categorical-chart-1: #1447e6;
  --categorical-chart-2: #00bc7d;
  --categorical-chart-3: #fd9a00;
  --categorical-chart-4: #ad46ff;
  --categorical-chart-5: #ff2056;
  --sentiment-positive: #00bc7d;
  --sentiment-negative: #ff2056;
  --shades-fill: #475d75;
  --shades-stroke: #8ec5ff;
  --shades-fill-2: #1f4176;
  --shades-stroke-2: #3f8dff;
  --surface-base: var(--neutral-950);
  --surface-body: var(--brand-neutrals-950);
  --surface-raised: var(--brand-neutrals-900);
  --surface-floating: var(--brand-neutrals-800);
  --surface-input: var(--white-alpha-5);
  --surface-scrim: var(--black-alpha-60);
  --surface-media-overlay: var(--black-alpha-80);
  --surface-inverse: var(--brand-neutrals-50);
  --on-surface-primary: var(--brand-neutrals-50);
  --on-surface-raised: var(--white-alpha-100);
  --on-surface-floating: var(--white-alpha-100);
  --on-surface-secondary: var(--white-alpha-100);
  --on-surface-mid: var(--brand-neutrals-400);
  --on-surface-inverse: var(--brand-neutrals-900);
  --on-surface-contrast: var(--white);
  --fill-primary: var(--brand-shades-500);
  --fill-primary-hover: var(--brand-shades-600);
  --fill-primary-active: var(--brand-shades-700);
  --fill-secondary: var(--casal-500);
  --fill-secondary-hover: var(--casal-600);
  --fill-secondary-active: var(--casal-700);
  --fill-accent-0: var(--brand-neutrals-950);
  --fill-accent-2: var(--brand-neutrals-800);
  --fill-accent-3: var(--brand-neutrals-700);
  --fill-accent: var(--brand-neutrals-900);
  --fill-muted: var(--brand-neutrals-900);
  --fill-destructive: var(--mojo-500);
  --fill-destructive-subtle: var(--mojo-950);
  --fill-destructive-hover: var(--mojo-600);
  --fill-destructive-active: var(--mojo-700);
  --fill-success: var(--electric-lime-500);
  --fill-success-hover: var(--electric-lime-600);
  --fill-success-active: var(--electric-lime-700);
  --fill-ghost-rest: var(--white-alpha-001);
  --fill-ghost-hover: var(--white-alpha-10);
  --fill-ghost-active: var(--white-alpha-15);
  --fill-warning: var(--clementine-500);
  --fill-warning-hover: var(--clementine-600);
  --fill-warning-active: var(--clementine-700);
  --text-on-primary: var(--white);
  --text-on-secondary: var(--white-alpha-100);
  --text-on-accent: var(--brand-neutrals-100);
  --text-muted: var(--brand-neutrals-400);
  --text-on-destructive: var(--white-alpha-100);
  --text-on-success: var(--brand-neutrals-950);
  --text-destructive: var(--mojo-400);
  --text-on-ghost: var(--brand-neutrals-200);
  --text-on-warning: var(--white-alpha-100);
  --border-0: var(--brand-neutrals-950);
  --border-1: var(--brand-neutrals-900);
  --border-3: var(--brand-neutrals-700);
  --border-4: var(--brand-neutrals-600);
  --border-5: var(--brand-neutrals-500);
  --border-default: var(--brand-neutrals-700);
  --border-destructive: var(--mojo-500);
  --border-outline-rest: var(--white-alpha-5);
  --border-outline-hover: var(--white-alpha-10);
  --border-outline-active: var(--white-alpha-15);
  --ring-default: var(--brand-neutrals-500);
  --ring-error: var(--mojo-900);
  --shadow-subtle: var(--black-alpha-30);
  --shadow-default: var(--black-alpha-40);
  --decorative-gradient-1: var(--pink-700);
  --decorative-gradient-2: var(--sky-700);
  --decorative-gradient-3: var(--orange-700);
  --sidebar: var(--casal-900);
  --sidebar-foreground: var(--brand-neutrals-300);
  --sidebar-accent: var(--casal-800);
  --sidebar-accent-foreground: var(--brand-neutrals-100);
  --sidebar-primary: var(--surface-inverse);
  --sidebar-primary-foreground: var(--on-surface-inverse);
  --sidebar-border: var(--brand-neutrals-800);
  --sidebar-ring: var(--brand-neutrals-700);
  --sidebar-foreground-soft: var(--brand-neutrals-300);
}

/* ---------------------------------------------------------
   Puente hacia el sitio: tokens de layout propios, que el
   sistema de diseño no cubre.
   --------------------------------------------------------- */
:root {
  /* El DS solo entrega --radius-default (pill), y lo hace dentro del bloque
     @theme de Tailwind que aquí no aplica, así que lo redeclaramos con su
     valor original. No trae escala de radios para tarjetas/inputs, de modo
     que mantenemos la del sitio hasta que el sistema la incluya. */
  --radius-default: 624.9375rem;
  --radius-pill: var(--radius-default);
  --radius-card: 18px;
  --radius-input: 11px;
  --radius-sm: 10px;

  /* Sombras compuestas a partir de las piezas sueltas del DS. */
  --elevation-sm: 0 1px 3px 0 var(--shadow-default), 0 1px 2px -1px var(--shadow-default);
  --elevation-md: 0 4px 6px -1px var(--shadow-default), 0 2px 4px -2px var(--shadow-default);
  --elevation-lg: 0 10px 15px -3px var(--shadow-default), 0 4px 6px -4px var(--shadow-default);
  --elevation-xl: 0 20px 25px -5px var(--shadow-default), 0 8px 10px -6px var(--shadow-default);

  /* Ancho de contenido: --container-default del bloque @theme de la entrega. */
  --container-default: 1280px;
}
