/* ==========================================================================
   ITZAKA · tokens.css — sistema de diseño del producto (contrato shadcn/ui)
   Brand-site v2.1 · 2026-11-01 · lo mantiene uxui-visual-spec
   --------------------------------------------------------------------------
   Paleta de piedra (obsidiana, tezontle, cal) del manual v2.0. Desde la
   iteración 28 la app es shadcn/ui con Tailwind CSS v4: su src/index.css
   copia estos valores tal cual (:root, el bloque oscuro —en la app bajo
   :root[data-theme="dark"], el atributo que pone el script de arranque del
   tema— y @theme inline). Los tokens viven solo ahí; si cambia uno, cambia el
   otro en la misma iteración (modo MARCA). src/index.css es la única copia
   en la app: el tema de MUI (src/theme/tokens.ts) salió con MUI en la 7.0.0.
   Valores en OKLCH; el hex va en el comentario. Contrastes calculados con
   script (WCAG 2.x).
   ========================================================================== */

:root {
  --radius: 0.75rem;                          /* 12px · radius.md del tema (sm 8 · lg 18 · pill 999) */
  --background: oklch(0.965 0.005 78.3);      /* #F5F3F0 · cal · fondo de la app */
  --foreground: oklch(0.195 0.004 264.5);     /* #141517 · obsidiana · texto 16.5:1 sobre el fondo */
  --card: oklch(1.000 0 0);                   /* #FFFFFF */
  --card-foreground: oklch(0.195 0.004 264.5);/* #141517 */
  --popover: oklch(1.000 0 0);                /* #FFFFFF */
  --popover-foreground: oklch(0.195 0.004 264.5);/* #141517 */
  --primary: oklch(0.195 0.004 264.5);        /* #141517 · obsidiana · acción principal */
  --primary-foreground: oklch(1.000 0 0);     /* #FFFFFF · 18.3:1 */
  --secondary: oklch(0.935 0.007 80.7);       /* #ECE9E4 */
  --secondary-foreground: oklch(0.195 0.004 264.5);/* #141517 */
  --muted: oklch(0.935 0.007 80.7);           /* #ECE9E4 */
  --muted-foreground: oklch(0.470 0.009 73.7);/* #5E5A55 · gris piedra · 6.8:1 tarjeta, 5.65:1 muted */
  --accent: oklch(0.935 0.018 39.4);          /* #F5E6E1 · tezontle suave · navegación activa, chips */
  --accent-foreground: oklch(0.441 0.124 33.4);/* #8A3220 · tezontle texto · 6.76:1 */
  --destructive: oklch(0.555 0.206 20.9);     /* #D0213A · carmín · error, lejos del tezontle · 5.3:1 */
  --destructive-foreground: oklch(1.000 0 0); /* #FFFFFF */
  --border: oklch(0.908 0.009 78.3);          /* #E4E0DA · piedra suave · divisores */
  --input: oklch(0.620 0.016 74.3);           /* #8C857C · contorno de campos · 3.65:1 tarjeta, 3.29:1 fondo */
  --ring: oklch(0.195 0.004 264.5);           /* #141517 · foco obsidiana, nunca tezontle */
  --success: oklch(0.523 0.135 144.2);        /* #2E7D32 · pagado · 5.1:1 */
  --success-foreground: oklch(1.000 0 0);     /* #FFFFFF */
  --success-soft: oklch(0.951 0.021 147.6);   /* #E6F3E7 */
  --warning: oklch(0.597 0.125 77.5);         /* #A87400 · ocre pendiente · relleno e ícono (4.07:1); para texto usa --warning-text */
  --warning-foreground: oklch(1.000 0 0);     /* #FFFFFF · solo texto grande o ícono */
  --warning-text: oklch(0.543 0.114 76.9);    /* #946500 · ocre para texto · 5.1:1 blanco, 4.69:1 su suave */
  --warning-soft: oklch(0.972 0.021 85.9);    /* #FCF5E6 */
  --info: oklch(0.468 0.083 246.5);           /* #2F5E86 · pizarra · 6.85:1 */
  --info-foreground: oklch(1.000 0 0);        /* #FFFFFF */
  --info-soft: oklch(0.945 0.013 244.3);      /* #E6EEF5 */
  --chart-1: oklch(0.195 0.004 264.5);        /* #141517 */
  --chart-2: oklch(0.523 0.135 144.2);        /* #2E7D32 */
  --chart-3: oklch(0.597 0.125 77.5);         /* #A87400 */
  --chart-4: oklch(0.468 0.083 246.5);        /* #2F5E86 */
  --chart-5: oklch(0.488 0.137 33.7);         /* #9E3B26 · tezontle */
  --sidebar: oklch(1.000 0 0);                /* #FFFFFF */
  --sidebar-foreground: oklch(0.195 0.004 264.5);/* #141517 */
  --sidebar-primary: oklch(0.195 0.004 264.5);/* #141517 */
  --sidebar-primary-foreground: oklch(1.000 0 0);/* #FFFFFF */
  --sidebar-accent: oklch(0.935 0.018 39.4);  /* #F5E6E1 */
  --sidebar-accent-foreground: oklch(0.441 0.124 33.4);/* #8A3220 */
  --sidebar-border: oklch(0.908 0.009 78.3);  /* #E4E0DA */
  --sidebar-ring: oklch(0.195 0.004 264.5);   /* #141517 */
  --success-text: oklch(0.499 0.127 144.7);   /* #2A7530 · verde para texto sobre --success-soft · 4.98:1 */
  --destructive-soft: oklch(0.962 0.017 3.6); /* #FDEEF1 · carmín suave · texto carmín 4.72:1 */
  --brand: oklch(0.488 0.137 33.7);           /* #9E3B26 · tezontle de marca · logo, estratos; nunca estado */
  --primary-soft: oklch(0.928 0.003 84.6);    /* #E8E7E5 · obsidiana suave · seleccionado, fichas e íconos neutros · obsidiana 14.78:1 */
  --primary-softer: oklch(0.967 0.003 84.6);  /* #F5F4F2 · fila resaltada */
  --text-disabled: oklch(0.820 0.013 75.3);   /* #C9C3BB · deshabilitado · no es texto legible */
  --brand-surface: oklch(0.195 0.004 264.5);  /* #141517 · obsidiana · superficie de marca: panel del acceso y banda final de la página pública; no se invierte con el tema */
  --brand-surface-foreground: oklch(1.000 0 0);/* #FFFFFF · texto e íconos sobre la superficie de marca · 18.27:1 */
  --overlay: oklch(0.195 0.004 264.5);         /* #141517 · obsidiana · velo de las ventanas modales (al 50 %: bg-overlay/50); no se invierte con el tema */
}

