/* ═══════════════════════════════════════════════════════
   VAQUEROS · TEAM-NCAA-GREEN.CSS
   Variante verde/naranja/blanco del sistema visual compartido
   (team-ncaa.css) para las páginas de equipo, categoría y
   temporada que no son Rabbits Especial (Hornets, Tauros, Ponys,
   Intermedia, Juvenil Única, todas las de Flag, y todas las de
   Otoño 2025 dentro de la carpeta "Temporada 2025/").
   Un solo archivo → un solo diseño. Edita aquí, se aplica en todas.

   NOTA: las variables se llaman --teal/--teal-dark por herencia del
   diseño original (team-ncaa.css, que sí es teal/turquesa); aquí
   value real es verde. Si algún día se vuelve a usar teal de verdad,
   conviene renombrarlas — por ahora, --teal = "color primario del
   equipo" sea cual sea.
═══════════════════════════════════════════════════════ */

:root {
  --teal:      #22C55E;
  --teal-dark: #16A34A;
  --teal-dim:  rgba(34,197,94,0.10);
  --teal-line: rgba(34,197,94,0.25);
  --orange:    #F15A22;
  --orange-dim:rgba(241,90,34,0.10);
  --red:       #E0455E;
  --red-dim:   rgba(224,69,94,0.10);
  --red-line:  rgba(224,69,94,0.28);
  --dark:      #050E0D;
  --dark2:     #091514;
  --dark3:     #0F1F1E;
  --dark4:     #162523;
  --white:     #F2FAF9;
  --gray:      #6B8C8A;
  --gray-lt:   #9BB5B3;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:var(--dark); color:var(--white); font-family:'Barlow',sans-serif; overflow-x:hidden; position:relative; }
body::before {
  content:''; position:fixed; inset:0; z-index:1; pointer-events:none; opacity:0.05; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ══════════════════════════════════════
   INTRO DE ESTADIO — se ejecuta una vez al cargar
══════════════════════════════════════ */
.stadium-intro {
  position: fixed; inset: 0; z-index: 999;
  background: #000;
  display: flex; align-items: center; justify-content: center;
  animation: introHold 1.5s forwards;
}
.stadium-intro-inner { text-align: center; animation: introFlicker 1.5s forwards; }
.stadium-intro-team {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(3rem, 12vw, 7rem);
  letter-spacing: 0.06em;
  color: var(--white);
  text-shadow: 0 0 40px var(--teal-line);
}
.stadium-intro-sub {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.4em;
  text-transform: uppercase;
  color: var(--teal);
  margin-top: 12px;
}
.stadium-intro-bar {
  width: 0; height: 3px; background: var(--teal); margin: 22px auto 0;
  animation: introBar 1.1s ease forwards;
  box-shadow: 0 0 16px var(--teal);
}
@keyframes introBar { from { width:0; } to { width: 220px; } }
@keyframes introFlicker { 0%{opacity:0;transform:scale(0.94);} 18%{opacity:1;transform:scale(1);} 82%{opacity:1;} 100%{opacity:0;} }
@keyframes introHold { 0%{opacity:1;pointer-events:all;} 85%{opacity:1;pointer-events:all;} 100%{opacity:0;pointer-events:none;visibility:hidden;} }
@media (prefers-reduced-motion: reduce) {
  .stadium-intro { display:none; }
}

/* ══════════════════════════════════════
   TICKER
══════════════════════════════════════ */
.ticker { height:34px; background:#000; border-bottom:1px solid rgba(34,197,94,0.15); display:flex; align-items:center; overflow:hidden; position:relative; }
.ticker-label { flex-shrink:0; background:var(--teal); height:100%; display:flex; align-items:center; padding:0 14px; z-index:2; font-family:'Bebas Neue',sans-serif; font-size:0.75rem; letter-spacing:0.2em; color:#000; white-space:nowrap; }
.ticker-track { display:flex; white-space:nowrap; animation:tickerScroll 28s linear infinite; padding-left:28px; }
.ticker-item { display:inline-flex; align-items:center; gap:8px; padding-right:40px; font-family:'Barlow Condensed',sans-serif; font-size:0.68rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; color:var(--gray-lt); }
.ticker-item strong { color:var(--white); }
.ticker-dot { width:4px; height:4px; border-radius:50%; background:var(--teal); flex-shrink:0; }
@keyframes tickerScroll { from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* ══════════════════════════════════════
   HERO — estilo EA Sports: foto de fondo + título anclado abajo
══════════════════════════════════════ */
.hero { min-height:100vh; display:flex; flex-direction:column; position:relative; overflow:hidden; background: var(--dark); }

/* Capa de foto — pon tu imagen con: <div class="hero-photo" style="background-image:url('TU_FOTO.jpg')"></div> */
.hero-photo {
  position:absolute; inset:0; z-index:0;
  background-size:cover; background-position:center 30%;
  background-color: var(--dark2); /* color de respaldo mientras no haya foto */
  background-image:
    repeating-linear-gradient(135deg, rgba(34,197,94,0.06) 0px, rgba(34,197,94,0.06) 2px, transparent 2px, transparent 34px),
    radial-gradient(ellipse 80% 70% at 20% 30%, rgba(34,197,94,0.28) 0%, transparent 55%),
    linear-gradient(135deg, #0e2b27 0%, #050e0d 55%, #030a09 100%);
}
/* degradados de legibilidad sobre la foto — igual que EA */
.hero-photo::before {
  content:''; position:absolute; inset:0;
  background: linear-gradient(to top, rgba(3,8,7,0.98) 0%, rgba(3,8,7,0.75) 30%, rgba(3,8,7,0.25) 58%, rgba(3,8,7,0.55) 100%);
}
.hero-photo::after {
  content:''; position:absolute; inset:0;
  background: linear-gradient(100deg, rgba(3,8,7,0.9) 0%, rgba(3,8,7,0.35) 42%, transparent 62%);
}
.hero::after {
  content:''; position:absolute; inset:0; pointer-events:none; z-index:1;
  background-image: repeating-linear-gradient(0deg, transparent, transparent 79px, rgba(34,197,94,0.05) 80px);
}
/* marca de agua — número gigante, más discreto ahora que hay foto real de fondo */
.hero-jersey {
  position:absolute; right:2%; top:8%;
  font-family:'Bebas Neue',sans-serif; font-size:clamp(9rem,20vw,16rem);
  line-height:1; color:transparent;
  -webkit-text-stroke:2px rgba(255,255,255,0.12);
  z-index:1; pointer-events:none; user-select:none;
}
.hero-slash { display:none; } /* ya no hace falta: la foto + degradado hacen ese trabajo */

.hero-main {
  position:relative; z-index:2; flex:1; display:flex; align-items:flex-end;
  padding:56px 48px 56px; max-width:1280px; margin:0 auto; width:100%; gap:52px;
}
.hero-left { flex:1; min-width:0; }
.hero-pill { display:inline-flex; align-items:center; gap:8px; padding:5px 14px; margin-bottom:24px; border:1px solid rgba(255,255,255,0.15); background:rgba(0,0,0,0.3); font-family:'Barlow Condensed',sans-serif; font-size:0.62rem; font-weight:700; letter-spacing:0.25em; text-transform:uppercase; color:var(--gray-lt); }
.pill-dot { width:7px; height:7px; border-radius:50%; background:var(--teal); animation:pulse 1.5s ease infinite; }
.hero-team { font-family:'Bebas Neue',sans-serif; font-size:clamp(1rem,2vw,1.4rem); letter-spacing:0.2em; color:var(--gray-lt); margin-bottom:4px; }
.hero-title { font-family:'Bebas Neue',sans-serif; font-size:clamp(5.5rem,11.5vw,10.5rem); line-height:0.83; letter-spacing:-0.01em; margin-bottom:24px; position:relative; }
.hero-title .t1 { display:block; color:var(--white); text-shadow: 0 4px 30px rgba(0,0,0,0.55), 0 0 2px rgba(255,255,255,0.3); }
.hero-title .t2, .hero-title .t3 {
  display:block;
  background: linear-gradient(180deg, #eafffb 0%, var(--teal) 45%, var(--teal-dark) 85%, #052e16 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-stroke:2px transparent; color:transparent;
  filter: drop-shadow(0 0 34px rgba(34,197,94,0.55));
}
.hero-desc { max-width:460px; margin-bottom:32px; font-size:0.9rem; color:var(--gray-lt); line-height:1.7; font-weight:300; position:relative; z-index:1; }
.hero-ctas { display:flex; gap:10px; flex-wrap:wrap; position:relative; z-index:1; }
.btn-p {
  font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:0.78rem; letter-spacing:0.2em; text-transform:uppercase;
  padding:13px 28px; background:linear-gradient(135deg,#4ADE80,var(--teal) 60%,var(--teal-dark)); color:#00201d; text-decoration:none;
  display:inline-block; clip-path:polygon(9px 0%,100% 0%,calc(100% - 9px) 100%,0% 100%); transition:filter 0.15s, transform .15s;
  border:2px solid rgba(255,255,255,0.9); box-shadow:4px 6px 0 rgba(0,0,0,0.5);
}
.btn-p:hover { filter:brightness(1.1); transform:translate(-2px,-2px); box-shadow:6px 8px 0 rgba(0,0,0,0.5); }
.btn-g { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:0.78rem; letter-spacing:0.2em; text-transform:uppercase; padding:12px 28px; background:rgba(0,0,0,0.35); color:var(--white); text-decoration:none; display:inline-block; border:2px solid rgba(255,255,255,0.5); clip-path:polygon(9px 0%,100% 0%,calc(100% - 9px) 100%,0% 100%); transition:border-color 0.15s,background 0.15s,transform .15s; box-shadow:4px 6px 0 rgba(0,0,0,0.35); }
.btn-g:hover { border-color:var(--teal); background:var(--teal-dim); transform:translate(-2px,-2px); }
.hero-right { width:320px; flex-shrink:0; position:relative; z-index:2; }

/* ══════════════════════════════════════
   COLLAGE — fotos rotadas + pennant, estilo scrapbook
   Pon tus fotos así:
   <div class="collage-photo collage-photo-1" style="background-image:url('TU_FOTO.jpg')"></div>
══════════════════════════════════════ */
.collage { position:relative; width:100%; height:260px; margin-bottom:26px; }
.collage-photo {
  position:absolute; background-size:cover; background-position:center;
  background-color:var(--dark3); border:6px solid #fff;
  box-shadow:0 14px 34px rgba(0,0,0,0.55);
}
.collage-photo-1 { width:170px; height:190px; top:26px; left:64px; transform:rotate(-6deg); z-index:2; }
.collage-photo-2 { width:120px; height:130px; bottom:-10px; right:10px; transform:rotate(9deg); z-index:4; }
.collage-photo-3 { width:110px; height:110px; top:0; right:70px; transform:rotate(-8deg); z-index:3; }
.collage-pennant {
  position:absolute; top:-18px; left:0; z-index:5;
  width:120px; height:72px;
  background: linear-gradient(135deg, var(--teal), var(--teal-dark));
  clip-path: polygon(0 0, 100% 0, 42% 100%);
  display:flex; align-items:flex-start; justify-content:center; padding-top:14px;
  font-family:'Bebas Neue',sans-serif; font-size:0.78rem; letter-spacing:0.05em; color:#00201d;
  text-transform:uppercase; text-align:center; transform:rotate(-6deg);
  box-shadow:0 8px 20px rgba(0,0,0,0.4);
}
/* texto vertical de borde — detalle EA */
.hero-edge-text {
  position:absolute; right:14px; top:0; bottom:0; z-index:2;
  display:flex; align-items:center; justify-content:center;
  writing-mode:vertical-rl; text-orientation:mixed;
  font-family:'Barlow Condensed',sans-serif; font-size:0.72rem; font-weight:700;
  letter-spacing:0.3em; text-transform:uppercase; color:rgba(255,255,255,0.35);
  pointer-events:none;
}

/* Próximo partido → boleto perforado */
.ngc {
  background:var(--dark2); border:1px solid rgba(255,255,255,0.08); border-top:4px solid var(--teal);
  position:relative; transform: rotate(-1deg);
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 14px), calc(100% - 14px) 100%, 0 100%);
  box-shadow: 0 0 0 1px rgba(34,197,94,0.08), 0 24px 50px -16px rgba(34,197,94,0.4);
}
.ngc::before, .ngc::after {
  content:''; position:absolute; width:18px; height:18px; border-radius:50%;
  background:var(--dark); top:41px; z-index:3;
}
.ngc::before { left:-9px; }
.ngc::after { right:-9px; }
.ngc.scrim-card { border-top-color:var(--orange); box-shadow: 0 0 0 1px rgba(241,90,34,0.08), 0 24px 50px -16px rgba(241,90,34,0.4); }

@media (max-width:900px) {
  .collage { max-width:320px; margin:0 auto 26px; }
}
.ngc-head { display:flex; align-items:center; justify-content:space-between; padding:11px 16px; border-bottom:1px solid rgba(255,255,255,0.05); background:rgba(34,197,94,0.04); }
.ngc-head.scrim-head { background:rgba(241,90,34,0.04); }
.ngc-label { font-family:'Barlow Condensed',sans-serif; font-size:0.58rem; font-weight:700; letter-spacing:0.3em; text-transform:uppercase; color:var(--teal); display:flex; align-items:center; gap:6px; }
.ngc-label.scrim-label { color:var(--orange); }
.ngc-label-dot { width:6px; height:6px; border-radius:50%; background:var(--teal); animation:pulse 1.5s ease infinite; }
.ngc-label-dot.orange-dot { background:var(--orange); }
.ngc-jornada { font-family:'Bebas Neue',sans-serif; font-size:0.85rem; letter-spacing:0.12em; color:var(--gray); }
.ngc-body { padding:20px 16px 16px; }
.ngc-team { display:flex; align-items:center; justify-content:space-between; padding:9px 0; }
.ngc-team + .ngc-team { border-top:1px solid rgba(255,255,255,0.05); }
.ngc-team-l { display:flex; align-items:center; gap:10px; }
.ngc-logo { width:42px; height:42px; background:var(--dark3); border:2px solid var(--teal-line); border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; overflow:hidden; box-shadow:0 2px 12px -2px var(--teal-line); transition:transform 0.2s,border-color 0.2s; }
.ngc-team:hover .ngc-logo { transform:scale(1.08); border-color:var(--teal); }
.ngc-logo img { width:32px; height:32px; object-fit:contain; }
.ngc-abbr { font-family:'Bebas Neue',sans-serif; font-size:1.25rem; letter-spacing:0.05em; color:var(--white); line-height:1; }
.ngc-full { font-family:'Barlow Condensed',sans-serif; font-size:0.58rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; color:var(--gray); margin-top:1px; }
.loc-tag { font-family:'Barlow Condensed',sans-serif; font-size:0.52rem; font-weight:700; letter-spacing:0.15em; text-transform:uppercase; padding:3px 8px; border:1px solid var(--teal-line); color:var(--teal); clip-path:polygon(3px 0%,100% 0%,calc(100% - 3px) 100%,0% 100%); }
.loc-tag.away { border-color:rgba(241,90,34,0.25); color:var(--orange); }
.ngc-vs { text-align:center; padding:5px 0; font-family:'Bebas Neue',sans-serif; font-size:0.72rem; letter-spacing:0.3em; color:var(--orange); }
.ngc-footer { display:grid; grid-template-columns:1fr 1fr; gap:2px; padding-top:12px; }
.ngc-meta { background:var(--dark3); padding:9px 11px; }
.ngc-meta-lbl { font-family:'Barlow Condensed',sans-serif; font-size:0.52rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; color:var(--gray); margin-bottom:2px; }
.ngc-meta-val { font-family:'Barlow Condensed',sans-serif; font-size:0.82rem; font-weight:700; letter-spacing:0.06em; color:var(--white); }
.ngc-ended { padding:24px 16px 28px; text-align:center; }
.ngc-ended-photo { width:150px; height:112px; margin:0 auto 14px; background:var(--dark3); border:2px dashed rgba(255,255,255,0.15); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; overflow:hidden; }
.ngc-ended-photo img { width:100%; height:100%; object-fit:cover; display:block; }
.ngc-ended-photo .ph-icon { opacity:0.35; }
.ngc-ended-photo .ph-txt { font-family:'Barlow Condensed',sans-serif; font-size:0.5rem; font-weight:700; letter-spacing:0.15em; text-transform:uppercase; color:var(--gray-lt); text-align:center; line-height:1.4; }
.ngc-ended p { font-family:'Barlow Condensed',sans-serif; font-size:0.75rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--gray); }

.hero-stats { position:relative; z-index:2; background:linear-gradient(90deg, rgba(9,21,20,0.92), rgba(15,31,30,0.92), rgba(9,21,20,0.92)); border-top:1px solid rgba(34,197,94,0.15); border-bottom:1px solid rgba(34,197,94,0.15); display:flex; align-items:stretch; backdrop-filter: blur(6px); }
.hstat { flex:1; padding:18px 0; text-align:center; border-right:1px solid rgba(255,255,255,0.06); position:relative; }
.hstat:last-child { border-right:none; }
.hstat::before { content:''; position:absolute; top:0; left:50%; transform:translateX(-50%); width:28px; height:3px; }
.hstat.so::before { background:var(--orange); box-shadow:0 0 12px rgba(241,90,34,0.6); }
.hstat.st::before { background:var(--teal); box-shadow:0 0 12px rgba(34,197,94,0.6); }
.hstat-num { font-family:'Bebas Neue',sans-serif; font-size:2.4rem; line-height:1; color:var(--white); display:block; }
.hstat.st .hstat-num { color:var(--teal); }
.hstat.so .hstat-num { color:var(--orange); }
.hstat-lbl { font-family:'Barlow Condensed',sans-serif; font-size:0.58rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; color:var(--gray); margin-top:3px; display:block; }

.divider { height:1px; background:linear-gradient(90deg,transparent,rgba(34,197,94,0.2),transparent); }

/* Divisor de "papel rasgado" — transición scrapbook, se usa después del hero */
.torn-divider {
  height:16px; background:var(--dark2);
  clip-path: polygon(0% 0%, 6% 100%, 12% 25%, 18% 100%, 24% 25%, 30% 100%, 36% 25%, 42% 100%, 48% 25%, 54% 100%, 60% 25%, 66% 100%, 72% 25%, 78% 100%, 84% 25%, 90% 100%, 96% 25%, 100% 0%);
}

.sec-hd { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:22px; padding-bottom:12px; border-bottom:1px solid rgba(255,255,255,0.06); }
.sec-eyebrow {
  font-family:'Barlow Condensed',sans-serif; font-size:0.62rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase;
  color:#00201d; margin-bottom:10px; display:inline-flex; align-items:center; gap:7px;
  background:var(--teal); padding:4px 12px; transform:rotate(-1.5deg);
  box-shadow:3px 4px 0 rgba(0,0,0,0.4);
}
.sec-title { font-family:'Bebas Neue',sans-serif; font-size:clamp(2.2rem,4.2vw,3.4rem); line-height:1; letter-spacing:0.04em; text-transform:uppercase; text-shadow:0 3px 0 rgba(0,0,0,0.4); }
.sec-title span { color:var(--teal); }
.sec-sub { font-family:'Barlow Condensed',sans-serif; font-size:0.62rem; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; color:var(--gray); }
.sec-link { font-family:'Barlow Condensed',sans-serif; font-size:0.68rem; font-weight:700; letter-spacing:0.15em; text-transform:uppercase; color:var(--teal); text-decoration:none; display:flex; align-items:center; gap:5px; transition:gap 0.15s; }
.sec-link:hover { gap:9px; }
.sec-link::after { content:'→'; }

/* ══════════════════════════════════════
   CALENDARIO
══════════════════════════════════════ */
.cal-wrap { padding:60px 48px 52px; max-width:1280px; margin:0 auto; }
.sched { width:100%; border-collapse:collapse; }
.sched thead th { font-family:'Barlow Condensed',sans-serif; font-size:0.58rem; font-weight:700; letter-spacing:0.25em; text-transform:uppercase; color:var(--gray); text-align:left; padding:7px 10px 9px; border-bottom:1px solid rgba(255,255,255,0.07); }
.sched tbody tr { border-bottom:1px solid rgba(255,255,255,0.04); transition:background 0.12s; }
.sched tbody tr:hover { background:rgba(34,197,94,0.04); }
.sched tbody tr.next-row { background:rgba(34,197,94,0.06); box-shadow: inset 3px 0 0 var(--teal); }
.sched tbody tr.past-row { opacity:0.55; }
.sched tbody tr.bye-row { opacity:0.4; }
.sched tbody tr.bye-row:hover { background:transparent; }
.sched td { padding:13px 10px; vertical-align:middle; }
.td-num { width:52px; font-family:'Bebas Neue',sans-serif; font-size:1.05rem; letter-spacing:0.04em; color:var(--teal); text-align:center; }
.td-num.sc { color:var(--orange); }
.td-num.by { color:var(--gray); }
.td-type { width:96px; }
.type-pill { display:inline-block; font-family:'Barlow Condensed',sans-serif; font-size:0.52rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; padding:3px 9px; clip-path:polygon(3px 0%,100% 0%,calc(100% - 3px) 100%,0% 100%); }
.type-pill.jor { background:var(--teal-dim); color:var(--teal); border:1px solid var(--teal-line); }
.type-pill.scr { background:var(--orange-dim); color:var(--orange); border:1px solid rgba(241,90,34,0.2); }
.type-pill.bye { background:rgba(107,140,138,0.07); color:var(--gray); border:1px solid rgba(107,140,138,0.14); }
.match-row { display:flex; align-items:center; gap:9px; }
.sched-logo { width:24px; height:24px; border-radius:50%; background:var(--dark3); border:1px solid rgba(255,255,255,0.1); display:inline-flex; align-items:center; justify-content:center; overflow:hidden; flex-shrink:0; }
.sched-logo:empty { display:none; }
.sched-logo img { width:100%; height:100%; object-fit:contain; }
.match-name { font-family:'Bebas Neue',sans-serif; font-size:1rem; letter-spacing:0.04em; color:var(--white); line-height:1; }
.match-name.our { color:var(--teal); }
.match-vs { font-family:'Barlow Condensed',sans-serif; font-size:0.58rem; font-weight:700; letter-spacing:0.18em; color:var(--orange); flex-shrink:0; }
.td-loc { width:76px; }
.loc-pill { display:inline-block; font-family:'Barlow Condensed',sans-serif; font-size:0.52rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; padding:3px 9px; clip-path:polygon(3px 0%,100% 0%,calc(100% - 3px) 100%,0% 100%); }
.loc-pill.lo { background:rgba(34,197,94,0.07); color:var(--teal); border:1px solid var(--teal-line); }
.loc-pill.vi { background:rgba(241,90,34,0.07); color:var(--orange); border:1px solid rgba(241,90,34,0.2); }
.td-status { width:96px; text-align:right; }
.status-badge { display:inline-block; font-family:'Barlow Condensed',sans-serif; font-size:0.55rem; font-weight:800; letter-spacing:0.1em; text-transform:uppercase; padding:4px 11px; border:2px solid currentColor; border-radius:3px; transform:rotate(-3deg); }
.status-badge.next   { background:rgba(34,197,94,0.14); color:var(--teal); }
.status-badge.future { color:var(--gray); border-color:rgba(107,140,138,0.4); }
.status-badge.played { color:var(--orange); }
.status-badge.bye-st { color:var(--gray); border-color:rgba(107,140,138,0.3); }
.status-badge.nocov  { color:var(--red); }
.next-indicator { display:inline-flex; align-items:center; gap:5px; font-size:0.5rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--teal); }
.ni-dot { width:5px; height:5px; border-radius:50%; background:var(--teal); animation:pulse 1.2s ease infinite; }

/* ══════════════════════════════════════
   CONTENIDO POR JORNADA
══════════════════════════════════════ */
.content-wrap { padding:60px 48px 80px; max-width:1280px; margin:0 auto; }
.jornadas { display:flex; flex-direction:column; gap:2px; }
.jblock { background:var(--dark2); overflow:hidden; }
.jblock-hd { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; padding:14px 22px; border-left:4px solid var(--teal); background:linear-gradient(90deg,rgba(34,197,94,0.06),transparent 55%); cursor:pointer; transition:background 0.12s; user-select:none; }
.jblock-hd:hover { background:linear-gradient(90deg,rgba(34,197,94,0.1),transparent 65%); }
.jblock-hd.sc-hd { border-left-color:var(--orange); background:linear-gradient(90deg,rgba(241,90,34,0.06),transparent 55%); }
.jblock-hd.sc-hd:hover { background:linear-gradient(90deg,rgba(241,90,34,0.1),transparent 65%); }
.jblock-hd.bye-hd { border-left-color:var(--gray); background:transparent; opacity:0.45; cursor:default; }
.jblock-hd.next-hd { background:linear-gradient(90deg,rgba(34,197,94,0.14),transparent 60%); }
.jd-num { font-family:'Bebas Neue',sans-serif; font-size:2rem; line-height:1; color:var(--teal); min-width:44px; text-align:center; }
.jd-num.sc-n { color:var(--orange); }
.jd-num.by-n { color:var(--gray); }
.jd-tag { font-family:'Barlow Condensed',sans-serif; font-size:0.55rem; font-weight:700; letter-spacing:0.25em; text-transform:uppercase; color:var(--teal); margin-bottom:3px; }
.jd-tag.sc-t { color:var(--orange); }
.jd-tag.by-t { color:var(--gray); }
.jd-matchup { font-family:'Barlow Condensed',sans-serif; font-size:1rem; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; }
.jd-right { display:flex; align-items:center; gap:9px; flex-shrink:0; }
.jd-badge { font-family:'Barlow Condensed',sans-serif; font-size:0.55rem; font-weight:800; letter-spacing:0.1em; text-transform:uppercase; padding:4px 12px; border:2px solid var(--teal); border-radius:3px; color:var(--teal); transform:rotate(-3deg); display:inline-block; }
.jd-badge.played-b { border-color:var(--orange); color:var(--orange); }
.jd-badge.bye-b    { border-color:rgba(107,140,138,0.4); color:var(--gray); }
.jd-badge.nocov-b  { border-color:var(--red); color:var(--red); }
.jd-chevron { font-family:'Barlow Condensed',sans-serif; font-size:0.7rem; color:var(--gray); transition:transform 0.25s; display:inline-block; }
.jblock.open .jd-chevron { transform:rotate(180deg); }
.jblock-body { max-height:0; overflow:hidden; transition:max-height 0.4s cubic-bezier(0.4,0,0.2,1); }
.jblock.open .jblock-body { max-height:2400px; }
.content-cards { display:grid; grid-template-columns:repeat(auto-fit, minmax(240px, 1fr)); gap:26px; padding:28px 24px; background:var(--dark); }
.ccard {
  background:#fff; overflow:visible; transition:transform 0.22s, z-index 0s;
  padding:10px 10px 14px; box-shadow:0 14px 28px rgba(0,0,0,0.5);
  transform:rotate(-2deg);
}
.ccard:nth-child(2) { transform:rotate(1.5deg); }
.ccard:nth-child(3) { transform:rotate(-1deg); }
.ccard:hover { transform:rotate(0deg) translateY(-6px) scale(1.03); z-index:5; }
.cthumb { position:relative; width:100%; aspect-ratio:16/9; background:var(--dark3); overflow:hidden; }
.cthumb img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.35s; }

/* Alias: distintas páginas usan distinto nombre para el disparador de video.
   Se estandarizan todas aquí para que se vean y comporten igual. */
.cthumb-yt, .cthumb-trigger, .yt-thumb { position:absolute; inset:0; cursor:pointer; display:block; width:100%; height:100%; }
.cthumb iframe { position:absolute; inset:0; width:100%; height:100%; border:0; z-index:5; }
/* Reproductor incrustado: si el video de YouTube no carga (ej. bloqueo por
   restricciones del video o de la conexión), este botón siempre visible
   deja abrirlo en YouTube sin quedarse atorado en una pantalla en blanco. */
.yt-frame-wrap { position:absolute; inset:0; }
.yt-frame-fallback {
  position:absolute; top:8px; right:8px; z-index:6;
  width:26px; height:26px; display:flex; align-items:center; justify-content:center;
  background:rgba(0,0,0,0.65); color:#fff; border-radius:50%; font-size:0.85rem;
  text-decoration:none; transition:background 0.15s, transform 0.15s;
}
.yt-frame-fallback:hover { background:rgba(0,0,0,0.85); transform:scale(1.08); }
.cthumb-yt img, .cthumb-trigger img, .yt-thumb img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.35s; }
.ccard:hover .cthumb-yt img, .ccard:hover .cthumb-trigger img, .ccard:hover .yt-thumb img { transform:scale(1.04); }
.ccard:hover .cthumb img { transform:scale(1.04); }

.cthumb-overlay { position:absolute; inset:0; background:linear-gradient(to top,rgba(5,14,13,0.65) 0%,transparent 50%); z-index:1; }
.cthumb-ph { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:9px; background:var(--dark3); }
.cthumb-ph.nocov { background:rgba(224,69,94,0.08); }
.ph-icon { opacity:0.4; transition:opacity 0.2s; }
.ccard:hover .ph-icon { opacity:0.6; }
.ph-txt { font-family:'Barlow Condensed',sans-serif; font-size:0.55rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--gray-lt); opacity:0.8; text-align:center; line-height:1.5; padding:0 12px; }
.ph-txt.nocov { color:var(--red); opacity:0.9; }
.play-ring { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); z-index:2; width:42px; height:42px; border-radius:50%; background:rgba(5,14,13,0.65); border:1.5px solid rgba(34,197,94,0.45); display:flex; align-items:center; justify-content:center; transition:border-color 0.2s,background 0.2s; }
.ccard:hover .play-ring { background:rgba(34,197,94,0.14); border-color:var(--teal); }
.play-ring svg { fill:var(--teal); margin-left:3px; }
.play-ring.or { border-color:rgba(241,90,34,0.45); }
.ccard:hover .play-ring.or { background:rgba(241,90,34,0.14); border-color:var(--orange); }
.play-ring.or svg { fill:var(--orange); }
.cinfo { padding:11px 3px 3px; }
.ccat { font-family:'Barlow Condensed',sans-serif; font-size:0.55rem; font-weight:800; letter-spacing:0.16em; text-transform:uppercase; margin-bottom:3px; }
.ccat.fo { color:var(--teal-dark); }
.ccat.vi { color:var(--teal-dark); }
.ccat.hl { color:var(--orange); }
.ctitle { font-family:'Barlow Condensed',sans-serif; font-size:0.85rem; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; margin-bottom:9px; color:#0c1a18; }
.ccta { display:inline-flex; align-items:center; gap:4px; font-family:'Barlow Condensed',sans-serif; font-size:0.6rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--dark3); text-decoration:none; transition:color 0.15s; }
.ccta::after { content:'→'; font-size:0.65rem; transition:margin-left 0.15s; }
.ccta:hover { color:var(--teal-dark); }
.ccta:hover::after { margin-left:3px; }
.ccta.or:hover { color:var(--orange); }
.ccta.nocov { color:var(--red); }
.ccta.nocov::after { content:''; }
.drive-strip { padding:12px 18px; background:rgba(34,197,94,0.025); border-top:1px solid rgba(34,197,94,0.07); display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.drive-lbl { font-family:'Barlow Condensed',sans-serif; font-size:0.55rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--gray); }
.drive-btn { display:inline-flex; align-items:center; gap:6px; font-family:'Barlow Condensed',sans-serif; font-size:0.65rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; padding:7px 16px; background:transparent; color:var(--teal); border:1px solid var(--teal-line); text-decoration:none; clip-path:polygon(5px 0%,100% 0%,calc(100% - 5px) 100%,0% 100%); transition:background 0.15s,border-color 0.15s; }
.drive-btn:hover { background:var(--teal-dim); border-color:var(--teal); }
.drive-btn svg { fill:var(--teal); flex-shrink:0; }
.nocov-strip { padding:12px 18px; background:rgba(224,69,94,0.04); border-top:1px solid var(--red-line); }
.nocov-strip p { font-family:'Barlow Condensed',sans-serif; font-size:0.62rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--red); opacity:0.9; }
.bye-content { padding:22px; text-align:center; background:rgba(107,140,138,0.025); }
.bye-content p { font-family:'Barlow Condensed',sans-serif; font-size:0.75rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; color:var(--gray); }

