/* HABBOON FPL — AFTER DARK 2026
   Seasonal Halloween visual layer. No layout dimensions are changed.
   Enabled by html.halloween-theme-active, controlled by Worker/Staff Console.
*/

html.halloween-theme-active{
  --bg:#090b12;
  --bg-deep:#03050a;
  --panel:#11131d;
  --panel-2:#171925;
  --panel-3:#201d2b;
  --line:rgba(255,171,52,.13);
  --line-strong:rgba(180,92,255,.28);
  --text:#f7f3eb;
  --muted:#aaa2b3;
  --muted-2:#756f7d;
  --teal:#ff9f1c;
  --teal-dark:#c95b14;
  --gold:#ffc857;
  --silver:#c8c1d4;
  --bronze:#cb7642;
  --green:#a4ff4f;
  --amber:#ff9f1c;
  --red:#ff5964;
  --blue:#a765ff;
  --halloween-orange:#ff8a1f;
  --halloween-amber:#ffc857;
  --halloween-purple:#8f5cff;
  --halloween-purple-soft:#c39cff;
  --halloween-green:#a4ff4f;
  --halloween-crimson:#d74757;
  --halloween-ink:#07070c;
  --halloween-fog:rgba(189,179,213,.08);
  --shadow:0 24px 65px rgba(0,0,0,.48);
}