.dark {
  --background: oklch(0.195 0.004 264.5);     /* #141517 · obsidiana, no negro puro */
  --foreground: oklch(0.941 0.007 80.7);      /* #EEEBE6 · cal · 15.4:1 */
  --card: oklch(0.231 0.006 271.2);           /* #1C1D20 */
  --card-foreground: oklch(0.941 0.007 80.7); /* #EEEBE6 · 14.2:1 */
  --popover: oklch(0.231 0.006 271.2);        /* #1C1D20 */
  --popover-foreground: oklch(0.941 0.007 80.7);/* #EEEBE6 */
  --primary: oklch(0.941 0.007 80.7);         /* #EEEBE6 · cal · el primario se invierte */
  --primary-foreground: oklch(0.195 0.004 264.5);/* #141517 · 15.4:1 */
  --secondary: oklch(0.270 0.007 285.9);      /* #26262A */
  --secondary-foreground: oklch(0.941 0.007 80.7);/* #EEEBE6 */
  --muted: oklch(0.270 0.007 285.9);          /* #26262A */
  --muted-foreground: oklch(0.731 0.013 75.3);/* #ADA79F · 7.1:1 tarjeta, 6.3:1 muted */
  --accent: oklch(0.291 0.032 37.4);          /* #3A2620 · tezontle oscuro */
  --accent-foreground: oklch(0.718 0.111 36.4);/* #E08A72 · tezontle claro · 5.45:1 */
  --destructive: oklch(0.794 0.121 11.3);     /* #FF9AA8 · carmín claro · 8.4:1 tarjeta */
  --destructive-foreground: oklch(0.195 0.004 264.5);/* #141517 · 9.1:1 */
  --border: oklch(0.325 0.009 88.7);          /* #36342F */
  --input: oklch(0.562 0.014 75.3);           /* #7A746C · contorno de campos · 3.65:1 tarjeta, 3.95:1 fondo */
  --ring: oklch(0.941 0.007 80.7);            /* #EEEBE6 */
  --success: oklch(0.705 0.153 144.4);        /* #5CB85F · 6.8:1 */
  --success-foreground: oklch(0.195 0.004 264.5);/* #141517 */
  --success-soft: oklch(0.264 0.035 150.4);   /* #182A1C */
  --warning: oklch(0.828 0.130 87.0);         /* #EBC15A · 9.9:1 (sirve para texto) */
  --warning-foreground: oklch(0.195 0.004 264.5);/* #141517 */
  --warning-text: oklch(0.828 0.130 87.0);    /* #EBC15A */
  --warning-soft: oklch(0.272 0.035 88.3);    /* #2E2612 */
  --info: oklch(0.732 0.078 244.3);           /* #7EAED6 · 7.2:1 */
  --info-foreground: oklch(0.195 0.004 264.5);/* #141517 */
  --info-soft: oklch(0.247 0.026 248.9);      /* #17222D */
  --chart-1: oklch(0.941 0.007 80.7);         /* #EEEBE6 */
  --chart-2: oklch(0.705 0.153 144.4);        /* #5CB85F */
  --chart-3: oklch(0.828 0.130 87.0);         /* #EBC15A */
  --chart-4: oklch(0.732 0.078 244.3);        /* #7EAED6 */
  --chart-5: oklch(0.638 0.135 35.8);         /* #D06A4F · tezontle claro */
  --sidebar: oklch(0.231 0.006 271.2);        /* #1C1D20 */
  --sidebar-foreground: oklch(0.941 0.007 80.7);/* #EEEBE6 */
  --sidebar-primary: oklch(0.941 0.007 80.7); /* #EEEBE6 */
  --sidebar-primary-foreground: oklch(0.195 0.004 264.5);/* #141517 */
  --sidebar-accent: oklch(0.291 0.032 37.4);  /* #3A2620 */
  --sidebar-accent-foreground: oklch(0.718 0.111 36.4);/* #E08A72 */
  --sidebar-border: oklch(0.325 0.009 88.7);  /* #36342F */
  --sidebar-ring: oklch(0.941 0.007 80.7);    /* #EEEBE6 */
  --success-text: oklch(0.705 0.153 144.4);   /* #5CB85F */
  --destructive-soft: oklch(0.266 0.051 9.2); /* #3A1A20 */
  --brand: oklch(0.638 0.135 35.8);           /* #D06A4F · tezontle claro de marca */
  --primary-soft: oklch(0.317 0.004 264.5);   /* #313234 · cal 10.79:1 */
  --primary-softer: oklch(0.256 0.006 271.2); /* #222326 */
  --text-disabled: oklch(0.562 0.014 75.3);   /* #7A746C · deshabilitado y marcador del editor de planos · 3.65:1 tarjeta */
  --brand-surface: oklch(0.195 0.004 264.5);  /* #141517 · igual que en claro: la superficie de marca no se invierte */
  --brand-surface-foreground: oklch(1.000 0 0);/* #FFFFFF · 18.27:1 */
  --overlay: oklch(0.195 0.004 264.5);         /* #141517 · obsidiana · velo de las ventanas modales (al 50 %: bg-overlay/50); no se invierte con el tema */
}

