/* Tokens MD3 — colores, shapes, elevación */
/* Light mode: default + manual override */
:root,
:root[data-theme="light"] {
  --md-sys-color-primary: #00694e;
  --md-sys-color-on-primary: #ffffff;
  --md-sys-color-primary-container: #4cdbbe;
  --md-sys-color-on-primary-container: #002019;

  --md-sys-color-secondary: #4a6358;
  --md-sys-color-on-secondary: #ffffff;
  --md-sys-color-secondary-container: #cce9da;
  --md-sys-color-on-secondary-container: #072016;

  --md-sys-color-tertiary: #3b6471;
  --md-sys-color-on-tertiary: #ffffff;
  --md-sys-color-tertiary-container: #bee9f7;
  --md-sys-color-on-tertiary-container: #001f27;

  --md-sys-color-error: #ba1a1a;
  --md-sys-color-on-error: #ffffff;
  --md-sys-color-error-container: #ffdad6;
  --md-sys-color-on-error-container: #410002;

  /* Custom role (not in MD3 core palette): warning tone for HDD/spinning-disk chip */
  --md-sys-color-warning-container: #fff3e0;
  --md-sys-color-on-warning-container: #e65100;

  --md-sys-color-surface: #fbfdf8;
  --md-sys-color-on-surface: #191c1a;
  --md-sys-color-on-surface-variant: #43483e;
  --md-sys-color-surface-container-lowest: #ffffff;
  --md-sys-color-surface-container-low: #f2f5ef;
  --md-sys-color-surface-container: #e6e9e4;
  --md-sys-color-surface-container-high: #e0e4de;
  --md-sys-color-surface-container-highest: #dbded8;
  --md-sys-color-surface-dim: #d8dbd6;
  --md-sys-color-surface-bright: #fbfdf8;

  --md-sys-color-inverse-surface: #2e312e;
  --md-sys-color-inverse-on-surface: #f0f1ec;
  --md-sys-color-inverse-primary: #4cdbbe;

  --md-sys-color-outline: #72796e;
  --md-sys-color-outline-variant: #c2c8bc;

  --md-sys-color-success: #006e1c;

  --h-perf: #1b5e20;
  --h-bueno: #2e7d32;
  --h-medio-b: #f9a825;
  --h-medio: #ef6c00;
  --h-reg: #d84315;
  --h-malo: #b71c1c;

  --md-sys-shape-corner-none: 0;
  --md-sys-shape-corner-extra-small: 4px;
  --md-sys-shape-corner-small: 8px;
  --md-sys-shape-corner-medium: 12px;
  --md-sys-shape-corner-large: 16px;
  --md-sys-shape-corner-large-increased: 20px;
  --md-sys-shape-corner-extra-large: 28px;
  --md-sys-shape-corner-extra-large-increased: 32px;
  --md-sys-shape-corner-full: 9999px;

  --md-sys-elevation-0: none;
  --md-sys-elevation-1: 0 1px 2px rgba(0,0,0,0.06);
  --md-sys-elevation-2: 0 2px 4px rgba(0,0,0,0.06);
  --md-sys-elevation-3: 0 4px 8px rgba(0,0,0,0.06);
}

/* Dark mode: system preference (auto) */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --md-sys-color-primary: #54d7ae;
    --md-sys-color-on-primary: #00382b;
    --md-sys-color-primary-container: #00513e;
    --md-sys-color-on-primary-container: #4cdbbe;

    --md-sys-color-secondary: #b1ccc0;
    --md-sys-color-on-secondary: #1d3529;
    --md-sys-color-secondary-container: #344b3f;
    --md-sys-color-on-secondary-container: #cce9da;

    --md-sys-color-tertiary: #99cddc;
    --md-sys-color-on-tertiary: #003640;
    --md-sys-color-tertiary-container: #214c58;
    --md-sys-color-on-tertiary-container: #bee9f7;

    --md-sys-color-error: #ffb4ab;
    --md-sys-color-on-error: #690005;
    --md-sys-color-error-container: #93000a;
    --md-sys-color-on-error-container: #ffdad6;

    --md-sys-color-warning-container: #3a1e00;
    --md-sys-color-on-warning-container: #ffcc80;

    --md-sys-color-surface: #0e1511;
    --md-sys-color-on-surface: #dbe4dd;
    --md-sys-color-on-surface-variant: #becbc0;
    --md-sys-color-surface-container-lowest: #09100c;
    --md-sys-color-surface-container-low: #161d19;
    --md-sys-color-surface-container: #1a211d;
    --md-sys-color-surface-container-high: #252c27;
    --md-sys-color-surface-container-highest: #303732;
    --md-sys-color-surface-dim: #0e1511;
    --md-sys-color-surface-bright: #343b36;

    --md-sys-color-inverse-surface: #dbe4dd;
    --md-sys-color-inverse-on-surface: #191c1a;
    --md-sys-color-inverse-primary: #00694e;

    --md-sys-color-outline: #88958b;
    --md-sys-color-outline-variant: #43483e;

    --md-sys-color-success: #4ee084;

    --h-perf: #66bb6a;
    --h-bueno: #a5d6a7;
    --h-medio-b: #ffe082;
    --h-medio: #ffcc80;
    --h-reg: #ffab91;
    --h-malo: #ef9a9a;
  }
}

/* Dark mode: manual override */
:root[data-theme="dark"] {
  --md-sys-color-primary: #54d7ae;
  --md-sys-color-on-primary: #00382b;
  --md-sys-color-primary-container: #00513e;
  --md-sys-color-on-primary-container: #4cdbbe;

  --md-sys-color-secondary: #b1ccc0;
  --md-sys-color-on-secondary: #1d3529;
  --md-sys-color-secondary-container: #344b3f;
  --md-sys-color-on-secondary-container: #cce9da;

  --md-sys-color-tertiary: #99cddc;
  --md-sys-color-on-tertiary: #003640;
  --md-sys-color-tertiary-container: #214c58;
  --md-sys-color-on-tertiary-container: #bee9f7;

  --md-sys-color-error: #ffb4ab;
  --md-sys-color-on-error: #690005;
  --md-sys-color-error-container: #93000a;
  --md-sys-color-on-error-container: #ffdad6;

  --md-sys-color-warning-container: #3a1e00;
  --md-sys-color-on-warning-container: #ffcc80;

  --md-sys-color-surface: #0e1511;
  --md-sys-color-on-surface: #dbe4dd;
  --md-sys-color-on-surface-variant: #becbc0;
  --md-sys-color-surface-container-lowest: #09100c;
  --md-sys-color-surface-container-low: #161d19;
  --md-sys-color-surface-container: #1a211d;
  --md-sys-color-surface-container-high: #252c27;
  --md-sys-color-surface-container-highest: #303732;
  --md-sys-color-surface-dim: #0e1511;
  --md-sys-color-surface-bright: #343b36;

  --md-sys-color-inverse-surface: #dbe4dd;
  --md-sys-color-inverse-on-surface: #191c1a;
  --md-sys-color-inverse-primary: #00694e;

  --md-sys-color-outline: #88958b;
  --md-sys-color-outline-variant: #43483e;

  --md-sys-color-success: #4ee084;

  --h-perf: #66bb6a;
  --h-bueno: #a5d6a7;
  --h-medio-b: #ffe082;
  --h-medio: #ffcc80;
  --h-reg: #ffab91;
  --h-malo: #ef9a9a;
}