html.halloween-theme-active body{
  background:
    radial-gradient(circle at 87% 3%,rgba(255,167,52,.13),transparent 18%),
    radial-gradient(circle at 11% 22%,rgba(125,75,255,.12),transparent 24%),
    radial-gradient(ellipse at 50% 115%,rgba(94,128,76,.11),transparent 38%),
    linear-gradient(180deg,#070812 0%,#090b12 42%,#06070c 100%)!important;
  color:var(--text);
}
html.halloween-theme-active body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  opacity:.7;
  background:
    linear-gradient(115deg,transparent 0 46%,rgba(255,255,255,.012) 46.2% 46.5%,transparent 46.8% 100%),
    repeating-linear-gradient(0deg,rgba(255,255,255,.012) 0 1px,transparent 1px 5px);
}
html.halloween-theme-active ::selection{background:rgba(255,138,31,.34);color:#fff}
html.halloween-theme-active ::-webkit-scrollbar-thumb{background:linear-gradient(#8f5cff,#d26c20);border-color:#08090f}

/* ---------- Global premium surfaces ---------- */
html.halloween-theme-active .topbar,
html.halloween-theme-active .hbn-site-header{
  background:linear-gradient(180deg,rgba(10,8,16,.965),rgba(7,8,14,.91))!important;
  border-bottom-color:rgba(255,143,31,.16)!important;
  box-shadow:0 12px 42px rgba(0,0,0,.38),inset 0 -1px rgba(143,92,255,.06);
}
html.halloween-theme-active .desktop-nav-link.active,
html.halloween-theme-active .hbn-site-nav__link.active{
  color:#fff6e8!important;
}
html.halloween-theme-active .desktop-nav-link.active:after,
html.halloween-theme-active .hbn-site-nav__link.active:after{
  background:linear-gradient(90deg,var(--halloween-orange),var(--halloween-purple))!important;
  box-shadow:0 0 15px rgba(255,138,31,.42);
}
html.halloween-theme-active .header-live-dot.active,
html.halloween-theme-active .mobile-live-dot{
  background:var(--halloween-green)!important;
  box-shadow:0 0 0 4px rgba(164,255,79,.09),0 0 14px rgba(164,255,79,.55)!important;
}
html.halloween-theme-active .desktop-more-popover,
html.halloween-theme-active .mobile-v23-drawer .drawer-panel,
html.halloween-theme-active .app-sheet,
html.halloween-theme-active .modal-backdrop>section{
  border-color:rgba(255,138,31,.17)!important;
  background:linear-gradient(180deg,rgba(18,15,26,.985),rgba(7,8,13,.99))!important;
}
html.halloween-theme-active .search-trigger,
html.halloween-theme-active .icon-button,
html.halloween-theme-active .hbn-site-actions__icon{
  border-color:rgba(255,157,49,.15)!important;
  background:rgba(255,255,255,.025)!important;
}
html.halloween-theme-active .search-trigger:hover,
html.halloween-theme-active .icon-button:hover,
html.halloween-theme-active .hbn-site-actions__icon:hover{
  border-color:rgba(255,138,31,.42)!important;
  background:rgba(255,138,31,.07)!important;
}
html.halloween-theme-active .staff-console-top-button{
  border-color:rgba(255,200,87,.3)!important;
  background:linear-gradient(135deg,rgba(255,138,31,.09),rgba(143,92,255,.06))!important;
}
html.halloween-theme-active .desktop-my-manager-button,
html.halloween-theme-active .desktop-my-profile-link{
  border-color:rgba(143,92,255,.19)!important;
  background:rgba(143,92,255,.045)!important;
}
html.halloween-theme-active .site-footer{
  position:relative;
  border-top-color:rgba(255,138,31,.13)!important;
  background:linear-gradient(180deg,rgba(6,7,12,.72),rgba(3,4,8,.96));
}
html.halloween-theme-active .site-footer:before{
  content:"🎃 FPL AFTER DARK · HALLOWEEN EDITION";
  position:absolute;
  left:50%;
  top:5px;
  transform:translateX(-50%);
  color:#c8a1ff;
  font-size:9px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
  white-space:nowrap;
  pointer-events:none;
  opacity:.72;
}

html.halloween-theme-active .panel,
html.halloween-theme-active .info-card,
html.halloween-theme-active .kpi,
html.halloween-theme-active .stats-summary-card,
html.halloween-theme-active .leader-panel,
html.halloween-theme-active [class*="-card"]{
  border-color:rgba(255,157,49,.12);
}
html.halloween-theme-active .panel,
html.halloween-theme-active .info-card,
html.halloween-theme-active .kpi,
html.halloween-theme-active .stats-summary-card{
  background:linear-gradient(150deg,rgba(28,23,36,.9),rgba(8,9,15,.94));
  box-shadow:0 18px 45px rgba(0,0,0,.24);
}
html.halloween-theme-active .eyebrow,
html.halloween-theme-active .panel-title,
html.halloween-theme-active .kpi-value,
html.halloween-theme-active a:not(.plain-link){
  --seasonal-link:var(--halloween-orange);
}
html.halloween-theme-active .eyebrow{color:#ffab3d!important}
html.halloween-theme-active .badge.teal,
html.halloween-theme-active .pill-button.active,
html.halloween-theme-active .tab.active,
html.halloween-theme-active [aria-current="page"].pill-button{
  color:#ffd8a5!important;
  border-color:rgba(255,138,31,.32)!important;
  background:linear-gradient(135deg,rgba(255,138,31,.12),rgba(143,92,255,.08))!important;
}
html.halloween-theme-active .cta-link.primary,
html.halloween-theme-active .cta-button.primary,
html.halloween-theme-active button.primary,
html.halloween-theme-active .action-button{
  background:linear-gradient(135deg,#e7661b,#7f43e8)!important;
  border-color:rgba(255,190,91,.25)!important;
  box-shadow:0 14px 34px rgba(76,29,112,.22)!important;
}
html.halloween-theme-active .cta-link.primary:hover,
html.halloween-theme-active .cta-button.primary:hover,
html.halloween-theme-active button.primary:hover{
  filter:brightness(1.08);
  box-shadow:0 16px 42px rgba(255,111,24,.2)!important;
}
html.halloween-theme-active .form span:first-child{box-shadow:0 0 12px rgba(164,255,79,.08)}
html.halloween-theme-active .form .w{background:#a4ff4f!important;color:#071003!important}
html.halloween-theme-active .form .d{background:#ffb347!important;color:#170d00!important}
html.halloween-theme-active .form .l{background:#8f3145!important;color:#ffeef1!important}

/* ---------- Floating themed layer: zero layout shift ---------- */
#halloween-theme-overlay{
  position:fixed;
  inset:0;
  z-index:19;
  pointer-events:none;
  overflow:hidden;
  contain:layout paint style;
}
#halloween-theme-overlay .halloween-moon{
  position:absolute;
  right:3.3vw;
  top:96px;
  width:88px;
  height:88px;
  border-radius:50%;
  opacity:.24;
  background:radial-gradient(circle at 35% 32%,#fff4ca 0 7%,#ffd36d 9% 40%,#c06a2d 72%,#6f3150 100%);
  box-shadow:0 0 50px rgba(255,175,64,.23),0 0 130px rgba(141,77,255,.13);
  filter:saturate(.8);
}
#halloween-theme-overlay .halloween-moon:after{
  content:"";
  position:absolute;
  width:18px;height:18px;border-radius:50%;left:18px;top:46px;background:rgba(91,45,54,.18);
  box-shadow:32px -22px 0 5px rgba(91,45,54,.11),38px 15px 0 -2px rgba(91,45,54,.16),10px -25px 0 -4px rgba(91,45,54,.14);
}
#halloween-theme-overlay .halloween-fog{
  position:absolute;
  left:-12vw;
  width:124vw;
  height:165px;
  bottom:-60px;
  opacity:.19;
  background:
    radial-gradient(ellipse at 12% 55%,rgba(225,219,236,.58),transparent 22%),
    radial-gradient(ellipse at 42% 60%,rgba(185,173,204,.52),transparent 27%),
    radial-gradient(ellipse at 76% 48%,rgba(225,219,236,.55),transparent 25%);
  filter:blur(22px);
  animation:halloweenFogDrift 18s ease-in-out infinite alternate;
}
#halloween-theme-overlay .halloween-bat{
  position:absolute;
  color:#19131f;
  text-shadow:0 1px 0 rgba(255,148,40,.13);
  opacity:.48;
  font-size:18px;
  animation:halloweenBatFloat 8s ease-in-out infinite;
}
#halloween-theme-overlay .halloween-bat.b1{top:126px;right:12%;animation-delay:-1s;transform:rotate(-12deg)}
#halloween-theme-overlay .halloween-bat.b2{top:178px;right:7%;font-size:12px;animation-delay:-4s}
#halloween-theme-overlay .halloween-bat.b3{top:116px;left:7%;font-size:13px;animation-delay:-6s}
#halloween-theme-overlay .halloween-nav-banner{
  position:absolute;
  top:70px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  align-items:flex-start;
  justify-content:center;
  min-width:320px;
  height:54px;
  filter:drop-shadow(0 12px 12px rgba(0,0,0,.28));
}
#halloween-theme-overlay .halloween-nav-banner:before,
#halloween-theme-overlay .halloween-nav-banner:after{
  content:"";
  position:absolute;
  top:-2px;
  width:1px;
  height:13px;
  background:linear-gradient(rgba(255,185,75,.34),rgba(255,185,75,.08));
}
#halloween-theme-overlay .halloween-nav-banner:before{left:38px}
#halloween-theme-overlay .halloween-nav-banner:after{right:38px}
#halloween-theme-overlay .halloween-nav-banner-main{
  position:relative;
  margin-top:9px;
  padding:7px 26px 8px;
  border:1px solid rgba(255,153,38,.3);
  border-radius:4px 4px 10px 10px;
  background:linear-gradient(180deg,rgba(37,24,42,.97),rgba(19,14,25,.98));
  color:#ffe6bc;
  font-size:9px;
  line-height:1;
  font-weight:950;
  letter-spacing:.17em;
  text-transform:uppercase;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 0 20px rgba(143,92,255,.08);
}
#halloween-theme-overlay .halloween-nav-banner-main:before,
#halloween-theme-overlay .halloween-nav-banner-main:after{
  position:absolute;
  top:5px;
  font-size:11px;
  line-height:1;
}
#halloween-theme-overlay .halloween-nav-banner-main:before{content:"🎃";left:8px}
#halloween-theme-overlay .halloween-nav-banner-main:after{content:"🦇";right:8px}
#halloween-theme-overlay .halloween-sound-toggle{
  pointer-events:auto;
  position:absolute;
  right:-31px;
  top:8px;
  width:24px;
  height:24px;
  border:1px solid rgba(255,166,50,.25);
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#15111c;
  color:#ad9db8;
  font-size:10px;
  cursor:pointer;
}
#halloween-theme-overlay .halloween-sound-toggle.active{color:#ffc857;border-color:rgba(255,200,87,.45);box-shadow:0 0 12px rgba(255,138,31,.13)}