@theme inline {
  --font-sans: 'Inter', -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --font-display: 'Space Grotesk', 'Inter', -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --radius-sm: 0.5rem;   /* 8px  */
  --radius-md: 0.75rem;  /* 12px */
  --radius-lg: 1.125rem; /* 18px */
  --color-background: var(--background);
  --color-foreground: var(--foreground);
  --color-card: var(--card);
  --color-card-foreground: var(--card-foreground);
  --color-popover: var(--popover);
  --color-popover-foreground: var(--popover-foreground);
  --color-primary: var(--primary);
  --color-primary-foreground: var(--primary-foreground);
  --color-secondary: var(--secondary);
  --color-secondary-foreground: var(--secondary-foreground);
  --color-muted: var(--muted);
  --color-muted-foreground: var(--muted-foreground);
  --color-accent: var(--accent);
  --color-accent-foreground: var(--accent-foreground);
  --color-destructive: var(--destructive);
  --color-destructive-foreground: var(--destructive-foreground);
  --color-border: var(--border);
  --color-input: var(--input);
  --color-ring: var(--ring);
  --color-success: var(--success);
  --color-success-foreground: var(--success-foreground);
  --color-success-soft: var(--success-soft);
  --color-warning: var(--warning);
  --color-warning-foreground: var(--warning-foreground);
  --color-warning-text: var(--warning-text);
  --color-warning-soft: var(--warning-soft);
  --color-info: var(--info);
  --color-info-foreground: var(--info-foreground);
  --color-info-soft: var(--info-soft);
  --color-chart-1: var(--chart-1);
  --color-chart-2: var(--chart-2);
  --color-chart-3: var(--chart-3);
  --color-chart-4: var(--chart-4);
  --color-chart-5: var(--chart-5);
  --color-sidebar: var(--sidebar);
  --color-sidebar-foreground: var(--sidebar-foreground);
  --color-sidebar-primary: var(--sidebar-primary);
  --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
  --color-sidebar-accent: var(--sidebar-accent);
  --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
  --color-sidebar-border: var(--sidebar-border);
  --color-sidebar-ring: var(--sidebar-ring);
  --color-success-text: var(--success-text);
  --color-brand: var(--brand);
  --color-destructive-soft: var(--destructive-soft);
  --color-primary-soft: var(--primary-soft);
  --color-primary-softer: var(--primary-softer);
  --color-text-disabled: var(--text-disabled);
  --color-brand-surface: var(--brand-surface);
  --color-brand-surface-foreground: var(--brand-surface-foreground);
  --color-overlay: var(--overlay);
}
