/* Leo Doncel · TaskFlow — generated from tokens.json */
:root, [data-theme="light"] {
  --marca-indigo: #3E4095;
  --marca-naranja: #F58634;
  --marca-magenta: #EC268F;
  --marca-rojo: #ED3237;
  --marca-amarillo: #FFF215;
  --marca-verde: #144D29;
  --superficie: #F6F6FA;
  --superficie-elevada: #FFFFFF;
  --superficie-hundida: #ECEDF4;
  --linea: #DCDDE8;
  --linea-control: #7F819B;
  --tinta: #1B1C30;
  --tinta-suave: #555770;
  --accion: #3E4095;
  --accion-hover: #30327A;
  --sobre-accion: #FFFFFF;
  --accion-tenue: #E9E9F7;
  --vencida: #B4161C;
  --vencida-fondo: #FCEBEC;
  --hoy: #9A4708;
  --hoy-fondo: #FEF1E6;
  --prioridad-alta: #A8105F;
  --prioridad-alta-fondo: #FCE9F3;
  --completada: #144D29;
  --completada-fondo: #E5F1E9;
  --tinta-sobre-amarillo: #1B1C30;
  --error: var(--vencida);
  --presencia-1: #3E4095;
  --presencia-2: #0F7A6E;
  --presencia-3: #8A4FBF;
  --presencia-4: #2F6DB5;
  --presencia-5: #7A5A12;
  --sombra-1: 0 1px 2px rgba(27,28,48,0.08);
  --sombra-2: 0 4px 16px rgba(27,28,48,0.12);
  --sombra-3: 0 12px 40px rgba(27,28,48,0.18);
}
[data-theme="dark"] {
  --marca-indigo: #3E4095;
  --marca-naranja: #F58634;
  --marca-magenta: #EC268F;
  --marca-rojo: #ED3237;
  --marca-amarillo: #FFF215;
  --marca-verde: #144D29;
  --superficie: #111220;
  --superficie-elevada: #1A1B2C;
  --superficie-hundida: #0B0C16;
  --linea: #2C2E45;
  --linea-control: #6E7090;
  --tinta: #ECECF6;
  --tinta-suave: #A6A8C2;
  --accion: #A5A7F2;
  --accion-hover: #BDBFF7;
  --sobre-accion: #111220;
  --accion-tenue: #25264A;
  --vencida: #FF8F93;
  --vencida-fondo: #3B1519;
  --hoy: #FFB27D;
  --hoy-fondo: #3A2312;
  --prioridad-alta: #FF8CC6;
  --prioridad-alta-fondo: #3A1529;
  --completada: #7FD8A3;
  --completada-fondo: #12301F;
  --tinta-sobre-amarillo: #111220;
  --error: var(--vencida);
  --presencia-1: #A5A7F2;
  --presencia-2: #5FD3C3;
  --presencia-3: #C9A2F0;
  --presencia-4: #8CB8EE;
  --presencia-5: #E2C26E;
  --sombra-1: 0 1px 2px rgba(0,0,0,0.5);
  --sombra-2: 0 4px 16px rgba(0,0,0,0.6);
  --sombra-3: 0 12px 40px rgba(0,0,0,0.7);
}
:root {
  --espacio-1: 4px;
  --espacio-2: 8px;
  --espacio-3: 12px;
  --espacio-4: 16px;
  --espacio-6: 24px;
  --espacio-8: 32px;
  --area-tactil: 44px;
  --radio-s: 4px;
  --radio-m: 8px;
  --radio-l: 14px;
  --radio-total: 999px;
  --capa-barra: 10;
  --capa-aviso: 40;
  --capa-dialogo: 50;
  --font-ui: "Atkinson Hyperlegible Next", "Segoe UI", system-ui, sans-serif;
  --font-marca: Arimo, Arial, "Helvetica Neue", sans-serif;
  --font-mono: "Atkinson Hyperlegible Mono", ui-monospace, Menlo, monospace;
}
.marca-firma { font-family: var(--font-marca); font-size: 14px; line-height: 18px; font-weight: 700; }
.titulo-1 { font-family: var(--font-ui); font-size: 28px; line-height: 34px; font-weight: 800; letter-spacing: -0.01em; }
.titulo-2 { font-family: var(--font-ui); font-size: 20px; line-height: 26px; font-weight: 700; }
.titulo-3 { font-family: var(--font-ui); font-size: 16px; line-height: 22px; font-weight: 700; }
.cuerpo { font-family: var(--font-ui); font-size: 16px; line-height: 24px; font-weight: 400; }
.cuerpo-fuerte { font-family: var(--font-ui); font-size: 16px; line-height: 24px; font-weight: 600; }
.meta { font-family: var(--font-ui); font-size: 14px; line-height: 20px; font-weight: 400; }
.etiqueta { font-family: var(--font-ui); font-size: 12px; line-height: 16px; font-weight: 700; letter-spacing: 0.04em; }
.hora { font-family: var(--font-mono); font-size: 14px; line-height: 20px; font-weight: 400; }