/* ---------- One-time cinematic intro ---------- */
.halloween-intro{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  pointer-events:none;
  background:radial-gradient(circle at 50% 46%,rgba(79,48,109,.26),transparent 34%),rgba(2,3,7,.94);
  animation:halloweenIntroOut .55s ease 2.65s forwards;
}
.halloween-intro:before,
.halloween-intro:after{content:"🦇";position:absolute;color:#332640;font-size:28px;animation:halloweenIntroBat 2.1s ease-in-out forwards}
.halloween-intro:before{left:12%;top:32%}
.halloween-intro:after{right:13%;top:38%;animation-delay:.2s}
.halloween-intro-card{text-align:center;animation:halloweenIntroCard 2.65s ease both}
.halloween-intro-card>span{display:block;color:#ff9b32;font-size:9px;font-weight:950;letter-spacing:.25em;text-transform:uppercase}
.halloween-intro-card h1{margin:12px 0 4px;font-size:clamp(34px,6vw,74px);line-height:.9;letter-spacing:-.055em;color:#fff7e9;text-shadow:0 0 34px rgba(143,92,255,.28)}
.halloween-intro-card h1 em{display:block;margin-top:8px;color:#b784ff;font-size:.62em;font-style:normal;letter-spacing:.08em}
.halloween-intro-card p{margin:13px 0 0;color:#bdb2c7;font-size:12px;letter-spacing:.04em}
.halloween-intro-card i{display:block;width:76px;height:2px;margin:18px auto 0;background:linear-gradient(90deg,transparent,#ff8a1f,#8f5cff,transparent);box-shadow:0 0 18px rgba(255,138,31,.35)}
.halloween-preview-pill{
  position:fixed;right:14px;bottom:14px;z-index:9998;pointer-events:none;padding:7px 10px;border:1px solid rgba(255,156,45,.32);border-radius:999px;background:rgba(13,10,18,.91);color:#ffd7a3;font-size:8px;font-weight:950;letter-spacing:.13em;text-transform:uppercase;box-shadow:0 8px 24px rgba(0,0,0,.3)
}

/* ---------- Home: haunted night broadcast ---------- */
html.halloween-theme-active body[data-page="home"] .home-hero,
html.halloween-theme-active body[data-page="home"] .mobile-v24-hero{
  border-color:rgba(255,138,31,.23)!important;
  background:
    radial-gradient(circle at 82% 18%,rgba(255,174,57,.13),transparent 17%),
    radial-gradient(circle at 16% 88%,rgba(143,92,255,.15),transparent 24%),
    linear-gradient(125deg,rgba(27,17,34,.96),rgba(12,15,25,.95) 48%,rgba(4,6,10,.99))!important;
  box-shadow:0 28px 70px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.03)!important;
}
html.halloween-theme-active body[data-page="home"] .home-hero:before{
  content:"FPL AFTER DARK · HALLOWEEN EDITION";
  position:absolute;
  top:13px;
  right:18px;
  z-index:3;
  color:rgba(255,200,115,.62);
  font-size:7px;
  font-weight:950;
  letter-spacing:.17em;
  text-transform:uppercase;
  pointer-events:none;
}
html.halloween-theme-active body[data-page="home"] .home-title-enhanced{
  text-shadow:0 8px 26px rgba(0,0,0,.34),0 0 28px rgba(142,79,218,.08);
}
html.halloween-theme-active body[data-page="home"] .home-discord-banner{
  border-color:rgba(142,89,255,.22)!important;
  background:linear-gradient(110deg,rgba(105,66,194,.12),rgba(255,126,31,.06))!important;
}
html.halloween-theme-active body[data-page="home"] .home-leader-card{
  border-color:rgba(255,194,76,.24)!important;
  background:
    radial-gradient(circle at 88% 18%,rgba(255,178,67,.14),transparent 24%),
    linear-gradient(145deg,rgba(28,23,34,.96),rgba(7,9,15,.98))!important;
  box-shadow:0 22px 50px rgba(0,0,0,.32),inset 0 0 55px rgba(143,92,255,.025)!important;
}
html.halloween-theme-active body[data-page="home"] .home-leader-card:after{
  content:"KING OF THE CRYPT";
  position:absolute;
  right:15px;
  bottom:13px;
  color:rgba(190,151,235,.24);
  font-size:6px;
  font-weight:950;
  letter-spacing:.18em;
  pointer-events:none;
}
html.halloween-theme-active body[data-page="home"] .home-leader-position{
  color:#ffd778!important;
  border-color:rgba(255,200,87,.25)!important;
  background:linear-gradient(135deg,rgba(255,200,87,.13),rgba(121,68,169,.09))!important;
}
html.halloween-theme-active body[data-page="home"] .home-leader-avatar-stage:before{box-shadow:0 0 32px rgba(255,138,31,.1)!important}
html.halloween-theme-active body[data-page="home"] .home-aside-feature,
html.halloween-theme-active body[data-page="home"] .home-intelligence-grid>*{
  border-color:rgba(255,138,31,.14)!important;
}
html.halloween-theme-active body[data-page="home"] .latest-news-feature,
html.halloween-theme-active body[data-page="home"] .mobile-v24-news-lead{
  background:linear-gradient(145deg,rgba(26,20,35,.95),rgba(8,11,18,.97))!important;
}
html.halloween-theme-active body[data-page="home"] .home-live-panel,
html.halloween-theme-active body[data-page="home"] .home-live-shell{
  border-color:rgba(164,255,79,.16)!important;
  background:linear-gradient(120deg,rgba(13,24,21,.9),rgba(14,11,22,.95))!important;
}

/* ---------- Live Gameweek / Match Centre ---------- */
html.halloween-theme-active body[data-page="live"] .matchday-broadcast-head,
html.halloween-theme-active .match-centre-dialog,
html.halloween-theme-active .match-centre-shell,
html.halloween-theme-active [class*="match-centre-"][class*="hero"]{
  border-color:rgba(255,139,31,.2)!important;
  background:
    radial-gradient(circle at 50% 110%,rgba(130,72,167,.16),transparent 36%),
    linear-gradient(145deg,rgba(20,18,29,.98),rgba(6,8,13,.99))!important;
  box-shadow:0 28px 70px rgba(0,0,0,.44)!important;
}
html.halloween-theme-active body[data-page="live"] .matchday-broadcast-head:after{
  content:"NIGHT MATCH CENTRE";
  position:absolute;right:18px;bottom:12px;color:rgba(188,153,224,.25);font-size:7px;font-weight:950;letter-spacing:.18em;pointer-events:none
}
html.halloween-theme-active body[data-page="live"] .matchday-card,
html.halloween-theme-active body[data-page="live"] .matchday-pl-mini,
html.halloween-theme-active body[data-page="live"] .matchday-event-row{
  border-color:rgba(255,143,31,.12)!important;
  background:linear-gradient(145deg,rgba(26,21,34,.78),rgba(8,10,16,.93))!important;
}
html.halloween-theme-active body[data-page="live"] .matchday-scoreboard,
html.halloween-theme-active .match-centre-score,
html.halloween-theme-active .match-centre-scoreboard{
  color:#fff4df!important;
  text-shadow:0 0 24px rgba(255,136,29,.16),0 6px 18px rgba(0,0,0,.38);
}
html.halloween-theme-active body[data-page="live"] .matchday-live-chip.live,
html.halloween-theme-active body[data-page="live"] .matchday-live-beacon i{
  color:#dfffbd!important;background:#a4ff4f!important;box-shadow:0 0 14px rgba(164,255,79,.5)!important
}
html.halloween-theme-active .phase7-personal-recap,
html.halloween-theme-active [class*="phase7-"]{
  border-color:rgba(143,92,255,.16)!important;
}
html.halloween-theme-active .phase7-personal-recap:after{
  content:"THE NIGHT IS OVER";position:absolute;right:14px;top:10px;color:rgba(194,160,232,.22);font-size:6px;font-weight:950;letter-spacing:.16em;pointer-events:none
}
html.halloween-theme-active .bench-regret,
html.halloween-theme-active [class*="bench-regret"]{border-color:rgba(188,151,226,.22)!important;background:rgba(114,74,153,.07)!important}

/* ---------- H2H tables, fixtures, rankings ---------- */
html.halloween-theme-active body[data-page="league"] table,
html.halloween-theme-active body[data-page="fixtures"] table,
html.halloween-theme-active body[data-page="gameweeks"] table,
html.halloween-theme-active body[data-page="h2h"] table{
  background:rgba(7,8,13,.62)!important;
}
html.halloween-theme-active table thead th{
  background:rgba(33,24,42,.76)!important;
  border-color:rgba(255,147,35,.11)!important;
  color:#bfb4c7!important;
}
html.halloween-theme-active table tbody tr{border-color:rgba(255,255,255,.045)!important}
html.halloween-theme-active table tbody tr:hover{background:linear-gradient(90deg,rgba(255,138,31,.055),rgba(143,92,255,.035))!important}
html.halloween-theme-active body[data-page="league"] table tbody tr:nth-child(1){background:linear-gradient(90deg,rgba(255,200,87,.08),transparent)!important}
html.halloween-theme-active body[data-page="league"] table tbody tr:nth-child(2){background:linear-gradient(90deg,rgba(190,184,204,.045),transparent)!important}
html.halloween-theme-active body[data-page="league"] table tbody tr:nth-child(3){background:linear-gradient(90deg,rgba(188,104,64,.05),transparent)!important}
html.halloween-theme-active .fixture-card,
html.halloween-theme-active .gameweek-card,
html.halloween-theme-active .h2h-card{
  border-color:rgba(255,143,31,.13)!important;
  background:linear-gradient(145deg,rgba(23,20,30,.88),rgba(8,9,15,.96))!important;
}

/* ---------- Manager profiles ---------- */
html.halloween-theme-active body[data-page="manager"] .manager-profile-showcase{
  border-color:rgba(255,141,31,.23)!important;
  background:
    radial-gradient(circle at 18% 62%,rgba(143,92,255,.14),transparent 21%),
    radial-gradient(circle at 85% 12%,rgba(255,154,44,.11),transparent 23%),
    linear-gradient(135deg,rgba(26,20,34,.98),rgba(7,10,15,.99))!important;
  box-shadow:0 28px 68px rgba(0,0,0,.42)!important;
}
html.halloween-theme-active body[data-page="manager"] .manager-profile-showcase:before{
  content:"AFTER DARK";
  position:absolute;
  right:18px;
  bottom:11px;
  z-index:2;
  color:rgba(195,156,236,.18);
  font-size:7px;
  font-weight:950;
  letter-spacing:.2em;
  pointer-events:none;
}
html.halloween-theme-active body[data-page="manager"] .manager-profile-avatar-stage:after{
  content:"";
  position:absolute;
  inset:12% 9% 3%;
  z-index:-1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,143,31,.12),rgba(143,92,255,.06) 38%,transparent 68%);
  filter:blur(8px);
  pointer-events:none;
}
html.halloween-theme-active body[data-page="manager"] .manager-profile-showcase-avatar{filter:drop-shadow(0 10px 16px rgba(0,0,0,.35)) drop-shadow(0 0 11px rgba(143,92,255,.08))}
html.halloween-theme-active body[data-page="manager"] .manager-profile-rank-card,
html.halloween-theme-active body[data-page="manager"] .manager-profile-stat-ribbon,
html.halloween-theme-active body[data-page="manager"] .manager-profile-pinned-achievement,
html.halloween-theme-active body[data-page="manager"] .manager-profile-favourites-quiet,
html.halloween-theme-active body[data-page="manager"] .manager-profile-duo-quiet{
  border-color:rgba(255,151,39,.14)!important;
  background:linear-gradient(145deg,rgba(29,23,38,.82),rgba(8,9,15,.92))!important;
}
html.halloween-theme-active body[data-page="manager"] .profile-honour-badge,
html.halloween-theme-active body[data-page="manager"] .manager-profile-tag{
  box-shadow:0 0 16px rgba(143,92,255,.06)!important;
}
html.halloween-theme-active body[data-page="manager"] .manager-profile-duo-quiet.has-duo{
  border-color:rgba(164,103,255,.23)!important;
  background:linear-gradient(135deg,rgba(76,46,111,.13),rgba(255,128,25,.04))!important;
}
html.halloween-theme-active body[data-page="duo"] .page-head:after{
  content:"CURSED CHEMISTRY";
}
html.halloween-theme-active body[data-page="manager"] .discord-profile-verified{
  border-color:rgba(159,111,255,.28)!important;
  background:linear-gradient(110deg,rgba(109,78,235,.13),rgba(255,137,29,.055))!important;
}
html.halloween-theme-active .official-staff-marker.owner{box-shadow:0 0 18px rgba(255,197,78,.1)!important}
html.halloween-theme-active .official-staff-marker.moderator{box-shadow:0 0 18px rgba(143,92,255,.1)!important}

/* ---------- Monthly, Prize Centre, Cups ---------- */
html.halloween-theme-active body[data-page="monthly"] .page-head,
html.halloween-theme-active body[data-page="prizes"] .page-head,
html.halloween-theme-active body[data-page="cups"] .page-head{
  position:relative;
}
html.halloween-theme-active body[data-page="monthly"] .page-head:after{content:"OCTOBER CHAMPIONSHIP · UNDER THE LIGHTS"}
html.halloween-theme-active body[data-page="prizes"] .page-head:after{content:"THE PRIZE VAULT"}
html.halloween-theme-active body[data-page="cups"] .page-head:after{content:"NIGHTMARE KNOCKOUT"}
html.halloween-theme-active body[data-page="records"] .page-head:after{content:"BOOK OF THE NIGHT"}
html.halloween-theme-active body[data-page="monthly"] .page-head:after,
html.halloween-theme-active body[data-page="prizes"] .page-head:after,
html.halloween-theme-active body[data-page="cups"] .page-head:after,
html.halloween-theme-active body[data-page="records"] .page-head:after,
html.halloween-theme-active body[data-page="duo"] .page-head:after{
  position:absolute;right:0;top:2px;color:rgba(191,149,230,.34);font-size:7px;font-weight:950;letter-spacing:.15em;pointer-events:none
}
html.halloween-theme-active .monthly-podium,
html.halloween-theme-active [class*="monthly-"][class*="card"],
html.halloween-theme-active .prize-centre-hero,
html.halloween-theme-active [class*="prize-"][class*="card"],
html.halloween-theme-active [class*="cup-"][class*="card"]{
  border-color:rgba(255,154,39,.15)!important;
  background:linear-gradient(145deg,rgba(28,22,35,.9),rgba(8,9,14,.96))!important;
}
html.halloween-theme-active .monthly-podium>*:first-child,
html.halloween-theme-active .monthly-podium .first,
html.halloween-theme-active [class*="podium"] .rank-1{
  box-shadow:inset 0 0 45px rgba(255,193,71,.045),0 0 22px rgba(255,193,71,.05)!important;
}
html.halloween-theme-active .cup-bracket-line,
html.halloween-theme-active [class*="cup-"][class*="connector"]{border-color:rgba(143,92,255,.35)!important}
html.halloween-theme-active .pixel-diamond{filter:drop-shadow(0 0 6px rgba(136,195,255,.18))}

/* ---------- Stats, records, achievements ---------- */
html.halloween-theme-active body[data-page="records"] .stats-record-group,
html.halloween-theme-active body[data-page="records"] .stats-record-card,
html.halloween-theme-active body[data-page="awards"] [class*="award"]{
  border-color:rgba(143,92,255,.15)!important;
  background:linear-gradient(155deg,rgba(26,21,34,.88),rgba(8,9,14,.96))!important;
}
html.halloween-theme-active .achievement-card.rare,
html.halloween-theme-active .achievement-card.elite,
html.halloween-theme-active [class*="achievement"][class*="rare"],
html.halloween-theme-active [class*="achievement"][class*="elite"]{
  box-shadow:0 0 22px rgba(139,87,255,.08)!important;
}

/* ---------- News / articles / Times ---------- */
html.halloween-theme-active body[data-page="news"] .news-article-card,
html.halloween-theme-active body[data-page="news"] [class*="news-"][class*="card"]{
  border-color:rgba(255,141,31,.16)!important;
  background:linear-gradient(180deg,rgba(26,21,34,.97),rgba(8,10,16,.99))!important;
}
html.halloween-theme-active body[data-page="news"] .news-article-hero{
  background:linear-gradient(115deg,#31182d,#19162c 53%,#132621)!important;
}
html.halloween-theme-active body[data-page="news"] .news-article-hero:after{
  background:linear-gradient(90deg,rgba(26,9,22,.93),rgba(8,10,20,.68) 63%,rgba(7,13,16,.44))!important;
}
html.halloween-theme-active body[data-page="news"] .news-article-summary{
  border-left-color:#ff8a1f!important;
  background:rgba(255,138,31,.055)!important;
}
html.halloween-theme-active body[data-page="news"] .news-article-body blockquote{
  border-left-color:#9a65ff!important;
  background:rgba(143,92,255,.07)!important;
}
html.halloween-theme-active .article-weekly-prize-board,
html.halloween-theme-active .weekly-prize-board,
html.halloween-theme-active [class*="prize-board"]{
  --board-accent:#ff8a1f;
}
html.halloween-theme-active .article-weekly-prize-board>header,
html.halloween-theme-active .weekly-prize-board>header,
html.halloween-theme-active [class*="prize-board"]>header{
  background:linear-gradient(110deg,#1b1524,#173026)!important;
  border-color:rgba(255,138,31,.2)!important;
}
html.halloween-theme-active .newspaper-overlay{background:rgba(7,6,9,.96)!important}
html.halloween-theme-active .newspaper-v2{
  --times-burgundy:#7b2b39;
  --times-blue:#494080;
  filter:sepia(.03) saturate(.94);
}
html.halloween-theme-active .newspaper-v2 .newspaper-sheet{box-shadow:0 30px 80px rgba(0,0,0,.48)!important}

/* ---------- Community / inbox ---------- */
html.halloween-theme-active .inbox-panel,
html.halloween-theme-active .notification-centre,
html.halloween-theme-active [class*="inbox-"][class*="card"],
html.halloween-theme-active [class*="notification-"][class*="card"]{
  border-color:rgba(255,143,31,.14)!important;
  background:linear-gradient(145deg,rgba(25,20,33,.94),rgba(8,9,14,.98))!important;
}
html.halloween-theme-active .notification-bubble,
html.halloween-theme-active [class*="alert-bubble"]{
  border-color:rgba(255,144,31,.28)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.4),0 0 18px rgba(143,92,255,.06)!important;
}
html.halloween-theme-active .live-chat-shell,
html.halloween-theme-active [class*="live-chat-"][class*="panel"]{
  border-color:rgba(143,92,255,.16)!important;
  background:linear-gradient(180deg,rgba(24,18,34,.95),rgba(8,9,14,.98))!important;
}

/* ---------- Arcade: haunted cabinets ---------- */
html.halloween-theme-active body[data-page="arcade"] .vegas-cabinet-card,
html.halloween-theme-active body[data-page="arcade"] .vegas-active-machine{
  filter:saturate(.82) hue-rotate(8deg);
  border-color:rgba(255,141,31,.23)!important;
  box-shadow:0 20px 55px rgba(0,0,0,.4),0 0 24px rgba(117,66,163,.05)!important;
}
html.halloween-theme-active body[data-page="arcade"] .vegas-card-lights{filter:hue-rotate(65deg) saturate(1.3)}

/* ---------- Staff Console: restrained seasonal treatment ---------- */
html.halloween-theme-active body[data-page="staff-console"] .staff-console-shell{
  --staff-accent:#ff9a2c;
}
html.halloween-theme-active body[data-page="staff-console"] .staff-console-hero,
html.halloween-theme-active body[data-page="staff-console"] .staff-console-panel{
  border-color:rgba(255,146,33,.13)!important;
}
html.halloween-theme-active body[data-page="staff-console"] .staff-console-hero{
  background:linear-gradient(130deg,rgba(33,24,42,.95),rgba(9,12,18,.98))!important;
}

/* ---------- Hidden pumpkin hunt ---------- */
.halloween-hidden-pumpkin{
  position:fixed;
  z-index:9997;
  width:28px;
  height:28px;
  padding:0;
  border:0;
  background:transparent;
  color:#ff9a27;
  font-size:19px;
  line-height:1;
  opacity:.23;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.42));
  cursor:pointer;
  pointer-events:auto;
  transition:opacity .2s ease,transform .2s ease,filter .2s ease;
}
.halloween-hidden-pumpkin:hover,.halloween-hidden-pumpkin:focus-visible{opacity:.95;transform:scale(1.16) rotate(-4deg);filter:drop-shadow(0 0 11px rgba(255,138,31,.45));outline:none}
.halloween-hidden-pumpkin.found{animation:halloweenPumpkinFound .65s ease forwards;pointer-events:none}
.halloween-pumpkin-toast{
  position:fixed;left:50%;bottom:78px;z-index:10001;transform:translateX(-50%);padding:9px 14px;border:1px solid rgba(255,143,31,.27);border-radius:999px;background:rgba(15,11,20,.96);color:#f6ddbd;font-size:10px;font-weight:850;box-shadow:0 16px 38px rgba(0,0,0,.4);animation:halloweenToast 2.5s ease forwards
}
.halloween-pumpkin-hunter-badge{
  position:absolute;z-index:9;right:12px;bottom:10px;padding:5px 8px;border:1px solid rgba(255,150,33,.3);border-radius:999px;background:rgba(19,13,24,.88);color:#ffd69b;font-size:7px;font-weight:950;letter-spacing:.11em;text-transform:uppercase;pointer-events:none
}

/* ---------- Page-specific decorative aliases ---------- */
html.halloween-theme-active .page-head{position:relative}
html.halloween-theme-active body[data-page="fixtures"] .page-head:after{content:"NIGHT FIXTURES"}
html.halloween-theme-active body[data-page="gameweeks"] .page-head:after{content:"GAMEWEEK AFTER DARK"}
html.halloween-theme-active body[data-page="rivalry"] .page-head:after{content:"NIGHT DUEL"}
html.halloween-theme-active body[data-page="timeline"] .page-head:after{content:"SEASON OF SHADOWS"}
html.halloween-theme-active body[data-page="awards"] .page-head:after{content:"NIGHT HONOURS"}
html.halloween-theme-active body[data-page="fixtures"] .page-head:after,
html.halloween-theme-active body[data-page="gameweeks"] .page-head:after,
html.halloween-theme-active body[data-page="rivalry"] .page-head:after,
html.halloween-theme-active body[data-page="timeline"] .page-head:after,
html.halloween-theme-active body[data-page="awards"] .page-head:after{
  position:absolute;right:0;top:2px;color:rgba(194,151,231,.3);font-size:7px;font-weight:950;letter-spacing:.15em;pointer-events:none
}

/* ---------- Theme animations ---------- */
@keyframes halloweenFogDrift{from{transform:translate3d(-2%,0,0) scale(1)}to{transform:translate3d(2%,8px,0) scale(1.03)}}
@keyframes halloweenBatFloat{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(7px) rotate(5deg)}}
@keyframes halloweenIntroOut{to{opacity:0;visibility:hidden}}
@keyframes halloweenIntroCard{0%{opacity:0;transform:translateY(12px) scale(.98)}18%{opacity:1;transform:none}78%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-4px) scale(1.01)}}
@keyframes halloweenIntroBat{0%{opacity:0;transform:translate(-20px,15px) scale(.8)}35%{opacity:.7}100%{opacity:0;transform:translate(100px,-85px) scale(1.25)}}
@keyframes halloweenPumpkinFound{0%{opacity:1;transform:scale(1)}45%{opacity:1;transform:scale(1.35) rotate(10deg)}100%{opacity:0;transform:scale(.45) rotate(-20deg)}}
@keyframes halloweenToast{0%{opacity:0;transform:translate(-50%,10px)}12%,78%{opacity:1;transform:translate(-50%,0)}100%{opacity:0;transform:translate(-50%,-5px)}}

