/* ============================================================================
   tokens.css — identidad visual propia del BMW Auto Club Chile.

   Reemplaza ENTERA la hoja de tokens del andamio (identidad de Dasapi): el club
   declara identidad propia y las dos no se mezclan (visual-identity-inheritance §4).
   Los valores salen del :root del prototipo v0.5 aprobado por Klaus y de cada color
   literal que su CSS tenía escrito; los nombres del prototipo se conservan para que
   la comparación visual sea uno a uno.

   El sitio es oscuro por diseño aprobado y no expone selector de tema. Aun así cada
   variable de color se declara en los dos bloques, con el mismo valor, porque el
   contrato de color exige los dos temas completos (ui-theming-contract §2 y Regla A).

   El mapeo rol → variable y los contrastes medidos viven en
   docs/memorias/bmwclub-visual-identity.md.
   ============================================================================ */

:root {
    color-scheme: dark;

    /* Tipografía y medidas (invariantes por tema) */
    --font: "BMW Type Next", "Helvetica Neue", Arial, sans-serif;
    --max: 1240px;
    --gutter: clamp(16px, 4vw, 48px);

    /* Estructura */
    --bg: #0B0F17;
    --bg-2: #0F1621;
    --surface: #141C29;
    --surface-2: #1B2434;
    --card: #4E545D;
    --card-hover: #5A616B;
    --tile-light: #FFFFFF;
    --tile-light-hover: #EDF0F4;
    --line: rgba(255, 255, 255, .22);
    --line-soft: rgba(255, 255, 255, .10);

    /* Texto */
    --text: #FFFFFF;
    --text-lead: #E6EAF0;
    --text-soft: #DDE2EA;
    --text-partner: #E4E8EE;
    --muted: #AEB5C0;
    --dim: #888F9B;
    --white: #FFFFFF;
    --black: #000000;
    --ink: #0B0F17;
    --ink-soft: #555555;

    /* Acento y marca */
    --accent: #09BACF;
    --accent-ink: #06303A;
    --bmw-blue: #1C69D4;
    --bmw-blue-deep: #0653B6;
    --m-light: #4FA2E0;
    --m-dark: #1C3F8F;
    --m-red: #E22718;
    --clasicos-blue: #0039A6;
    --clasicos-red: #D52B1E;

    /* Estados */
    --ok: #3DBE6E;
    --ok-tint: rgba(61, 190, 110, .12);
    --ok-edge: rgba(61, 190, 110, .5);
    --warn: #E8A33D;
    --warn-text: #F3C784;
    --warn-tint: rgba(232, 163, 61, .14);
    --warn-edge: rgba(232, 163, 61, .55);
    --danger: #E86A5D;
    --danger-text: #F0A69E;

    /* Halos del fondo del documento */
    --halo-blue: rgba(28, 105, 212, .16);
    --halo-violet: rgba(90, 40, 140, .18);
    --halo-cyan: rgba(9, 186, 207, .08);

    /* Velos sobre fondo base (header, hero, rótulos, footer) */
    --veil-0: rgba(11, 15, 23, 0);
    --veil-20: rgba(11, 15, 23, .2);
    --veil-35: rgba(11, 15, 23, .35);
    --veil-45: rgba(11, 15, 23, .45);
    --veil-60: rgba(11, 15, 23, .6);
    --veil-72: rgba(11, 15, 23, .72);
    --veil-75: rgba(11, 15, 23, .75);
    --veil-78: rgba(11, 15, 23, .78);
    --veil-82: rgba(11, 15, 23, .82);
    --veil-92: rgba(11, 15, 23, .92);
    --veil-95: rgba(11, 15, 23, .95);

    /* Sombras y superposiciones */
    --shade-35: rgba(0, 0, 0, .35);
    --shade-50: rgba(0, 0, 0, .5);
    --shade-55: rgba(0, 0, 0, .55);
    --shade-75: rgba(0, 0, 0, .75);
    --shade-92: rgba(0, 0, 0, .92);
    --modal-overlay: rgba(5, 8, 14, .78);

    /* Fondos propios de las marcas de terceros (logos sobre su color) */
    --brand-bg-club: #0B0F17;
    --brand-bg-black: #000000;
    --brand-bg-near-black: #111111;
    --brand-bg-charcoal: #1A1A1A;
    --brand-bg-white: #FFFFFF;
    --brand-bg-mint: #8FC5B4;
    --brand-bg-wine: #7D0A1F;

    /* Administración — medidas del chasis (invariantes por tema) y los dos tintes
       del estado de error, que el sitio público no necesitaba. */
    --admin-nav-w: 252px;
    --admin-topbar-h: 64px;
    --admin-gap: 24px;
    --danger-tint: rgba(232, 106, 93, .12);
    --danger-edge: rgba(232, 106, 93, .5);
}

