/* ============================================================
   MonTech · Design Tokens
   Paleta oficial tomada del Manual de Marca MonTech
   #0a1629  #1c2a4a  #2f4272  #dc6e0c  #8a310c  #f7c347
   Tipografía institucional: Proxima Nova (fallback: Mulish)
   ============================================================ */

:root {
  /* ---- Marca ---- */
  --mt-navy-900: #0a1629;
  --mt-navy-850: #0f1d34;
  --mt-navy-800: #1c2a4a;
  --mt-navy-700: #24345c;
  --mt-navy-600: #2f4272;
  --mt-navy-500: #3f5590;
  --mt-navy-400: #6a7dad;
  --mt-navy-200: #c3cbdf;
  --mt-navy-100: #e4e8f1;
  --mt-navy-050: #f2f4f9;

  --mt-orange-700: #8a310c;
  --mt-orange-600: #b85a09;
  --mt-orange-500: #dc6e0c;
  --mt-orange-400: #e28034;
  --mt-orange-300: #f0a468;
  --mt-orange-100: #fdeadb;
  --mt-orange-050: #fef6f0;

  --mt-gold-500: #f7c347;
  --mt-gold-300: #fbdd92;
  --mt-gold-100: #fef6e2;

  /* ---- Semánticos: superficie ---- */
  --bg-app: #f1f2f0;
  --bg-surface: #ffffff;
  --bg-elevated: #ffffff;
  --bg-muted: #f7f7f5;
  --bg-inset: #e9eae6;
  --bg-nav: #0a1629;
  --bg-nav-active: rgba(220, 110, 12, 0.16);
  --bg-nav-hover: rgba(255, 255, 255, 0.06);

  --border: #d9dbd6;
  --border-strong: #bcbfb8;
  --border-nav: rgba(255, 255, 255, 0.08);

  /* ---- Semánticos: texto ---- */
  --text-primary: #0a1629;
  --text-secondary: #45506b;
  --text-muted: #7a879f;
  --text-inverse: #ffffff;
  --text-nav: #b9c3d8;
  --text-nav-active: #ffffff;
  --text-brand: #b85a09;

  /* ---- Marca aplicada ---- */
  --brand: #dc6e0c;
  --brand-hover: #c05f08;
  --brand-soft: #fdeadb;
  --brand-ink: #8a310c;
  --accent: #2f4272;
  --accent-soft: #e4e8f1;
  --gold: #f7c347;

  /* ---- Estados ---- */
  --ok: #12805c;
  --ok-soft: #e2f5ee;
  --ok-ink: #0c6247;
  --warn: #c77700;
  --warn-soft: #fdf1dc;
  --warn-ink: #8a5300;
  --danger: #c2321f;
  --danger-soft: #fdeae7;
  --danger-ink: #97220f;
  --info: #2f4272;
  --info-soft: #e8ecf6;
  --info-ink: #1c2a4a;
  --neutral-soft: #eef1f7;
  --neutral-ink: #45506b;

  /* ---- Datos / gráficas ---- */
  --c1: #2f4272;
  --c2: #dc6e0c;
  --c3: #12805c;
  --c4: #f7c347;
  --c5: #6a7dad;
  --c6: #8a310c;
  --c7: #4aa3d6;
  --c8: #b0563f;
  --grid: #e6eaf2;

  /* ---- Forma ---- */
  --r-xs: 2px;
  --r-sm: 3px;
  --r: 4px;
  --r-lg: 5px;
  --r-xl: 8px;
  --r-full: 999px;

  --sh-1: none;
  --sh-2: 0 1px 3px rgba(10, 22, 41, 0.07);
  --sh-3: 0 16px 40px rgba(10, 22, 41, 0.18);
  --sh-nav: 0 0 0 1px rgba(10, 22, 41, 0.04);

  /* ---- Tipografía ---- */
  /* Proxima Nova es la tipografía del manual de marca. Si está instalada
     en el equipo se usa tal cual; si no, entra Metropolis, incrustada en
     css/tipografia.css, que respeta las mismas proporciones. */
  --font: "Proxima Nova", "Proxima Nova Alt", "Metropolis", "Avenir Next",
    "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --font-mono: "SF Mono", ui-monospace, "JetBrains Mono", Menlo, Consolas, monospace;

  --fs-11: 11px;
  --fs-12: 12px;
  --fs-13: 13px;
  --fs-14: 14px;
  --fs-15: 15px;
  --fs-16: 16px;
  --fs-18: 18px;
  --fs-20: 20px;
  --fs-24: 24px;
  --fs-30: 30px;
  --fs-38: 38px;

  /* ---- Espaciado ---- */
  --s-1: 4px;
  --s-2: 8px;
  --s-3: 12px;
  --s-4: 16px;
  --s-5: 20px;
  --s-6: 24px;
  --s-7: 32px;
  --s-8: 40px;
  --s-9: 56px;

  /* ---- Layout ---- */
  --nav-w: 248px;
  --nav-w-collapsed: 72px;
  --topbar-h: 64px;
  --maxw: 1560px;

  --t-fast: 120ms cubic-bezier(0.4, 0, 0.2, 1);
  --t: 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

/* ============================================================
   Tema oscuro — modo sala de control / guardia nocturna
   ============================================================ */
[data-theme="dark"] {
  --bg-app: #070e1b;
  --bg-surface: #0e1729;
  --bg-elevated: #142036;
  --bg-muted: #0c1424;
  --bg-inset: #16203a;
  --bg-nav: #060c17;
  --bg-nav-active: rgba(220, 110, 12, 0.22);
  --bg-nav-hover: rgba(255, 255, 255, 0.05);

  --border: #1e2b45;
  --border-strong: #2b3a58;
  --border-nav: rgba(255, 255, 255, 0.07);

  --text-primary: #eef2f9;
  --text-secondary: #b3bed4;
  --text-muted: #7d8aa5;
  --text-inverse: #0a1629;
  --text-nav: #a9b5cc;
  --text-nav-active: #ffffff;
  --text-brand: #f0a468;

  --brand: #e28034;
  --brand-hover: #f0a468;
  --brand-soft: rgba(220, 110, 12, 0.16);
  --brand-ink: #f0a468;
  --accent: #6a7dad;
  --accent-soft: rgba(106, 125, 173, 0.16);

  --ok: #34c893;
  --ok-soft: rgba(18, 128, 92, 0.18);
  --ok-ink: #63dcb0;
  --warn: #f7c347;
  --warn-soft: rgba(247, 195, 71, 0.16);
  --warn-ink: #fbdd92;
  --danger: #f2705c;
  --danger-soft: rgba(194, 50, 31, 0.2);
  --danger-ink: #ff9c8c;
  --info: #7f93c4;
  --info-soft: rgba(47, 66, 114, 0.35);
  --info-ink: #b9c6e6;
  --neutral-soft: #16203a;
  --neutral-ink: #b3bed4;

  --c1: #7f93c4;
  --c2: #e28034;
  --c3: #34c893;
  --c4: #f7c347;
  --c5: #4c5f92;
  --c6: #c26a45;
  --c7: #5ab6e8;
  --c8: #d98a76;
  --grid: #1e2b45;

  --sh-1: 0 1px 2px rgba(0, 0, 0, 0.4);
  --sh-2: 0 2px 4px rgba(0, 0, 0, 0.35), 0 6px 16px rgba(0, 0, 0, 0.4);
  --sh-3: 0 12px 32px rgba(0, 0, 0, 0.55), 0 2px 8px rgba(0, 0, 0, 0.4);
}
