/* ==========================================================================
   VARIABLES — Tema del cliente (EMMAX)
   Toda la personalización visual del producto vive aquí: para activar
   otro restaurante solo se cambian estas variables y las imágenes.
   Paleta sacada del collage de fondo (postales pintadas a mano).
   ========================================================================== */

:root {
  /* ----- Colores de marca (collage EMMAX) ----- */
  --color-crema: #f2ece1; /* fondo papel */
  --color-negro: #1b1b1b; /* tinta del logo */
  --color-azul: #2b4ea2; /* corazón / mariposa */
  --color-rojo: #d2352b; /* fresa / flores */
  --color-amarillo: #e9b32a; /* girasol / limones */
  --color-rosa: #e8c9c4; /* manchas rosadas */

  /* ----- Roles (lo que usa el CSS de verdad) ----- */
  --color-primario: var(--color-negro);
  --color-acento: var(--color-azul);
  --color-error: var(--color-rojo);
  --color-texto: var(--color-negro);
  --color-texto-invertido: #ffffff;

  /* Tarjeta "liquid glass" del formulario: crema translúcido
     sobre el collage, el blur lo pone styles.css */
  --vidrio-fondo: rgba(242, 236, 225, 0.55);
  --vidrio-borde: rgba(255, 255, 255, 0.65);

  /* ----- Superficies de los controles -----
     Las caras claras que se apoyan sobre el vidrio: campos, píldoras y la
     cita del mensaje. Son tokens (y no colores sueltos en styles.css) para
     que un cliente pueda tener su app en oscuro cambiando SOLO estas líneas,
     sin tocar ni un módulo. */
  --campo-fondo: rgba(255, 255, 255, 0.75);
  --campo-borde: rgba(27, 27, 27, 0.25);
  --pildora-fondo: rgba(255, 255, 255, 0.6);
  --pildora-borde: rgba(27, 27, 27, 0.3);
  --cita-fondo: rgba(255, 255, 255, 0.6);
  --aviso-grave-fondo: rgba(210, 53, 43, 0.08);
  --boton-secundario-borde: rgba(27, 27, 27, 0.35);
  --boton-secundario-hover: rgba(255, 255, 255, 0.4);

  /* ----- Controles flotantes (píldoras de idioma y de la demo) -----
     Colores SÓLIDOS, no vidrio: sobre el collage un translúcido se leía
     grisáceo. La opción ACTIVA usa el par contrario, así siempre destaca.
     En tema oscuro se intercambian (ver demo-fondos.css). */
  --control-fondo: #ffffff;
  --control-texto: var(--color-negro);
  --control-fondo-activo: var(--color-negro);
  --control-texto-activo: #ffffff;

  /* ----- Fondo del cliente -----
     Dos encuadres de la misma escena: el VERTICAL para pantallas altas
     (móvil) y el HORIZONTAL para apaisadas (laptop).

     Estos de aquí son el fondo POR DEFECTO (la variante 1): lo que se ve si el
     sorteo no llega a correr —JS desactivado, o el script inline del <head>
     falla—. Nunca se queda sin fondo.

     El sorteo de verdad está más abajo, en el bloque de VARIANTES. */
  --fondo-vertical: url(../images/fondo1.webp);
  --fondo-horizontal: url(../images/fondo_h1.webp);

  /* ----- Tipografía ----- */
  --fuente-principal: "Jost", "Segoe UI", sans-serif;

  /* ----- Espaciados y formas ----- */
  /* Alto real de .barra-superior: su padding (1rem arriba y abajo) más los
     44px de las píldoras. El escenario reserva justo esto, así el contenido
     queda pegado bajo la barra sin que la barra lo pise. */
  --altura-barra: calc(44px + 2rem + 1px);
  --border-radius: 14px;
  --sombra: 0 6px 24px rgba(27, 27, 27, 0.18);
  --sombra-suave: 0 2px 8px rgba(27, 27, 27, 0.12);

  /* ----- Tiempos de animación (los usa también transiciones.css) -----
     Cortos y con propósito: 200-400 ms para cambios de vista */
  --t-rapido: 0.25s;
  --t-medio: 0.4s;
  --t-splash: 1.1s; /* entrada inicial del logo, la única "lenta" */
}

