/* DEV Studio (Grupo Dynasoft), exportado de tweakcn — ÚNICA fuente de verdad de colores.
   Claro en :root, oscuro en .dark (lo pone ThemeService/theme-init.js en <html>).
   Nunca hardcodear colores fuera de este fichero: usar las clases bb: (bb:bg-primary, bb:text-muted-foreground…)
   o, en CSS propio, var(--primary), var(--alert-warning)… */

:root {
  --background: oklch(1.0000 0 0);
  --foreground: oklch(0.2435 0 0);

  --card: oklch(1.0000 0 0);
  --card-foreground: oklch(0.2435 0 0);

  --popover: oklch(1.0000 0 0);
  --popover-foreground: oklch(0.2435 0 0);

  /* Verde corporativo */
  --primary: oklch(0.5671 0.1730 144.6186);
  --primary-foreground: oklch(1.0000 0 0);

  --secondary: oklch(0.9691 0 0);
  --secondary-foreground: oklch(0.2435 0 0);

  --muted: oklch(0.9691 0 0);
  --muted-foreground: oklch(0.5396 0.0086 151.7640);

  --accent: oklch(0.9637 0.0190 152.8199);
  --accent-foreground: oklch(0.4702 0.1404 145.0551);

  --destructive: oklch(0.5771 0.2152 27.3250);
  --destructive-foreground: oklch(1.0000 0 0);

  --border: oklch(0.9251 0.0042 157.1728);
  --input: oklch(0.9251 0.0042 157.1728);
  --ring: oklch(0.5671 0.1730 144.6186);

  --font-sans: Montserrat, ui-sans-serif, system-ui, sans-serif;
  --font-serif: Georgia, serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;
  --radius: 0.5rem;
  --shadow-color: #000000;
  --shadow-opacity: 0.08;
  --shadow-blur: 3px;
  --shadow-spread: 0px;
  --shadow-offset-x: 0px;
  --shadow-offset-y: 1px;
  --letter-spacing: 0em;
  --spacing: 0.25rem;

  --chart-1: oklch(0.5671 0.1730 144.6186);
  --chart-2: oklch(0.5522 0.0926 200.5955);
  --chart-3: oklch(0.7800 0.1692 147.8555);
  --chart-4: oklch(0.7502 0.1470 56.4521);
  --chart-5: oklch(0.4702 0.1404 145.0551);

  --sidebar: oklch(0.9851 0 0);
  --sidebar-foreground: oklch(0.2435 0 0);
  --sidebar-primary: oklch(0.5671 0.1730 144.6186);
  --sidebar-primary-foreground: oklch(1.0000 0 0);
  --sidebar-accent: oklch(0.9637 0.0190 152.8199);
  --sidebar-accent-foreground: oklch(0.4702 0.1404 145.0551);
  --sidebar-border: oklch(0.9251 0.0042 157.1728);
  --sidebar-ring: oklch(0.5671 0.1730 144.6186);

  /* Blueprint 4.1 consume estos tokens; los parametros de tweakcn solos no cambian las sombras. */
  --bb-spacing: var(--spacing);
  --tracking-normal: var(--letter-spacing);
  --shadow-theme: var(--shadow-offset-x) var(--shadow-offset-y) var(--shadow-blur) var(--shadow-spread)
    color-mix(in srgb, var(--shadow-color) calc(var(--shadow-opacity) * 100%), transparent);
  --bb-card-shadow: var(--shadow-theme);
  --bb-menu-shadow: var(--shadow-theme);
  --bb-menu-accent: var(--accent);
  --bb-menu-accent-foreground: var(--accent-foreground);

  /* Semánticos (BbAlert, BbBadge Soft*, clases bb:text-alert-* / bb:bg-alert-*-bg) */
  --alert-success: #43a047;
  --alert-success-foreground: #1b5e20;
  --alert-success-bg: #f1f8e9;
  --alert-info: #1e88e5;
  --alert-info-foreground: #0d47a1;
  --alert-info-bg: #e3f2fd;
  --alert-warning: #fb8c00;
  --alert-warning-foreground: #8a4b00;
  --alert-warning-bg: #fff3e0;
  --alert-danger: #e53935;
  --alert-danger-foreground: #b71c1c;
  --alert-danger-bg: #ffebee;

  /* Propios: solicitud pendiente y fichaje fuera de turno */
  --pending: #ffbf00;
  --unassigned: #ff751f;

  /* Avatares (asignación cíclica por nombre, ver UserAvatar) */
  --avatar-1: #1e88e5;
  --avatar-2: #8e24aa;
  --avatar-3: #fb8c00;
  --avatar-4: #00897b;
  --avatar-5: #6d4c41;
  --avatar-6: #e53935;
  --avatar-7: #3949ab;
  --avatar-8: #039be5;
}

.dark {
  --background: oklch(0.2046 0 0);
  --foreground: oklch(0.9702 0 0);

  --card: oklch(0.2435 0 0);
  --card-foreground: oklch(0.9702 0 0);

  --popover: oklch(0.2435 0 0);
  --popover-foreground: oklch(0.9702 0 0);

  --primary: oklch(0.6699 0.1997 145.1108);
  --primary-foreground: oklch(0.2162 0.0427 148.1643);

  --secondary: oklch(0.2850 0 0);
  --secondary-foreground: oklch(0.9702 0 0);

  --muted: oklch(0.2850 0 0);
  --muted-foreground: oklch(0.7155 0 0);

  --accent: oklch(0.2945 0.0551 149.5350);
  --accent-foreground: oklch(0.8304 0.1379 151.7575);

  --destructive: oklch(0.6368 0.2078 25.3313);
  --destructive-foreground: oklch(1.0000 0 0);

  --border: oklch(0.3012 0 0);
  --input: oklch(0.3211 0 0);
  --ring: oklch(0.6699 0.1997 145.1108);

  --chart-1: oklch(0.6699 0.1997 145.1108);
  --chart-2: oklch(0.6909 0.0740 197.8421);
  --chart-3: oklch(0.8304 0.1379 151.7575);
  --chart-4: oklch(0.7932 0.1239 66.5927);
  --chart-5: oklch(0.5671 0.1730 144.6186);

  --sidebar: oklch(0.2221 0 0);
  --sidebar-foreground: oklch(0.9702 0 0);
  --sidebar-primary: oklch(0.6699 0.1997 145.1108);
  --sidebar-primary-foreground: oklch(0.2162 0.0427 148.1643);
  --sidebar-accent: oklch(0.2945 0.0551 149.5350);
  --sidebar-accent-foreground: oklch(0.8304 0.1379 151.7575);
  --sidebar-border: oklch(0.3012 0 0);
  --sidebar-ring: oklch(0.6699 0.1997 145.1108);

  --alert-success: #66bb6a;
  --alert-success-foreground: #c8e6c9;
  --alert-success-bg: #14231a;
  --alert-info: #42a5f5;
  --alert-info-foreground: #bbdefb;
  --alert-info-bg: #122030;
  --alert-warning: #ffa726;
  --alert-warning-foreground: #ffe0b2;
  --alert-warning-bg: #2a1d0c;
  --alert-danger: #ef5350;
  --alert-danger-foreground: #ffcdd2;
  --alert-danger-bg: #2c1414;

  --pending: #ffca28;
  --unassigned: #ff8a3d;
}
