/* ===== Modo Halloween (todo bajo html.halloween; se carga solo con HALLOWEEN=1) ===== */
html.halloween{
  --bg:#0c0818;--card:#171031;--card2:#1c1340;--line:#2f2160;--line2:#3d2b7a;
  --mut:#9a8fc4;--txt:#f1ecff;--accent:#ff7a1a;--hw-o:#ff7a1a;--hw-p:#8b5cf6;
}
html.halloween,html.halloween body,
html.halloween body:has(#hub:not(.hidden)),html.halloween body:has(#futbol:not(.hidden)),html.halloween body:has(#futbolMatch:not(.hidden)),html.halloween body:has(#futbolLiga:not(.hidden)),
html.halloween body:has(#setup:not(.hidden)),html.halloween body:has(#home:not(.hidden)),html.halloween body:has(#identity:not(.hidden)){
  background:radial-gradient(900px 520px at 100% 100%,rgba(255,122,26,.16),transparent 62%),radial-gradient(900px 520px at 0% 0%,rgba(139,92,246,.18),transparent 60%),#0c0818!important;
  background-attachment:fixed!important;color:var(--txt)!important}
html.halloween .top,html.halloween .ticker{background:rgba(14,9,32,.92)!important;border-color:var(--line)!important}
html.halloween .tk-item{border-color:var(--line)}html.halloween .tk-item:hover{background:#1d1445}
html.halloween .tk-top,html.halloween .tk-row{color:#cfc6ee}
/* tarjetas */
html.halloween .feat,html.halloween .hub-game,html.halloween .card,html.halloween .fut-lcard,html.halloween .fut-card,html.halloween .fut-hero,
html.halloween .fut-side,html.halloween .liga-head,html.halloween .liga-m,html.halloween .liga-dcard,html.halloween .liga-tabla-wrap,html.halloween .liga-ini-box,
html.halloween .liga-strip,html.halloween .liga-sub,html.halloween .liga-vacio,html.halloween .fut-entry,html.halloween .game{
  background:linear-gradient(180deg,#1b1240,#140d30)!important;border-color:var(--line)!important}
html.halloween .hub-game:hover:not(:disabled),html.halloween .feat:hover,html.halloween .liga-m:hover,html.halloween .game:hover{border-color:var(--hw-o)!important;box-shadow:0 0 0 1px rgba(255,122,26,.35),0 10px 30px rgba(139,92,246,.25)}
html.halloween .liga-dh,html.halloween .fut-lcard-h{background:rgba(255,255,255,.03)!important;border-color:var(--line)!important}
html.halloween .liga-cr:hover,html.halloween .liga-tabla tbody tr:hover,html.halloween .fut-row:hover{background:rgba(139,92,246,.12)}
html.halloween .liga-tabla td,html.halloween .liga-tabla th,html.halloween .fut-row,html.halloween .liga-cr{border-color:rgba(61,43,122,.45)!important}
/* títulos en condensada cursiva, como la referencia */
html.halloween .hub-heading h1,html.halloween .pregame-intro h1,html.halloween .liga-h1,html.halloween .fut-title,html.halloween .hub-game-copy>b,html.halloween .feat h3,
html.halloween .fut-sec-h,html.halloween .liga-ini-h{font-family:"Barlow Condensed","Inter",sans-serif!important;font-style:italic!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:-.01em!important}
html.halloween .hub-heading h1,html.halloween .liga-h1{font-size:clamp(34px,5.4vw,56px)!important}
/* acentos naranja */
html.halloween .btn.primary,html.halloween .pregame-start.primary,html.halloween .btn.white,html.halloween .feat-cta,html.halloween .hub-cta{background:var(--hw-o)!important;color:#1b0b00!important;border-color:var(--hw-o)!important}
html.halloween .liga-tab.on,html.halloween .liga-dia.on,html.halloween .liga-mes.on,html.halloween .liga-subtab.on,html.halloween .fut-day.on,html.halloween .fut-liga-btn.on,html.halloween .chips button.on,html.halloween .scope button.on{background:var(--hw-o)!important;color:#1b0b00!important;border-color:var(--hw-o)!important}
html.halloween .liga-dia.on small{color:#4a2200}
html.halloween a:hover,html.halloween .nav a.on{color:var(--hw-o)}
html.halloween .fut-live{background:var(--hw-o);color:#1b0b00}
/* decoración */
.hw-web,.hw-hang,.hw-pk,.hw-fly,.hw-bar{display:none}
html.halloween .hw-web{display:block;position:fixed;z-index:1450;pointer-events:none;color:rgba(214,200,255,.42)}
html.halloween .hw-web-l{left:0;top:0}
html.halloween .hw-web-r{right:0;top:0;transform:scaleX(-1)}
html.halloween .hw-web-bl{left:0;bottom:0;transform:scaleY(-1);opacity:.6}
html.halloween .hw-web-br{right:0;bottom:0;transform:scale(-1,-1);opacity:.6}
html.halloween .hw-web svg{display:block}
html.halloween .hw-hang{display:block;position:fixed;z-index:1450;pointer-events:none;color:#bdb2d8;width:34px;transform-origin:50% 0;animation:hwSwing 4.2s ease-in-out infinite}
html.halloween .hw-hang-1{left:150px;top:0;animation-delay:-1s}
html.halloween .hw-hang-2{right:210px;top:0;width:28px}
html.halloween .hw-hang .hw-spider{display:block;width:100%;height:auto;animation:hwDrop 6s ease-in-out infinite alternate}
html.halloween .hw-pk{display:flex;align-items:flex-end;gap:2px;position:fixed;bottom:0;z-index:2;pointer-events:none}
html.halloween .hw-pk-l{left:10px}html.halloween .hw-pk-r{right:10px}
html.halloween .hw-pumpkin{width:74px;height:auto;filter:drop-shadow(0 0 14px rgba(255,122,26,.5));animation:hwGlow 2.6s ease-in-out infinite alternate}
html.halloween .hw-pumpkin.chica{width:46px;animation-delay:-1.2s}
html.halloween .hw-pumpkin.mini{width:20px;filter:none;animation:none;flex:none}
html.halloween .hw-fly{display:block;position:fixed;z-index:2;pointer-events:none;left:-60px;width:44px;animation:hwFly 22s linear infinite}
html.halloween .hw-fly-1{top:12%}
html.halloween .hw-fly-2{top:26%;width:32px;animation-duration:30s;animation-delay:-11s}
html.halloween .hw-fly-3{top:8%;width:38px;animation-duration:26s;animation-delay:-19s}
html.halloween .hw-fly .hw-bat{display:block;width:100%;height:auto;animation:hwFlap .5s ease-in-out infinite alternate;filter:drop-shadow(0 0 4px rgba(139,92,246,.6))}
html.halloween .hw-bar{display:flex;align-items:center;justify-content:center;gap:12px;padding:9px 16px;background:linear-gradient(90deg,#2a0f55,#3b1370 50%,#2a0f55);border-bottom:1px solid #4b2a90;font-size:13px;color:#e9e1ff;position:relative;z-index:1400;white-space:nowrap;overflow:hidden}
html.halloween .hw-bar b{color:var(--hw-o);font-size:11px;letter-spacing:.18em;font-weight:800}
html.halloween .hw-bar span{overflow:hidden;text-overflow:ellipsis}
html.halloween .wrap,html.halloween .top,html.halloween footer,html.halloween .ticker{position:relative;z-index:3}
@keyframes hwSwing{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
@keyframes hwDrop{from{transform:translateY(0)}to{transform:translateY(38px)}}
@keyframes hwGlow{from{filter:drop-shadow(0 0 8px rgba(255,122,26,.35))}to{filter:drop-shadow(0 0 20px rgba(255,160,40,.85))}}
@keyframes hwFly{0%{transform:translate(0,0)}25%{transform:translate(28vw,40px)}50%{transform:translate(58vw,-10px)}75%{transform:translate(86vw,36px)}100%{transform:translate(112vw,0)}}
@keyframes hwFlap{from{transform:scaleY(1)}to{transform:scaleY(.55)}}
@media (max-width:800px){
  html.halloween .hw-web svg{width:110px;height:110px}
  html.halloween .hw-web-bl,html.halloween .hw-web-br,html.halloween .hw-hang-2{display:none}
  html.halloween .hw-pumpkin{width:52px}html.halloween .hw-pumpkin.chica{width:34px}
  html.halloween .hw-hang-1{left:90px}
  html.halloween .hw-bar{font-size:12px;padding:8px 10px}
}
@media (prefers-reduced-motion:reduce){html.halloween .hw-fly,html.halloween .hw-hang,html.halloween .hw-hang .hw-spider,html.halloween .hw-pumpkin{animation:none}html.halloween .hw-fly{display:none}}

/* arte de las tarjetas de juegos: violeta en vez de gris */
html.halloween .hub-art{background:radial-gradient(120% 140% at 50% 0%,#4a2399 0%,#2a1366 55%,#1a0d42 100%)!important}
html.halloween .hub-art::after{background:linear-gradient(180deg,transparent 50%,rgba(27,16,64,.8))!important}
html.halloween .hub-art-icon{background:rgba(32,16,78,.85)!important;border-color:#7c4dff!important;box-shadow:0 0 18px rgba(139,92,246,.45)}
html.halloween .hub-art-tiles i{background:#4b2d96!important;border-color:rgba(190,160,255,.28)!important}
html.halloween .hub-art-tiles .tile-x{background:#37206f!important}
html.halloween .hub-art-tiles .tile-g{background:#19a969!important;border-color:#31cd83!important}
html.halloween .hub-art-tiles .tile-y{background:#ff9a1f!important;border-color:#ffc060!important}
html.halloween .hub-art-marks i{background:#432a8a!important;border-color:rgba(190,160,255,.3)!important}
html.halloween .hub-art-marks .mark-on{background:#ff7a1a!important;border-color:#ffb066!important;box-shadow:0 0 22px rgba(255,122,26,.55)!important}
html.halloween .hub-game-copy{background:linear-gradient(180deg,#1f1347,#170e38)}
html.halloween .hub-game-copy>b{color:#fff}
html.halloween .hub-game-copy>span,html.halloween .hub-game-copy p{color:#b3a6e0}
