/* Temas de la app: cada bloque [data-theme] define TODOS los tokens de color; el resto de las hojas solo los usa.
   El atributo va en <html> (lo pone un guion en el <head>, antes de cargar las hojas) y también puede ir en cualquier
   elemento para pintarse con otra paleta (las tarjetas de Ajustes → Apariencia). Sin atributo, manda Galaxy.
   Las paletas pasan la prueba de contraste de tests/js/temas_logica.test.mjs: no cambiar un tono sin correrla. */

:root, [data-theme="galaxy"] {
  color-scheme: dark;
  --bg: #0a0713; --bg-2: #1c1140;
  --panel: #120c24; --panel-2: #181030; --panel-3: #221a40;
  --line: rgba(255,255,255,.08); --line-2: rgba(124,92,255,.30);
  --text: #ECEAF6; --text-strong: #ffffff; --muted: #9b94c0; --muted-2: #7a72a3;
  --accent: #7b5cff; --accent-2: #a48bff; --accent-deep: #5E3AE2; --accent-rgb: 124,92,255; --on-accent: #ffffff;
  --fg-rgb: 255,255,255;
  --ok: #00AA80; --warn: #F4B422; --danger: #ff6b7a; --info: #2CAAFF; --teal: #54d4aa;
  --bg-rgb: 10,7,19; --panel-rgb: 18,12,36;
  --ok-rgb: 0,170,128; --warn-rgb: 244,180,34; --danger-rgb: 255,107,122; --info-rgb: 44,170,255;
  --on-ok: #04130e; --on-warn: #1a1205; --on-danger: #2a0a10; --on-info: #06101c;
  --shadow: 0 18px 50px rgba(0,0,0,.5); --glow: 0 0 24px rgba(124,92,255,.35); --scrim: rgba(5,3,12,.72);
  --jarvis: #FFB840; --jarvis-rgb: 255,184,64;   /* Jarvis (identidad): el sol dorado; el texto, legible en cada tema */
  --jarvis-luz-rgb: 255,184,64; --jarvis-nucleo-rgb: 255,244,214; --jarvis-brasa-rgb: 232,96,20; --jarvis-vacio-rgb: 10,7,4;   /* el holograma: igual en todos los temas */
}

[data-theme="oscuro"] {
  color-scheme: dark;
  --bg: #0e0f12; --bg-2: #16171c;
  --panel: #16171b; --panel-2: #1c1d22; --panel-3: #25262c;
  --line: rgba(255,255,255,.08); --line-2: rgba(124,92,255,.30);
  --text: #ECECF1; --text-strong: #ffffff; --muted: #a0a0ae; --muted-2: #7c7c8a;
  --accent: #7b5cff; --accent-2: #a48bff; --accent-deep: #5E3AE2; --accent-rgb: 124,92,255; --on-accent: #ffffff;
  --fg-rgb: 255,255,255;
  --ok: #22c48a; --warn: #F4B422; --danger: #ff6b7a; --info: #3fb0ff; --teal: #4fd1b3;
  --bg-rgb: 14,15,18; --panel-rgb: 22,23,27;
  --ok-rgb: 34,196,138; --warn-rgb: 244,180,34; --danger-rgb: 255,107,122; --info-rgb: 63,176,255;
  --on-ok: #04130e; --on-warn: #1a1205; --on-danger: #2a0a10; --on-info: #06101c;
  --shadow: 0 18px 50px rgba(0,0,0,.55); --glow: 0 0 24px rgba(124,92,255,.3); --scrim: rgba(4,4,8,.74);
  --jarvis: #FFB840; --jarvis-rgb: 255,184,64;   /* Jarvis (identidad): el sol dorado; el texto, legible en cada tema */
  --jarvis-luz-rgb: 255,184,64; --jarvis-nucleo-rgb: 255,244,214; --jarvis-brasa-rgb: 232,96,20; --jarvis-vacio-rgb: 10,7,4;   /* el holograma: igual en todos los temas */
}

[data-theme="claro"] {
  color-scheme: light;
  --bg: #f4f3fa; --bg-2: #ebe8f7;
  --panel: #ffffff; --panel-2: #f3f1fa; --panel-3: #e9e5f6;
  --line: rgba(20,16,40,.10); --line-2: rgba(94,58,226,.35);
  --text: #1a1530; --text-strong: #0b0816; --muted: #5b5775; --muted-2: #7e7a96;
  --accent: #5E3AE2; --accent-2: #7b5cff; --accent-deep: #4527b8; --accent-rgb: 94,58,226; --on-accent: #ffffff;
  --fg-rgb: 20,16,40;
  --ok: #0a8f6a; --warn: #b8780c; --danger: #d8364f; --info: #0b7bd6; --teal: #0f9c7a;
  --bg-rgb: 244,243,250; --panel-rgb: 255,255,255;
  --ok-rgb: 10,143,106; --warn-rgb: 184,120,12; --danger-rgb: 216,54,79; --info-rgb: 11,123,214;
  --on-ok: #ffffff; --on-warn: #ffffff; --on-danger: #ffffff; --on-info: #ffffff;
  --shadow: 0 18px 50px rgba(30,20,80,.14); --glow: 0 0 24px rgba(94,58,226,.22); --scrim: rgba(20,16,40,.45);
  --jarvis: #9A5800; --jarvis-rgb: 154,88,0;   /* Jarvis (identidad): el sol dorado; el texto, legible en cada tema */
  --jarvis-luz-rgb: 255,184,64; --jarvis-nucleo-rgb: 255,244,214; --jarvis-brasa-rgb: 232,96,20; --jarvis-vacio-rgb: 10,7,4;   /* el holograma: igual en todos los temas */
}