/* ==========================================================================
   VARIANTES DE FONDO — se sortea UNA por sesión
   --------------------------------------------------------------------------
   Manu hizo tres versiones del collage para que el cliente eligiera una y al
   final se queda con las TRES: cada visita abre con una distinta. El sorteo lo
   hace un <script> inline en el <head> (ver manu_dev/plantilla-index.html), que
   escribe data-fondo="1|2|3" en el <html>; aquí solo se responde a esa marca.

   Va en JS y no en CSS porque el CSS no sabe elegir al azar. Y va INLINE y no
   en un módulo porque un módulo llega tarde: medido, el CSS pinta el fondo a
   los 240ms y un módulo ES no se ejecuta hasta tener descargado todo su grafo
   de imports (348ms). Con un módulo se vería un parpadeo del fondo por defecto.

   ⚠️ TRES SITIOS ACOPLADOS. Para añadir o quitar una variante hay que tocar:
     1. este archivo (el bloque de la variante)
     2. la lista FONDOS del script inline de manu_dev/plantilla-index.html
     3. js/fondoAleatorio.js si la variante nueva necesita otro logo
   Hay un test que comprueba que 1 y 2 no se desincronizan
   (manu_dev/tests/fondos.test.js), porque es justo lo que se olvida.

   Las variantes 1 y 2 son collages CLAROS y solo cambian la imagen. La 3 es
   oscura y se lleva el tema entero: si solo le cambiáramos el fondo, las
   tarjetas seguirían siendo crema y el logo (que es de tarjeta negra) se
   perdería encima.
   ========================================================================== */

/* ----- VARIANTE 1 — collage AZUL (la misma que el :root de arriba) ----- */
:root[data-fondo="1"] {
  --fondo-vertical: url(../images/fondo1.webp);
  --fondo-horizontal: url(../images/fondo_h1.webp);
}

/* ----- VARIANTE 2 — collage A COLOR (el original) ----- */
:root[data-fondo="2"] {
  --fondo-vertical: url(../images/fondo2.webp);
  --fondo-horizontal: url(../images/fondo_h2.webp);
}

/* ----- VARIANTE 3 — collage OSCURO + tema en negativo -----
   Como todos los módulos leen TOKENS y no colores sueltos, invertir la app
   entera es redefinirlos aquí: styles.css no se entera de que esto existe.
   El logo NO se puede cambiar desde CSS (es un <img>): lo hace
   js/fondoAleatorio.js. */
:root[data-fondo="3"] {
  --fondo-vertical: url(../images/fondo3.webp);
  --fondo-horizontal: url(../images/fondo_h3.webp);

  /* Texto claro sobre oscuro, y lo que va ENCIMA del color primario pasa a
     ser oscuro (el primario ahora es claro) */
  --color-texto: var(--color-crema);
  --color-texto-invertido: var(--color-negro);
  --color-primario: var(--color-crema);

  /* El vidrio se vuelve humo: tarjetas oscuras traslúcidas con borde tenue */
  --vidrio-fondo: rgba(20, 20, 22, 0.62);
  --vidrio-borde: rgba(255, 255, 255, 0.16);
  /* Superficies de los controles, en negativo */
  --campo-fondo: rgba(255, 255, 255, 0.1);
  --campo-borde: rgba(255, 255, 255, 0.28);
  --pildora-fondo: rgba(255, 255, 255, 0.09);
  --pildora-borde: rgba(255, 255, 255, 0.26);
  --cita-fondo: rgba(255, 255, 255, 0.08);
  --aviso-grave-fondo: rgba(210, 53, 43, 0.18);
  --boton-secundario-borde: rgba(255, 255, 255, 0.35);
  --boton-secundario-hover: rgba(255, 255, 255, 0.12);

  /* El acento azul del collage se apaga demasiado sobre negro: subimos al
     amarillo de la paleta, que es el que respira en oscuro */
  --color-acento: var(--color-amarillo);

  /* Controles flotantes: se INTERCAMBIAN respecto al tema claro. Aquí el
     activo es el blanco con texto negro, y los demás oscuros con texto
     claro; en tema claro es justo al revés. */
  --control-fondo: var(--color-negro);
  --control-texto: #ffffff;
  --control-fondo-activo: #ffffff;
  --control-texto-activo: var(--color-negro);
}

/* La tarjeta de "gracias" es sólida (lleva el borde brillante alrededor):
   sobre tema oscuro tiene que dejar de ser crema o el texto claro no se lee */
:root[data-fondo="3"] .borde-brillante {
  --brillo-superficie: #16161a;
}
