/* tema.css: TODOS los tokens de aspecto del sitio (colores, tipos, radios, espaciado, sombras, fondos).
   base.css solo usa var(--...). Direccion visual: «La sala» (laminas/lujo/sala/ESPECIFICACION.md).
   Noche: la sala de la turmalina a medianoche (casi negro teñido, marfil, oro como luz).
   Dia: la misma sala a mediodia (aire rosado, pared de alabastro teñido, tinta del color de la piedra, laca burdeos).
   Bodoni Moda (OFL 1.1, autoalojada en /fonts/) para la voz y las cifras; la tipografia del sistema para todo lo demas. */

@font-face {
  font-family: "Bodoni Moda";
  src: url("/fonts/BodoniModa-latin.woff2") format("woff2");
  font-weight: 400 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Bodoni Moda";
  src: url("/fonts/BodoniModa-Italic-latin.woff2") format("woff2");
  font-weight: 400 900;
  font-style: italic;
  font-display: swap;
}

:root {
  color-scheme: light;

  /* Color: el dia (aire, pared, suelo, tinta y laca de la turmalina) */
  --color-paper: #fdf4f7;
  --color-paper-sunk: #f8edf0;
  --color-paper-raised: #fffafb;
  --color-ink: #2b171f;
  --color-ink-soft: #5b454d;
  --color-line: #dabac5;
  --color-line-strong: #94727f;
  --color-accent: #4c0c2c;
  --color-accent-hover: #2e061a;
  --color-accent-ink: #fff8f0;
  --color-accent-tint: #f7d5e1;
  --color-button: #4c0c2c;
  --color-button-hover: #2e061a;
  --color-button-ink: #fff8f0;
  --color-gold: #8a6424;
  --color-spark: #c4327a;
  --color-focus: #1b5fc1;
  --color-warn-paper: #fff0d2;
  --color-warn-line: #b9801a;
  --color-ok-paper: #e8f1e6;
  --color-ok-line: #4d7a45;
  --color-error: #9a2b1f;

  /* La sala: pared, luz, suelo y reflejo de la pieza de la portada */
  --room-bg:
    radial-gradient(60% 55% at 70% 38%, #fdf4f7 0%, rgba(253, 244, 247, 0) 70%),
    linear-gradient(180deg, #fdf4f7 0%, #f7d5e1 56%, #f7d5e1 100%);
  --room-floor: linear-gradient(180deg, #dabac5 0, #f7d5e1 3px, #f8edf0 14%, #f8edf0 100%);
  --room-halo: radial-gradient(closest-side, rgba(252, 156, 194, 0.55), rgba(252, 156, 194, 0));
  --room-contact: rgba(75, 25, 48, 0.34);
  --room-piece-shadow: drop-shadow(0 1px 1px rgba(75, 25, 48, 0.3)) drop-shadow(0 16px 20px rgba(75, 25, 48, 0.16));
  --room-reflect-opacity: 0.2;
  --room-edge: #dabac5;
  --room-floor-mask: linear-gradient(to right, transparent 0, #000 24%);
  --room-reflect-mask: linear-gradient(to top, #000 0, transparent 36%);
  --page-glow: radial-gradient(70% 100% at 50% 0%, #f7d5e1 0%, rgba(247, 213, 225, 0) 100%);
  --glass: rgba(255, 252, 253, 0.72);
  --glass-edge: rgba(75, 25, 48, 0.14);
  --glass-shadow: 0 14px 32px rgba(75, 25, 48, 0.13), 0 2px 4px rgba(75, 25, 48, 0.08);

  /* Las cuatro salas de la vitrina (turmalina, amatista, piedra de luna, granate) */
  --niche-1: radial-gradient(90% 70% at 50% 28%, #f7d5e1, #fdf4f7);
  --niche-2: radial-gradient(90% 70% at 50% 28%, #e3d3f0, #f8f4fb);
  --niche-3: radial-gradient(90% 70% at 50% 28%, #cfdcf0, #f5f8fc);
  --niche-4: radial-gradient(90% 70% at 50% 28%, #f0d3cc, #fcf5f3);
  --niche-floor: rgba(75, 25, 48, 0.1);

  /* Tipografia */
  --font-body: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-display: "Bodoni Moda", "Bodoni 72", Didot, "Palatino Linotype", Georgia, serif;
  --font-mono: ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
  --display-features: "lnum" 1, "kern" 1;
  --weight-regular: 400;
  --weight-medium: 600;
  --weight-bold: 700;
  --weight-display: 400;
  --size-xs: 0.8125rem;
  --size-s: 0.9375rem;
  --size-m: 1.0625rem;
  --size-l: 1.25rem;
  --size-xl: 1.75rem;
  --size-xxl: clamp(2rem, 1.3rem + 3.2vw, 3.5rem);
  --size-hero: clamp(2.5rem, 1.6rem + 3.8vw, 4.25rem);
  --size-hero-number: clamp(2.75rem, 1.8rem + 4.6vw, 4.5rem);
  --leading-body: 1.55;
  --leading-tight: 1.12;
  --tracking-caps: 0.16em;
  --tracking-display: -0.012em;

  /* Forma */
  --radius-s: 10px;
  --radius-m: 20px;
  --radius-l: 32px;
  --radius-pill: 999px;
  --radius-button: 999px;
  --radius-arch: 999px 999px 22px 22px;
  --line-width: 1px;
  --line-width-strong: 2px;
  --shadow-raised: var(--glass-shadow);

  /* Espaciado y medidas */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2.5rem;
  --space-7: 4rem;
  --measure: 42rem;
  --page-width: 68rem;
  --touch: 2.875rem;
}

@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: dark;

    /* La noche: casi negro teñido, marfil, oro como luz */
    --color-paper: #0e0408;
    --color-paper-sunk: #17070f;
    --color-paper-raised: #1f0a15;
    --color-ink: #f6ede4;
    --color-ink-soft: #b9aba5;
    --color-line: #3d1a2b;
    --color-line-strong: #8f6a7c;
    --color-accent: #e8c98c;
    --color-accent-hover: #f6dfae;
    --color-accent-ink: #1a0610;
    --color-accent-tint: #260c1a;
    --color-button: #f6ede4;
    --color-button-hover: #ffffff;
    --color-button-ink: #1a0610;
    --color-gold: #e8c98c;
    --color-spark: #ee4a93;
    --color-focus: #9cc0ff;
    --color-warn-paper: #2c200e;
    --color-warn-line: #c99a3e;
    --color-ok-paper: #10261a;
    --color-ok-line: #5aa57a;
    --color-error: #ff9a8a;

    --room-bg:
      radial-gradient(120% 62% at 62% 36%, #3d0b23 0%, rgba(61, 11, 35, 0) 72%),
      linear-gradient(180deg, #170610 0%, #0e0408 100%);
    --room-floor: linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0, rgba(255, 255, 255, 0.16) 1px, #12050c 1px, #0a0206 100%);
    --room-halo: radial-gradient(closest-side, rgba(188, 62, 121, 0.55), rgba(188, 62, 121, 0));
    --room-contact: rgba(0, 0, 0, 0);
    --room-piece-shadow: drop-shadow(0 0 22px rgba(188, 62, 121, 0.22));
    --room-reflect-opacity: 0.3;
    --room-edge: rgba(255, 255, 255, 0.14);
    --page-glow: radial-gradient(70% 100% at 50% 0%, #2a0a1a 0%, rgba(42, 10, 26, 0) 100%);
    --glass: rgba(255, 226, 238, 0.06);
    --glass-edge: rgba(255, 255, 255, 0.14);
    --glass-shadow: 0 18px 40px rgba(0, 0, 0, 0.45);

    --niche-1: radial-gradient(90% 70% at 50% 28%, #3d0b23, #0e0408);
    --niche-2: radial-gradient(90% 70% at 50% 28%, #2e1250, #0a0410);
    --niche-3: radial-gradient(90% 70% at 50% 28%, #14284d, #050810);
    --niche-4: radial-gradient(90% 70% at 50% 28%, #4a150e, #0d0504);
    --niche-floor: rgba(0, 0, 0, 0.45);
  }
}