[data-theme="oceano"] {
  color-scheme: dark;
  --bg: #061020; --bg-2: #0b1c33;
  --panel: #0c1a2b; --panel-2: #112338; --panel-3: #172e47;
  --line: rgba(255,255,255,.08); --line-2: rgba(31,143,230,.35);
  --text: #e6f0fa; --text-strong: #ffffff; --muted: #93aac6; --muted-2: #6f8aa8;
  --accent: #1f8fe6; --accent-2: #2CAAFF; --accent-deep: #0b5fb8; --accent-rgb: 31,143,230; --on-accent: #ffffff;
  --fg-rgb: 255,255,255;
  --ok: #22c48a; --warn: #F4B422; --danger: #ff6b7a; --info: #2CAAFF; --teal: #4fd1b3;
  --bg-rgb: 6,16,32; --panel-rgb: 12,26,43;
  --ok-rgb: 34,196,138; --warn-rgb: 244,180,34; --danger-rgb: 255,107,122; --info-rgb: 44,170,255;
  --on-ok: #04130e; --on-warn: #1a1205; --on-danger: #2a0a10; --on-info: #06101c;
  --shadow: 0 18px 50px rgba(0,0,0,.5); --glow: 0 0 24px rgba(31,143,230,.35); --scrim: rgba(3,8,18,.72);
  --jarvis: #FFB840; --jarvis-rgb: 255,184,64;   /* Jarvis (identidad): el sol dorado; el texto, legible en cada tema */
  --jarvis-luz-rgb: 255,184,64; --jarvis-nucleo-rgb: 255,244,214; --jarvis-brasa-rgb: 232,96,20; --jarvis-vacio-rgb: 10,7,4;   /* el holograma: igual en todos los temas */
}

[data-theme="bosque"] {
  color-scheme: dark;
  --bg: #07120f; --bg-2: #0d1f1a;
  --panel: #0d1c17; --panel-2: #122722; --panel-3: #19332c;
  --line: rgba(255,255,255,.08); --line-2: rgba(10,155,116,.35);
  --text: #e4f2ec; --text-strong: #ffffff; --muted: #93b5a6; --muted-2: #6f9484;
  --accent: #0a9b74; --accent-2: #22d3a0; --accent-deep: #067a5b; --accent-rgb: 10,155,116; --on-accent: #ffffff;
  --fg-rgb: 255,255,255;
  --ok: #22c48a; --warn: #F4B422; --danger: #ff6b7a; --info: #3fb0ff; --teal: #54d4aa;
  --bg-rgb: 7,18,15; --panel-rgb: 13,28,23;
  --ok-rgb: 34,196,138; --warn-rgb: 244,180,34; --danger-rgb: 255,107,122; --info-rgb: 63,176,255;
  --on-ok: #04130e; --on-warn: #1a1205; --on-danger: #2a0a10; --on-info: #06101c;
  --shadow: 0 18px 50px rgba(0,0,0,.5); --glow: 0 0 24px rgba(10,155,116,.35); --scrim: rgba(3,10,8,.72);
  --jarvis: #FFB840; --jarvis-rgb: 255,184,64;   /* Jarvis (identidad): el sol dorado; el texto, legible en cada tema */
  --jarvis-luz-rgb: 255,184,64; --jarvis-nucleo-rgb: 255,244,214; --jarvis-brasa-rgb: 232,96,20; --jarvis-vacio-rgb: 10,7,4;   /* el holograma: igual en todos los temas */
}

[data-theme="arena"] {
  color-scheme: light;
  --bg: #f6f0e6; --bg-2: #efe5d6;
  --panel: #fffaf3; --panel-2: #f4ecdf; --panel-3: #ebe1d0;
  --line: rgba(43,33,24,.12); --line-2: rgba(194,80,31,.35);
  --text: #2b2118; --text-strong: #160f0a; --muted: #6e5f52; --muted-2: #86776a;
  --accent: #c2501f; --accent-2: #e0703f; --accent-deep: #9a3c14; --accent-rgb: 194,80,31; --on-accent: #ffffff;
  --fg-rgb: 43,33,24;
  --ok: #1f8f5f; --warn: #a86a07; --danger: #c43a3a; --info: #1d6fbf; --teal: #0f8f72;
  --bg-rgb: 246,240,230; --panel-rgb: 255,250,243;
  --ok-rgb: 31,143,95; --warn-rgb: 168,106,7; --danger-rgb: 196,58,58; --info-rgb: 29,111,191;
  --on-ok: #ffffff; --on-warn: #ffffff; --on-danger: #ffffff; --on-info: #ffffff;
  --shadow: 0 18px 50px rgba(60,40,20,.14); --glow: 0 0 24px rgba(194,80,31,.22); --scrim: rgba(43,33,24,.45);
  --jarvis: #9A5800; --jarvis-rgb: 154,88,0;   /* Jarvis (identidad): el sol dorado; el texto, legible en cada tema */
  --jarvis-luz-rgb: 255,184,64; --jarvis-nucleo-rgb: 255,244,214; --jarvis-brasa-rgb: 232,96,20; --jarvis-vacio-rgb: 10,7,4;   /* el holograma: igual en todos los temas */
}

/* Jarvis azul (Configuración → Jarvis → Color, o «ponte azul»): el atributo va en <html>. */
:root[data-jarvis-color="azul"] {
  --jarvis: #2CAAFF; --jarvis-rgb: 44,170,255;
  --jarvis-luz-rgb: 44,170,255; --jarvis-nucleo-rgb: 220,244,255; --jarvis-brasa-rgb: 20,80,210; --jarvis-vacio-rgb: 3,8,16;
}
:root[data-jarvis-color="azul"][data-theme="claro"], :root[data-jarvis-color="azul"][data-theme="arena"] { --jarvis: #0B6FC2; --jarvis-rgb: 11,111,194; }