[data-theme="light"] {
    --bg: #0B0F17;
    --bg-2: #0F1621;
    --surface: #141C29;
    --surface-2: #1B2434;
    --card: #4E545D;
    --card-hover: #5A616B;
    --tile-light: #FFFFFF;
    --tile-light-hover: #EDF0F4;
    --line: rgba(255, 255, 255, .22);
    --line-soft: rgba(255, 255, 255, .10);

    --text: #FFFFFF;
    --text-lead: #E6EAF0;
    --text-soft: #DDE2EA;
    --text-partner: #E4E8EE;
    --muted: #AEB5C0;
    --dim: #888F9B;
    --white: #FFFFFF;
    --black: #000000;
    --ink: #0B0F17;
    --ink-soft: #555555;

    --accent: #09BACF;
    --accent-ink: #06303A;
    --bmw-blue: #1C69D4;
    --bmw-blue-deep: #0653B6;
    --m-light: #4FA2E0;
    --m-dark: #1C3F8F;
    --m-red: #E22718;
    --clasicos-blue: #0039A6;
    --clasicos-red: #D52B1E;

    --ok: #3DBE6E;
    --ok-tint: rgba(61, 190, 110, .12);
    --ok-edge: rgba(61, 190, 110, .5);
    --warn: #E8A33D;
    --warn-text: #F3C784;
    --warn-tint: rgba(232, 163, 61, .14);
    --warn-edge: rgba(232, 163, 61, .55);
    --danger: #E86A5D;
    --danger-text: #F0A69E;

    --halo-blue: rgba(28, 105, 212, .16);
    --halo-violet: rgba(90, 40, 140, .18);
    --halo-cyan: rgba(9, 186, 207, .08);

    --veil-0: rgba(11, 15, 23, 0);
    --veil-20: rgba(11, 15, 23, .2);
    --veil-35: rgba(11, 15, 23, .35);
    --veil-45: rgba(11, 15, 23, .45);
    --veil-60: rgba(11, 15, 23, .6);
    --veil-72: rgba(11, 15, 23, .72);
    --veil-75: rgba(11, 15, 23, .75);
    --veil-78: rgba(11, 15, 23, .78);
    --veil-82: rgba(11, 15, 23, .82);
    --veil-92: rgba(11, 15, 23, .92);
    --veil-95: rgba(11, 15, 23, .95);

    --shade-35: rgba(0, 0, 0, .35);
    --shade-50: rgba(0, 0, 0, .5);
    --shade-55: rgba(0, 0, 0, .55);
    --shade-75: rgba(0, 0, 0, .75);
    --shade-92: rgba(0, 0, 0, .92);
    --modal-overlay: rgba(5, 8, 14, .78);

    --brand-bg-club: #0B0F17;
    --brand-bg-black: #000000;
    --brand-bg-near-black: #111111;
    --brand-bg-charcoal: #1A1A1A;
    --brand-bg-white: #FFFFFF;
    --brand-bg-mint: #8FC5B4;
    --brand-bg-wine: #7D0A1F;

    /* Administración — medidas del chasis (invariantes por tema) y los dos tintes
       del estado de error, que el sitio público no necesitaba. */
    --admin-nav-w: 252px;
    --admin-topbar-h: 64px;
    --admin-gap: 24px;
    --danger-tint: rgba(232, 106, 93, .12);
    --danger-edge: rgba(232, 106, 93, .5);
}