/* ---------- Mobile restraint / performance ---------- */
@media(max-width:760px){
  #halloween-theme-overlay .halloween-moon{width:58px;height:58px;right:-8px;top:72px;opacity:.16}
  #halloween-theme-overlay .halloween-bat{display:none}
  #halloween-theme-overlay .halloween-fog{height:120px;opacity:.12}
  #halloween-theme-overlay .halloween-nav-banner{top:55px;min-width:224px;height:44px}
  #halloween-theme-overlay .halloween-nav-banner-main{margin-top:7px;padding:6px 22px 7px;font-size:7px;letter-spacing:.13em}
  #halloween-theme-overlay .halloween-nav-banner-main:before,#halloween-theme-overlay .halloween-nav-banner-main:after{font-size:9px}
  #halloween-theme-overlay .halloween-sound-toggle{right:-27px;top:5px;width:22px;height:22px}
  html.halloween-theme-active body[data-page="home"] .home-hero:before{display:none}
  html.halloween-theme-active .page-head:after{display:none!important}
  .halloween-hidden-pumpkin{width:25px;height:25px;font-size:17px}
  .halloween-preview-pill{right:8px;bottom:68px;font-size:7px}
  html.halloween-theme-active .site-footer:before{display:none}
}

@media(prefers-reduced-motion:reduce){
  #halloween-theme-overlay .halloween-fog,
  #halloween-theme-overlay .halloween-bat,
  .halloween-intro,
  .halloween-intro-card,
  .halloween-intro:before,
  .halloween-intro:after,
  .halloween-hidden-pumpkin,
  .halloween-pumpkin-toast{animation:none!important;transition:none!important}
  .halloween-intro{display:none!important}
}

