/* =====================================================================
   Diseño «Taurina» (se activa con <html data-diseno="taurina">)
   Inspiración: carteles de toros (Almuñécar 1974, Valladolid 1985,
   Linares 1947): papel de cartel envejecido, pinceladas de arena,
   capote rosa y muleta roja, letra condensada azul marino, programa
   en casillas con doble filete y marco azul. Solo sobrescribe styles.css.
   ===================================================================== */

html[data-diseno="taurina"] {
  --ma: #1C2A6B;          /* azul marino de cartel */
  --ma-cl: #3B57B8;
  --muleta: #B3141E;      /* rojo muleta */
  --capote: #E2559A;      /* rosa capote */
  --oro: #E0AE3A;         /* oro traje de luces */
  --verde: #3E9C4F;
  --papel: #F4E6C2;       /* papel de cartel */
  --arena: #E9CF96;
  --f-cartel: 'Archivo', 'Arial Narrow', 'Helvetica Neue', Arial, sans-serif;

  --bg: var(--papel); --bg-2: #EBD9AE; --surface: #FAF0D6;
  --text: #1B1F3F; --muted: #5E5A4C; --line: var(--ma); --link: var(--ma);
  --btn-bg: var(--ma); --btn-fg: #FAF0D6; --danger: var(--muleta);
  --c1: var(--ma); --c2: var(--muleta); --c3: var(--oro); --c4: var(--capote);
  --red: var(--muleta); --blue: var(--ma); --mustard: var(--oro); --ink: #141A40; --cream: #FAF0D6;
  --grano: none;
  /* pinceladas de arena y capote, como el fondo pintado de los carteles */
  --pintura: radial-gradient(ellipse 60% 40% at 15% 20%, rgba(226,85,154,.10), transparent 70%),
             radial-gradient(ellipse 50% 35% at 85% 10%, rgba(224,174,58,.16), transparent 70%),
             radial-gradient(ellipse 70% 45% at 60% 90%, rgba(201,150,80,.18), transparent 70%),
             radial-gradient(ellipse 40% 30% at 30% 70%, rgba(179,20,30,.06), transparent 70%);
  /* doble filete del programa */
  --filete: inset 0 0 0 2px var(--ma), inset 0 0 0 5px var(--surface), inset 0 0 0 6px var(--ma);
  background: var(--ma-cl);
}
html[data-diseno="taurina"][data-theme="noche"] {
  --papel: #1A1E3D; --bg: #1A1E3D; --bg-2: #232850; --surface: #20254A; --arena: #2D3260;
  --text: #F4E6C2; --muted: #C9BFA0; --link: var(--oro); --cream: #F4E6C2;
}

/* ---------- base: cartel con marco azul ---------- */
html[data-diseno="taurina"] body { background: var(--ma-cl); font-family: var(--f-body); }
html[data-diseno="taurina"] main, html[data-diseno="taurina"] .foot { background: var(--pintura), var(--papel); }
html[data-diseno="taurina"] .top { background: none; }
html[data-diseno="taurina"] .stripe { height: 12px; gap: 0; }
html[data-diseno="taurina"] .stripe i:nth-child(1) { background: var(--muleta); flex: 3; }
html[data-diseno="taurina"] .stripe i:nth-child(2) { background: var(--oro); flex: 2; }
html[data-diseno="taurina"] .stripe i:nth-child(3) { background: var(--capote); flex: 3; }
html[data-diseno="taurina"] a { color: var(--link); }
html[data-diseno="taurina"] a:hover { color: var(--muleta); }

