/* OPOS-IA — tokens generados desde el sistema de diseño (tokens.json). No editar a mano: cambiar en el sistema y regenerar. */

@font-face{font-family:"Sora";src:url("../fonts/Sora-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Sora";src:url("../fonts/Sora-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Sora";src:url("../fonts/Sora-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Sora";src:url("../fonts/Sora-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Sora";src:url("../fonts/Sora-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Figtree";src:url("../fonts/Figtree-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Figtree";src:url("../fonts/Figtree-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Figtree";src:url("../fonts/Figtree-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Figtree";src:url("../fonts/Figtree-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}

:root {
  --fondo: #fff8f4;
  --fondo-superficie: #ffffff;
  --fondo-hundido: #fdf0e9;
  --borde: #eadfd9;
  --borde-fuerte: #b9ada6;
  --tinta: #1f1d2b;
  --tinta-2: #5b5b6b;
  --tinta-3: #807c89;
  --naranja: #f4511e;
  --naranja-fuerte: #d23f10;
  --naranja-texto: #c2380a;
  --naranja-suave: #ffe8de;
  --on-naranja: #1f1d2b;
  --accion: var(--anil);
  --accion-fuerte: var(--anil-fuerte);
  --on-accion: #ffffff;
  --anil: #2f3ca8;
  --anil-fuerte: #232d85;
  --anil-suave: #e7e9f9;
  --on-anil: #ffffff;
  --acierto: #1b7f52;
  --acierto-suave: #dff5e9;
  --fallo: #c8203a;
  --fallo-suave: #fde4e8;
  --aviso: #9a5b00;
  --aviso-suave: #fff1d6;
  --foco: #2f3ca8;
  --velo: #1f1d2bb3;
  --sombra-s: 0 1px 2px #1f1d2b14, 0 2px 8px #1f1d2b0f;
  --sombra-m: 0 4px 12px #1f1d2b1a, 0 12px 32px #1f1d2b14;
  --espacio-1: 4px;
  --espacio-2: 8px;
  --espacio-3: 12px;
  --espacio-4: 16px;
  --espacio-5: 24px;
  --espacio-6: 32px;
  --espacio-7: 48px;
  --espacio-8: 64px;
  --radio-s: 8px;
  --radio-m: 12px;
  --radio-l: 20px;
  --radio-pill: 999px;
  --duracion-rapida: 150ms;
  --duracion-media: 250ms;
  --duracion-lenta: 600ms;
  --font-display: "Sora", "Figtree", system-ui, sans-serif;
  --font-texto: "Figtree", "Sora", system-ui, sans-serif;
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="claro"]) {
    --fondo: #16151d;
    --fondo-superficie: #221f2a;
    --fondo-hundido: #1c1a23;
    --borde: #39343f;
    --borde-fuerte: #6a636f;
    --tinta: #f5f1ec;
    --tinta-2: #b8b4c2;
    --tinta-3: #8e8a98;
    --naranja: #ff6a3d;
    --naranja-fuerte: #ff8a62;
    --naranja-texto: #ff8a62;
    --naranja-suave: #3b2219;
    --on-naranja: #1f1d2b;
    --accion: #5563d8;
    --accion-fuerte: #6b78e6;
    --on-accion: #ffffff;
    --anil: #8a93f0;
    --anil-fuerte: #a7aef5;
    --anil-suave: #252a58;
    --on-anil: #ffffff;
    --acierto: #4fc98b;
    --acierto-suave: #163626;
    --fallo: #ff7085;
    --fallo-suave: #3c1a22;
    --aviso: #f2b544;
    --aviso-suave: #3a2a10;
    --foco: #8a93f0;
    --velo: #000000b3;
    --sombra-s: 0 1px 2px #00000066, 0 2px 8px #00000040;
    --sombra-m: 0 4px 12px #00000080, 0 12px 32px #00000066;
    color-scheme: dark;
  }
}
:root[data-theme="oscuro"] {
  --fondo: #16151d;
  --fondo-superficie: #221f2a;
  --fondo-hundido: #1c1a23;
  --borde: #39343f;
  --borde-fuerte: #6a636f;
  --tinta: #f5f1ec;
  --tinta-2: #b8b4c2;
  --tinta-3: #8e8a98;
  --naranja: #ff6a3d;
  --naranja-fuerte: #ff8a62;
  --naranja-texto: #ff8a62;
  --naranja-suave: #3b2219;
  --on-naranja: #1f1d2b;
  --accion: #5563d8;
  --accion-fuerte: #6b78e6;
  --on-accion: #ffffff;
  --anil: #8a93f0;
  --anil-fuerte: #a7aef5;
  --anil-suave: #252a58;
  --on-anil: #ffffff;
  --acierto: #4fc98b;
  --acierto-suave: #163626;
  --fallo: #ff7085;
  --fallo-suave: #3c1a22;
  --aviso: #f2b544;
  --aviso-suave: #3a2a10;
  --foco: #8a93f0;
  --velo: #000000b3;
  --sombra-s: 0 1px 2px #00000066, 0 2px 8px #00000040;
  --sombra-m: 0 4px 12px #00000080, 0 12px 32px #00000066;
  color-scheme: dark;
}

.titulo-xl{font-family:var(--font-display);font-size:48px;line-height:52px;font-weight:800;letter-spacing:-0.03em}
.titulo-l{font-family:var(--font-display);font-size:36px;line-height:40px;font-weight:800;letter-spacing:-0.025em}
.titulo-m{font-family:var(--font-display);font-size:26px;line-height:32px;font-weight:700;letter-spacing:-0.02em}
.titulo-s{font-family:var(--font-display);font-size:20px;line-height:26px;font-weight:700;letter-spacing:-0.01em}
.numero{font-family:var(--font-display);font-size:40px;line-height:44px;font-weight:800;letter-spacing:-0.03em}
.cuerpo-l{font-family:var(--font-texto);font-size:18px;line-height:28px;font-weight:400}
.cuerpo{font-family:var(--font-texto);font-size:16px;line-height:24px;font-weight:400}
.cuerpo-fuerte{font-family:var(--font-texto);font-size:16px;line-height:24px;font-weight:600}
.cuerpo-s{font-family:var(--font-texto);font-size:14px;line-height:20px;font-weight:400}
.etiqueta{font-family:var(--font-texto);font-size:12px;line-height:16px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}