.back-bar { padding:14px 48px 44px; max-width:1280px; margin:0 auto; display:flex; align-items:center; gap:14px; border-top:1px solid rgba(255,255,255,0.04); }
.back-link { display:inline-flex; align-items:center; gap:5px; font-family:'Barlow Condensed',sans-serif; font-size:0.65rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--gray); text-decoration:none; transition:color 0.15s; }
.back-link::before { content:'←'; font-size:0.8rem; }
.back-link:hover { color:var(--teal); }

@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:0.2} }
.obs { opacity:0; transform:translateY(22px); transition:opacity 0.5s ease,transform 0.5s ease; }
.obs.vis { opacity:1; transform:none; }

@media(max-width:900px){
  .hero-jersey, .hero-slash { display:none; }
  .hero-main { flex-direction:column; padding:36px 18px 28px; gap:28px; }
  .hero-right { width:100%; }
  .hero-stats { flex-wrap:wrap; }
  .hstat { min-width:50%; border-bottom:1px solid rgba(255,255,255,0.05); }
  .content-wrap, .cal-wrap { padding:44px 18px 56px; }
  .content-cards { grid-template-columns:1fr; }
  .jblock-hd { grid-template-columns:auto 1fr; gap:10px; }
  .jd-right { grid-column:span 2; justify-content:flex-end; }
  .back-bar { padding:14px 18px 36px; }
  .sched thead { display:none; }
  .sched tbody tr { display:flex; flex-wrap:wrap; gap:4px; padding:10px 0; }
  .sched td { padding:0 3px; }
  .td-match { width:100%; order:-1; padding-left:0; }
  .td-status { text-align:left; }
}