/* GENERADO por marca/temas/generar.py desde temas.json: no se edita a mano.
   Temas unificados de las webs (plan docs/planes/2026-10-02-temas-unificados.md).
   Sin data-tema en <html>, cada web conserva su aspecto de siempre. */
:root[data-tema="executive-navy"] {
  --background: #f0f4f8;
  --foreground: #0f1e36;
  --card: #ffffff;
  --card-foreground: #0f1e36;
  --popover: #ffffff;
  --popover-foreground: #0f1e36;
  --primary: #1d4ed8;
  --primary-foreground: #ffffff;
  --secondary: #f0f4f8;
  --secondary-foreground: #0f1e36;
  --muted: #f0f4f8;
  --muted-foreground: rgba(15, 30, 54, 0.70);
  --accent: #e2e8f0;
  --accent-foreground: #0a0a0a;
  --destructive: #e11d48;
  --success: #059669;
  --warning: #d97706;
  --border: rgba(15, 30, 54, 0.12);
  --input: #f0f4f8;
  --ring: #1d4ed8;
  --sidebar: #ffffff;
  --sidebar-foreground: #0f1e36;
  --sidebar-primary: #1d4ed8;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #e2e8f0;
  --sidebar-accent-foreground: #0f1e36;
  --sidebar-border: rgba(15, 30, 54, 0.09);
  --sidebar-ring: #1d4ed8;
  --radius: 0.375rem;
}
:root[data-tema="executive-navy"].dark {
  --background: #0b1120;
  --foreground: #f1f5f9;
  --card: #131f38;
  --card-foreground: #f1f5f9;
  --popover: #0e182c;
  --popover-foreground: #f1f5f9;
  --primary: #60a5fa;
  --primary-foreground: #0a0a0a;
  --secondary: #131f38;
  --secondary-foreground: #f1f5f9;
  --muted: #131f38;
  --muted-foreground: rgba(241, 245, 249, 0.72);
  --accent: #1d2d50;
  --accent-foreground: #ffffff;
  --destructive: #f87171;
  --success: #34d399;
  --warning: #fbbf24;
  --border: rgba(148, 163, 184, 0.16);
  --input: #16233f;
  --ring: #60a5fa;
  --sidebar: #0b1324;
  --sidebar-foreground: #f1f5f9;
  --sidebar-primary: #60a5fa;
  --sidebar-primary-foreground: #0a0a0a;
  --sidebar-accent: #1d2d50;
  --sidebar-accent-foreground: #f1f5f9;
  --sidebar-border: rgba(148, 163, 184, 0.12);
  --sidebar-ring: #60a5fa;
  --radius: 0.375rem;
}
:root[data-tema="fluent"] {
  --background: #f4f5f8;
  --foreground: #18191c;
  --card: #ffffff;
  --card-foreground: #18191c;
  --popover: #ffffff;
  --popover-foreground: #18191c;
  --primary: #6d28d9;
  --primary-foreground: #ffffff;
  --secondary: #f0f1f4;
  --secondary-foreground: #18191c;
  --muted: #f0f1f4;
  --muted-foreground: #55596a;
  --accent: #e5e7eb;
  --accent-foreground: #18191c;
  --destructive: #dc2626;
  --success: #16a34a;
  --warning: #ca8a04;
  --border: rgba(0, 0, 0, 0.08);
  --input: rgba(0, 0, 0, 0.12);
  --ring: #6d28d9;
  --sidebar: #ebecef;
  --sidebar-foreground: #18191c;
  --sidebar-primary: #6d28d9;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #e5e7eb;
  --sidebar-accent-foreground: #18191c;
  --sidebar-border: rgba(0, 0, 0, 0.08);
  --sidebar-ring: #6d28d9;
  --radius: 0.375rem;
}
:root[data-tema="fluent"].dark {
  --background: #121214;
  --foreground: #f4f4f6;
  --card: #1e2025;
  --card-foreground: #f4f4f6;
  --popover: #22252a;
  --popover-foreground: #f4f4f6;
  --primary: #8b5cf6;
  --primary-foreground: #0a0a0a;
  --secondary: #1a1b1f;
  --secondary-foreground: #e4e4e7;
  --muted: #18191d;
  --muted-foreground: #a1a1aa;
  --accent: #262932;
  --accent-foreground: #f4f4f6;
  --destructive: #f87171;
  --success: #10b981;
  --warning: #fbbf24;
  --border: rgba(255, 255, 255, 0.08);
  --input: rgba(255, 255, 255, 0.12);
  --ring: #8b5cf6;
  --sidebar: #16171a;
  --sidebar-foreground: #f4f4f6;
  --sidebar-primary: #8b5cf6;
  --sidebar-primary-foreground: #0a0a0a;
  --sidebar-accent: #262932;
  --sidebar-accent-foreground: #f4f4f6;
  --sidebar-border: rgba(255, 255, 255, 0.07);
  --sidebar-ring: #8b5cf6;
  --radius: 0.375rem;
}
:root[data-tema="forest-slate"] {
  --background: #f0f5f3;
  --foreground: #0d1f1c;
  --card: #ffffff;
  --card-foreground: #0d1f1c;
  --popover: #ffffff;
  --popover-foreground: #0d1f1c;
  --primary: #047857;
  --primary-foreground: #ffffff;
  --secondary: #f0f5f3;
  --secondary-foreground: #0d1f1c;
  --muted: #f0f5f3;
  --muted-foreground: rgba(13, 31, 28, 0.70);
  --accent: #e1ebe6;
  --accent-foreground: #0a0a0a;
  --destructive: #e11d48;
  --success: #059669;
  --warning: #d97706;
  --border: rgba(13, 31, 28, 0.11);
  --input: #f0f5f3;
  --ring: #047857;
  --sidebar: #ffffff;
  --sidebar-foreground: #0d1f1c;
  --sidebar-primary: #047857;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #e1ebe6;
  --sidebar-accent-foreground: #0d1f1c;
  --sidebar-border: rgba(13, 31, 28, 0.08);
  --sidebar-ring: #047857;
  --radius: 0.375rem;
}
:root[data-tema="forest-slate"].dark {
  --background: #0c1514;
  --foreground: #eef5f3;
  --card: #132623;
  --card-foreground: #eef5f3;
  --popover: #0f1e1b;
  --popover-foreground: #eef5f3;
  --primary: #34d399;
  --primary-foreground: #0a0a0a;
  --secondary: #132623;
  --secondary-foreground: #eef5f3;
  --muted: #132623;
  --muted-foreground: rgba(238, 245, 243, 0.72);
  --accent: #1d3834;
  --accent-foreground: #ffffff;
  --destructive: #f87171;
  --success: #34d399;
  --warning: #fbbf24;
  --border: rgba(167, 243, 208, 0.14);
  --input: #162e2a;
  --ring: #34d399;
  --sidebar: #0c1514;
  --sidebar-foreground: #eef5f3;
  --sidebar-primary: #34d399;
  --sidebar-primary-foreground: #0a0a0a;
  --sidebar-accent: #1d3834;
  --sidebar-accent-foreground: #eef5f3;
  --sidebar-border: rgba(167, 243, 208, 0.10);
  --sidebar-ring: #34d399;
  --radius: 0.375rem;
}
:root[data-tema="graphite-pro"] {
  --background: #f4f4f6;
  --foreground: #141518;
  --card: #ffffff;
  --card-foreground: #141518;
  --popover: #ffffff;
  --popover-foreground: #141518;
  --primary: #334155;
  --primary-foreground: #ffffff;
  --secondary: #f4f4f6;
  --secondary-foreground: #141518;
  --muted: #f4f4f6;
  --muted-foreground: rgba(20, 21, 24, 0.70);
  --accent: #e4e4e9;
  --accent-foreground: #0a0a0a;
  --destructive: #e11d48;
  --success: #059669;
  --warning: #d97706;
  --border: rgba(0, 0, 0, 0.10);
  --input: #f4f4f6;
  --ring: #334155;
  --sidebar: #ffffff;
  --sidebar-foreground: #141518;
  --sidebar-primary: #334155;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #e4e4e9;
  --sidebar-accent-foreground: #141518;
  --sidebar-border: rgba(0, 0, 0, 0.08);
  --sidebar-ring: #334155;
  --radius: 0.25rem;
}
:root[data-tema="graphite-pro"].dark {
  --background: #131416;
  --foreground: #f4f4f6;
  --card: #1e2025;
  --card-foreground: #f4f4f6;
  --popover: #18191d;
  --popover-foreground: #f4f4f6;
  --primary: #cbd5e1;
  --primary-foreground: #0a0a0a;
  --secondary: #1e2025;
  --secondary-foreground: #f4f4f6;
  --muted: #1e2025;
  --muted-foreground: rgba(244, 244, 246, 0.70);
  --accent: #2a2c33;
  --accent-foreground: #ffffff;
  --destructive: #f87171;
  --success: #34d399;
  --warning: #fbbf24;
  --border: rgba(255, 255, 255, 0.12);
  --input: #222429;
  --ring: #cbd5e1;
  --sidebar: #131416;
  --sidebar-foreground: #f4f4f6;
  --sidebar-primary: #cbd5e1;
  --sidebar-primary-foreground: #0a0a0a;
  --sidebar-accent: #2a2c33;
  --sidebar-accent-foreground: #f4f4f6;
  --sidebar-border: rgba(255, 255, 255, 0.09);
  --sidebar-ring: #cbd5e1;
  --radius: 0.25rem;
}
:root[data-tema="ios-glass"] {
  --background: #f2f5fc;
  --foreground: #0f172a;
  --card: rgba(255, 255, 255, 0.70);
  --card-foreground: #0f172a;
  --popover: #ffffff;
  --popover-foreground: #0f172a;
  --primary: #0060df;
  --primary-foreground: #ffffff;
  --secondary: rgba(0, 0, 0, 0.04);
  --secondary-foreground: #0f172a;
  --muted: rgba(0, 0, 0, 0.04);
  --muted-foreground: rgba(15, 23, 42, 0.68);
  --accent: rgba(0, 122, 255, 0.12);
  --accent-foreground: #0f172a;
  --destructive: #ff3b30;
  --success: #34c759;
  --warning: #ff9500;
  --border: rgba(255, 255, 255, 0.65);
  --input: rgba(255, 255, 255, 0.80);
  --ring: #0060df;
  --sidebar: #f5f8fc;
  --sidebar-foreground: #0f172a;
  --sidebar-primary: #0060df;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: rgba(0, 122, 255, 0.12);
  --sidebar-accent-foreground: #0f172a;
  --sidebar-border: rgba(0, 0, 0, 0.08);
  --sidebar-ring: #0060df;
  --radius: 1rem;
}
:root[data-tema="ios-glass"].dark {
  --background: #0a0d14;
  --foreground: #ffffff;
  --card: rgba(255, 255, 255, 0.06);
  --card-foreground: #ffffff;
  --popover: #121826;
  --popover-foreground: #ffffff;
  --primary: #0a84ff;
  --primary-foreground: #0a0a0a;
  --secondary: rgba(255, 255, 255, 0.05);
  --secondary-foreground: #ffffff;
  --muted: rgba(255, 255, 255, 0.05);
  --muted-foreground: rgba(240, 246, 255, 0.75);
  --accent: rgba(255, 255, 255, 0.14);
  --accent-foreground: #ffffff;
  --destructive: #ff453a;
  --success: #30d158;
  --warning: #ffd60a;
  --border: rgba(255, 255, 255, 0.18);
  --input: rgba(255, 255, 255, 0.08);
  --ring: #0a84ff;
  --sidebar: #0a0e18;
  --sidebar-foreground: #ffffff;
  --sidebar-primary: #0a84ff;
  --sidebar-primary-foreground: #0a0a0a;
  --sidebar-accent: rgba(255, 255, 255, 0.14);
  --sidebar-accent-foreground: #ffffff;
  --sidebar-border: rgba(255, 255, 255, 0.12);
  --sidebar-ring: #0a84ff;
  --radius: 1rem;
}
:root[data-tema="pix"] {
  --background: #f5eaec;
  --foreground: #171717;
  --card: #ffffff;
  --card-foreground: #171717;
  --popover: #ffffff;
  --popover-foreground: #171717;
  --primary: #e11d48;
  --primary-foreground: #ffffff;
  --secondary: #f5f5f5;
  --secondary-foreground: #171717;
  --muted: #f5f5f5;
  --muted-foreground: #525252;
  --accent: #f5f5f5;
  --accent-foreground: #0a0a0a;
  --destructive: #e11d48;
  --success: #059669;
  --warning: #d97706;
  --border: rgba(0, 0, 0, 0.10);
  --input: #f5f5f5;
  --ring: #e11d48;
  --sidebar: #ffffff;
  --sidebar-foreground: #171717;
  --sidebar-primary: #e11d48;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #f5f5f5;
  --sidebar-accent-foreground: #171717;
  --sidebar-border: rgba(0, 0, 0, 0.08);
  --sidebar-ring: #e11d48;
  --radius: 0.75rem;
}
:root[data-tema="pix"].dark {
  --background: #181116;
  --foreground: #ffffff;
  --card: #1f171d;
  --card-foreground: #ffffff;
  --popover: #191316;
  --popover-foreground: #ffffff;
  --primary: #fb7185;
  --primary-foreground: #0a0a0a;
  --secondary: #20181d;
  --secondary-foreground: #ffffff;
  --muted: #20181d;
  --muted-foreground: rgba(255, 255, 255, 0.70);
  --accent: #2c2227;
  --accent-foreground: #ffffff;
  --destructive: #f43f5e;
  --success: #10b981;
  --warning: #fbbf24;
  --border: rgba(255, 255, 255, 0.10);
  --input: #231c20;
  --ring: #fb7185;
  --sidebar: #161214;
  --sidebar-foreground: #ffffff;
  --sidebar-primary: #fb7185;
  --sidebar-primary-foreground: #0a0a0a;
  --sidebar-accent: #2c2227;
  --sidebar-accent-foreground: #ffffff;
  --sidebar-border: rgba(255, 255, 255, 0.08);
  --sidebar-ring: #fb7185;
  --radius: 0.75rem;
}
:root[data-tema="retro"] {
  --background: #c0c0c0;
  --foreground: #000000;
  --card: #d4d0c8;
  --card-foreground: #000000;
  --popover: #d4d0c8;
  --popover-foreground: #000000;
  --primary: #7c2d12;
  --primary-foreground: #ffffff;
  --secondary: #d4d0c8;
  --secondary-foreground: #000000;
  --muted: #d4d0c8;
  --muted-foreground: #3a3a3a;
  --accent: #000080;
  --accent-foreground: #ffffff;
  --destructive: #a80000;
  --success: #006400;
  --warning: #8a6d00;
  --border: #808080;
  --input: #ffffff;
  --ring: #7c2d12;
  --sidebar: #d4d0c8;
  --sidebar-foreground: #000000;
  --sidebar-primary: #7c2d12;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #000080;
  --sidebar-accent-foreground: #ffffff;
  --sidebar-border: #808080;
  --sidebar-ring: #7c2d12;
  --radius: 0;
}
:root[data-tema="retro"].dark {
  --background: #3a3a3a;
  --foreground: #e8e8e8;
  --card: #404040;
  --card-foreground: #e8e8e8;
  --popover: #454545;
  --popover-foreground: #e8e8e8;
  --primary: #f59e0b;
  --primary-foreground: #0a0a0a;
  --secondary: #404040;
  --secondary-foreground: #e8e8e8;
  --muted: #404040;
  --muted-foreground: rgba(232, 232, 232, 0.75);
  --accent: #000080;
  --accent-foreground: #ffffff;
  --destructive: #ff6b6b;
  --success: #7bd88f;
  --warning: #ffd166;
  --border: #1e1e1e;
  --input: #2a2a2a;
  --ring: #f59e0b;
  --sidebar: #404040;
  --sidebar-foreground: #e8e8e8;
  --sidebar-primary: #f59e0b;
  --sidebar-primary-foreground: #0a0a0a;
  --sidebar-accent: #000080;
  --sidebar-accent-foreground: #e8e8e8;
  --sidebar-border: #1e1e1e;
  --sidebar-ring: #f59e0b;
  --radius: 0;
}
:root[data-tema="warm-sand"] {
  --background: #f6f4f0;
  --foreground: #1e1916;
  --card: #ffffff;
  --card-foreground: #1e1916;
  --popover: #ffffff;
  --popover-foreground: #1e1916;
  --primary: #9a3412;
  --primary-foreground: #ffffff;
  --secondary: #f6f4f0;
  --secondary-foreground: #1e1916;
  --muted: #f6f4f0;
  --muted-foreground: rgba(30, 25, 22, 0.70);
  --accent: #ece7df;
  --accent-foreground: #0a0a0a;
  --destructive: #e11d48;
  --success: #059669;
  --warning: #d97706;
  --border: rgba(30, 25, 22, 0.10);
  --input: #f6f4f0;
  --ring: #9a3412;
  --sidebar: #ffffff;
  --sidebar-foreground: #1e1916;
  --sidebar-primary: #9a3412;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #ece7df;
  --sidebar-accent-foreground: #1e1916;
  --sidebar-border: rgba(30, 25, 22, 0.08);
  --sidebar-ring: #9a3412;
  --radius: 0.5rem;
}
:root[data-tema="warm-sand"].dark {
  --background: #161413;
  --foreground: #f6f3ee;
  --card: #231f1c;
  --card-foreground: #f6f3ee;
  --popover: #1b1816;
  --popover-foreground: #f6f3ee;
  --primary: #fb923c;
  --primary-foreground: #0a0a0a;
  --secondary: #231f1c;
  --secondary-foreground: #f6f3ee;
  --muted: #231f1c;
  --muted-foreground: rgba(246, 243, 238, 0.72);
  --accent: #332d29;
  --accent-foreground: #ffffff;
  --destructive: #f87171;
  --success: #34d399;
  --warning: #fbbf24;
  --border: rgba(246, 243, 238, 0.12);
  --input: #272320;
  --ring: #fb923c;
  --sidebar: #161413;
  --sidebar-foreground: #f6f3ee;
  --sidebar-primary: #fb923c;
  --sidebar-primary-foreground: #0a0a0a;
  --sidebar-accent: #332d29;
  --sidebar-accent-foreground: #f6f3ee;
  --sidebar-border: rgba(246, 243, 238, 0.09);
  --sidebar-ring: #fb923c;
  --radius: 0.5rem;
}
/* Tareas (Kaneo): sus textos de estado, ajustados donde no llegan a 4,5:1. */
:root[data-tema="executive-navy"]:not(.dark) {
  --warning-foreground: #b25209;
}
:root[data-tema="fluent"]:not(.dark) {
  --warning-foreground: #af5109;
}
:root[data-tema="forest-slate"]:not(.dark) {
  --warning-foreground: #b25209;
}
:root[data-tema="graphite-pro"]:not(.dark) {
  --warning-foreground: #b25209;
}
:root[data-tema="ios-glass"]:not(.dark) {
  --warning-foreground: #a94e08;
}
:root[data-tema="pix"]:not(.dark) {
  --warning-foreground: #ab4f09;
}
:root[data-tema="retro"]:not(.dark) {
  --destructive-foreground: #9a1717;
  --info-foreground: #1842b5;
  --success-foreground: #035940;
  --warning-foreground: #7e3a06;
}
:root[data-tema="retro"].dark {
  --destructive-foreground: #fa9a9a;
  --info-foreground: #80b7fb;
}
:root[data-tema="warm-sand"]:not(.dark) {
  --warning-foreground: #b25209;
}
