/* Puente · tokens de diseño. Todo valor visual sale de acá. */
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-display:swap;font-weight:200 800;src:url(fonts/bricolage-grotesque-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-display:swap;font-weight:200 800;src:url(fonts/bricolage-grotesque-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-display:swap;font-weight:400;src:url(fonts/atkinson-hyperlegible-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-display:swap;font-weight:700;src:url(fonts/atkinson-hyperlegible-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-display:swap;font-weight:400;src:url(fonts/atkinson-hyperlegible-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-display:swap;font-weight:700;src:url(fonts/atkinson-hyperlegible-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2C60-2C7F,U+A720-A7FF}

:root{
  /* Escalas (50–900) */
  --ink-50:#eef3f8;--ink-100:#d6e2ec;--ink-200:#aec4d6;--ink-300:#7f9fb8;--ink-400:#557d99;--ink-500:#365f7d;--ink-600:#244a66;--ink-700:#173a55;--ink-800:#0c2a43;--ink-900:#071a2b;
  --pri-50:#eaf4fb;--pri-100:#cde5f5;--pri-200:#9dcaeb;--pri-300:#67acdf;--pri-400:#3a8fcf;--pri-500:#1c76b8;--pri-600:#0f5f99;--pri-700:#0c4d7d;--pri-800:#0a3d63;--pri-900:#072c48;
  --sun-50:#fff8e6;--sun-100:#feedbf;--sun-200:#fde08d;--sun-300:#fbcf55;--sun-400:#f8c02b;--sun-500:#f6b40e;--sun-600:#d99a06;--sun-700:#a87604;--sun-800:#7a5503;--sun-900:#4d3502;
  --red-50:#fdeeee;--red-100:#f9d4d4;--red-200:#f2a9a9;--red-300:#ea7b7b;--red-400:#e15757;--red-500:#d63b3b;--red-600:#b92d2d;--red-700:#952323;--red-800:#6f1a1a;--red-900:#4a1111;
  --ok-50:#e9f6ef;--ok-100:#c9eadb;--ok-200:#97d5b8;--ok-300:#5fbb92;--ok-400:#35a274;--ok-500:#1f8a5b;--ok-600:#18714a;--ok-700:#13593a;--ok-800:#0e422b;--ok-900:#092c1d;

  /* Roles (modo claro) */
  --bg:#f1f6fa;--surface:#ffffff;--surface-2:#f7fafc;--line:#dbe6ee;--line-strong:#b9ccdb;
  --ink:var(--ink-800);--text:#10263a;--mut:#4f6a7f;--on-ink:#ffffff;
  --pri:var(--pri-600);--pri-hover:var(--pri-700);--pri-soft:var(--pri-50);--on-pri:#ffffff;
  --sun:var(--sun-500);--sun-soft:var(--sun-50);--on-sun:#2b2100;
  --red:var(--red-500);--red-strong:var(--red-600);--red-soft:var(--red-50);--on-red:#ffffff;
  --ok:var(--ok-500);--ok-soft:var(--ok-50);--on-ok:#ffffff;
  --focus:var(--pri-400);

  /* Tipografía */
  --font-display:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;
  --font-text:"Atkinson Hyperlegible",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --fs-sm:.875rem;--fs-md:1rem;--fs-lg:1.125rem;--fs-xl:1.375rem;--fs-2xl:1.75rem;--fs-3xl:2.125rem;
  --lh:1.5;--lh-tight:1.15;

  /* Espacio (múltiplos de 4) */
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--s10:40px;--s12:48px;
  --r-sm:10px;--r-md:14px;--r-lg:20px;--r-pill:999px;
  --tap:48px;
  --shadow:0 1px 2px rgba(12,42,67,.06),0 8px 24px rgba(12,42,67,.08);
  --t-fast:150ms;--t-med:220ms;--ease:cubic-bezier(.2,.7,.2,1);
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#071624;--surface:#0e2436;--surface-2:#122c42;--line:#1f3e57;--line-strong:#2d5574;
  --ink:#e6f0f7;--text:#e6f0f7;--mut:#9db4c6;--on-ink:#071624;
  --pri:var(--pri-300);--pri-hover:var(--pri-200);--pri-soft:#0f2f48;--on-pri:#06131f;
  --sun-soft:#2b2209;--red:var(--red-400);--red-strong:var(--red-300);--red-soft:#3a1515;--on-red:#1a0606;
  --ok:var(--ok-300);--ok-soft:#0d2a1e;--on-ok:#04150d;--focus:var(--pri-300);
  --shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.35);
}}
:root[data-theme="dark"]{
  --bg:#071624;--surface:#0e2436;--surface-2:#122c42;--line:#1f3e57;--line-strong:#2d5574;
  --ink:#e6f0f7;--text:#e6f0f7;--mut:#9db4c6;--on-ink:#071624;
  --pri:var(--pri-300);--pri-hover:var(--pri-200);--pri-soft:#0f2f48;--on-pri:#06131f;
  --sun-soft:#2b2209;--red:var(--red-400);--red-strong:var(--red-300);--red-soft:#3a1515;--on-red:#1a0606;
  --ok:var(--ok-300);--ok-soft:#0d2a1e;--on-ok:#04150d;--focus:var(--pri-300);
  --shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.35);
}