/* ---------- cabecera: «Plaza de Toros» ---------- */
html[data-diseno="taurina"] .brand { background: var(--papel); font-family: var(--f-cartel); font-stretch: 75%; font-weight: 900; letter-spacing: .01em; text-transform: uppercase; box-shadow: var(--filete); }
html[data-diseno="taurina"] .brand .b1 { color: var(--ma); } html[data-diseno="taurina"] .brand .b2 { color: var(--muleta); }
html[data-diseno="taurina"] .brand:hover { background: #FAF0D6; }
html[data-diseno="taurina"] .brand:hover .b1 { color: var(--ma); } html[data-diseno="taurina"] .brand:hover .b2 { color: var(--muleta); }
html[data-diseno="taurina"] .brand-vaso { stroke: var(--ma); filter: none; }
html[data-diseno="taurina"] .bv-vidrio, html[data-diseno="taurina"] .bv-hielo { fill: #FAF0D6; }
html[data-diseno="taurina"] .bv-liq { fill: var(--muleta); } html[data-diseno="taurina"] .bv-naranja { fill: var(--oro); }
html[data-diseno="taurina"] nav a, html[data-diseno="taurina"] nav button, html[data-diseno="taurina"] nav summary,
html[data-diseno="taurina"] .theme-btn, html[data-diseno="taurina"] .menu-btn {
  font: 800 1rem/1 var(--f-cartel); font-stretch: 70%; letter-spacing: .05em; text-transform: uppercase; background: var(--papel); color: var(--ma);
}
html[data-diseno="taurina"] nav a:hover, html[data-diseno="taurina"] nav button:hover, html[data-diseno="taurina"] nav summary:hover,
html[data-diseno="taurina"] .theme-btn:hover { background: var(--oro); color: var(--ma); }
html[data-diseno="taurina"] nav a.on, html[data-diseno="taurina"] nav summary.on { background: var(--muleta); color: #FAF0D6; }
html[data-diseno="taurina"] .theme-btn, html[data-diseno="taurina"] .menu-btn { background: var(--oro); }
html[data-diseno="taurina"] .lab-menu { background: var(--ma); border-color: var(--ma); }

/* ---------- tipografía: condensada de cartel ---------- */
html[data-diseno="taurina"] h1, html[data-diseno="taurina"] h2 { font-family: var(--f-cartel); font-stretch: 68%; font-weight: 900; color: var(--ma); text-transform: uppercase; letter-spacing: .005em; line-height: .95; }
html[data-diseno="taurina"] h1 { font-size: clamp(2.3rem, 6vw, 4.4rem); }
html[data-diseno="taurina"] h2 { font-size: 1.8rem; }
html[data-diseno="taurina"] h3 { font: 800 1.05rem/1.1 var(--f-cartel); font-stretch: 70%; color: var(--muleta); letter-spacing: .06em; text-transform: uppercase; }
html[data-diseno="taurina"] .script { font: 800 .95rem/1.2 var(--f-cartel); font-stretch: 70%; font-style: normal; text-transform: uppercase; letter-spacing: .08em; color: var(--muleta); }
html[data-diseno="taurina"][data-theme="noche"] h1, html[data-diseno="taurina"][data-theme="noche"] h2 { color: var(--oro); }

/* ---------- controles ---------- */
html[data-diseno="taurina"] button, html[data-diseno="taurina"] .btn, html[data-diseno="taurina"] a.button { font: 800 .95rem/1 var(--f-cartel); font-stretch: 70%; letter-spacing: .06em; background: var(--ma); color: #FAF0D6; border: 0; }
html[data-diseno="taurina"] button:hover, html[data-diseno="taurina"] .btn:hover, html[data-diseno="taurina"] a.button:hover { background: var(--muleta); color: #FAF0D6; }
html[data-diseno="taurina"] button.ghost, html[data-diseno="taurina"] .btn.ghost { background: transparent; color: var(--ma); box-shadow: inset 0 0 0 2px var(--ma); outline: 0; }
html[data-diseno="taurina"] button.ghost:hover { background: var(--oro); color: var(--ma); }
html[data-diseno="taurina"] button.danger { background: var(--muleta); }
html[data-diseno="taurina"] input, html[data-diseno="taurina"] select, html[data-diseno="taurina"] textarea { border: 2px solid var(--ma); background: #FAF0D6; color: var(--text); }
html[data-diseno="taurina"] input:focus, html[data-diseno="taurina"] select:focus, html[data-diseno="taurina"] textarea:focus { outline: 3px solid var(--capote); }
html[data-diseno="taurina"] input[type=checkbox] { accent-color: var(--muleta); }
html[data-diseno="taurina"] input[type=range] { background: var(--ma); }
html[data-diseno="taurina"] input[type=range]::-webkit-slider-thumb { background: var(--muleta); border-color: var(--ma); }

/* ---------- bloques: casillas del programa con doble filete ---------- */
html[data-diseno="taurina"] .panel, html[data-diseno="taurina"] .card, html[data-diseno="taurina"] .table-wrap { background: var(--surface); border: 0; box-shadow: var(--filete); padding: 24px; }
html[data-diseno="taurina"] .table-wrap { padding: 8px; }
html[data-diseno="taurina"] th { background: var(--ma); color: #FAF0D6; font: 800 .88rem/1.2 var(--f-cartel); font-stretch: 70%; letter-spacing: .06em; }
html[data-diseno="taurina"] th, html[data-diseno="taurina"] td { border-bottom: 1px solid color-mix(in srgb, var(--ma) 35%, transparent); }
html[data-diseno="taurina"] .tag { background: var(--muleta); color: #FAF0D6; font: 800 .74rem/1.6 var(--f-cartel); font-stretch: 70%; letter-spacing: .06em; }
html[data-diseno="taurina"] .tag.warn { background: var(--ma); }
html[data-diseno="taurina"] .pill { border: 2px solid var(--ma); color: var(--ma); font-family: var(--f-cartel); font-stretch: 70%; background: transparent; }
html[data-diseno="taurina"] .post { border-left-color: var(--capote); }

/* ---------- filtros ---------- */
html[data-diseno="taurina"] .filters, html[data-diseno="taurina"] .chips { background: var(--ma); border-color: var(--ma); gap: 3px; }
html[data-diseno="taurina"] .filters > div { background: var(--papel); }
html[data-diseno="taurina"] button.chip { background: var(--papel); color: var(--ma); }
html[data-diseno="taurina"] button.chip:hover { background: var(--oro); color: var(--ma); }
html[data-diseno="taurina"] button.chip[aria-pressed="true"] { background: var(--muleta); color: #FAF0D6; }

/* ---------- portada: el cartel ---------- */
html[data-diseno="taurina"] .hero { background: var(--ma); border-color: var(--ma); gap: 3px; }
html[data-diseno="taurina"] .hero-texto { background: var(--ma); color: #FAF0D6; padding: 14px 26px; }
html[data-diseno="taurina"] .hero-texto .script { color: var(--oro); opacity: 1; }
html[data-diseno="taurina"] .hero-texto p:not(.script) { font: 700 1.1rem/1.4 var(--f-cartel); font-stretch: 85%; }
html[data-diseno="taurina"] .hero-titulo { background:
    radial-gradient(ellipse 55% 45% at 75% 30%, rgba(226,85,154,.55), transparent 70%),
    radial-gradient(ellipse 50% 40% at 85% 75%, rgba(224,174,58,.55), transparent 70%),
    radial-gradient(ellipse 80% 60% at 30% 100%, rgba(201,150,80,.45), transparent 70%), var(--papel); padding: 22px 26px; }
html[data-diseno="taurina"] .hero-titulo h1 { font-size: clamp(2rem, 2.8vw, 3.2rem); }
html[data-diseno="taurina"] .hero-titulo svg { fill: var(--ma); }
html[data-diseno="taurina"] .hero-titulo svg circle { fill: var(--muleta); }
html[data-diseno="taurina"] .hero-num { background: radial-gradient(ellipse 70% 50% at 50% 100%, rgba(201,150,80,.5), transparent 70%), var(--papel); color: var(--muleta); box-shadow: var(--filete); }
html[data-diseno="taurina"] .hero-num b { font-family: var(--f-cartel); font-stretch: 62%; font-weight: 900; letter-spacing: -.02em; left: .06em; top: -.08em; }
html[data-diseno="taurina"] .hero-num span { background: var(--ma); color: #FAF0D6; font: 800 1.05rem/1 var(--f-cartel); font-stretch: 70%; }
html[data-diseno="taurina"] .hero-mapa { background: var(--muleta); color: #FAF0D6; }
html[data-diseno="taurina"] .hero-mapa:hover { color: #FAF0D6; }
html[data-diseno="taurina"] .hero-mapa .hm-paises path.on { fill: var(--oro); }
html[data-diseno="taurina"] .hero-mapa .hm-txt b { font-family: var(--f-cartel); font-stretch: 62%; font-weight: 900; }
html[data-diseno="taurina"] .hero-mapa .hm-txt span { font-family: var(--f-cartel); font-stretch: 70%; font-weight: 900; }
html[data-diseno="taurina"] .hero-mapa .hm-txt em { background: var(--ma); color: #FAF0D6; font-family: var(--f-cartel); font-stretch: 70%; }
html[data-diseno="taurina"] .hero-mapa:hover .hm-txt em { background: var(--oro); color: var(--ma); }
html[data-diseno="taurina"] .hero-tipos { background: var(--surface); box-shadow: var(--filete); padding: 18px 22px; }
html[data-diseno="taurina"] .hero-tipos h2 { font: 900 1.3rem/1 var(--f-cartel); font-stretch: 68%; color: var(--ma); }
html[data-diseno="taurina"] .hero-tipos .ht-n { font-family: var(--f-cartel); font-stretch: 70%; font-weight: 800; color: var(--ma); font-size: .85rem; }
html[data-diseno="taurina"] .hero-tipos b { font-family: var(--f-cartel); font-stretch: 70%; color: var(--ma); }
html[data-diseno="taurina"] .hero-tipos button, html[data-diseno="taurina"] .hero-tipos button:hover { background: transparent !important; box-shadow: none !important; color: var(--ma); }
html[data-diseno="taurina"] .hero-tipos li + li button { border-top: 1px solid color-mix(in srgb, var(--ma) 30%, transparent); }
html[data-diseno="taurina"] .hp .hp-det { fill: var(--surface); }

/* ---------- tarjetas: casillas de la corrida ---------- */
html[data-diseno="taurina"] .t-rojo { --pt: var(--muleta); } html[data-diseno="taurina"] .t-blanco { --pt: var(--oro); }
html[data-diseno="taurina"] .t-dry { --pt: var(--verde); } html[data-diseno="taurina"] .t-rosado { --pt: var(--capote); }
html[data-diseno="taurina"] .t-reserva { --pt: var(--ma-cl); }
html[data-diseno="taurina"] .grid { background: var(--ma); border-color: var(--ma); gap: 3px; }
html[data-diseno="taurina"] .vcard { background: var(--surface); box-shadow: inset 0 0 0 3px var(--surface), inset 0 0 0 4px var(--ma); }
html[data-diseno="taurina"] .vcard-head, html[data-diseno="taurina"] .cc .vcard-head, html[data-diseno="taurina"] .rc .vcard-head {
  background: var(--surface); color: var(--ma); box-shadow: inset 0 6px 0 var(--pt, var(--ma)); border-bottom: 3px double var(--ma); padding-top: 18px;
}
html[data-diseno="taurina"] .vcard-head h3, html[data-diseno="taurina"] .cc .vcard-head h3 { font: 900 1.85rem/.95 var(--f-cartel); font-stretch: 62%; color: var(--ma); text-transform: none; letter-spacing: .005em; }
html[data-diseno="taurina"] .kind { font: 800 .8rem/1 var(--f-cartel); font-stretch: 70%; color: var(--muleta); letter-spacing: .1em; opacity: 1; }
html[data-diseno="taurina"] .cc-datos { border-top: 2px solid var(--ma); }
html[data-diseno="taurina"] .cd-fila { border-bottom: 1px solid color-mix(in srgb, var(--ma) 30%, transparent); }
html[data-diseno="taurina"] .cd-lab { font-family: var(--f-cartel); font-stretch: 70%; font-weight: 800; color: var(--muleta); font-size: .72rem; }
html[data-diseno="taurina"] .cd-fila b { font-family: var(--f-cartel); font-stretch: 62%; font-weight: 900; color: var(--ma); font-size: 1.45rem; }
html[data-diseno="taurina"] .cd-barras i { background: color-mix(in srgb, var(--ma) 18%, transparent); } html[data-diseno="taurina"] .cd-barras i.on { background: var(--muleta); }
html[data-diseno="taurina"] .vcard-foto, html[data-diseno="taurina"] .dh-foto { border: 3px solid var(--ma); box-shadow: 0 0 0 3px var(--surface), 0 0 0 4px var(--ma); }
html[data-diseno="taurina"] .pv-pista { border-color: var(--ma); }
html[data-diseno="taurina"] .pv-fila { font-family: var(--f-cartel); font-stretch: 70%; color: var(--ma); }
html[data-diseno="taurina"] .spices { border-color: var(--ma); }
html[data-diseno="taurina"] .sp i { font-family: var(--f-cartel); font-stretch: 70%; }
html[data-diseno="taurina"] .count { font-family: var(--f-cartel); font-stretch: 70%; font-style: normal; text-transform: uppercase; letter-spacing: .06em; color: var(--ma); }

/* ---------- detalle: cabecera de cartel ---------- */
html[data-diseno="taurina"] .detail-head { background:
    radial-gradient(ellipse 45% 60% at 90% 40%, rgba(226,85,154,.4), transparent 70%),
    radial-gradient(ellipse 40% 50% at 70% 100%, rgba(224,174,58,.45), transparent 70%), var(--surface);
  color: var(--ma); border: 0; box-shadow: inset 0 0 0 4px var(--ma-cl), inset 0 0 0 8px var(--surface), inset 0 0 0 10px var(--ma); padding: 30px; }
html[data-diseno="taurina"] .detail-head h1 { color: var(--ma); }
html[data-diseno="taurina"] .etq { background: var(--surface); color: var(--ma); border: 0; box-shadow: var(--filete); padding: 8px; --etq-linea: var(--ma); }
html[data-diseno="taurina"] .etq .etq-marca { background: var(--muleta); color: #FAF0D6; font-stretch: 70%; }
html[data-diseno="taurina"] .etq .etq-titulo { font-stretch: 62%; color: var(--ma); }
html[data-diseno="taurina"] .etq .etq-caja { border-color: var(--ma); }
html[data-diseno="taurina"] .etq .etq-celda { border-color: var(--ma); }

/* ---------- pie: faja de patrocinio ---------- */
html[data-diseno="taurina"] .foot { box-shadow: inset 0 6px 0 var(--ma); }
html[data-diseno="taurina"] .seal { background: var(--muleta); color: #FAF0D6; border: 3px solid var(--ma); box-shadow: 0 0 0 3px var(--papel), 0 0 0 5px var(--ma); font-family: var(--f-cartel); font-stretch: 70%; }
html[data-diseno="taurina"] .foot .script { color: var(--ma); }
html[data-diseno="taurina"] #toast { background: var(--ma); color: #FAF0D6; border-left-color: var(--capote); font-family: var(--f-cartel); }

/* ---------- avisos de edad ---------- */
html[data-diseno="taurina"] .edad-gate { background: var(--ma-cl); }
html[data-diseno="taurina"] .edad-caja { background: var(--pintura), var(--papel); border: 0; box-shadow: var(--filete); padding: 36px 30px; }
html[data-diseno="taurina"] .edad-logo { background: none; font-stretch: 75%; text-transform: uppercase; }
html[data-diseno="taurina"] .edad-logo b { color: var(--ma); } html[data-diseno="taurina"] .edad-logo i { color: var(--muleta); }

/* ---------- miniatura en Laboratorio · Diseño ---------- */
.dz-taurina { background: #3B57B8; padding: 3px; gap: 0; }
.dz-taurina .dz-cab { background: linear-gradient(90deg, #B3141E 40%, #E0AE3A 40% 60%, #E2559A 60%); }
.dz-taurina .dz-logo { background: #F4E6C2; color: #1C2A6B; font-stretch: 70%; font-weight: 900; margin: 2px; line-height: 16px; }
.dz-taurina .dz-cab i { background: transparent; }
.dz-taurina .dz-rej, .dz-taurina .dz-tarjetas { background: #1C2A6B; gap: 2px; padding: 2px 0 0; }
.dz-taurina .dz-rej > div, .dz-taurina .dz-tarjetas > div { background: #FAF0D6; color: #1C2A6B; }
.dz-taurina .dz-a { background: radial-gradient(ellipse at 80% 30%, rgba(226,85,154,.6), transparent 70%), radial-gradient(ellipse at 70% 90%, rgba(224,174,58,.6), transparent 70%), #F4E6C2 !important; }
.dz-taurina .dz-a b { font: 900 12px Archivo, sans-serif; font-stretch: 65%; text-transform: uppercase; }
.dz-taurina .dz-b b { font: 900 30px Archivo, sans-serif; font-stretch: 62%; color: #B3141E; }
.dz-taurina .dz-c small { font: 800 7px Archivo, sans-serif; text-transform: uppercase; }
.dz-taurina .dz-c em:nth-of-type(1) { background: #B3141E; width: 90%; } .dz-taurina .dz-c em:nth-of-type(2) { background: #E0AE3A; width: 55%; } .dz-taurina .dz-c em:nth-of-type(3) { background: #3E9C4F; width: 25%; }
.dz-taurina .dz-d { background: #B3141E !important; color: #FAF0D6 !important; } .dz-taurina .dz-d b { font: 900 22px Archivo, sans-serif; font-stretch: 62%; }
.dz-taurina .dz-tarjetas small { font: 800 7px Archivo, sans-serif; color: #B3141E; text-transform: uppercase; }
.dz-taurina .dz-tarjetas b { font: 900 11px Archivo, sans-serif; font-stretch: 62%; text-transform: none; }