/* ---------- After Dark finishing pass: decorative-only, zero geometry shift ---------- */
html.halloween-theme-active .hbn-site-brand__lockup,
html.halloween-theme-active .mobile-brand-button{position:relative!important}
html.halloween-theme-active .hbn-site-brand__lockup:after{
  content:"🎃";
  position:absolute;
  right:-8px;
  top:-9px;
  z-index:4;
  font-size:13px;
  line-height:1;
  transform:rotate(10deg);
  filter:drop-shadow(0 3px 5px rgba(0,0,0,.35));
  pointer-events:none;
}
html.halloween-theme-active .mobile-brand-button:after{
  content:"🎃";
  position:absolute;
  right:-5px;
  top:-5px;
  font-size:10px;
  line-height:1;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.38));
  pointer-events:none;
}
html.halloween-theme-active .halloween-lineups-locked{position:relative}
html.halloween-theme-active .halloween-lineups-locked:after{
  content:"THE GATES ARE CLOSED";
  position:absolute;
  right:15px;
  bottom:8px;
  color:rgba(255,191,92,.24);
  font-size:6px;
  font-weight:950;
  letter-spacing:.17em;
  text-transform:uppercase;
  pointer-events:none;
}
html.halloween-theme-active .match-centre-captain-battle{
  border-color:rgba(153,96,255,.2)!important;
  background:linear-gradient(100deg,rgba(255,129,26,.045),rgba(22,18,32,.92) 48%,rgba(143,92,255,.05))!important;
}
html.halloween-theme-active .match-centre-final-calls article.success{
  border-color:rgba(164,255,79,.22)!important;
  box-shadow:inset 0 0 24px rgba(164,255,79,.025)!important;
}
html.halloween-theme-active .match-centre-final-calls article.failed{
  border-color:rgba(215,71,87,.2)!important;
  box-shadow:inset 0 0 24px rgba(215,71,87,.025)!important;
}
html.halloween-theme-active .bench-regret,
html.halloween-theme-active [class*="bench-regret"]{position:relative}
html.halloween-theme-active .bench-regret:after,
html.halloween-theme-active [class*="bench-regret"]:after{
  content:"HAUNTING THE BENCH  👻";
  position:absolute;
  right:12px;
  bottom:8px;
  color:rgba(205,177,232,.22);
  font-size:6px;
  font-weight:950;
  letter-spacing:.14em;
  pointer-events:none;
}
html.halloween-theme-active .manager-directory-card,
html.halloween-theme-active .manager-card.phase3-manager-card{
  position:relative;
  overflow:hidden;
  border-color:rgba(255,145,32,.14)!important;
  background:linear-gradient(145deg,rgba(26,21,34,.92),rgba(8,9,15,.97))!important;
}
html.halloween-theme-active .manager-directory-card:after,
html.halloween-theme-active .manager-card.phase3-manager-card:after{
  content:"";
  position:absolute;
  width:34px;
  height:34px;
  right:-9px;
  top:-9px;
  opacity:.18;
  pointer-events:none;
  background:
    linear-gradient(135deg,transparent 47%,rgba(208,190,225,.8) 48% 50%,transparent 51%),
    linear-gradient(45deg,transparent 47%,rgba(208,190,225,.55) 48% 50%,transparent 51%);
  transform:rotate(8deg);
}
html.halloween-theme-active .news-article-card,
html.halloween-theme-active .latest-news-feature{position:relative}
html.halloween-theme-active .news-article-card:after{
  content:"HALLOWEEN EDITION";
  position:absolute;
  right:9px;
  top:8px;
  z-index:2;
  color:rgba(255,187,96,.34);
  font-size:6px;
  font-weight:950;
  letter-spacing:.14em;
  pointer-events:none;
}
html.halloween-theme-active .not-found-card{position:relative;overflow:hidden}
html.halloween-theme-active .not-found-card:before{
  content:"👻";
  position:absolute;
  right:7%;
  top:12%;
  font-size:52px;
  opacity:.1;
  transform:rotate(8deg);
  pointer-events:none;
}
html.halloween-theme-active .not-found-card:after{
  content:"VANISHED INTO THE FOG";
  position:absolute;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  color:rgba(194,157,230,.22);
  font-size:7px;
  font-weight:950;
  letter-spacing:.18em;
  white-space:nowrap;
  pointer-events:none;
}
html.halloween-theme-active .skeleton,
html.halloween-theme-active [class*="skeleton"]{
  background-image:linear-gradient(90deg,rgba(143,92,255,.025),rgba(255,145,32,.07),rgba(143,92,255,.025))!important;
}
html.halloween-theme-active body[data-page="staff"] [class*="staff-"][class*="card"]{
  border-color:rgba(255,145,32,.15)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.2)!important;
}
html.halloween-theme-active body[data-page="staff"] [class*="staff-"][class*="avatar"]{
  filter:drop-shadow(0 0 10px rgba(143,92,255,.12))!important;
}

@media(max-width:760px){
  html.halloween-theme-active .hbn-site-brand__lockup:after{display:none}
  html.halloween-theme-active .halloween-lineups-locked:after,
  html.halloween-theme-active .bench-regret:after,
  html.halloween-theme-active [class*="bench-regret"]:after,
  html.halloween-theme-active .news-article-card:after{display:none}
}
