/* Tokens de diseño. Toda la web (incluidos los gráficos, vía js/charts/theme.js) lee estos valores. */
:root {
  --font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, Roboto, sans-serif;
  --mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  /* Serif del sistema, solo para titulares grandes (portada, páginas públicas y títulos de pantalla). */
  --font-serif: ui-serif, "New York", "Iowan Old Style", "Apple Garamond", Georgia, Cambria, "Times New Roman", serif;

  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 18px;
  --r-xl: 24px;

  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
  --sp-7: 48px;

  --t-fast: 150ms;
  --t-med: 240ms;
  --ease: cubic-bezier(.2, .7, .2, 1);

  --sidebar-w: 232px;
  --topbar-h: 68px;
  --tabbar-h: 64px;
}

:root,
:root[data-theme="light"] {
  color-scheme: light;
  /* Neutros ligeramente cálidos, en sintonía con la portada. */
  --bg: #f6f5f1;
  --surface: #ffffff;
  --surface-2: #f4f3ef;
  --surface-3: #ecebe6;
  --border: #e7e5df;
  --border-strong: #d7d4cc;
  --text: #0d1117;
  --text-2: #4f5665;
  --text-3: #676d7b;
  --accent: #4f4ee0;
  --accent-2: #6d6cf0;
  --accent-soft: rgba(79, 78, 224, .10);
  --accent-ink: #ffffff;
  --accent-text: #4342c9; /* texto de acento sobre fondos tintados claros */
  --up: #087a4d;
  --up-soft: rgba(8, 122, 77, .10);
  --down: #c4303a;
  --down-soft: rgba(196, 48, 58, .10);
  --warn: #b7791f;
  --warn-ink: #7d5112; /* texto ámbar sobre fondos claros (contraste ≥ 4,5) */
  --warn-soft: rgba(183, 121, 31, .12);
  --grid: rgba(13, 17, 23, .06);
  --crosshair: rgba(13, 17, 23, .28);
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .06);
  --shadow-md: 0 4px 12px rgba(16, 24, 40, .06), 0 2px 4px rgba(16, 24, 40, .04);
  --shadow-lg: 0 24px 48px rgba(16, 24, 40, .14), 0 8px 16px rgba(16, 24, 40, .06);
  --backdrop: rgba(13, 17, 23, .36);

  /* Paleta categórica: orden fijo. Sin verdes ni rojos (reservados a subidas y bajadas). */
  --s0: #4f4ee0;
  --s1: #2f9bd6;
  --s2: #e3a21a;
  --s3: #9b51e0;
  --s4: #d6508f;
  --s5: #5f6b7d;
  --s6: #1fa5a8;
  --s7: #a8733d;
  /* Dos colores más para el Calendario (diez tipos de evento; sin verdes ni rojos). */
  --cal-8: #c4620f;
  --cal-9: #24508f;

  /* Escala secuencial (mapa): un solo tono, claro → oscuro. */
  --seq-0: #eceefb;
  --seq-1: #bfc2f3;
  --seq-2: #8f92ea;
  --seq-3: #5e5fdd;
  --seq-4: #3534b0;
  --map-empty: #e9ebef;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #0b0d12;
  --surface: #13161d;
  --surface-2: #1a1e27;
  --surface-3: #222733;
  --border: #252a35;
  --border-strong: #323846;
  --text: #eef0f4;
  --text-2: #a7adba;
  --text-3: #8a91a1;
  --accent: #8b8cff;
  --accent-2: #a3a4ff;
  --accent-soft: rgba(139, 140, 255, .14);
  --accent-ink: #0b0d12;
  --accent-text: #8b8cff;
  --up: #34c98b;
  --up-soft: rgba(52, 201, 139, .14);
  --down: #ff6b72;
  --down-soft: rgba(255, 107, 114, .14);
  --warn: #e7b14f;
  --warn-ink: #e7b14f;
  --warn-soft: rgba(231, 177, 79, .14);
  --grid: rgba(238, 240, 244, .06);
  --crosshair: rgba(238, 240, 244, .32);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);
  --shadow-md: 0 4px 14px rgba(0, 0, 0, .35);
  --shadow-lg: 0 24px 60px rgba(0, 0, 0, .55);
  --backdrop: rgba(0, 0, 0, .6);

  --s0: #8b8cff;
  --s1: #5bb8ec;
  --s2: #f0b93f;
  --s3: #b886f0;
  --s4: #ec7cb1;
  --s5: #94a0b4;
  --s6: #4cc5c7;
  --s7: #c99560;
  --cal-8: #f29a52;
  --cal-9: #86aaf0;

  --seq-0: #23263a;
  --seq-1: #383b78;
  --seq-2: #5455b8;
  --seq-3: #7a7bf0;
  --seq-4: #b3b4ff;
  --map-empty: #1e222c;
}

/* Colores del logotipo de Monilen: dos picos en grafito de dos tonos, con contraste suave. */
:root, :root[data-theme="light"] { --logo-main: #1f2329; --logo-accent: #8e96a2; }
:root[data-theme="dark"] { --logo-main: #f2f3f5; --logo-accent: #7b8392; }
