/* Evolution RP Seasonal Theme System V2
   Scoped: NORMAL keeps the existing Evolution RP UI untouched. */
:root{
  --season-accent:#E31B2D;
  --season-accent-2:#8F111E;
  --season-bg:#060607;
  --season-panel:#101014;
  --season-panel-2:#0b0b0e;
  --season-border:rgba(255,255,255,.08);
  --season-text:#f7f7f8;
  --season-muted:#9898a3;
  --season-ambient:rgba(227,27,45,.12);
  --season-hero-overlay:.55;
}

html[data-theme="halloween"]{
  --season-bg:#060505;
  --season-panel:#100b09;
  --season-panel-2:#090707;
  --season-border:rgba(212,78,28,.23);
  --season-text:#fff7ef;
  --season-muted:#b6a59b;
  --season-ambient:rgba(217,71,30,.20);
}
html[data-theme="christmas"]{
  --season-bg:#040708;
  --season-panel:#091011;
  --season-panel-2:#07100d;
  --season-border:rgba(202,226,220,.18);
  --season-text:#fbfdfd;
  --season-muted:#a2b0b1;
  --season-ambient:rgba(74,135,123,.18);
}
html[data-theme="newyear"]{
  --season-bg:#040508;
  --season-panel:#0a0b10;
  --season-panel-2:#08090d;
  --season-border:rgba(217,180,91,.22);
  --season-text:#fffdf8;
  --season-muted:#aaa8a4;
  --season-ambient:rgba(217,180,91,.16);
}

/* Public surface only. NORMAL has no selectors here. */
html[data-theme="halloween"] body,
html[data-theme="christmas"] body,
html[data-theme="newyear"] body{
  background:var(--season-bg);
  color:var(--season-text);
}

html[data-theme="halloween"] body:before,
html[data-theme="christmas"] body:before,
html[data-theme="newyear"] body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
}
html[data-theme="halloween"] body:before{
  background:
    radial-gradient(circle at 82% 9%,rgba(177,56,18,.11),transparent 25%),
    radial-gradient(circle at 8% 55%,rgba(67,29,70,.11),transparent 29%),
    linear-gradient(145deg,#070505 0%,#090606 38%,#060506 100%);
}
html[data-theme="christmas"] body:before{
  background:
    radial-gradient(circle at 80% 10%,rgba(188,219,211,.08),transparent 26%),
    radial-gradient(circle at 12% 62%,rgba(27,85,64,.12),transparent 28%),
    linear-gradient(145deg,#040708 0%,#07100e 52%,#050708 100%);
}
html[data-theme="newyear"] body:before{
  background:
    radial-gradient(circle at 82% 8%,rgba(217,180,91,.10),transparent 24%),
    radial-gradient(circle at 12% 58%,rgba(75,88,128,.10),transparent 30%),
    linear-gradient(145deg,#040508 0%,#090a10 48%,#050508 100%);
}

html[data-theme="halloween"] body.season-nav-on .site-nav,
html[data-theme="christmas"] body.season-nav-on .site-nav,
html[data-theme="newyear"] body.season-nav-on .site-nav{
  border-color:var(--season-border);
  backdrop-filter:blur(18px) saturate(1.08);
}
html[data-theme="halloween"] body.season-nav-on .site-nav:after,
html[data-theme="christmas"] body.season-nav-on .site-nav:after,
html[data-theme="newyear"] body.season-nav-on .site-nav:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,var(--season-accent),transparent);
  opacity:.42;
  pointer-events:none;
}
html[data-theme="christmas"] body.season-nav-on.season-lights-on .site-nav:before{
  content:"";
  position:absolute;left:5%;right:5%;top:0;height:2px;
  background:repeating-linear-gradient(90deg,rgba(255,225,142,.7) 0 3px,transparent 3px 34px,rgba(191,47,57,.74) 34px 37px,transparent 37px 68px,rgba(75,132,101,.72) 68px 71px,transparent 71px 102px);
  filter:drop-shadow(0 0 5px rgba(255,225,142,.24));
  opacity:.55;
}

html[data-theme="halloween"] .desktop-nav a.active,
html[data-theme="halloween"] .desktop-nav a:hover,
html[data-theme="halloween"] .nav-more.active>summary,
html[data-theme="christmas"] .desktop-nav a.active,
html[data-theme="christmas"] .desktop-nav a:hover,
html[data-theme="christmas"] .nav-more.active>summary,
html[data-theme="newyear"] .desktop-nav a.active,
html[data-theme="newyear"] .desktop-nav a:hover,
html[data-theme="newyear"] .nav-more.active>summary{
  color:var(--season-accent);
}

html[data-theme="halloween"] .button.primary,
html[data-theme="christmas"] .button.primary,
html[data-theme="newyear"] .button.primary{
  background:var(--season-accent);
  border-color:var(--season-accent);
}
html[data-theme="halloween"] .button.primary:hover{
  box-shadow:0 0 0 1px rgba(229,90,32,.20),0 10px 30px rgba(229,90,32,.18);
}
html[data-theme="christmas"] .button.primary:hover{
  box-shadow:0 0 0 1px rgba(205,53,65,.18),0 10px 30px rgba(205,53,65,.14);
}
html[data-theme="newyear"] .button.primary:hover{
  box-shadow:0 0 0 1px rgba(217,180,91,.20),0 10px 30px rgba(217,180,91,.16);
}
html[data-theme="newyear"] .button.seasonal-featured-cta{
  background:linear-gradient(110deg,#9b7632,#d9b45b 46%,#f3deb0 52%,#b38c3c 70%,#7e612d);
  color:#100e09;
  border-color:rgba(255,229,164,.48);
  position:relative;overflow:hidden;
}
html[data-theme="newyear"] .button.seasonal-featured-cta:after{
  content:"";position:absolute;inset:-20% auto -20% -45%;width:28%;transform:skewX(-18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transition:left .5s ease;
}
html[data-theme="newyear"] .button.seasonal-featured-cta:hover:after{left:120%}

html[data-theme="halloween"] .red,
html[data-theme="christmas"] .red,
html[data-theme="newyear"] .red{color:var(--season-accent)!important}
html[data-theme="halloween"] .eyebrow,
html[data-theme="christmas"] .eyebrow,
html[data-theme="newyear"] .eyebrow{color:var(--season-accent)}

/* Atmosphere layer */
.seasonal-chrome{position:fixed;inset:0;pointer-events:none;z-index:2;overflow:hidden;contain:paint}
.seasonal-custom-background{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.075;filter:saturate(.72) contrast(1.08)}
.seasonal-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.78}
.seasonal-fog,.seasonal-smoke,.seasonal-ambient{position:absolute;inset:-10%;opacity:0;will-change:transform,opacity}
.seasonal-chrome.effect-ambient .seasonal-ambient{opacity:1;background:radial-gradient(circle at 79% 8%,var(--season-ambient),transparent 28%),radial-gradient(circle at 8% 62%,color-mix(in srgb,var(--season-accent-2) 15%,transparent),transparent 25%)}
.seasonal-halloween.effect-fog .seasonal-fog{opacity:.29;filter:blur(24px);background:radial-gradient(ellipse at 15% 42%,rgba(137,97,72,.20),transparent 34%),radial-gradient(ellipse at 75% 69%,rgba(105,74,62,.15),transparent 38%);animation:seasonFog 22s ease-in-out infinite alternate}
.seasonal-halloween.effect-fog .seasonal-fog-b{opacity:.18;transform:scaleX(-1);animation-duration:31s;animation-delay:-8s}
.seasonal-halloween.effect-smoke .seasonal-smoke{opacity:.14;background:linear-gradient(125deg,transparent 20%,rgba(48,35,33,.45) 47%,transparent 72%);filter:blur(42px);animation:seasonSmoke 28s ease-in-out infinite alternate}
.seasonal-christmas.effect-winter_overlay .seasonal-fog{opacity:.17;background:linear-gradient(180deg,rgba(169,213,216,.12),transparent 34%,rgba(184,218,216,.04));filter:blur(14px)}
@keyframes seasonFog{from{transform:translate3d(-4%,1%,0) scale(1.02)}to{transform:translate3d(4%,-1%,0) scale(1.09)}}
@keyframes seasonSmoke{from{transform:translate3d(-6%,3%,0) rotate(-2deg)}to{transform:translate3d(7%,-2%,0) rotate(3deg)}}

/* Halloween decorative assets – CSS/SVG, not text emoji. */
.seasonal-moon{display:none}
.seasonal-halloween .seasonal-moon{display:block;position:absolute;width:220px;height:220px;border-radius:50%;right:7vw;top:12vh;background:radial-gradient(circle at 42% 40%,rgba(229,178,105,.12),rgba(137,79,45,.055) 56%,transparent 72%);filter:blur(.2px);opacity:.58}
.seasonal-web{display:none}
.seasonal-halloween .seasonal-web{display:block;position:absolute;width:170px;height:170px;opacity:.11;background:
  radial-gradient(circle at 0 0,transparent 0 18px,rgba(232,218,206,.8) 19px 20px,transparent 21px 38px,rgba(232,218,206,.62) 39px 40px,transparent 41px 58px,rgba(232,218,206,.45) 59px 60px,transparent 61px),
  linear-gradient(45deg,transparent 49.5%,rgba(232,218,206,.58) 50%,transparent 50.5%),
  linear-gradient(90deg,transparent 49.5%,rgba(232,218,206,.45) 50%,transparent 50.5%);
}
.seasonal-web-left{left:0;top:0}.seasonal-web-right{right:0;top:0;transform:scaleX(-1)}
.seasonal-bats i{position:absolute;width:40px;height:18px;opacity:.18;animation:pacificBat 18s linear infinite}
.seasonal-bats svg{width:100%;height:100%;fill:#e8b681}
.seasonal-bats i:nth-child(1){top:12%;left:-8%;animation-delay:0s}.seasonal-bats i:nth-child(2){top:22%;left:-13%;animation-delay:4s;transform:scale(.72)}.seasonal-bats i:nth-child(3){top:8%;left:-10%;animation-delay:8s;transform:scale(1.15)}.seasonal-bats i:nth-child(4){top:31%;left:-15%;animation-delay:12s;transform:scale(.58)}.seasonal-bats i:nth-child(5){top:17%;left:-12%;animation-delay:15s;transform:scale(.84)}
@keyframes pacificBat{0%{translate:0 0;rotate:-4deg}45%{translate:58vw -24px;rotate:5deg}100%{translate:120vw 12px;rotate:-3deg}}

/* Christmas lights */
.seasonal-lights{position:absolute;left:2vw;right:2vw;top:68px;height:14px;display:flex;justify-content:space-around;opacity:.54}
.seasonal-lights:before{content:"";position:absolute;left:0;right:0;top:2px;height:1px;background:rgba(208,218,213,.13)}
.seasonal-lights i{position:relative;width:6px;height:8px;border-radius:50% 50% 55% 55%;background:#f4df9b;box-shadow:0 0 12px rgba(244,223,155,.78);animation:seasonLight 2.8s ease-in-out infinite alternate}
.seasonal-lights i:nth-child(3n+1){background:#cf3c49;box-shadow:0 0 12px rgba(207,60,73,.72)}
.seasonal-lights i:nth-child(3n+2){background:#77a58f;box-shadow:0 0 12px rgba(119,165,143,.66);animation-delay:.8s}
.seasonal-lights i:nth-child(4n){animation-delay:1.35s}
@keyframes seasonLight{from{opacity:.28;filter:brightness(.7)}to{opacity:1;filter:brightness(1.16)}}

/* New Year sparkles */
.seasonal-sparkles i{position:absolute;width:2px;height:2px;border-radius:50%;background:#f8e4ac;box-shadow:0 0 10px rgba(248,228,172,.8);opacity:.35;animation:newYearSparkle 3.7s ease-in-out infinite}
.seasonal-sparkles i:nth-child(1){left:8%;top:14%}.seasonal-sparkles i:nth-child(2){left:18%;top:26%;animation-delay:.4s}.seasonal-sparkles i:nth-child(3){left:28%;top:11%;animation-delay:1.1s}.seasonal-sparkles i:nth-child(4){left:39%;top:23%;animation-delay:1.8s}.seasonal-sparkles i:nth-child(5){left:47%;top:9%;animation-delay:.7s}.seasonal-sparkles i:nth-child(6){left:58%;top:18%;animation-delay:2.2s}.seasonal-sparkles i:nth-child(7){left:68%;top:7%;animation-delay:1.5s}.seasonal-sparkles i:nth-child(8){left:77%;top:28%;animation-delay:.3s}.seasonal-sparkles i:nth-child(9){left:87%;top:13%;animation-delay:2.8s}.seasonal-sparkles i:nth-child(10){left:93%;top:33%;animation-delay:1.4s}.seasonal-sparkles i:nth-child(11){left:12%;top:48%;animation-delay:2.2s}.seasonal-sparkles i:nth-child(12){left:23%;top:63%;animation-delay:.9s}.seasonal-sparkles i:nth-child(13){left:36%;top:54%;animation-delay:2.7s}.seasonal-sparkles i:nth-child(14){left:54%;top:47%;animation-delay:1.6s}.seasonal-sparkles i:nth-child(15){left:66%;top:61%;animation-delay:.2s}.seasonal-sparkles i:nth-child(16){left:79%;top:52%;animation-delay:2.4s}.seasonal-sparkles i:nth-child(17){left:88%;top:70%;animation-delay:1.1s}.seasonal-sparkles i:nth-child(18){left:45%;top:76%;animation-delay:3s}
@keyframes newYearSparkle{0%,100%{opacity:.12;transform:scale(.65)}50%{opacity:.75;transform:scale(1.45)}}

/* Announcement / preview */
.seasonal-announcement{position:relative;z-index:12;display:flex;align-items:center;justify-content:center;gap:28px;padding:11px 24px;background:linear-gradient(90deg,color-mix(in srgb,var(--season-accent) 16%,#080809),#0b0b0d,color-mix(in srgb,var(--season-accent-2) 15%,#080809));border-bottom:1px solid var(--season-border);color:var(--season-text)}
.seasonal-announcement div{display:flex;align-items:center;gap:12px}.seasonal-announcement strong{font-size:12px;letter-spacing:.12em}.seasonal-announcement span{font-size:12px;color:var(--season-muted)}.seasonal-announcement a{font-size:11px;font-weight:900;letter-spacing:.09em;color:var(--season-accent);text-decoration:none}.seasonal-announcement-banner{width:42px;height:42px;border-radius:9px;object-fit:cover;border:1px solid var(--season-border)}
.seasonal-preview-bar{position:relative;z-index:30;background:#f2b53f;color:#16120b;font-weight:900;text-align:center;padding:8px 16px;font-size:11px;letter-spacing:.12em}.seasonal-preview-bar a{color:#16120b;margin-left:12px}

/* Hero rework without changing hero markup */
html[data-theme="halloween"] .hero,
html[data-theme="christmas"] .hero,
html[data-theme="newyear"] .hero{isolation:isolate;overflow:hidden;background-color:var(--season-bg)}
html[data-theme="halloween"] .hero:after,
html[data-theme="christmas"] .hero:after,
html[data-theme="newyear"] .hero:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:var(--season-hero-overlay)}
html[data-theme="halloween"] .hero:after{background:linear-gradient(90deg,rgba(5,4,4,.90) 0%,rgba(10,5,4,.58) 47%,rgba(78,25,10,.14)),radial-gradient(circle at 78% 30%,rgba(217,71,30,.34),transparent 32%)}
html[data-theme="christmas"] .hero:after{background:linear-gradient(90deg,rgba(4,7,8,.91) 0%,rgba(4,10,10,.62) 48%,rgba(20,60,50,.13)),radial-gradient(circle at 80% 28%,rgba(221,205,149,.16),transparent 28%)}
html[data-theme="newyear"] .hero:after{background:linear-gradient(90deg,rgba(4,5,8,.91) 0%,rgba(7,8,14,.62) 48%,rgba(86,65,23,.12)),radial-gradient(circle at 80% 26%,rgba(217,180,91,.22),transparent 30%)}
html[data-theme="halloween"] body.season-hero-decor-on .hero:before{content:"";position:absolute;z-index:0;right:-8%;bottom:-20%;width:46vw;height:46vw;border-radius:50%;background:radial-gradient(circle,rgba(217,71,30,.12),transparent 62%);filter:blur(10px);pointer-events:none}
html[data-theme="christmas"] body.season-hero-decor-on .hero:before{content:"";position:absolute;z-index:0;right:-8%;bottom:-24%;width:46vw;height:46vw;border-radius:50%;background:radial-gradient(circle,rgba(94,148,130,.11),transparent 62%);filter:blur(10px);pointer-events:none}
html[data-theme="newyear"] body.season-hero-decor-on .hero:before{content:"";position:absolute;z-index:0;right:-8%;bottom:-24%;width:48vw;height:48vw;border-radius:50%;background:radial-gradient(circle,rgba(217,180,91,.12),transparent 62%);filter:blur(10px);pointer-events:none}
html[data-theme="halloween"] body:has(.seasonal-chrome.effect-flicker) .hero:after{animation:seasonFlicker 7s steps(1,end) infinite}
@keyframes seasonFlicker{0%,91%,95%,100%{opacity:var(--season-hero-overlay)}92%,94%{opacity:calc(var(--season-hero-overlay) * .72)}}

/* Seasonal treatment for existing standard components, scoped to active themes. */
html[data-theme="halloween"] body.season-card-decor-on :is(.story-card,.home-change-card,.home-news-card,.home-roadmap-card,.status-strip,.cta-panel,.empty),
html[data-theme="christmas"] body.season-card-decor-on :is(.story-card,.home-change-card,.home-news-card,.home-roadmap-card,.status-strip,.cta-panel,.empty),
html[data-theme="newyear"] body.season-card-decor-on :is(.story-card,.home-change-card,.home-news-card,.home-roadmap-card,.status-strip,.cta-panel,.empty){border-color:var(--season-border)}
html[data-theme="halloween"] body.season-card-decor-on :is(.story-card,.home-change-card,.home-news-card,.home-roadmap-card){background:linear-gradient(145deg,rgba(19,12,9,.92),rgba(10,8,8,.94));box-shadow:0 20px 60px rgba(0,0,0,.16)}
html[data-theme="christmas"] body.season-card-decor-on :is(.story-card,.home-change-card,.home-news-card,.home-roadmap-card){background:linear-gradient(145deg,rgba(10,17,18,.92),rgba(7,10,11,.95));box-shadow:0 20px 60px rgba(0,0,0,.16)}
html[data-theme="newyear"] body.season-card-decor-on :is(.story-card,.home-change-card,.home-news-card,.home-roadmap-card){background:linear-gradient(145deg,rgba(12,13,19,.94),rgba(8,9,13,.96));box-shadow:0 20px 60px rgba(0,0,0,.18)}
html[data-theme="halloween"] body.season-card-decor-on :is(.story-card,.home-change-card):hover{border-color:rgba(217,71,30,.42);box-shadow:0 18px 45px rgba(116,41,15,.12)}
html[data-theme="christmas"] body.season-card-decor-on :is(.story-card,.home-change-card):hover{border-color:rgba(213,224,219,.28);box-shadow:0 18px 45px rgba(57,101,88,.11)}
html[data-theme="newyear"] body.season-card-decor-on :is(.story-card,.home-change-card):hover{border-color:rgba(217,180,91,.40);box-shadow:0 18px 45px rgba(125,94,36,.12)}

html[data-theme="halloween"] :is(.input,input,select,textarea):focus,
html[data-theme="christmas"] :is(.input,input,select,textarea):focus,
html[data-theme="newyear"] :is(.input,input,select,textarea):focus{border-color:color-mix(in srgb,var(--season-accent) 55%,#333);outline-color:color-mix(in srgb,var(--season-accent) 30%,transparent)}
html[data-theme="halloween"] :is(.badge,.version-chip),
html[data-theme="christmas"] :is(.badge,.version-chip),
html[data-theme="newyear"] :is(.badge,.version-chip){border-color:var(--season-border)}

/* Footer */
html[data-theme="halloween"] body.season-footer-on .site-footer{position:relative;background:linear-gradient(180deg,#080709,#0b0605);border-color:var(--season-border)}
html[data-theme="christmas"] body.season-footer-on .site-footer{position:relative;background:linear-gradient(180deg,#07090a,#06100e);border-color:var(--season-border)}
html[data-theme="newyear"] body.season-footer-on .site-footer{position:relative;background:linear-gradient(180deg,#07080c,#06070b);border-color:var(--season-border)}
html[data-theme="halloween"] body.season-footer-on .site-footer:before,
html[data-theme="christmas"] body.season-footer-on .site-footer:before,
html[data-theme="newyear"] body.season-footer-on .site-footer:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--season-accent),transparent);opacity:.34}
html[data-theme="christmas"] body.season-footer-on .site-footer:after{content:"";position:absolute;left:0;right:0;top:-7px;height:9px;background:radial-gradient(ellipse at 10px 9px,rgba(233,241,239,.20) 0 7px,transparent 7.5px);background-size:38px 9px;opacity:.5;pointer-events:none}

/* Login atmosphere, layout remains unchanged. */
html[data-theme="halloween"] .login-visual:after,
html[data-theme="christmas"] .login-visual:after,
html[data-theme="newyear"] .login-visual:after{content:"";position:absolute;inset:0;pointer-events:none}
html[data-theme="halloween"] .login-visual:after{background:linear-gradient(90deg,rgba(5,4,4,.18),rgba(57,17,8,.18)),radial-gradient(circle at 75% 25%,rgba(217,71,30,.18),transparent 30%)}
html[data-theme="christmas"] .login-visual:after{background:linear-gradient(90deg,rgba(4,7,8,.20),rgba(11,45,36,.18)),radial-gradient(circle at 78% 20%,rgba(224,206,151,.13),transparent 30%)}
html[data-theme="newyear"] .login-visual:after{background:linear-gradient(90deg,rgba(4,5,8,.20),rgba(48,39,17,.16)),radial-gradient(circle at 79% 18%,rgba(217,180,91,.17),transparent 30%)}
html[data-theme="halloween"] .login-panel,
html[data-theme="christmas"] .login-panel,
html[data-theme="newyear"] .login-panel{border-color:var(--season-border);background:color-mix(in srgb,var(--season-panel) 90%,#09090b)}

/* Homepage seasonal module */
.seasonal-home{position:relative;overflow:hidden;border:1px solid var(--season-border);background:linear-gradient(135deg,color-mix(in srgb,var(--season-accent) 12%,#0a0a0c),#0b0b0e 58%,color-mix(in srgb,var(--season-accent-2) 10%,#08090a));border-radius:24px;padding:34px;display:grid;grid-template-columns:minmax(0,1.2fr) auto;gap:32px;align-items:center}
.seasonal-home:before{content:"";position:absolute;width:340px;height:340px;border-radius:50%;right:-130px;top:-180px;background:var(--season-ambient);filter:blur(10px)}
.seasonal-home>*{position:relative}.seasonal-home h2{font-size:clamp(30px,4vw,54px);margin:7px 0 9px;line-height:.96}.seasonal-home p{max-width:690px;color:var(--season-muted);margin:0}.seasonal-home-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.seasonal-home-image{width:124px;height:86px;object-fit:cover;border-radius:14px;border:1px solid color-mix(in srgb,var(--season-accent) 30%,#27272d);box-shadow:0 14px 36px rgba(0,0,0,.28);flex:0 0 auto}
.seasonal-home-event{margin-top:18px;padding:14px 16px;border:1px solid var(--season-border);border-radius:14px;background:rgba(0,0,0,.16);display:flex;gap:14px;align-items:center;justify-content:space-between}.seasonal-home-event span{display:grid;gap:2px}.seasonal-home-event small{color:var(--season-muted);font-weight:800;letter-spacing:.08em}.seasonal-home-event b{font-size:14px}
.seasonal-countdown{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:-8px}.seasonal-countdown-head{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:2px}.seasonal-countdown-head b{font-size:11px;letter-spacing:.13em;color:var(--season-accent)}.seasonal-countdown-head span{font-size:11px;color:var(--season-muted)}.seasonal-countdown-cell{padding:15px 16px;border-radius:14px;border:1px solid var(--season-border);background:rgba(0,0,0,.22);display:flex;align-items:baseline;justify-content:space-between;gap:10px}.seasonal-countdown-cell strong{font-size:clamp(25px,3vw,40px);letter-spacing:-.04em}.seasonal-countdown-cell small{font-size:9px;letter-spacing:.12em;color:var(--season-muted);font-weight:900}.seasonal-countdown-complete{grid-column:1/-1;padding:18px;border:1px solid rgba(217,180,91,.28);border-radius:14px;background:rgba(217,180,91,.08);font-weight:900;letter-spacing:.07em;text-align:center}

/* Confetti generated only as a short New Year burst. */
.seasonal-confetti-burst{position:fixed;inset:0;z-index:35;pointer-events:none;overflow:hidden}.seasonal-confetti-burst i{position:absolute;top:-5%;width:6px;height:13px;border-radius:2px;background:#d9b45b;animation:pacificConfetti 2.8s ease-in forwards}.seasonal-confetti-burst i:nth-child(3n){background:#d9dce2}.seasonal-confetti-burst i:nth-child(4n){background:#c5303d}.seasonal-confetti-burst i:nth-child(5n){width:4px;height:9px}
@keyframes pacificConfetti{to{transform:translate3d(var(--confetti-x),110vh,0) rotate(720deg);opacity:.18}}

/* Master Seasonal Manager: uses existing control components, no global admin redesign. */
.seasonal-master-status{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-4px 0 16px;padding:12px 14px;border:1px solid #292930;border-radius:14px;background:#0d0d10}.seasonal-master-status span{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:900;letter-spacing:.08em}.seasonal-master-status i{width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 14px color-mix(in srgb,var(--red) 55%,transparent)}.seasonal-master-status small{color:#85858f}.seasonal-master-status .seasonal-card-actions{margin:0}
.seasonal-status-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.seasonal-theme-card{position:relative;overflow:hidden;padding:0;border-radius:18px;border:1px solid #26262d;background:#101014;min-height:244px}.seasonal-theme-card.active{border-color:color-mix(in srgb,var(--red) 60%,#333);box-shadow:0 0 0 1px color-mix(in srgb,var(--red) 22%,transparent) inset}.seasonal-theme-preview{height:92px;background:radial-gradient(circle at 75% 20%,rgba(227,27,45,.18),transparent 38%),linear-gradient(145deg,#111114,#09090b);background-size:cover;background-position:center;position:relative}.seasonal-theme-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(7,7,9,.60))}.seasonal-theme-card[data-theme-card="halloween"] .seasonal-theme-preview{background-image:radial-gradient(circle at 78% 25%,rgba(217,71,30,.30),transparent 35%),linear-gradient(145deg,#160d09,#080607)}.seasonal-theme-card[data-theme-card="christmas"] .seasonal-theme-preview{background-image:radial-gradient(circle at 78% 24%,rgba(109,166,148,.24),transparent 35%),linear-gradient(145deg,#0a1514,#060809)}.seasonal-theme-card[data-theme-card="newyear"] .seasonal-theme-preview{background-image:radial-gradient(circle at 78% 24%,rgba(217,180,91,.28),transparent 35%),linear-gradient(145deg,#101119,#06070a)}.seasonal-theme-card-body{padding:16px}.seasonal-theme-card h3{margin:7px 0 6px;font-size:22px}.seasonal-theme-card p{color:#9797a3;font-size:12px;line-height:1.48;min-height:54px}.seasonal-theme-icon{font-size:24px}.seasonal-theme-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.seasonal-theme-meta span,.seasonal-theme-state{display:inline-flex;padding:5px 8px;border-radius:999px;background:#1b1b20;color:#aaa;font-size:9px;font-weight:900;letter-spacing:.08em}.seasonal-theme-card.active .seasonal-theme-state{background:rgba(58,195,113,.12);color:#65db96}.seasonal-card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.seasonal-card-actions form{margin:0}
.seasonal-config-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:16px;align-items:start}.seasonal-preview{position:sticky;top:90px;border:1px solid #292930;border-radius:20px;overflow:hidden;background:#08080a}.seasonal-preview-hero{min-height:340px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 80% 20%,color-mix(in srgb,var(--season-accent) 20%,transparent),transparent 34%),linear-gradient(180deg,#0b0b0d,#070708);background-size:cover;background-position:center;position:relative}.seasonal-preview-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.56));pointer-events:none}.seasonal-preview-hero>*{position:relative;z-index:1}.seasonal-preview[data-preview-theme="halloween"] .seasonal-preview-hero{background-image:radial-gradient(circle at 78% 22%,rgba(229,90,32,.24),transparent 32%),linear-gradient(180deg,#130d09,#070605)}.seasonal-preview[data-preview-theme="christmas"] .seasonal-preview-hero{background-image:radial-gradient(circle at 78% 20%,rgba(101,164,153,.22),transparent 34%),linear-gradient(180deg,#0b1213,#050708)}.seasonal-preview[data-preview-theme="newyear"] .seasonal-preview-hero{background-image:radial-gradient(circle at 78% 20%,rgba(217,180,91,.22),transparent 34%),linear-gradient(180deg,#101119,#050609)}.seasonal-preview small{font-weight:900;letter-spacing:.12em;color:var(--season-accent)}.seasonal-preview h2{font-size:38px;line-height:.95;margin:10px 0;white-space:pre-line}.seasonal-preview p{color:#a0a0aa}.seasonal-setting-section{padding:18px;border-top:1px solid #24242a}.seasonal-setting-section:first-child{border-top:0}.seasonal-setting-section>h3{margin:0 0 4px}.seasonal-setting-section>.muted{margin-top:0}.seasonal-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.seasonal-toggle{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid #292930;border-radius:12px;background:#0d0d10}.seasonal-toggle input{accent-color:var(--red)}.seasonal-toggle span{display:grid;gap:2px}.seasonal-toggle small{color:#85858f}.seasonal-assets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.seasonal-asset{border:1px solid #292930;border-radius:14px;padding:12px}.seasonal-asset img,.seasonal-asset-placeholder{width:100%;height:110px;object-fit:cover;border-radius:10px;background:#08080a;margin-bottom:8px}.seasonal-asset-placeholder{display:grid;place-items:center;color:#555}.seasonal-asset input[type="file"]{max-width:100%;margin-top:8px;font-size:10px}.seasonal-asset-remove{display:block;margin-top:7px;font-size:10px;color:#888}
.seasonal-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid #24242a;border-bottom:1px solid #24242a;background:#0c0c0f}.seasonal-tab{appearance:none;border:1px solid #292930;background:#111116;color:#90909b;padding:8px 10px;border-radius:9px;font-size:10px;font-weight:900;letter-spacing:.08em;cursor:pointer}.seasonal-tab.active{border-color:color-mix(in srgb,var(--red) 42%,#333);color:#fff;background:#17171c}.seasonal-tab-panel{display:none}.seasonal-tab-panel.active{display:block}.seasonal-config-save{position:sticky;bottom:10px;z-index:4;padding:12px 18px;border-top:1px solid #292930;background:rgba(12,12,15,.94);backdrop-filter:blur(12px);display:flex;justify-content:flex-end}.seasonal-priority-note{padding:12px;border:1px solid #292930;border-radius:12px;background:#0d0d10;color:#94949f;font-size:12px;line-height:1.55}.seasonal-schedule-preset{margin-top:10px}.seasonal-field-note{display:block;color:#777781;font-size:10px;margin-top:5px}.seasonal-range-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.seasonal-range-row output{min-width:42px;text-align:right;color:#aaa;font-size:11px;font-weight:900}.seasonal-effect-count{color:#85858f;font-size:10px;margin-top:8px}

/* Small Master-only status badge. Admin layout otherwise remains unchanged. */
.seasonal-admin-indicator{display:inline-flex;align-items:center;gap:7px;margin-left:10px;padding:5px 8px;border:1px solid #2a2a31;border-radius:999px;background:#111116;color:#aaa;font-size:9px;font-weight:900;letter-spacing:.08em;vertical-align:middle}.seasonal-admin-indicator i{width:6px;height:6px;border-radius:50%;background:var(--red)}

.seasonal-decoration-image{position:fixed;right:0;bottom:0;width:min(28vw,420px);max-height:48vh;object-fit:contain;object-position:right bottom;opacity:.14;pointer-events:none;filter:saturate(.8);z-index:1}

@media(max-width:1120px){.seasonal-status-board{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:920px){.seasonal-config-grid{grid-template-columns:1fr}.seasonal-preview{position:relative;top:auto}.seasonal-assets{grid-template-columns:1fr 1fr}.seasonal-home{grid-template-columns:1fr}.seasonal-home-actions{justify-content:flex-start}.seasonal-countdown{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.seasonal-decoration-image{width:44vw;opacity:.09}.seasonal-home-image{width:100%;height:150px}.seasonal-home{align-items:stretch}.seasonal-lights{top:58px;opacity:.34}.seasonal-moon{transform:scale(.65);transform-origin:top right}.seasonal-canvas{opacity:.58}}
@media(max-width:640px){.seasonal-announcement{align-items:flex-start;flex-direction:column;gap:5px;padding:10px 16px}.seasonal-announcement div{display:block}.seasonal-announcement span{display:block;margin-top:3px}.seasonal-home{padding:24px}.seasonal-assets,.seasonal-toggle-grid,.seasonal-status-board{grid-template-columns:1fr}.seasonal-countdown{grid-template-columns:1fr 1fr}.seasonal-countdown-head{align-items:flex-start;flex-direction:column;gap:3px}.seasonal-master-status{align-items:flex-start;flex-direction:column}.seasonal-theme-card p{min-height:auto}}
@media(max-width:420px){.seasonal-countdown{grid-template-columns:1fr}.seasonal-home-event{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.seasonal-bats i,.seasonal-lights i,.seasonal-fog,.seasonal-smoke,.seasonal-sparkles i{animation:none!important}.seasonal-bats{display:none}.seasonal-canvas{display:none}.seasonal-confetti-burst{display:none}}

/* Broader standard-component support, still only while a public seasonal theme is active. */
html[data-theme="halloween"] :is(.nav-more-menu,.mobile-nav,.profile-menu-menu,.notification-popover,.modal,.dialog,.toast,.table-wrap),
html[data-theme="christmas"] :is(.nav-more-menu,.mobile-nav,.profile-menu-menu,.notification-popover,.modal,.dialog,.toast,.table-wrap),
html[data-theme="newyear"] :is(.nav-more-menu,.mobile-nav,.profile-menu-menu,.notification-popover,.modal,.dialog,.toast,.table-wrap){
  border-color:var(--season-border);
  background:color-mix(in srgb,var(--season-panel) 94%,#08080a);
}
html[data-theme="halloween"] :is(table,thead,tbody,tr,th,td),
html[data-theme="christmas"] :is(table,thead,tbody,tr,th,td),
html[data-theme="newyear"] :is(table,thead,tbody,tr,th,td){border-color:var(--season-border)}
html[data-theme="halloween"] body.season-section-decor-on .section+ .section,
html[data-theme="christmas"] body.season-section-decor-on .section+ .section,
html[data-theme="newyear"] body.season-section-decor-on .section+ .section{position:relative}
html[data-theme="halloween"] body.season-section-decor-on .section+ .section:before,
html[data-theme="christmas"] body.season-section-decor-on .section+ .section:before,
html[data-theme="newyear"] body.season-section-decor-on .section+ .section:before{
  content:"";position:absolute;left:50%;top:0;width:min(520px,70vw);height:1px;translate:-50% 0;background:linear-gradient(90deg,transparent,var(--season-accent),transparent);opacity:.16;pointer-events:none
}
html[data-theme="halloween"] body>main,
html[data-theme="christmas"] body>main,
html[data-theme="newyear"] body>main{animation:seasonPageIn .22s ease-out both}
@keyframes seasonPageIn{from{opacity:.92;transform:translateY(2px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){html[data-theme="halloween"] body>main,html[data-theme="christmas"] body>main,html[data-theme="newyear"] body>main{animation:none}}

/* Visual component preview inside Theme Manager only. */
.seasonal-preview-components{padding:16px;border-top:1px solid #24242a;display:grid;gap:10px}.seasonal-preview-mini-nav,.seasonal-preview-mini-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #292930;border-radius:11px;background:#0d0d10;font-size:9px;font-weight:900;letter-spacing:.08em}.seasonal-preview-mini-nav b,.seasonal-preview-mini-footer b{color:var(--season-accent)}.seasonal-preview-mini-card{padding:14px;border:1px solid color-mix(in srgb,var(--season-accent) 26%,#292930);border-radius:13px;background:linear-gradient(145deg,color-mix(in srgb,var(--season-accent) 7%,#101014),#09090b)}.seasonal-preview-mini-card small{display:block;color:var(--season-accent);font-weight:900;letter-spacing:.08em;margin-bottom:5px}.seasonal-preview-mini-card b{font-size:14px}.seasonal-preview-mini-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.seasonal-preview-mini-button{padding:7px 9px;border-radius:8px;border:1px solid #303038;font-size:9px;font-weight:900}.seasonal-preview-mini-button.primary{background:var(--season-accent);border-color:var(--season-accent);color:#fff}.seasonal-preview-mini-login{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:12px;border:1px solid #292930;border-radius:11px;background:#0c0c0f}.seasonal-preview-mini-login span{display:grid;gap:2px}.seasonal-preview-mini-login small{color:#85858f}.seasonal-preview-mini-login i{width:28px;height:28px;border-radius:8px;background:var(--season-accent);opacity:.85}

/* =========================================================
   V2.1 – STRONGER SEASONAL CHROME / NAV + EXTRA ATMOSPHERE
   IMPORTANT: All selectors remain theme-scoped. NORMAL is untouched.
   ========================================================= */

/* The public topbar always follows the active seasonal theme.
   nav_decorations still controls optional decorative extras, not the base theme. */
html[data-theme="halloween"] .site-nav,
html[data-theme="christmas"] .site-nav,
html[data-theme="newyear"] .site-nav{
  position:relative;
  isolation:isolate;
  overflow:visible;
  border-bottom-color:var(--season-border);
  backdrop-filter:blur(20px) saturate(1.18);
  -webkit-backdrop-filter:blur(20px) saturate(1.18);
  transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;
}
html[data-theme="halloween"] .site-nav{
  background:
    radial-gradient(circle at 18% -55%,rgba(225,77,28,.24),transparent 34%),
    radial-gradient(circle at 78% -80%,rgba(111,24,18,.22),transparent 37%),
    linear-gradient(180deg,rgba(25,10,7,.985) 0%,rgba(12,7,7,.975) 58%,rgba(7,6,7,.965) 100%);
  border-bottom-color:rgba(224,82,30,.24);
  box-shadow:0 10px 36px rgba(35,8,4,.22),inset 0 -1px 0 rgba(235,102,38,.06);
}
html[data-theme="christmas"] .site-nav{
  background:
    radial-gradient(circle at 14% -70%,rgba(196,48,60,.17),transparent 31%),
    radial-gradient(circle at 82% -62%,rgba(49,113,91,.22),transparent 34%),
    linear-gradient(180deg,rgba(6,18,18,.988) 0%,rgba(5,13,14,.978) 58%,rgba(5,9,11,.97) 100%);
  border-bottom-color:rgba(149,197,184,.20);
  box-shadow:0 10px 38px rgba(0,20,17,.22),inset 0 -1px 0 rgba(226,246,239,.045);
}
html[data-theme="newyear"] .site-nav{
  background:
    radial-gradient(circle at 17% -70%,rgba(213,43,58,.13),transparent 30%),
    radial-gradient(circle at 78% -72%,rgba(217,180,91,.23),transparent 35%),
    linear-gradient(180deg,rgba(10,11,22,.99) 0%,rgba(7,8,16,.98) 56%,rgba(5,6,11,.97) 100%);
  border-bottom-color:rgba(217,180,91,.22);
  box-shadow:0 10px 40px rgba(4,5,12,.28),inset 0 -1px 0 rgba(250,222,155,.05);
}

/* Theme-colored nav indicator + link glow. */
html[data-theme="halloween"] .desktop-nav a.active:after,
html[data-theme="halloween"] .nav-more.active>summary:after,
html[data-theme="christmas"] .desktop-nav a.active:after,
html[data-theme="christmas"] .nav-more.active>summary:after,
html[data-theme="newyear"] .desktop-nav a.active:after,
html[data-theme="newyear"] .nav-more.active>summary:after{
  background:var(--season-accent);
  box-shadow:0 0 14px color-mix(in srgb,var(--season-accent) 40%,transparent);
}
html[data-theme="halloween"] .site-nav :is(.brand,.desktop-nav a,.nav-more>summary,.nav-right),
html[data-theme="christmas"] .site-nav :is(.brand,.desktop-nav a,.nav-more>summary,.nav-right),
html[data-theme="newyear"] .site-nav :is(.brand,.desktop-nav a,.nav-more>summary,.nav-right){position:relative;z-index:2}

/* Optional nav decorations become richer while the base themed nav remains on. */
html[data-theme="halloween"] body.season-nav-on .site-nav:before{
  content:"";
  position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  background:
    linear-gradient(108deg,transparent 0 37%,rgba(230,84,31,.055) 45%,transparent 54%),
    radial-gradient(circle at 68% 0,rgba(133,40,20,.12),transparent 30%);
  background-size:220% 100%,100% 100%;
  animation:halloweenNavDrift 14s ease-in-out infinite alternate;
}
html[data-theme="newyear"] body.season-nav-on .site-nav:before{
  content:"";
  position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  background:linear-gradient(108deg,transparent 0 40%,rgba(245,215,139,.075) 48%,rgba(255,255,255,.025) 50%,transparent 58%);
  background-size:240% 100%;
  animation:newYearNavShine 10s ease-in-out infinite;
}
@keyframes halloweenNavDrift{from{background-position:0 0,0 0}to{background-position:100% 0,0 0}}
@keyframes newYearNavShine{0%,45%{background-position:115% 0}70%,100%{background-position:-105% 0}}

/* Keep the Christmas light string, but integrate it into the themed bar instead of a black bar. */
html[data-theme="christmas"] body.season-nav-on.season-lights-on .site-nav:before{
  content:"";
  position:absolute;left:4%;right:4%;top:0;height:3px;z-index:1;pointer-events:none;
  background:repeating-linear-gradient(90deg,
    rgba(255,229,156,.86) 0 3px,transparent 3px 30px,
    rgba(204,52,67,.84) 30px 33px,transparent 33px 60px,
    rgba(90,153,124,.82) 60px 63px,transparent 63px 90px);
  filter:drop-shadow(0 0 6px rgba(255,229,156,.28));
  opacity:.75;
  animation:christmasTopTwinkle 3.2s ease-in-out infinite alternate;
}
@keyframes christmasTopTwinkle{from{filter:drop-shadow(0 0 3px rgba(255,229,156,.18));opacity:.52}to{filter:drop-shadow(0 0 8px rgba(255,229,156,.34));opacity:.88}}

/* Stronger atmospheric layer – still subtle enough to keep Evolution RP readable. */
.seasonal-halloween.effect-ambient .seasonal-ambient:before,
.seasonal-halloween.effect-ambient .seasonal-ambient:after,
.seasonal-christmas.effect-ambient .seasonal-ambient:before,
.seasonal-christmas.effect-ambient .seasonal-ambient:after,
.seasonal-newyear.effect-ambient .seasonal-ambient:before,
.seasonal-newyear.effect-ambient .seasonal-ambient:after{
  content:"";position:absolute;inset:-12%;pointer-events:none;will-change:transform,opacity;
}
.seasonal-halloween.effect-ambient .seasonal-ambient:before{
  background:radial-gradient(ellipse at 74% 16%,rgba(235,81,27,.13),transparent 30%),radial-gradient(ellipse at 19% 72%,rgba(93,31,87,.08),transparent 30%);
  filter:blur(18px);animation:halloweenAmbientPulse 9s ease-in-out infinite alternate;
}
.seasonal-halloween.effect-ambient .seasonal-ambient:after{
  background:linear-gradient(118deg,transparent 32%,rgba(130,46,21,.045) 48%,transparent 64%);
  background-size:190% 100%;animation:halloweenAmbientSweep 18s linear infinite;
}
@keyframes halloweenAmbientPulse{from{opacity:.58;transform:scale(1)}to{opacity:1;transform:scale(1.05)}}
@keyframes halloweenAmbientSweep{from{background-position:140% 0}to{background-position:-140% 0}}

.seasonal-christmas.effect-ambient .seasonal-ambient:before{
  background:
    radial-gradient(ellipse at 18% 17%,rgba(105,173,165,.10),transparent 31%),
    radial-gradient(ellipse at 78% 12%,rgba(226,201,139,.075),transparent 27%),
    radial-gradient(ellipse at 52% 82%,rgba(34,103,78,.075),transparent 33%);
  filter:blur(22px);animation:christmasAurora 16s ease-in-out infinite alternate;
}
.seasonal-christmas.effect-ambient .seasonal-ambient:after{
  inset:auto -10% 0 -10%;height:20vh;
  background:linear-gradient(180deg,transparent,rgba(196,222,217,.025) 55%,rgba(221,237,234,.055));
  filter:blur(7px);animation:christmasGroundGlow 8s ease-in-out infinite alternate;
}
@keyframes christmasAurora{from{opacity:.45;transform:translate3d(-2%,0,0) scale(1.01)}to{opacity:.9;transform:translate3d(2%,-1%,0) scale(1.06)}}
@keyframes christmasGroundGlow{from{opacity:.45}to{opacity:.9}}

.seasonal-newyear.effect-ambient .seasonal-ambient:before{
  background:
    conic-gradient(from 205deg at 78% 6%,transparent 0 7deg,rgba(229,197,119,.055) 9deg 12deg,transparent 14deg 25deg,rgba(213,46,61,.025) 27deg 30deg,transparent 32deg),
    radial-gradient(circle at 80% 8%,rgba(236,202,119,.12),transparent 29%);
  filter:blur(4px);transform-origin:78% 6%;animation:newYearLightFan 18s ease-in-out infinite alternate;
}
.seasonal-newyear.effect-ambient .seasonal-ambient:after{
  background:linear-gradient(112deg,transparent 36%,rgba(255,237,190,.035) 48%,transparent 60%);
  background-size:210% 100%;animation:newYearAmbientSweep 12s ease-in-out infinite;
}
@keyframes newYearLightFan{from{opacity:.45;transform:rotate(-2deg) scale(1)}to{opacity:.86;transform:rotate(3deg) scale(1.04)}}
@keyframes newYearAmbientSweep{0%,35%{background-position:130% 0}70%,100%{background-position:-130% 0}}

/* Halloween gets a slightly more alive moon and deeper fog when the related effects are enabled. */
.seasonal-halloween .seasonal-moon{animation:halloweenMoonBreath 10s ease-in-out infinite alternate}
.seasonal-halloween.effect-fog .seasonal-fog{opacity:.34}
.seasonal-halloween.effect-smoke .seasonal-smoke{opacity:.18}
@keyframes halloweenMoonBreath{from{opacity:.44;box-shadow:0 0 38px rgba(222,111,47,.025)}to{opacity:.68;box-shadow:0 0 78px rgba(222,111,47,.06)}}

/* Christmas frost/glow follows the active theme without covering content. */
html[data-theme="christmas"] body.season-nav-on .site-nav{
  text-shadow:0 0 18px rgba(199,229,221,.025);
}
html[data-theme="christmas"] body.season-footer-on .site-footer{
  box-shadow:inset 0 1px 0 rgba(205,231,223,.035),0 -18px 52px rgba(16,66,53,.06);
}

/* New Year adds occasional gold/silver glints to chrome and cards, not constant confetti. */
html[data-theme="newyear"] body.season-card-decor-on :is(.card,.home-card,.feature-card){
  position:relative;overflow:hidden;
}
html[data-theme="newyear"] body.season-card-decor-on :is(.card,.home-card,.feature-card):after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(115deg,transparent 0 43%,rgba(255,236,184,.035) 49%,transparent 55%);
  background-size:260% 100%;background-position:120% 0;opacity:.65;
  animation:newYearCardGlint 13s ease-in-out infinite;
}
@keyframes newYearCardGlint{0%,58%{background-position:120% 0}78%,100%{background-position:-120% 0}}

/* Mobile keeps the atmosphere but lowers GPU/visual load. */
@media(max-width:760px){
  html[data-theme="halloween"] .site-nav,
  html[data-theme="christmas"] .site-nav,
  html[data-theme="newyear"] .site-nav{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}
  .seasonal-halloween.effect-ambient .seasonal-ambient:after,
  .seasonal-newyear.effect-ambient .seasonal-ambient:after{opacity:.5}
}

@media(prefers-reduced-motion:reduce){
  html[data-theme="halloween"] body.season-nav-on .site-nav:before,
  html[data-theme="christmas"] body.season-nav-on.season-lights-on .site-nav:before,
  html[data-theme="newyear"] body.season-nav-on .site-nav:before,
  .seasonal-halloween.effect-ambient .seasonal-ambient:before,
  .seasonal-halloween.effect-ambient .seasonal-ambient:after,
  .seasonal-christmas.effect-ambient .seasonal-ambient:before,
  .seasonal-christmas.effect-ambient .seasonal-ambient:after,
  .seasonal-newyear.effect-ambient .seasonal-ambient:before,
  .seasonal-newyear.effect-ambient .seasonal-ambient:after,
  .seasonal-halloween .seasonal-moon,
  html[data-theme="newyear"] body.season-card-decor-on :is(.card,.home-card,.feature-card):after{animation:none!important}
}

/* ==========================================================================
   V2.2 — Transparent seasonal topbar
   Keep the original black navigation in NORMAL. When a seasonal theme is
   active, the navigation becomes transparent so the active theme atmosphere
   continues behind/through the bar. Theme identity remains in borders,
   indicators and optional decorations — never as an opaque replacement bar.
   ========================================================================== */
html[data-theme="halloween"] .site-nav,
html[data-theme="christmas"] .site-nav,
html[data-theme="newyear"] .site-nav{
  background:transparent;
  backdrop-filter:blur(18px) saturate(1.12);
  -webkit-backdrop-filter:blur(18px) saturate(1.12);
}

html[data-theme="halloween"] .site-nav{
  border-bottom-color:rgba(224,82,30,.24);
  box-shadow:0 10px 34px rgba(35,8,4,.10),inset 0 -1px 0 rgba(235,102,38,.055);
}
html[data-theme="christmas"] .site-nav{
  border-bottom-color:rgba(149,197,184,.20);
  box-shadow:0 10px 34px rgba(0,20,17,.09),inset 0 -1px 0 rgba(226,246,239,.04);
}
html[data-theme="newyear"] .site-nav{
  border-bottom-color:rgba(217,180,91,.22);
  box-shadow:0 10px 36px rgba(4,5,12,.11),inset 0 -1px 0 rgba(250,222,155,.045);
}

/* Decorations may tint/light the bar, but they stay transparent overlays. */
html[data-theme="halloween"] body.season-nav-on .site-nav:before,
html[data-theme="newyear"] body.season-nav-on .site-nav:before{
  mix-blend-mode:screen;
  opacity:.72;
}
html[data-theme="christmas"] body.season-nav-on.season-lights-on .site-nav:before{
  background-color:transparent;
}


/* ==========================================================================
   V2.4 — Christmas Eve countdown
   Only exists while the Christmas theme is active. NORMAL and other themes
   keep their existing layout/UI untouched.
   ========================================================================== */
html[data-theme="christmas"] .christmas-countdown-section{
  position:relative;z-index:4;padding:22px 0 0;
}
html[data-theme="christmas"] .christmas-countdown{
  position:relative;overflow:hidden;margin:0;padding:17px 18px 18px;
  border:1px solid rgba(190,224,212,.18);border-radius:18px;
  background:
    radial-gradient(circle at 88% -15%,rgba(224,206,151,.13),transparent 31%),
    radial-gradient(circle at 7% 120%,rgba(36,88,69,.20),transparent 34%),
    linear-gradient(135deg,rgba(8,18,17,.86),rgba(6,10,12,.80));
  box-shadow:0 16px 48px rgba(0,0,0,.20),inset 0 1px 0 rgba(235,247,242,.035);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
}
html[data-theme="christmas"] .christmas-countdown:before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(214,177,101,.42),rgba(200,47,60,.36),transparent);
}
html[data-theme="christmas"] .christmas-countdown .seasonal-countdown-head,
html[data-theme="christmas"] .christmas-countdown .seasonal-countdown-cell{position:relative;z-index:1}
html[data-theme="christmas"] .christmas-countdown .seasonal-countdown-head b{
  color:#e0c98e;text-shadow:0 0 18px rgba(224,201,142,.10);
}
html[data-theme="christmas"] .christmas-countdown .seasonal-countdown-head span{color:#94aaa4}
html[data-theme="christmas"] .christmas-countdown .seasonal-countdown-cell{
  border-color:rgba(177,213,201,.13);
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.16));
}
html[data-theme="christmas"] .christmas-countdown .seasonal-countdown-cell strong{
  color:#f5f7f6;text-shadow:0 0 24px rgba(216,235,228,.07);
}
html[data-theme="christmas"] .christmas-countdown .seasonal-countdown-cell small{color:#8fa49e}
html[data-theme="christmas"] .christmas-countdown .seasonal-countdown-complete{
  border-color:rgba(204,179,111,.24);
  background:linear-gradient(135deg,rgba(38,91,71,.18),rgba(190,44,58,.10));
  color:#f3e3b6;
}
@media(max-width:640px){
  html[data-theme="christmas"] .christmas-countdown-section{padding-top:16px}
  html[data-theme="christmas"] .christmas-countdown{padding:15px}
}

/* ========================================================================== 
   V4.0 — Complete Seasonal Visual Rework
   IMPORTANT: every public rule is scoped to a non-normal data-theme.
   NORMAL therefore remains the existing Evolution RP UI 1:1.
   ========================================================================== */

html[data-theme="halloween"],
html[data-theme="christmas"],
html[data-theme="newyear"]{
  --season-surface:rgba(10,11,13,.82);
  --season-surface-strong:rgba(8,9,11,.94);
  --season-surface-soft:rgba(255,255,255,.026);
  --season-line:rgba(255,255,255,.085);
  --season-card-glow:rgba(0,0,0,.22);
  --season-button-glow:rgba(0,0,0,.18);
  --snow-build-extra:0px;
}
html[data-theme="halloween"]{
  --season-surface:rgba(15,10,10,.84);
  --season-surface-strong:rgba(9,7,8,.95);
  --season-line:rgba(210,93,48,.17);
  --season-card-glow:rgba(128,42,25,.12);
  --season-button-glow:rgba(218,78,35,.18);
}
html[data-theme="christmas"]{
  --season-surface:rgba(7,15,15,.84);
  --season-surface-strong:rgba(6,11,13,.95);
  --season-line:rgba(180,218,209,.15);
  --season-card-glow:rgba(45,103,82,.12);
  --season-button-glow:rgba(194,52,65,.14);
}
html[data-theme="newyear"]{
  --season-surface:rgba(7,9,15,.86);
  --season-surface-strong:rgba(5,7,12,.96);
  --season-line:rgba(218,184,101,.16);
  --season-card-glow:rgba(177,143,67,.12);
  --season-button-glow:rgba(216,180,91,.16);
}

html[data-theme="halloween"] body,
html[data-theme="christmas"] body,
html[data-theme="newyear"] body{
  position:relative;
  min-height:100%;
  background:var(--season-bg);
}
html[data-theme="halloween"] body>main,
html[data-theme="christmas"] body>main,
html[data-theme="newyear"] body>main,
html[data-theme="halloween"] .site-footer,
html[data-theme="christmas"] .site-footer,
html[data-theme="newyear"] .site-footer{
  position:relative;
  z-index:3;
}
html[data-theme="halloween"] .site-nav,
html[data-theme="christmas"] .site-nav,
html[data-theme="newyear"] .site-nav{
  z-index:60;
  background:rgba(4,5,7,.16)!important;
  backdrop-filter:blur(20px) saturate(1.14)!important;
  -webkit-backdrop-filter:blur(20px) saturate(1.14)!important;
}
html[data-theme="halloween"] .site-nav{background:linear-gradient(180deg,rgba(17,8,6,.32),rgba(5,5,6,.12))!important}
html[data-theme="christmas"] .site-nav{background:linear-gradient(180deg,rgba(4,15,14,.30),rgba(4,6,8,.10))!important}
html[data-theme="newyear"] .site-nav{background:linear-gradient(180deg,rgba(5,8,17,.30),rgba(4,5,8,.10))!important}

/* Theme-wide atmosphere, not just a color preset. */
html[data-theme="halloween"] body:before{
  background:
    radial-gradient(ellipse at 82% 7%,rgba(207,69,24,.13),transparent 24%),
    radial-gradient(ellipse at 11% 48%,rgba(83,34,91,.13),transparent 28%),
    radial-gradient(ellipse at 48% 105%,rgba(111,35,20,.08),transparent 36%),
    linear-gradient(145deg,#050404 0%,#0a0606 42%,#060506 100%);
}
html[data-theme="christmas"] body:before{
  background:
    radial-gradient(ellipse at 79% 8%,rgba(231,208,147,.075),transparent 23%),
    radial-gradient(ellipse at 14% 42%,rgba(59,113,100,.13),transparent 29%),
    radial-gradient(ellipse at 55% 112%,rgba(30,80,72,.10),transparent 40%),
    linear-gradient(145deg,#030608 0%,#06100f 48%,#04070a 100%);
}
html[data-theme="newyear"] body:before{
  background:
    radial-gradient(ellipse at 81% 7%,rgba(225,190,105,.12),transparent 22%),
    radial-gradient(ellipse at 16% 44%,rgba(74,89,139,.12),transparent 31%),
    radial-gradient(ellipse at 52% 110%,rgba(92,50,98,.055),transparent 38%),
    linear-gradient(145deg,#03050a 0%,#080a13 49%,#040509 100%);
}

.seasonal-chrome{z-index:1;contain:strict}
.seasonal-vignette,.seasonal-grain{position:absolute;inset:0;pointer-events:none}
.seasonal-vignette{background:radial-gradient(ellipse at center,transparent 44%,rgba(0,0,0,.34) 100%);opacity:.55}
.seasonal-grain{opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
.seasonal-custom-background{opacity:.095;filter:saturate(.78) contrast(1.08)}
.seasonal-canvas{opacity:.92}

/* Homepage hero becomes the strongest seasonal scene while preserving markup. */
html[data-theme="halloween"] .seasonal-main-hero,
html[data-theme="christmas"] .seasonal-main-hero,
html[data-theme="newyear"] .seasonal-main-hero{
  position:relative;
  min-height:min(760px,82vw);
  isolation:isolate;
  overflow:hidden;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
html[data-theme="halloween"] .seasonal-main-hero{
  background-image:
    linear-gradient(90deg,rgba(4,3,3,.94) 0%,rgba(7,4,4,.75) 42%,rgba(29,9,7,.34) 70%,rgba(63,24,10,.16) 100%),
    radial-gradient(circle at 80% 26%,rgba(221,83,31,.20),transparent 30%),
    var(--hero-image);
}
html[data-theme="christmas"] .seasonal-main-hero{
  background-image:
    linear-gradient(90deg,rgba(3,6,8,.94) 0%,rgba(4,10,11,.72) 42%,rgba(8,30,25,.31) 72%,rgba(55,60,38,.12) 100%),
    radial-gradient(circle at 79% 23%,rgba(238,211,146,.13),transparent 27%),
    var(--hero-image);
}
html[data-theme="newyear"] .seasonal-main-hero{
  background-image:
    linear-gradient(90deg,rgba(3,4,9,.95) 0%,rgba(5,7,14,.72) 41%,rgba(16,20,41,.31) 70%,rgba(87,67,23,.13) 100%),
    radial-gradient(circle at 80% 21%,rgba(229,195,111,.16),transparent 28%),
    var(--hero-image);
}
html[data-theme="halloween"] .seasonal-main-hero,
html[data-theme="christmas"] .seasonal-main-hero,
html[data-theme="newyear"] .seasonal-main-hero{
  filter:brightness(var(--season-hero-brightness,1));
}
html[data-theme="halloween"] .seasonal-main-hero>.hero-inner,
html[data-theme="christmas"] .seasonal-main-hero>.hero-inner,
html[data-theme="newyear"] .seasonal-main-hero>.hero-inner{filter:none;position:relative;z-index:4;padding-top:clamp(138px,15vw,190px);padding-bottom:clamp(80px,10vw,130px)}
html[data-theme="halloween"] .seasonal-main-hero .display,
html[data-theme="christmas"] .seasonal-main-hero .display,
html[data-theme="newyear"] .seasonal-main-hero .display{max-width:980px;text-shadow:0 12px 40px rgba(0,0,0,.38)}
html[data-theme="halloween"] .seasonal-main-hero .lead,
html[data-theme="christmas"] .seasonal-main-hero .lead,
html[data-theme="newyear"] .seasonal-main-hero .lead{max-width:690px;color:rgba(240,241,243,.76)}
html[data-theme="halloween"] .seasonal-hero-eyebrow,html[data-theme="christmas"] .seasonal-hero-eyebrow,html[data-theme="newyear"] .seasonal-hero-eyebrow{letter-spacing:.18em}
html[data-theme="halloween"] .seasonal-hero-eyebrow{color:#dc8b54!important}
html[data-theme="christmas"] .seasonal-hero-eyebrow{color:#d9c58d!important}
html[data-theme="newyear"] .seasonal-hero-eyebrow{color:#e1c679!important}

@media(max-width:720px){
  html[data-theme="halloween"] .seasonal-main-hero,
  html[data-theme="christmas"] .seasonal-main-hero,
  html[data-theme="newyear"] .seasonal-main-hero{
    min-height:680px;
    background-image:linear-gradient(180deg,rgba(4,5,7,.76),rgba(4,5,7,.92)),var(--season-mobile-hero),var(--hero-image);
  }
}

/* Reusable seasonal surfaces across public pages. */
html[data-theme="halloween"] body.season-card-decor-on :is(.card,.home-card,.feature-card,.story-card,.home-event-row,.home-featured-update,.home-change-card,.home-news-card,.home-roadmap-card,.status-strip,.control-card,.character-card,.character-stat,.economy-card,.vehicle-card,.property-card,.job-card,.profile-character-card,.roadmap-card,.event-card,.changelog-card,.guide-card,.support-card,.ticket-card,.empty),
html[data-theme="christmas"] body.season-card-decor-on :is(.card,.home-card,.feature-card,.story-card,.home-event-row,.home-featured-update,.home-change-card,.home-news-card,.home-roadmap-card,.status-strip,.control-card,.character-card,.character-stat,.economy-card,.vehicle-card,.property-card,.job-card,.profile-character-card,.roadmap-card,.event-card,.changelog-card,.guide-card,.support-card,.ticket-card,.empty),
html[data-theme="newyear"] body.season-card-decor-on :is(.card,.home-card,.feature-card,.story-card,.home-event-row,.home-featured-update,.home-change-card,.home-news-card,.home-roadmap-card,.status-strip,.control-card,.character-card,.character-stat,.economy-card,.vehicle-card,.property-card,.job-card,.profile-character-card,.roadmap-card,.event-card,.changelog-card,.guide-card,.support-card,.ticket-card,.empty){
  border-color:var(--season-line)!important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--season-card-accent) 5%,var(--season-surface)),var(--season-surface-strong))!important;
  box-shadow:0 22px 68px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.025);
}
html[data-theme="halloween"] body.season-card-decor-on :is(.story-card,.home-event-row,.home-change-card,.event-card,.changelog-card):hover{border-color:rgba(220,102,49,.34)!important;box-shadow:0 22px 70px rgba(66,14,8,.20),0 0 0 1px rgba(207,79,35,.055)}
html[data-theme="christmas"] body.season-card-decor-on :is(.story-card,.home-event-row,.home-change-card,.event-card,.changelog-card):hover{border-color:rgba(202,224,215,.25)!important;box-shadow:0 22px 70px rgba(12,57,47,.18),0 0 0 1px rgba(210,184,113,.045)}
html[data-theme="newyear"] body.season-card-decor-on :is(.story-card,.home-event-row,.home-change-card,.event-card,.changelog-card):hover{border-color:rgba(222,190,111,.31)!important;box-shadow:0 22px 70px rgba(43,35,12,.20),0 0 0 1px rgba(222,190,111,.055)}

html[data-theme="halloween"] :is(.input,input,textarea,select),
html[data-theme="christmas"] :is(.input,input,textarea,select),
html[data-theme="newyear"] :is(.input,input,textarea,select){border-color:var(--season-line)}
html[data-theme="halloween"] :is(.badge,.chip,.version-chip),
html[data-theme="christmas"] :is(.badge,.chip,.version-chip),
html[data-theme="newyear"] :is(.badge,.chip,.version-chip){border-color:var(--season-line)}

/* Keep utility-heavy pages readable: atmosphere around the content, not over it. */
html[data-theme="halloween"] :is(.guide-article,.guide-content,.ticket-chat,.ticket-thread,.support-chat,.application-form),
html[data-theme="christmas"] :is(.guide-article,.guide-content,.ticket-chat,.ticket-thread,.support-chat,.application-form),
html[data-theme="newyear"] :is(.guide-article,.guide-content,.ticket-chat,.ticket-thread,.support-chat,.application-form){background:rgba(7,8,10,.92);backdrop-filter:blur(8px)}

/* Themed section rhythm / separators. */
html[data-theme="halloween"] body.season-section-decor-on .section,
html[data-theme="christmas"] body.season-section-decor-on .section,
html[data-theme="newyear"] body.season-section-decor-on .section{position:relative}
html[data-theme="halloween"] body.season-section-decor-on .section:after,
html[data-theme="christmas"] body.season-section-decor-on .section:after,
html[data-theme="newyear"] body.season-section-decor-on .section:after{content:"";position:absolute;left:6%;right:6%;bottom:0;height:1px;pointer-events:none;opacity:.34}
html[data-theme="halloween"] body.season-section-decor-on .section:after{background:linear-gradient(90deg,transparent,rgba(207,77,35,.46),rgba(95,40,95,.24),transparent)}
html[data-theme="christmas"] body.season-section-decor-on .section:after{background:linear-gradient(90deg,transparent,rgba(196,222,213,.28),rgba(215,181,102,.24),transparent)}
html[data-theme="newyear"] body.season-section-decor-on .section:after{background:linear-gradient(90deg,transparent,rgba(217,183,96,.35),rgba(164,177,205,.24),transparent)}

/* Theme-specific page context: small hint, never a second page header. */
.seasonal-page-context{position:relative;z-index:4;border-bottom:1px solid var(--season-line);background:rgba(5,6,8,.50);backdrop-filter:blur(14px)}
.seasonal-page-context>.container{min-height:72px;display:grid;grid-template-columns:4px minmax(0,1fr) auto;gap:16px;align-items:center;padding-top:11px;padding-bottom:11px}
.seasonal-page-context-mark{width:3px;height:38px;border-radius:99px;background:var(--season-accent);box-shadow:0 0 18px color-mix(in srgb,var(--season-accent) 35%,transparent)}
.seasonal-page-context small,.seasonal-page-context strong,.seasonal-page-context p{display:block}.seasonal-page-context small{font-size:8px;letter-spacing:.17em;color:var(--season-accent);font-weight:950}.seasonal-page-context strong{font-size:13px;margin-top:3px;letter-spacing:.035em}.seasonal-page-context p{margin:2px 0 0;color:#8f949d;font-size:11px}.seasonal-page-context a{color:#b7bbc2;font-size:9px;font-weight:950;letter-spacing:.09em;text-decoration:none;white-space:nowrap}.seasonal-page-context a:hover{color:#fff}
@media(max-width:720px){.seasonal-page-context>.container{grid-template-columns:3px 1fr}.seasonal-page-context a{grid-column:2;margin-top:4px}.seasonal-page-context p{font-size:10px}}

/* Seasonal footer finish. */
html[data-theme="halloween"] body.season-footer-on .site-footer,
html[data-theme="christmas"] body.season-footer-on .site-footer,
html[data-theme="newyear"] body.season-footer-on .site-footer{overflow:hidden;border-top-color:var(--season-line);background:linear-gradient(180deg,rgba(6,7,9,.74),rgba(3,4,6,.98))}
html[data-theme="halloween"] body.season-footer-on .site-footer{background:radial-gradient(ellipse at 12% 0,rgba(130,43,23,.10),transparent 34%),linear-gradient(180deg,#090606,#040405 75%)}
html[data-theme="christmas"] body.season-footer-on .site-footer{background:radial-gradient(ellipse at 18% 0,rgba(38,96,74,.12),transparent 35%),radial-gradient(ellipse at 88% 0,rgba(215,184,112,.055),transparent 30%),linear-gradient(180deg,#07100f,#030608 76%)}
html[data-theme="newyear"] body.season-footer-on .site-footer{background:radial-gradient(ellipse at 86% 0,rgba(215,181,92,.10),transparent 31%),radial-gradient(ellipse at 18% 0,rgba(61,72,119,.10),transparent 34%),linear-gradient(180deg,#070913,#030409 76%)}
.seasonal-footer-message{border-bottom:1px solid var(--season-line);position:relative;z-index:2}.seasonal-footer-message>.container{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;min-height:54px}.seasonal-footer-message span,.seasonal-footer-message i{height:1px;background:linear-gradient(90deg,transparent,var(--season-accent))}.seasonal-footer-message i{background:linear-gradient(90deg,var(--season-accent),transparent)}.seasonal-footer-message b{font-size:9px;letter-spacing:.18em;color:var(--season-accent)}

/* HALLOWEEN — cinematic urban horror. */
.seasonal-halloween.effect-fog.intensity-medium .seasonal-fog,
.seasonal-halloween[data-fog-intensity="medium"] .seasonal-fog{opacity:.42}
.seasonal-halloween[data-fog-intensity="low"] .seasonal-fog{opacity:.27}
.seasonal-halloween .seasonal-fog-c{opacity:.11!important;transform:translateY(24%);animation-duration:37s!important}
.seasonal-halloween.effect-smoke .seasonal-smoke{opacity:.22;background:linear-gradient(110deg,transparent 16%,rgba(64,40,36,.36) 43%,rgba(46,23,30,.24) 58%,transparent 82%)}
.seasonal-halloween .seasonal-branches{position:absolute;bottom:-2%;width:300px;height:330px;opacity:.14;filter:blur(.2px);background:linear-gradient(73deg,transparent 47%,rgba(20,13,13,.92) 48% 50%,transparent 51%),linear-gradient(42deg,transparent 56%,rgba(20,13,13,.72) 57% 59%,transparent 60%),linear-gradient(108deg,transparent 59%,rgba(20,13,13,.64) 60% 62%,transparent 63%)}
.seasonal-branches-left{left:-80px;transform:rotate(-8deg)}.seasonal-branches-right{right:-80px;transform:scaleX(-1) rotate(-6deg)}
html[data-theme="halloween"] body.season-flicker-on .seasonal-main-hero:after{animation:pacificHalloweenFlicker 8.5s steps(1,end) infinite}
@keyframes pacificHalloweenFlicker{0%,12%,14%,51%,53%,100%{opacity:var(--season-hero-overlay)}13%,52%{opacity:calc(var(--season-hero-overlay) - .06)}}
html[data-theme="halloween"] .button.primary{background:linear-gradient(135deg,#b62824,var(--season-button-accent));border-color:rgba(223,89,40,.34)}
html[data-theme="halloween"] .button.secondary.seasonal-theme-cta{border-color:rgba(219,99,47,.34);background:rgba(67,23,14,.18)}

/* CHRISTMAS — falling snow + organic accumulation + cozy light. */
.seasonal-christmas.effect-winter_mist .seasonal-fog{opacity:.18;background:linear-gradient(180deg,rgba(175,207,211,.11),transparent 38%,rgba(103,159,151,.035));filter:blur(16px)}
.seasonal-christmas.effect-ambient_warm_lights .seasonal-ambient:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 18%,rgba(236,202,124,.085),transparent 22%),radial-gradient(circle at 24% 70%,rgba(195,49,65,.045),transparent 20%)}
.seasonal-snow-accumulation{position:absolute;left:-3%;right:-3%;bottom:-1px;height:calc(24px + var(--snow-build-extra));opacity:.92;filter:drop-shadow(0 -4px 12px rgba(161,191,198,.08));background:radial-gradient(ellipse at 4% 100%,#eaf2f3 0 43%,transparent 45%),radial-gradient(ellipse at 15% 100%,#f4f7f7 0 48%,transparent 50%),radial-gradient(ellipse at 27% 100%,#dfeaed 0 42%,transparent 44%),radial-gradient(ellipse at 41% 100%,#f3f7f7 0 48%,transparent 50%),radial-gradient(ellipse at 56% 100%,#e3edef 0 43%,transparent 45%),radial-gradient(ellipse at 70% 100%,#f3f7f7 0 49%,transparent 51%),radial-gradient(ellipse at 84% 100%,#dce9ec 0 42%,transparent 44%),radial-gradient(ellipse at 96% 100%,#f2f7f7 0 48%,transparent 50%),linear-gradient(180deg,transparent 0 32%,#e6eff1 33% 100%);background-size:14% 100%,17% 100%,16% 100%,18% 100%,16% 100%,18% 100%,15% 100%,15% 100%,100% 100%;background-position:0 0,11% 0,24% 0,38% 0,53% 0,67% 0,81% 0,93% 0,0 0;background-repeat:no-repeat;transition:height 2.8s ease}
html[data-theme="christmas"] body.season-snow-build-on .site-footer:before{content:"";position:absolute;left:-2%;right:-2%;top:-18px;height:30px;z-index:2;pointer-events:none;background:radial-gradient(ellipse at 6% 100%,#e9f1f2 0 45%,transparent 47%),radial-gradient(ellipse at 20% 100%,#f5f8f8 0 51%,transparent 53%),radial-gradient(ellipse at 35% 100%,#dfeaec 0 44%,transparent 46%),radial-gradient(ellipse at 51% 100%,#f2f6f7 0 49%,transparent 51%),radial-gradient(ellipse at 68% 100%,#e1ecee 0 46%,transparent 48%),radial-gradient(ellipse at 84% 100%,#f4f7f8 0 51%,transparent 53%),radial-gradient(ellipse at 96% 100%,#e2ecee 0 45%,transparent 47%);filter:drop-shadow(0 -3px 8px rgba(151,186,192,.08))}
html[data-theme="christmas"] body.season-snow-build-on .seasonal-main-hero:before{content:"";position:absolute;left:-2%;right:-2%;bottom:-5px;height:24px;z-index:3;pointer-events:none;background:radial-gradient(ellipse at 8% 100%,rgba(239,246,247,.92) 0 45%,transparent 47%),radial-gradient(ellipse at 27% 100%,rgba(223,235,238,.92) 0 42%,transparent 44%),radial-gradient(ellipse at 48% 100%,rgba(244,247,247,.94) 0 48%,transparent 50%),radial-gradient(ellipse at 70% 100%,rgba(224,236,239,.92) 0 44%,transparent 46%),radial-gradient(ellipse at 91% 100%,rgba(244,248,248,.93) 0 49%,transparent 51%)}
html[data-theme="christmas"] body.season-frost-on :is(.seasonal-main-hero,.seasonal-home,.season-hub-home-cta):after{box-shadow:inset 0 1px 0 rgba(228,244,241,.11),inset 0 0 30px rgba(174,210,208,.025)}
html[data-theme="christmas"] .button.primary{background:linear-gradient(135deg,#ad2432,var(--season-button-accent));border-color:rgba(210,78,88,.26)}
html[data-theme="christmas"] .button.secondary.seasonal-theme-cta{border-color:rgba(215,185,111,.25);background:linear-gradient(135deg,rgba(38,91,67,.22),rgba(11,15,17,.5))}

/* NEW YEAR — black glass, skyline light, gold/silver without template-glitter. */
.seasonal-newyear .seasonal-skyline{position:absolute;left:0;right:0;bottom:0;height:30%;opacity:.12;background:linear-gradient(90deg,transparent 0 2%,rgba(12,16,28,.95) 2% 6%,transparent 6% 8%,rgba(12,16,28,.95) 8% 14%,transparent 14% 16%,rgba(12,16,28,.95) 16% 19%,transparent 19% 22%,rgba(12,16,28,.95) 22% 30%,transparent 30% 33%,rgba(12,16,28,.95) 33% 39%,transparent 39% 43%,rgba(12,16,28,.95) 43% 51%,transparent 51% 54%,rgba(12,16,28,.95) 54% 58%,transparent 58% 62%,rgba(12,16,28,.95) 62% 70%,transparent 70% 73%,rgba(12,16,28,.95) 73% 80%,transparent 80% 84%,rgba(12,16,28,.95) 84% 92%,transparent 92%);clip-path:polygon(0 80%,2% 80%,2% 47%,6% 47%,6% 72%,8% 72%,8% 35%,14% 35%,14% 63%,16% 63%,16% 52%,19% 52%,19% 77%,22% 77%,22% 28%,30% 28%,30% 68%,33% 68%,33% 42%,39% 42%,39% 74%,43% 74%,43% 22%,51% 22%,51% 69%,54% 69%,54% 50%,58% 50%,58% 73%,62% 73%,62% 32%,70% 32%,70% 69%,73% 69%,73% 45%,80% 45%,80% 76%,84% 76%,84% 26%,92% 26%,92% 67%,100% 67%,100% 100%,0 100%)}
.seasonal-newyear .seasonal-skyline:after{content:"";position:absolute;inset:15% 0 0;background:repeating-linear-gradient(90deg,transparent 0 17px,rgba(236,205,121,.28) 18px 20px,transparent 21px 39px);mask-image:linear-gradient(180deg,#000,transparent);opacity:.35}
html[data-theme="newyear"] .seasonal-main-hero:before{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 42%,rgba(255,239,198,.032) 49%,transparent 56%);background-size:260% 100%;animation:newYearHeroSheen 13s ease-in-out infinite}
@keyframes newYearHeroSheen{0%,58%{background-position:120% 0}82%,100%{background-position:-120% 0}}
html[data-theme="newyear"] .button.primary{background:linear-gradient(135deg,#a82431,#d33b48);border-color:rgba(222,80,92,.24)}
html[data-theme="newyear"] .button.seasonal-featured-cta{background:linear-gradient(115deg,#765824,#b99040 42%,#e8cb82 50%,#9e7831 70%,#6e5222);color:#0e0c08!important;border-color:rgba(244,218,150,.42);box-shadow:0 12px 34px rgba(174,132,44,.12)}
html[data-theme="newyear"] .button.ghost.seasonal-theme-cta-secondary{border-color:rgba(205,215,231,.18);background:rgba(10,12,19,.42)}
html[data-theme="newyear"] body.seasonal-midnight-live .seasonal-main-hero{box-shadow:inset 0 0 130px rgba(216,180,91,.08)}

/* Countdown can live inside the New Year hero. */
.seasonal-countdown-hero{max-width:650px;margin-top:28px;padding:15px;border:1px solid rgba(221,187,101,.20);border-radius:17px;background:linear-gradient(145deg,rgba(8,10,17,.68),rgba(6,7,10,.82));backdrop-filter:blur(15px);box-shadow:0 20px 60px rgba(0,0,0,.22)}
.seasonal-countdown-hero .seasonal-countdown-head{grid-column:1/-1}.seasonal-countdown-hero .seasonal-countdown-cell{background:rgba(255,255,255,.025);border-color:rgba(219,185,100,.13)}
html[data-theme="newyear"] .seasonal-countdown-hero .seasonal-countdown-cell strong{color:#f2d589;text-shadow:0 0 24px rgba(226,189,93,.12)}

/* Confetti is success-only / midnight-only. */
.seasonal-confetti-burst{position:fixed;inset:0;z-index:85;pointer-events:none;overflow:hidden}.seasonal-confetti-burst i{position:absolute;top:-20px;width:6px;height:12px;border-radius:2px;background:#e1bc62;animation:seasonConfettiFall linear forwards}.seasonal-confetti-burst i:nth-child(3n+1){background:#d8dce6}.seasonal-confetti-burst i:nth-child(3n+2){background:#bb2e3c}@keyframes seasonConfettiFall{to{transform:translate3d(var(--confetti-x),105vh,0) rotate(var(--confetti-rot));opacity:.1}}

/* Login gets the same atmosphere without changing Discord OAuth UX. */
html[data-theme="halloween"] .seasonal-login-visual,
html[data-theme="christmas"] .seasonal-login-visual,
html[data-theme="newyear"] .seasonal-login-visual{position:relative;overflow:hidden;background-position:center;background-size:cover}
html[data-theme="halloween"] .seasonal-login-visual:after,
html[data-theme="christmas"] .seasonal-login-visual:after,
html[data-theme="newyear"] .seasonal-login-visual:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}.seasonal-login-visual .login-copy,.seasonal-login-visual>a{position:relative;z-index:2}
html[data-theme="halloween"] .seasonal-login-visual:after{background:radial-gradient(circle at 78% 22%,rgba(221,79,27,.18),transparent 28%),linear-gradient(90deg,rgba(5,4,4,.30),rgba(7,4,5,.66))}
html[data-theme="christmas"] .seasonal-login-visual:after{background:radial-gradient(circle at 80% 22%,rgba(230,203,137,.11),transparent 26%),linear-gradient(90deg,rgba(3,8,9,.30),rgba(4,13,13,.65))}
html[data-theme="newyear"] .seasonal-login-visual:after{background:radial-gradient(circle at 80% 20%,rgba(223,188,99,.15),transparent 26%),linear-gradient(90deg,rgba(3,5,10,.30),rgba(5,8,17,.66))}
html[data-theme="halloween"] .login-panel,
html[data-theme="christmas"] .login-panel,
html[data-theme="newyear"] .login-panel{border-color:var(--season-line);background:linear-gradient(145deg,var(--season-surface),var(--season-surface-strong));box-shadow:0 28px 90px rgba(0,0,0,.22)}

/* Seasonal empty-state language/finish without fabricating content. */
html[data-theme="halloween"] .empty{border-color:rgba(202,83,42,.16)}
html[data-theme="christmas"] .empty{border-color:rgba(190,218,210,.15)}
html[data-theme="newyear"] .empty{border-color:rgba(218,184,101,.15)}

/* Christmas Eve countdown cleanup (replaces the accidentally escaped V2.4 append). */
html[data-theme="christmas"] .christmas-countdown-section{position:relative;z-index:4;padding:22px 0 0}
html[data-theme="christmas"] .christmas-countdown{position:relative;overflow:hidden;margin:0;padding:17px 18px 18px;border:1px solid rgba(190,224,212,.18);border-radius:18px;background:radial-gradient(circle at 88% -15%,rgba(224,206,151,.13),transparent 31%),radial-gradient(circle at 7% 120%,rgba(36,88,69,.20),transparent 34%),linear-gradient(135deg,rgba(8,18,17,.86),rgba(6,10,12,.80));box-shadow:0 16px 48px rgba(0,0,0,.20),inset 0 1px 0 rgba(235,247,242,.035);backdrop-filter:blur(14px)}

/* Theme Studio additions. Admin/Master stays professional and mostly neutral. */
.seasonal-studio-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;margin-bottom:18px}.seasonal-studio-hero p{max-width:760px;color:var(--muted)}
.seasonal-studio-summary{display:flex;gap:8px;flex-wrap:wrap}.seasonal-studio-summary span{padding:8px 10px;border:1px solid #292a30;border-radius:10px;background:#0d0e11;font-size:9px;font-weight:900;letter-spacing:.1em;color:#9da0a8}.seasonal-studio-summary b{color:#fff}
.seasonal-preview-toolbar{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid #25262b}.seasonal-preview-toolbar button{border:1px solid #2c2d33;border-radius:8px;background:#0d0e11;color:#8e9199;padding:7px 9px;font-size:9px;font-weight:900;cursor:pointer}.seasonal-preview-toolbar button.active{color:#fff;border-color:color-mix(in srgb,var(--season-accent) 45%,#2c2d33);background:color-mix(in srgb,var(--season-accent) 9%,#0d0e11)}
.seasonal-preview[data-device="tablet"]{max-width:760px}.seasonal-preview[data-device="mobile"]{max-width:390px}.seasonal-preview{transition:max-width .25s ease;width:100%}
.seasonal-preview-hero{position:relative;overflow:hidden}.seasonal-preview-hero:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--preview-overlay,.55));pointer-events:none}.seasonal-preview-hero>*{position:relative;z-index:1}.seasonal-preview-hero{filter:brightness(var(--preview-brightness,1))}.seasonal-preview-hero:before{content:"";position:absolute;inset:-6%;backdrop-filter:blur(var(--preview-blur,0px));pointer-events:none}
.seasonal-range-row.two-output{grid-template-columns:1fr auto}
.seasonal-color-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.seasonal-advanced-note{padding:14px;border:1px solid #292a30;border-radius:12px;background:#0d0e11;color:#8d9199;font-size:11px;line-height:1.55}
@media(max-width:760px){.seasonal-studio-hero{grid-template-columns:1fr}.seasonal-color-grid{grid-template-columns:1fr}}

/* Performance / accessibility. */
@media(max-width:760px){
  .seasonal-grain{display:none}.seasonal-web{opacity:.06}.seasonal-branches{opacity:.08;width:190px;height:220px}.seasonal-skyline{height:22%!important}.seasonal-lights{left:4vw;right:4vw}.seasonal-snow-accumulation{height:calc(17px + var(--snow-build-extra))}.seasonal-countdown-hero{max-width:100%}
}
@media(prefers-reduced-motion:reduce){
  .seasonal-chrome *,.seasonal-main-hero:before,.seasonal-confetti-burst i{animation:none!important;transition:none!important}.seasonal-canvas{display:none!important}.seasonal-fog,.seasonal-smoke{transform:none!important}.seasonal-sparkles i{opacity:.18!important}
}

/* V4 hero media/blur wiring: scoped to active seasonal themes only. */
html[data-theme="halloween"] .seasonal-hero-filter,
html[data-theme="christmas"] .seasonal-hero-filter,
html[data-theme="newyear"] .seasonal-hero-filter,
html[data-theme="halloween"] .seasonal-login-filter,
html[data-theme="christmas"] .seasonal-login-filter,
html[data-theme="newyear"] .seasonal-login-filter{position:absolute;inset:0;z-index:1;pointer-events:none;backdrop-filter:blur(var(--season-hero-blur,0px));-webkit-backdrop-filter:blur(var(--season-hero-blur,0px))}
html[data-theme="halloween"] .seasonal-login-filter,
html[data-theme="christmas"] .seasonal-login-filter,
html[data-theme="newyear"] .seasonal-login-filter{z-index:0}
@media(max-width:720px){
  html[data-theme="halloween"] .seasonal-main-hero{background-image:linear-gradient(90deg,rgba(4,3,3,.94) 0%,rgba(7,4,4,.75) 55%,rgba(29,9,7,.34) 100%),radial-gradient(circle at 78% 22%,rgba(221,83,31,.18),transparent 31%),var(--season-mobile-hero)}
  html[data-theme="christmas"] .seasonal-main-hero{background-image:linear-gradient(90deg,rgba(3,6,8,.94) 0%,rgba(4,10,11,.72) 55%,rgba(8,30,25,.31) 100%),radial-gradient(circle at 78% 22%,rgba(238,211,146,.12),transparent 29%),var(--season-mobile-hero)}
  html[data-theme="newyear"] .seasonal-main-hero{background-image:linear-gradient(90deg,rgba(3,4,9,.95) 0%,rgba(5,7,14,.72) 55%,rgba(16,20,41,.31) 100%),radial-gradient(circle at 78% 20%,rgba(229,195,111,.15),transparent 29%),var(--season-mobile-hero)}
  html[data-theme="halloween"] .seasonal-login-visual,
  html[data-theme="christmas"] .seasonal-login-visual,
  html[data-theme="newyear"] .seasonal-login-visual{background-image:var(--season-mobile-hero)!important}
}
.seasonal-halloween[data-fog-intensity="off"] .seasonal-fog{opacity:0!important}
.seasonal-bats.intensity-low i:nth-child(n+4){display:none}
body.season-hero-decor-off .seasonal-skyline{display:none}
.seasonal-preview-hero h2{white-space:pre-line}
.seasonal-preview[data-device="mobile"] .seasonal-preview-hero{background-image:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.62)),var(--preview-mobile-hero)!important;background-size:cover;background-position:center}

/* ==========================================================================\n   V5 · Christmas snow depth + production login composition\n   Scoped so the normal public site outside login keeps the existing UI.\n   ========================================================================== */

/* Organic snow accumulation: three lightweight layers, no flat white border. */
html[data-theme="christmas"] .seasonal-snow-accumulation{
  left:-2.5%;right:-2.5%;bottom:-2px;
  height:calc(17px + var(--snow-build-extra));
  opacity:.98;
  background:linear-gradient(180deg,#ffffff 0%,#f7fafc 42%,#dce6ef 79%,#c7d4e0 100%);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 100' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 49 C44 30 82 56 126 42 C176 25 218 55 270 37 C326 18 363 54 421 39 C474 25 520 58 575 38 C632 18 672 50 724 35 C781 18 824 55 875 40 C920 27 959 49 1000 33 L1000 100 L0 100 Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 100' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 49 C44 30 82 56 126 42 C176 25 218 55 270 37 C326 18 363 54 421 39 C474 25 520 58 575 38 C632 18 672 50 724 35 C781 18 824 55 875 40 C920 27 959 49 1000 33 L1000 100 L0 100 Z'/%3E%3C/svg%3E");
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
  filter:drop-shadow(0 -3px 7px rgba(179,198,216,.14)) drop-shadow(0 5px 9px rgba(14,27,38,.18));
  transition:height 2.8s ease;
}
html[data-theme="christmas"] .seasonal-snow-accumulation:before,
html[data-theme="christmas"] .seasonal-snow-accumulation:after{
  content:"";position:absolute;pointer-events:none;left:0;right:0;
}
html[data-theme="christmas"] .seasonal-snow-accumulation:before{
  bottom:-4px;height:78%;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(239,245,249,.92) 50%,rgba(207,220,232,.88));
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 100' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 66 C65 52 105 72 171 55 C228 41 280 70 340 56 C405 39 461 69 523 54 C584 39 634 71 696 57 C757 42 816 68 873 53 C924 39 966 62 1000 50 L1000 100 L0 100 Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 100' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 66 C65 52 105 72 171 55 C228 41 280 70 340 56 C405 39 461 69 523 54 C584 39 634 71 696 57 C757 42 816 68 873 53 C924 39 966 62 1000 50 L1000 100 L0 100 Z'/%3E%3C/svg%3E");
  -webkit-mask-size:100% 100%;mask-size:100% 100%;opacity:.8;
}
html[data-theme="christmas"] .seasonal-snow-accumulation:after{
  top:20%;height:18%;opacity:.56;
  background:radial-gradient(ellipse at 7% 50%,#fff 0 36%,transparent 38%),radial-gradient(ellipse at 23% 55%,#f7fafc 0 30%,transparent 33%),radial-gradient(ellipse at 41% 45%,#fff 0 34%,transparent 36%),radial-gradient(ellipse at 61% 58%,#eef4f8 0 31%,transparent 34%),radial-gradient(ellipse at 79% 44%,#fff 0 32%,transparent 35%),radial-gradient(ellipse at 95% 57%,#f5f9fb 0 35%,transparent 38%);
  filter:drop-shadow(0 2px 2px rgba(116,139,158,.22));
}
.seasonal-chrome[data-snow-build="low"] .seasonal-snow-accumulation{max-height:29px}
.seasonal-chrome[data-snow-build="medium"] .seasonal-snow-accumulation{max-height:39px}
.seasonal-chrome[data-snow-build="high"] .seasonal-snow-accumulation{max-height:45px}

/* Hero and footer drifts use the same organic language without affecting layout. */
html[data-theme="christmas"] body.season-snow-build-on .seasonal-main-hero:before{
  content:"";position:absolute;left:-2%;right:-2%;bottom:-8px;height:34px;z-index:3;pointer-events:none;
  background:linear-gradient(180deg,#fff 0%,#f6fafc 38%,#dce6ef 83%,#c5d2df 100%);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 100' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 61 C55 38 99 65 151 49 C204 34 250 65 306 46 C360 28 413 62 467 48 C523 33 572 66 630 45 C685 28 737 59 791 47 C842 36 901 62 951 45 C973 38 988 39 1000 35 L1000 100 L0 100 Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 100' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 61 C55 38 99 65 151 49 C204 34 250 65 306 46 C360 28 413 62 467 48 C523 33 572 66 630 45 C685 28 737 59 791 47 C842 36 901 62 951 45 C973 38 988 39 1000 35 L1000 100 L0 100 Z'/%3E%3C/svg%3E");
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
  filter:drop-shadow(0 -2px 4px rgba(255,255,255,.10)) drop-shadow(0 4px 6px rgba(32,52,66,.23));
}
html[data-theme="christmas"] body.season-snow-build-on .site-footer:before{
  content:"";position:absolute;left:-2%;right:-2%;top:-30px;height:48px;z-index:2;pointer-events:none;
  background:linear-gradient(180deg,#fff 0%,#f7fafc 38%,#dce6ef 78%,#b8c8d8 100%);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 100' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 57 C38 28 80 64 125 43 C173 21 218 64 270 46 C322 28 365 59 416 42 C467 24 512 62 565 45 C621 26 664 62 716 43 C765 25 809 59 860 45 C905 32 950 54 1000 35 L1000 100 L0 100 Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 100' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 57 C38 28 80 64 125 43 C173 21 218 64 270 46 C322 28 365 59 416 42 C467 24 512 62 565 45 C621 26 664 62 716 43 C765 25 809 59 860 45 C905 32 950 54 1000 35 L1000 100 L0 100 Z'/%3E%3C/svg%3E");
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
  filter:drop-shadow(0 -2px 4px rgba(255,255,255,.10)) drop-shadow(0 5px 7px rgba(23,42,56,.28));
}
html[data-theme="christmas"] body.season-snow-build-on .site-footer:after{
  content:"";position:absolute;left:2%;right:2%;top:-17px;height:14px;z-index:3;pointer-events:none;opacity:.74;
  background:radial-gradient(ellipse at 8% 60%,#fff 0 36%,transparent 38%),radial-gradient(ellipse at 28% 40%,#f8fbfc 0 31%,transparent 34%),radial-gradient(ellipse at 50% 62%,#fff 0 34%,transparent 37%),radial-gradient(ellipse at 72% 44%,#eef4f8 0 31%,transparent 34%),radial-gradient(ellipse at 93% 58%,#fff 0 35%,transparent 38%);
}

/* Better Christmas light rhythm: slow breathing, never strobing. */
html[data-theme="christmas"] .seasonal-lights i{animation-duration:5.8s;animation-timing-function:ease-in-out;filter:drop-shadow(0 0 4px currentColor)}
html[data-theme="christmas"] .seasonal-lights i:nth-child(4n+1){color:#fff2c9;background:#fff2c9}
html[data-theme="christmas"] .seasonal-lights i:nth-child(4n+2){color:#d65a63;background:#d65a63}
html[data-theme="christmas"] .seasonal-lights i:nth-child(4n+3){color:#e0bd68;background:#e0bd68}
html[data-theme="christmas"] .seasonal-lights i:nth-child(4n){color:#5e9a76;background:#5e9a76}

/* Canvas stays ambient. Even boosted fireworks are behind interactive content. */
html[data-theme="newyear"] .seasonal-canvas{z-index:1;filter:saturate(.96) contrast(1.02)}
html[data-theme="newyear"] body.seasonal-midnight-live .seasonal-canvas.midnight-boost{opacity:1}
html[data-theme="newyear"] body.seasonal-midnight-live:before{filter:brightness(1.06)}

/* Login V5: structural Grid rework, no random absolute offsets. */
body[data-page="login"].pr-login-body{margin:0;min-height:100svh;overflow-x:hidden;background:#050507;color:#fff}
.pr-login-page{position:relative;isolation:isolate;min-height:100svh;display:flex;align-items:center;padding:clamp(68px,8vh,96px) clamp(24px,4.5vw,72px);background:radial-gradient(circle at 14% 34%,rgba(162,25,39,.12),transparent 34%),linear-gradient(120deg,rgba(3,3,4,.30),rgba(3,3,4,.84)),var(--pr-login-hero);background-size:cover;background-position:center;overflow:hidden}
.pr-login-page:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(3,3,4,.42) 0%,rgba(3,3,4,.20) 44%,rgba(3,3,4,.70) 72%,rgba(3,3,4,.90) 100%),linear-gradient(180deg,rgba(2,2,3,.13),rgba(2,2,3,.62));}
.pr-login-back{position:absolute;z-index:8;top:clamp(20px,3vw,34px);left:clamp(22px,4vw,64px);display:inline-flex;align-items:center;min-height:42px;padding:0 13px;border:1px solid rgba(255,255,255,.11);border-radius:10px;background:rgba(8,8,10,.48);backdrop-filter:blur(14px);color:#d9d9dd;text-decoration:none;font-size:10px;font-weight:900;letter-spacing:.09em;transition:.2s ease}
.pr-login-back:hover{border-color:rgba(227,54,70,.28);color:#fff;background:rgba(14,10,12,.62)}
.pr-login-stage{width:min(100%,1540px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(390px,.8fr);gap:clamp(50px,7vw,120px);align-items:center;min-width:0}
.pr-login-hero{position:relative;min-width:0;display:flex;align-items:center;min-height:420px;background-image:var(--pr-login-hero);background-size:cover;background-position:center;border-radius:26px;overflow:hidden;border:1px solid rgba(255,255,255,.055);box-shadow:0 34px 100px rgba(0,0,0,.22)}
.pr-login-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,3,4,.93) 0%,rgba(4,4,5,.67) 52%,rgba(4,4,5,.25) 100%),radial-gradient(circle at 78% 24%,rgba(189,35,48,.17),transparent 32%);pointer-events:none}
.pr-login-hero-copy{position:relative;z-index:4;width:min(100%,760px);padding:clamp(42px,5vw,74px)}
.pr-login-hero-copy .eyebrow{display:block;margin-bottom:18px}
.pr-login-hero-copy h1{margin:0;max-width:760px;font-size:clamp(48px,5vw,84px);line-height:.96;letter-spacing:-.045em;font-weight:950;text-wrap:balance;text-shadow:0 16px 45px rgba(0,0,0,.34)}
.pr-login-hero-copy p{max-width:620px;margin:24px 0 0;color:rgba(234,234,239,.72);font-size:clamp(15px,1.35vw,18px);line-height:1.72}
.pr-login-card-column{min-width:0;display:flex;justify-content:center;align-items:center}
.pr-login-card{width:min(100%,470px);padding:clamp(30px,3vw,40px);border:1px solid rgba(255,255,255,.105);border-radius:22px;background:linear-gradient(145deg,rgba(15,15,18,.92),rgba(7,7,9,.94));box-shadow:0 30px 100px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.025);backdrop-filter:blur(22px)}
.pr-login-logo{height:54px;display:flex;align-items:center;margin-bottom:27px}.pr-login-logo .brand-logo{max-height:52px;max-width:170px;width:auto}.pr-login-logo .brand-symbol{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:var(--red);font-weight:950;font-size:23px}
.pr-login-card .eyebrow{display:block;margin-bottom:12px;color:#c8c8ce}
.pr-login-card h2{margin:0;font-size:clamp(26px,2.1vw,34px);line-height:1.05;letter-spacing:-.026em}
.pr-login-card-copy{margin:15px 0 25px;color:#9c9da5;font-size:14px;line-height:1.65}
.pr-login-discord{width:100%;min-height:52px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:900;letter-spacing:.035em;transition:transform .18s ease,filter .18s ease}
.pr-login-discord:hover{transform:translateY(-1px);filter:brightness(1.06)}
.pr-login-divider{display:flex;align-items:center;margin:25px 0 19px}.pr-login-divider span{width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent)}
.pr-login-join{text-align:center}.pr-login-join small{display:block;color:#666a73;font-size:9px;font-weight:900;letter-spacing:.13em}.pr-login-join a,.pr-login-join>span{display:inline-block;margin-top:8px;color:#f2f2f4;text-decoration:none;font-size:11px;font-weight:900;letter-spacing:.06em}.pr-login-join a:hover{color:#fff}
.pr-login-trust{margin:22px 0 0;text-align:center;color:#555962;font-size:9px;line-height:1.55}.pr-login-error{margin:0 0 18px}

/* Seasonal login moods use the same structure, only atmosphere changes. */
html[data-theme="halloween"] .pr-login-page{background:radial-gradient(circle at 16% 38%,rgba(116,37,20,.22),transparent 34%),radial-gradient(circle at 76% 20%,rgba(99,45,103,.13),transparent 28%),linear-gradient(120deg,rgba(4,3,3,.44),rgba(7,3,4,.86)),var(--pr-login-hero)}
html[data-theme="halloween"] .pr-login-hero:before{background:linear-gradient(90deg,rgba(4,3,3,.94),rgba(9,4,5,.68),rgba(44,14,7,.25)),radial-gradient(circle at 78% 24%,rgba(218,77,27,.22),transparent 31%)}
html[data-theme="halloween"] .pr-login-card{border-color:rgba(209,84,40,.18);background:linear-gradient(145deg,rgba(20,10,10,.92),rgba(8,6,9,.95));box-shadow:0 30px 100px rgba(0,0,0,.42),0 0 60px rgba(110,36,17,.08)}
html[data-theme="christmas"] .pr-login-page{background:radial-gradient(circle at 16% 38%,rgba(39,94,76,.21),transparent 34%),radial-gradient(circle at 78% 18%,rgba(223,193,119,.11),transparent 26%),linear-gradient(120deg,rgba(3,6,8,.38),rgba(3,10,10,.86)),var(--pr-login-hero)}
html[data-theme="christmas"] .pr-login-hero:before{background:linear-gradient(90deg,rgba(3,7,9,.94),rgba(4,12,12,.67),rgba(24,55,45,.24)),radial-gradient(circle at 80% 22%,rgba(232,205,139,.14),transparent 30%)}
html[data-theme="christmas"] .pr-login-card{border-color:rgba(190,221,211,.17);background:linear-gradient(145deg,rgba(8,18,17,.93),rgba(5,9,12,.95));box-shadow:0 30px 100px rgba(0,0,0,.40),0 0 62px rgba(50,102,82,.07)}
html[data-theme="newyear"] .pr-login-page{background:radial-gradient(circle at 16% 38%,rgba(63,75,127,.16),transparent 34%),radial-gradient(circle at 78% 17%,rgba(224,188,91,.15),transparent 25%),linear-gradient(120deg,rgba(3,4,8,.40),rgba(4,6,13,.87)),var(--pr-login-hero)}
html[data-theme="newyear"] .pr-login-hero:before{background:linear-gradient(90deg,rgba(3,4,9,.95),rgba(5,7,15,.67),rgba(31,33,57,.24)),radial-gradient(circle at 79% 22%,rgba(224,189,96,.19),transparent 29%)}
html[data-theme="newyear"] .pr-login-card{border-color:rgba(220,187,102,.17);background:linear-gradient(145deg,rgba(11,13,23,.94),rgba(5,6,11,.96));box-shadow:0 30px 100px rgba(0,0,0,.42),0 0 60px rgba(186,143,46,.06)}
html[data-theme="halloween"] .pr-login-hero,html[data-theme="christmas"] .pr-login-hero,html[data-theme="newyear"] .pr-login-hero{background-image:var(--pr-login-hero)}

@media(max-width:980px){
  .pr-login-page{align-items:flex-start;padding:84px clamp(22px,5vw,46px) 42px;min-height:100svh}
  .pr-login-stage{grid-template-columns:1fr;gap:28px;max-width:760px}
  .pr-login-hero{min-height:310px}.pr-login-hero-copy{padding:clamp(32px,7vw,54px)}.pr-login-hero-copy h1{font-size:clamp(42px,9vw,66px)}
  .pr-login-card{width:100%;max-width:620px}.pr-login-card-column{justify-content:stretch}
}
@media(max-width:560px){
  .pr-login-page{padding:76px 20px 28px;background-image:linear-gradient(180deg,rgba(3,3,4,.24),rgba(3,3,4,.88)),var(--pr-login-mobile-hero);background-size:cover;background-position:center}
  .pr-login-back{left:20px;top:18px}.pr-login-stage{gap:18px}.pr-login-hero{min-height:245px;border-radius:18px;background-image:var(--pr-login-mobile-hero)}
  .pr-login-hero-copy{padding:30px 24px}.pr-login-hero-copy h1{font-size:clamp(37px,12vw,52px)}.pr-login-hero-copy p{font-size:14px;margin-top:17px;line-height:1.6}
  .pr-login-card{padding:26px 22px;border-radius:18px}.pr-login-logo{margin-bottom:22px}.pr-login-trust{margin-top:18px}
}
@media(max-height:760px) and (min-width:981px){
  .pr-login-page{align-items:flex-start;padding-top:70px;padding-bottom:44px}.pr-login-stage{align-items:start}.pr-login-hero{min-height:380px}.pr-login-hero-copy h1{font-size:clamp(48px,4.6vw,70px)}
}
@media(prefers-reduced-motion:reduce){
  .pr-login-back,.pr-login-discord{transition:none}.pr-login-discord:hover{transform:none}
  html[data-theme="christmas"] .seasonal-snow-accumulation{transition:none}
}

/* ========================================================================== 
   V5.1 · GLOBAL EVOLUTION RP GLASS / TRANSPARENCY SYSTEM
   Public UI only. Management panels stay intentionally more opaque.
   ========================================================================== */
html[data-theme]{
  --pr-glass-section:rgba(8,9,12,.58);
  --pr-glass-section-alt:rgba(10,11,14,.66);
  --pr-glass-card:rgba(14,15,19,.74);
  --pr-glass-card-strong:rgba(16,17,21,.82);
  --pr-glass-elevated:rgba(19,20,25,.91);
  --pr-glass-border:rgba(255,255,255,.075);
  --pr-glass-highlight:rgba(255,255,255,.025);
  --pr-glass-blur:14px;
  --pr-ambient-a:rgba(210,28,45,.10);
  --pr-ambient-b:rgba(92,12,22,.07);
}
html[data-theme="halloween"]{
  --pr-glass-section:rgba(9,7,10,.55);
  --pr-glass-section-alt:rgba(12,8,11,.64);
  --pr-glass-card:rgba(16,11,15,.73);
  --pr-glass-card-strong:rgba(18,12,17,.83);
  --pr-glass-border:rgba(219,105,58,.10);
  --pr-ambient-a:rgba(190,70,29,.13);
  --pr-ambient-b:rgba(103,48,112,.10);
}
html[data-theme="christmas"]{
  --pr-glass-section:rgba(7,13,15,.54);
  --pr-glass-section-alt:rgba(8,16,17,.64);
  --pr-glass-card:rgba(10,19,20,.74);
  --pr-glass-card-strong:rgba(11,21,22,.84);
  --pr-glass-border:rgba(204,230,222,.105);
  --pr-ambient-a:rgba(54,112,91,.12);
  --pr-ambient-b:rgba(219,187,105,.075);
}
html[data-theme="newyear"]{
  --pr-glass-section:rgba(7,9,16,.52);
  --pr-glass-section-alt:rgba(9,11,20,.62);
  --pr-glass-card:rgba(11,13,23,.73);
  --pr-glass-card-strong:rgba(13,15,26,.83);
  --pr-glass-border:rgba(226,194,111,.11);
  --pr-ambient-a:rgba(224,188,91,.105);
  --pr-ambient-b:rgba(72,86,142,.11);
}

/* Full-page atmosphere is allowed to exist behind the max-width content. */
html[data-theme="normal"] body:not(.control-body){
  background:
    radial-gradient(circle at 12% 9%,rgba(199,25,42,.105),transparent 31%),
    radial-gradient(circle at 86% 58%,rgba(112,14,27,.06),transparent 34%),
    linear-gradient(180deg,#060607 0%,#08080a 48%,#050506 100%);
  background-attachment:fixed;
}
html[data-theme] body:not(.control-body)>main{background:transparent}

/* Navbar is real dark glass. Dropdowns remain deliberately more opaque. */
html[data-theme] body:not(.control-body) .site-nav{
  background:linear-gradient(180deg,rgba(7,8,10,.70),rgba(7,8,10,.58));
  border-bottom-color:var(--pr-glass-border);
  -webkit-backdrop-filter:blur(18px) saturate(1.08);
  backdrop-filter:blur(18px) saturate(1.08);
  box-shadow:0 10px 35px rgba(0,0,0,.12),inset 0 -1px 0 var(--pr-glass-highlight);
}
html[data-theme="normal"] body:not(.control-body) .site-nav{background:linear-gradient(180deg,rgba(11,8,10,.72),rgba(7,7,9,.60))}
html[data-theme="halloween"] body:not(.control-body) .site-nav{background:linear-gradient(180deg,rgba(13,8,10,.68),rgba(8,7,10,.56))}
html[data-theme="christmas"] body:not(.control-body) .site-nav{background:linear-gradient(180deg,rgba(7,15,16,.68),rgba(6,10,13,.56))}
html[data-theme="newyear"] body:not(.control-body) .site-nav{background:linear-gradient(180deg,rgba(9,11,20,.66),rgba(6,8,15,.54))}
html[data-theme] body:not(.control-body) :is(.nav-more-menu,.profile-menu-menu,.notification-popover,.mobile-nav){
  background:var(--pr-glass-elevated);
  border-color:var(--pr-glass-border);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
}

/* Large public sections no longer become solid black sheets. */
html[data-theme] body:not(.control-body) :where(
  .section,.home-section,.page-section,.server-section,.events-section,.changelog-section,
  .roadmap-section,.community-section,.guide-section,.support-section,.application-section,
  .profile-section,.character-section,.characters-section,.allowlist-section
){
  background:linear-gradient(180deg,var(--pr-glass-section),color-mix(in srgb,var(--pr-glass-section) 88%,transparent));
  border-color:var(--pr-glass-border);
}
html[data-theme] body:not(.control-body) :where(
  .section:nth-of-type(even),.home-section:nth-of-type(even),.page-section:nth-of-type(even)
){background:linear-gradient(180deg,var(--pr-glass-section-alt),color-mix(in srgb,var(--pr-glass-section-alt) 87%,transparent))}

/* Common Evolution RP cards keep structure while letting ambience breathe through. */
html[data-theme] body:not(.control-body) :where(
  .card,.home-card,.feature-card,.story-card,.home-event-row,.home-featured-update,
  .home-change-card,.home-news-card,.home-roadmap-card,.status-strip,.cta-panel,.empty,
  .event-card,.changelog-card,.guide-card,.support-card,.ticket-card,.roadmap-card,
  .community-card,.suggestion-card,.poll-card,.character-card,.profile-character-card,
  .character-stat,.economy-card,.vehicle-card,.property-card,.job-card
){
  background-color:var(--pr-glass-card);
  border-color:var(--pr-glass-border);
  box-shadow:0 18px 56px rgba(0,0,0,.15),inset 0 1px 0 var(--pr-glass-highlight);
  -webkit-backdrop-filter:blur(var(--pr-glass-blur));
  backdrop-filter:blur(var(--pr-glass-blur));
}

/* Status / homepage dashboard surfaces should read as glass, not black rows. */
html[data-theme] body:not(.control-body) :where(.status-strip,.server-status,.server-status-card,.home-server-status,.season-hub-home-cta){
  background:linear-gradient(135deg,color-mix(in srgb,var(--pr-glass-card) 94%,var(--pr-ambient-a)),var(--pr-glass-card));
  border-color:var(--pr-glass-border);
  -webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);
}

/* Forms and text-heavy functional areas stay more opaque than ordinary cards. */
html[data-theme] body:not(.control-body) :where(
  .application-form,.ticket-chat,.ticket-thread,.support-chat,.guide-article,.guide-content,
  .modal,.dialog,.table-wrap,.form-card,.login-panel,.pr-login-card
){
  background-color:var(--pr-glass-card-strong);
  border-color:var(--pr-glass-border);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
}
html[data-theme] body:not(.control-body) :where(.modal,.dialog,.nav-more-menu,.profile-menu-menu,.notification-popover){background-color:var(--pr-glass-elevated)}

/* Footer remains the darkest surface but still carries the active theme. */
html[data-theme] body:not(.control-body) .site-footer{
  background:
    radial-gradient(circle at 18% 0,var(--pr-ambient-a),transparent 29%),
    radial-gradient(circle at 82% 8%,var(--pr-ambient-b),transparent 31%),
    linear-gradient(180deg,rgba(7,8,10,.76),rgba(4,4,6,.90));
  border-top-color:var(--pr-glass-border);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}

/* Theme atmosphere remains behind interaction/content layers. */
html[data-theme] body:not(.control-body) .seasonal-chrome{z-index:1}
html[data-theme] body:not(.control-body)>:not(.seasonal-chrome):not(.toast-stack){position:relative;z-index:2}
html[data-theme] body:not(.control-body) .site-nav{z-index:50}
html[data-theme] body:not(.control-body) :is(.nav-more-menu,.profile-menu-menu,.notification-popover){z-index:100}
html[data-theme] body:not(.control-body) :is(.modal,.dialog){z-index:500}
html[data-theme] body:not(.control-body) .toast-stack{z-index:700}

/* Normal has no seasonal ornaments, only the Evolution RP ambient background. */
html[data-theme="normal"] .seasonal-chrome{display:none}

@media(max-width:760px){
  html[data-theme]{--pr-glass-blur:8px}
  html[data-theme] body:not(.control-body) .site-nav{-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px)}
  html[data-theme] body:not(.control-body) :where(.card,.home-card,.feature-card,.story-card,.event-card,.changelog-card,.guide-card,.support-card,.ticket-card){-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
}
@media(prefers-reduced-motion:reduce){
  html[data-theme="normal"] body:not(.control-body){background-attachment:scroll}
}

/* ========================================================================== 
   V5.3 · LARGE GLASS PANEL HIERARCHY
   Large background surfaces sit between page ambience and content cards.
   ========================================================================== */
html[data-theme]{
  --pr-glass-panel:rgba(8,9,12,.68);
  --pr-glass-panel-border:rgba(255,255,255,.075);
  --pr-glass-panel-highlight:rgba(255,255,255,.035);
  --pr-glass-panel-blur:12px;
}
html[data-theme="normal"]{
  --pr-glass-panel:rgba(10,9,11,.69);
  --pr-glass-panel-border:rgba(229,73,87,.075);
}
html[data-theme="halloween"]{
  --pr-glass-panel:rgba(10,7,11,.67);
  --pr-glass-panel-border:rgba(218,105,58,.09);
}
html[data-theme="christmas"]{
  --pr-glass-panel:rgba(8,14,13,.66);
  --pr-glass-panel-border:rgba(215,233,227,.085);
  --pr-glass-panel-highlight:rgba(239,247,244,.04);
}
html[data-theme="newyear"]{
  --pr-glass-panel:rgba(7,9,16,.65);
  --pr-glass-panel-border:rgba(226,194,111,.09);
  --pr-glass-panel-highlight:rgba(247,226,171,.035);
}

/* Large public section surfaces get the lightest glass treatment. Cards/forms remain stronger. */
html[data-theme] body:not(.control-body) :where(
  .seasonal-home,.seasonal-home-section,.seasonal-featured-section,.seasonal-module-shell
){
  background-color:var(--pr-glass-panel);
  border-color:var(--pr-glass-panel-border);
  box-shadow:0 20px 64px rgba(0,0,0,.12),inset 0 1px 0 var(--pr-glass-panel-highlight);
  -webkit-backdrop-filter:blur(var(--pr-glass-panel-blur));
  backdrop-filter:blur(var(--pr-glass-panel-blur));
}

@media(max-width:760px){
  html[data-theme]{--pr-glass-panel-blur:8px}
}

/* ========================================================================== 
   V5.4 · NAVBAR / "MERE" DROPDOWN FIX
   Shared public navigation fix for NORMAL / HALLOWEEN / CHRISTMAS / NEW YEAR.
   ========================================================================== */
html[data-theme] body:not(.control-body) .site-nav,
html[data-theme] body:not(.control-body) .site-nav .nav-shell,
html[data-theme] body:not(.control-body) .site-nav .desktop-nav{
  overflow:visible;
}

html[data-theme] body:not(.control-body) .site-nav .nav-shell{
  position:relative;
  z-index:2;
}

html[data-theme] body:not(.control-body) .desktop-nav .nav-more{
  position:relative;
  z-index:30;
  display:flex;
  align-items:stretch;
  min-width:0;
}

html[data-theme] body:not(.control-body) .desktop-nav .nav-more>summary{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:5px;
  min-height:100%;
  cursor:pointer;
  list-style:none;
  user-select:none;
  -webkit-user-select:none;
  outline:none;
}
html[data-theme] body:not(.control-body) .desktop-nav .nav-more>summary::-webkit-details-marker{display:none}
html[data-theme] body:not(.control-body) .desktop-nav .nav-more>summary::marker{content:""}
html[data-theme] body:not(.control-body) .desktop-nav .nav-more>summary>span{
  display:inline-block;
  font-size:.82em;
  line-height:1;
  opacity:.72;
  transform:translateY(-1px);
  transition:transform .16s ease,opacity .16s ease;
}
html[data-theme] body:not(.control-body) .desktop-nav .nav-more[open]>summary>span{
  transform:translateY(0) rotate(180deg);
  opacity:1;
}

/* A closed details element must never leave a glass/blur ghost panel behind. */
html[data-theme] body:not(.control-body) .desktop-nav .nav-more:not([open])>.nav-more-menu{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

html[data-theme] body:not(.control-body) .desktop-nav .nav-more>.nav-more-menu{
  position:absolute!important;
  top:calc(100% + 10px)!important;
  right:-10px!important;
  left:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:max-content!important;
  min-width:220px!important;
  max-width:min(310px,calc(100vw - 32px))!important;
  height:auto!important;
  min-height:0!important;
  max-height:min(70vh,520px)!important;
  margin:0!important;
  padding:8px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  border:1px solid var(--pr-glass-border)!important;
  border-radius:14px!important;
  background:rgba(18,19,23,.94)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.035)!important;
  -webkit-backdrop-filter:blur(16px) saturate(1.08)!important;
  backdrop-filter:blur(16px) saturate(1.08)!important;
  isolation:isolate;
  z-index:140!important;
}
html[data-theme] body:not(.control-body) .desktop-nav .nav-more[open]>.nav-more-menu{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  gap:3px;
}

html[data-theme] body:not(.control-body) .desktop-nav .nav-more-menu>a{
  position:relative;
  z-index:1;
  display:flex!important;
  align-items:center;
  width:100%;
  min-height:38px;
  margin:0!important;
  padding:9px 11px!important;
  border:1px solid transparent;
  border-radius:9px;
  background:transparent!important;
  color:#c7c9cf!important;
  font-size:11px;
  font-weight:850;
  line-height:1.25;
  letter-spacing:.035em;
  text-decoration:none;
  white-space:nowrap;
  box-sizing:border-box;
  transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease;
}
html[data-theme] body:not(.control-body) .desktop-nav .nav-more-menu>a:hover,
html[data-theme] body:not(.control-body) .desktop-nav .nav-more-menu>a:focus-visible{
  color:#fff!important;
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(255,255,255,.055);
  transform:translateX(1px);
  outline:none;
}
html[data-theme] body:not(.control-body) .desktop-nav .nav-more-menu>a.active{
  color:#fff!important;
  border-color:color-mix(in srgb,var(--season-accent,var(--red)) 24%,transparent);
  background:color-mix(in srgb,var(--season-accent,var(--red)) 11%,rgba(255,255,255,.025))!important;
}

/* Theme-aware tint stays subtle; dropdown remains readable and more opaque than page glass. */
html[data-theme="normal"] body:not(.control-body) .desktop-nav .nav-more>.nav-more-menu{
  background:linear-gradient(145deg,rgba(20,18,21,.95),rgba(13,14,17,.94))!important;
  border-color:rgba(227,27,45,.11)!important;
}
html[data-theme="halloween"] body:not(.control-body) .desktop-nav .nav-more>.nav-more-menu{
  background:
    radial-gradient(circle at 92% 0,rgba(197,75,31,.08),transparent 36%),
    radial-gradient(circle at 4% 100%,rgba(96,48,109,.07),transparent 38%),
    linear-gradient(145deg,rgba(20,14,17,.95),rgba(12,11,14,.94))!important;
  border-color:rgba(219,105,58,.14)!important;
}
html[data-theme="christmas"] body:not(.control-body) .desktop-nav .nav-more>.nav-more-menu{
  background:
    radial-gradient(circle at 92% 0,rgba(209,179,101,.07),transparent 34%),
    linear-gradient(145deg,rgba(13,24,24,.95),rgba(10,15,18,.94))!important;
  border-color:rgba(204,230,222,.14)!important;
}
html[data-theme="newyear"] body:not(.control-body) .desktop-nav .nav-more>.nav-more-menu{
  background:
    radial-gradient(circle at 92% 0,rgba(226,194,111,.08),transparent 34%),
    linear-gradient(145deg,rgba(16,18,29,.95),rgba(10,12,20,.94))!important;
  border-color:rgba(226,194,111,.14)!important;
}

/* Open trigger gets a compact state only; never a second floating panel. */
html[data-theme] body:not(.control-body) .desktop-nav .nav-more[open]>summary{
  color:#fff;
  background:rgba(255,255,255,.035);
  border-radius:8px;
}
html[data-theme="halloween"] body:not(.control-body) .desktop-nav .nav-more[open]>summary{
  background:rgba(219,105,58,.055);
}
html[data-theme="christmas"] body:not(.control-body) .desktop-nav .nav-more[open]>summary{
  background:rgba(204,230,222,.045);
}
html[data-theme="newyear"] body:not(.control-body) .desktop-nav .nav-more[open]>summary{
  background:rgba(226,194,111,.05);
}

/* Keep dropdown above seasonal page strips/headers without changing document flow. */
html[data-theme] body:not(.control-body) .site-nav{z-index:220!important}
html[data-theme] body:not(.control-body) .desktop-nav .nav-more>.nav-more-menu{z-index:240!important}

@media(max-width:980px){
  html[data-theme] body:not(.control-body) .desktop-nav .nav-more>.nav-more-menu{max-width:min(280px,calc(100vw - 24px))!important}
}

@media(prefers-reduced-motion:reduce){
  html[data-theme] body:not(.control-body) .desktop-nav .nav-more>summary>span,
  html[data-theme] body:not(.control-body) .desktop-nav .nav-more-menu>a{transition:none}
}

/* =========================================================
   V5.6 — PROFILE DROPDOWN + PROGRESSIVE SEASONAL EXPERIENCE
   Shared public UI. Normal stays Evolution RP; seasonal themes add
   only restrained tinting and atmosphere.
   ========================================================= */

/* Profile menu: closed means genuinely closed. This overrides legacy
   flex/display rules that could leak the links into the navbar. */
details.profile-menu{position:relative;z-index:140;min-width:0}
details.profile-menu>summary{list-style:none;cursor:pointer;user-select:none}
details.profile-menu>summary::-webkit-details-marker{display:none}
details.profile-menu:not([open])>.profile-menu-menu{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
details.profile-menu[open]>.profile-menu-menu{
  display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;
}
.profile-menu>.profile-chip{display:flex;align-items:center;gap:9px;max-width:230px;min-height:42px;padding:5px 10px;border:1px solid transparent;border-radius:13px;background:rgba(10,10,12,.28);transition:background .18s ease,border-color .18s ease}
.profile-menu>.profile-chip:hover,.profile-menu[open]>.profile-chip{background:rgba(16,16,19,.72);border-color:rgba(255,255,255,.08)}
.profile-menu>.profile-chip img{width:31px;height:31px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.profile-menu>.profile-chip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-menu>.profile-chip b{font:800 12px/1.1 inherit;letter-spacing:.025em;color:#f5f5f7}
.profile-chip-arrow{font-style:normal;font-size:13px;opacity:.66;transition:transform .18s ease;margin-left:1px}
.profile-menu[open] .profile-chip-arrow{transform:rotate(180deg)}
.profile-menu-menu{
  position:absolute!important;top:calc(100% + 10px)!important;right:0!important;left:auto!important;
  width:min(310px,calc(100vw - 28px));min-width:270px;height:auto!important;min-height:0!important;
  padding:10px!important;margin:0!important;border-radius:17px!important;
  border:1px solid rgba(255,255,255,.085)!important;
  background:linear-gradient(145deg,rgba(19,19,23,.94),rgba(8,8,11,.91))!important;
  -webkit-backdrop-filter:blur(15px) saturate(1.08);backdrop-filter:blur(15px) saturate(1.08);
  box-shadow:0 22px 55px rgba(0,0,0,.43),inset 0 1px 0 rgba(255,255,255,.045)!important;
  overflow:hidden;z-index:260!important;transform:none!important;
}
.profile-menu-head{display:flex;align-items:center;gap:11px;padding:8px 8px 12px}
.profile-menu-head img{width:42px;height:42px;border-radius:50%;object-fit:cover}
.profile-menu-head div{display:grid;gap:3px;min-width:0}
.profile-menu-head strong{font-size:13px;line-height:1.15;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-menu-head small{font-size:11px;color:rgba(231,232,237,.58);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-menu-links{display:grid;gap:3px;padding-top:7px;border-top:1px solid rgba(255,255,255,.065)}
.profile-menu-menu a{display:flex!important;align-items:center!important;gap:10px!important;width:100%;min-height:39px;padding:8px 9px!important;border-radius:10px!important;color:rgba(245,245,248,.86)!important;text-decoration:none!important;font-size:12px!important;font-weight:700!important;letter-spacing:.015em;background:transparent!important;white-space:normal!important}
.profile-menu-menu a i{display:grid;place-items:center;width:22px;height:22px;flex:0 0 auto;border-radius:7px;background:rgba(255,255,255,.045);font-style:normal;font-size:11px;color:rgba(255,255,255,.68)}
.profile-menu-menu a:hover,.profile-menu-menu a:focus-visible{background:rgba(255,255,255,.065)!important;color:#fff!important;outline:none}
.profile-menu-divider{height:1px;margin:7px 5px;background:rgba(255,255,255,.065)}
.profile-menu-menu .profile-menu-logout{color:#ff8d95!important}
.profile-menu-menu .profile-menu-logout:hover{background:rgba(227,27,45,.11)!important}
html[data-theme="normal"] .profile-menu[open]>.profile-menu-menu{border-color:rgba(227,27,45,.16)!important;box-shadow:0 22px 55px rgba(0,0,0,.43),0 0 26px rgba(227,27,45,.055),inset 0 1px 0 rgba(255,255,255,.045)!important}
html[data-theme="halloween"] .profile-menu[open]>.profile-menu-menu{background:linear-gradient(145deg,rgba(24,14,18,.94),rgba(10,8,15,.92))!important;border-color:rgba(226,105,42,.19)!important;box-shadow:0 22px 55px rgba(0,0,0,.45),0 0 28px rgba(122,49,132,.08),inset 0 1px 0 rgba(237,135,72,.055)!important}
html[data-theme="christmas"] .profile-menu[open]>.profile-menu-menu{background:linear-gradient(145deg,rgba(10,24,24,.94),rgba(12,12,17,.92))!important;border-color:rgba(208,228,218,.14)!important;box-shadow:0 22px 55px rgba(0,0,0,.44),0 0 28px rgba(191,149,73,.06),inset 0 1px 0 rgba(234,247,242,.055)!important}
html[data-theme="newyear"] .profile-menu[open]>.profile-menu-menu{background:linear-gradient(145deg,rgba(10,15,27,.95),rgba(10,9,13,.92))!important;border-color:rgba(219,186,111,.18)!important;box-shadow:0 22px 55px rgba(0,0,0,.46),0 0 30px rgba(219,186,111,.07),inset 0 1px 0 rgba(255,255,255,.05)!important}

/* October/December progression changes atmosphere, not layout. */
body[data-season-theme="halloween"].season-progress-stage-1 .seasonal-fog{opacity:.16}
body[data-season-theme="halloween"].season-progress-stage-2 .seasonal-fog{opacity:.22}
body[data-season-theme="halloween"].season-progress-stage-3 .seasonal-fog{opacity:.28}
body[data-season-theme="halloween"].season-progress-stage-4 .seasonal-fog{opacity:.34}
body[data-season-theme="halloween"].season-progress-stage-5 .seasonal-fog{opacity:.40}
body[data-season-theme="halloween"].season-progress-stage-1 .seasonal-ambient{opacity:.52}
body[data-season-theme="halloween"].season-progress-stage-3 .seasonal-ambient{opacity:.72}
body[data-season-theme="halloween"].season-progress-stage-5 .seasonal-ambient{opacity:.92}
body[data-season-theme="halloween"].season-progress-stage-1 .seasonal-bats i:nth-child(n+3),
body[data-season-theme="halloween"].season-progress-stage-2 .seasonal-bats i:nth-child(n+4),
body[data-season-theme="halloween"].season-progress-stage-3 .seasonal-bats i:nth-child(n+5){display:none}
body[data-season-theme="halloween"].season-progress-stage-4 .seasonal-bats i:nth-child(n+6){display:none}
body[data-season-theme="halloween"].season-progress-final .seasonal-main-hero{box-shadow:inset 0 -70px 120px rgba(143,48,22,.12)}
body[data-season-theme="christmas"].season-progress-stage-1{--season-progress-snow-opacity:.72}
body[data-season-theme="christmas"].season-progress-stage-3{--season-progress-snow-opacity:.86}
body[data-season-theme="christmas"].season-progress-stage-5{--season-progress-snow-opacity:1}
body[data-season-theme="christmas"] .seasonal-canvas{opacity:var(--season-progress-snow-opacity,1)}

/* Homepage – pumpkin teaser */
.season-home-feature{position:relative;padding:14px 0 4px;z-index:20}
.season-home-pumpkin-card,.season-home-stream-card{position:relative;display:grid;align-items:center;gap:22px;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:rgba(11,11,14,.64);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 20px 55px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.035);overflow:hidden;text-decoration:none;color:inherit}
.season-home-pumpkin-card{grid-template-columns:120px 1fr auto;padding:18px 20px;background:radial-gradient(circle at 13% 52%,rgba(220,93,35,.15),transparent 22%),radial-gradient(circle at 82% 20%,rgba(108,45,119,.08),transparent 26%),rgba(12,10,14,.65);border-color:rgba(224,111,51,.13)}
.season-home-pumpkin-card h2,.season-home-stream-card h2{margin:3px 0 4px;font-size:clamp(19px,2.2vw,28px);line-height:1}
.season-home-pumpkin-card p,.season-home-stream-card p{margin:0;color:rgba(232,233,237,.68)}
.season-home-pumpkin-card>div:nth-child(2){min-width:0}
.season-home-pumpkin-card>div:nth-child(2)>strong{display:inline-block;margin-top:10px;color:#e7a16b;font-size:12px;letter-spacing:.08em}
.season-home-pumpkin-card>div:nth-child(2)>small{margin-left:10px;color:rgba(255,255,255,.48);font-size:10px;letter-spacing:.07em}
.season-home-pumpkin-card>b{font-size:11px;letter-spacing:.07em;color:#efb17c;white-space:nowrap}
.season-home-pumpkin-progress{width:min(360px,100%);height:4px;margin-top:9px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}
.season-home-pumpkin-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a63e1f,#dd7938,#e0a167);box-shadow:0 0 13px rgba(224,121,56,.27)}
.season-home-pumpkin-visual{display:grid;place-items:center;height:88px}
.season-home-pumpkin-visual img{max-width:115px;max-height:88px;object-fit:contain;filter:drop-shadow(0 14px 20px rgba(0,0,0,.35))}
.season-home-pumpkin-css{position:relative;width:74px;height:58px;transform:scale(.7);transform-origin:center bottom;transition:transform .2s ease}
.stage-2 .season-home-pumpkin-css{transform:scale(.82)}.stage-3 .season-home-pumpkin-css{transform:scale(.94)}.stage-4 .season-home-pumpkin-css{transform:scale(1.06)}.stage-5 .season-home-pumpkin-css{transform:scale(1.15)}
.season-home-pumpkin-css span{position:absolute;inset:12px 3px 0;border-radius:46% 46% 50% 50%;background:radial-gradient(circle at 38% 28%,#e88a43 0 8%,transparent 9%),linear-gradient(90deg,#9c3b1d,#d86527 24%,#ee8a3d 49%,#c75421 73%,#8d3219);box-shadow:inset 0 -8px 12px rgba(66,14,8,.35),0 8px 18px rgba(0,0,0,.32)}
.season-home-pumpkin-css i{position:absolute;width:9px;height:20px;left:33px;top:0;border-radius:60% 40% 15% 15%;background:#4e5b2d;transform:rotate(7deg);z-index:2}
.stage-5 .season-home-pumpkin-css span{box-shadow:inset 0 -8px 12px rgba(66,14,8,.35),0 0 20px rgba(238,118,40,.22),0 8px 18px rgba(0,0,0,.32)}

/* Homepage – Twitch stream card */
.season-home-stream-card{grid-template-columns:minmax(0,1fr) auto auto;padding:20px 22px;background:rgba(10,10,14,.68)}
.season-home-stream-card.season-halloween{background:radial-gradient(circle at 5% 20%,rgba(210,79,29,.12),transparent 25%),rgba(12,9,14,.68);border-color:rgba(225,103,43,.14)}
.season-home-stream-card.season-christmas{background:radial-gradient(circle at 8% 20%,rgba(42,107,87,.13),transparent 27%),radial-gradient(circle at 92% 30%,rgba(178,127,52,.09),transparent 24%),rgba(8,16,17,.68);border-color:rgba(201,225,215,.12)}
.season-home-stream-card.season-newyear{background:radial-gradient(circle at 9% 20%,rgba(181,143,62,.12),transparent 26%),rgba(8,11,20,.70);border-color:rgba(214,180,102,.14)}
.season-home-stream-status{display:inline-flex;align-items:center;gap:7px;margin-bottom:7px;font-size:10px;font-weight:900;letter-spacing:.09em;color:rgba(255,255,255,.72)}
.season-home-stream-status i,.season-stream-status i{width:7px;height:7px;border-radius:50%;background:#db3a46;box-shadow:0 0 12px rgba(219,58,70,.45)}
.status-live .season-home-stream-status i{animation:seasonLivePulse 1.8s ease-in-out infinite}
.season-home-stream-meta{margin-top:10px;color:rgba(255,255,255,.52);font-size:11px;font-weight:800;letter-spacing:.08em}
.season-home-stream-countdown>small{display:block;margin-bottom:7px;color:rgba(255,255,255,.46);font-size:9px;font-weight:900;letter-spacing:.09em;text-align:center}
.season-home-stream-countdown>div{display:grid;grid-template-columns:repeat(4,48px);gap:5px}
.season-home-stream-countdown span{display:grid;place-items:center;padding:7px 4px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(0,0,0,.22)}
.season-home-stream-countdown strong{font-size:16px;color:#fff}.season-home-stream-countdown em{font-style:normal;font-size:8px;color:rgba(255,255,255,.45)}
@keyframes seasonLivePulse{50%{opacity:.35;box-shadow:0 0 3px rgba(219,58,70,.2)}}

/* Mobile profile becomes a contained bottom sheet; links never become inline. */
@media (max-width:760px){
  .profile-menu>.profile-chip span{display:none}.profile-menu>.profile-chip{padding:5px}.profile-chip-arrow{display:none}
  .profile-menu-menu{position:fixed!important;left:14px!important;right:14px!important;top:auto!important;bottom:14px!important;width:auto!important;min-width:0!important;max-height:min(74vh,560px);overflow:auto!important;border-radius:20px!important}
  .season-home-pumpkin-card{grid-template-columns:78px minmax(0,1fr);padding:15px}.season-home-pumpkin-card>b{grid-column:1/-1}.season-home-pumpkin-visual{height:68px}.season-home-pumpkin-visual img{max-width:78px;max-height:68px}
  .season-home-stream-card{grid-template-columns:1fr;padding:17px}.season-home-stream-countdown>div{grid-template-columns:repeat(4,minmax(42px,1fr))}.season-home-stream-card>.button{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.status-live .season-home-stream-status i{animation:none!important}}

/* ========================================================================== 
   V5.16 — GLOBAL THEME RESOLUTION + MANAGEMENT COVERAGE + STATUS VISIBILITY
   The active theme is now supplied server-side to every shared shell.
   Management remains restrained: colour/tint follows the theme while heavy
   particles/snow/fireworks remain public-only.
   ========================================================================== */

/* Live server status values must never inherit transparent/gradient text.
   The status data already exists; these selectors only repair presentation. */
html[data-theme] body:not(.control-body) [data-server-status]{
  color:var(--theme-text,#f2f3f6);
  opacity:1;
  visibility:visible;
  filter:none;
  mix-blend-mode:normal;
}
html[data-theme] body:not(.control-body) [data-server-status] :is([data-players],[data-server-name],[data-updated]){
  color:var(--theme-text,#f2f3f6);
  opacity:1;
  visibility:visible;
  filter:none;
  mix-blend-mode:normal;
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
  -webkit-text-fill-color:currentColor;
  -webkit-mask:none;
  mask:none;
  text-shadow:none;
}
html[data-theme] body:not(.control-body) [data-server-status] [data-state]{
  opacity:1;
  visibility:visible;
  -webkit-text-fill-color:currentColor;
  -webkit-background-clip:border-box;
  background-clip:border-box;
  -webkit-mask:none;
  mask:none;
}
html[data-theme] body:not(.control-body) [data-server-status] small{
  color:var(--theme-muted,#8d929c);
  opacity:1;
  -webkit-text-fill-color:currentColor;
}
html[data-theme="normal"]{--theme-text:#f3f4f6;--theme-muted:#8d929c}
html[data-theme="halloween"]{--theme-text:#f5f1ef;--theme-muted:#a69a96}
html[data-theme="christmas"]{--theme-text:#f3f7f5;--theme-muted:#9caeaa}
html[data-theme="newyear"]{--theme-text:#f5f3ed;--theme-muted:#aaa8a1}

/* Shared management palette. Normal deliberately keeps the existing Evolution RP UI. */
html[data-theme="halloween"] body.control-body{
  --management-accent:#d95a27;--management-accent-2:#6c356f;--management-border:rgba(218,92,38,.14);
  --management-surface:rgba(15,12,16,.91);--management-surface-2:rgba(18,13,18,.82);
  --management-sidebar:rgba(10,8,12,.97);--management-topbar:rgba(11,8,12,.88);
  background:#08070a;
}
html[data-theme="christmas"] body.control-body{
  --management-accent:#c93040;--management-accent-2:#c59b52;--management-border:rgba(174,213,202,.14);
  --management-surface:rgba(8,18,18,.91);--management-surface-2:rgba(9,20,21,.82);
  --management-sidebar:rgba(7,13,14,.97);--management-topbar:rgba(7,15,16,.88);
  background:#060b0c;
}
html[data-theme="newyear"] body.control-body{
  --management-accent:#d7b358;--management-accent-2:#8c96aa;--management-border:rgba(217,180,91,.15);
  --management-surface:rgba(10,12,21,.92);--management-surface-2:rgba(12,15,27,.83);
  --management-sidebar:rgba(7,8,15,.97);--management-topbar:rgba(8,10,19,.89);
  background:#060711;
}
html[data-theme]:not([data-theme="normal"]) body.control-body[data-theme-management="off"]{
  background:color-mix(in srgb,var(--management-surface) 55%,#060608);
}
html[data-theme="halloween"] body.control-body[data-theme-management="subtle"]{
  background:radial-gradient(circle at 18% -8%,rgba(218,92,38,.07),transparent 30%),radial-gradient(circle at 88% 3%,rgba(95,40,95,.055),transparent 26%),#08070a;
}
html[data-theme="christmas"] body.control-body[data-theme-management="subtle"]{
  background:radial-gradient(circle at 16% -8%,rgba(72,128,108,.07),transparent 30%),radial-gradient(circle at 88% 2%,rgba(197,155,82,.045),transparent 28%),#060b0c;
}
html[data-theme="newyear"] body.control-body[data-theme-management="subtle"]{
  background:radial-gradient(circle at 18% -8%,rgba(83,98,143,.08),transparent 31%),radial-gradient(circle at 88% 2%,rgba(215,179,88,.055),transparent 28%),#060711;
}
html[data-theme="halloween"] body.control-body[data-theme-management="full"]{
  background:radial-gradient(circle at 16% -5%,rgba(218,92,38,.12),transparent 33%),radial-gradient(circle at 87% 5%,rgba(95,40,95,.09),transparent 31%),#08070a;
}
html[data-theme="christmas"] body.control-body[data-theme-management="full"]{
  background:radial-gradient(circle at 16% -5%,rgba(72,128,108,.11),transparent 34%),radial-gradient(circle at 87% 5%,rgba(197,155,82,.075),transparent 30%),#060b0c;
}
html[data-theme="newyear"] body.control-body[data-theme-management="full"]{
  background:radial-gradient(circle at 16% -5%,rgba(83,98,143,.12),transparent 34%),radial-gradient(circle at 87% 5%,rgba(215,179,88,.09),transparent 30%),#060711;
}
html[data-theme]:not([data-theme="normal"]) body.control-body :is(.control-sidebar,.staff-sidebar){
  background:var(--management-sidebar);
  border-color:var(--management-border);
}
html[data-theme]:not([data-theme="normal"]) body.control-body :is(.control-top,.staff-top){
  background:var(--management-topbar);
  border-color:var(--management-border);
  -webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);
}
html[data-theme]:not([data-theme="normal"]) body.control-body :is(.control-card,.staff-panel,.staff-welcome,.master-context,.sg-zone-manager,.sg-zone-card-row,.sg-zone-filter-card,.sg-zone-bulk-card){
  border-color:var(--management-border);
}
html[data-theme]:not([data-theme="normal"]) body.control-body :is(.control-card,.staff-panel,.staff-welcome){
  background:linear-gradient(145deg,var(--management-surface-2),var(--management-surface));
  box-shadow:0 18px 52px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.025);
}
html[data-theme]:not([data-theme="normal"]) body.control-body :is(.input,input,select,textarea){
  border-color:color-mix(in srgb,var(--management-border) 72%,rgba(255,255,255,.07));
}
html[data-theme]:not([data-theme="normal"]) body.control-body :is(.input,input,select,textarea):focus{
  border-color:color-mix(in srgb,var(--management-accent) 48%,rgba(255,255,255,.12));
  box-shadow:0 0 0 3px color-mix(in srgb,var(--management-accent) 10%,transparent);
}
html[data-theme]:not([data-theme="normal"]) body.control-body :is(.control-sidebar a.active,.staff-sidebar a.active,.sg-master-tabs a.active){
  border-color:color-mix(in srgb,var(--management-accent) 34%,rgba(255,255,255,.06));
  box-shadow:inset 2px 0 0 var(--management-accent);
}
html[data-theme]:not([data-theme="normal"]) body.control-body .eyebrow{color:var(--management-accent)}
html[data-theme]:not([data-theme="normal"]) body.control-body .seasonal-admin-indicator{
  border-color:color-mix(in srgb,var(--management-accent) 28%,rgba(255,255,255,.08));
  background:color-mix(in srgb,var(--management-accent) 8%,rgba(12,12,16,.88));
  color:var(--theme-text,#f3f3f4);
}
html[data-theme]:not([data-theme="normal"]) body.control-body .seasonal-admin-indicator i{background:var(--management-accent);box-shadow:0 0 12px color-mix(in srgb,var(--management-accent) 55%,transparent)}

/* Staff Center uses its own shell, so give it the same restrained seasonal palette. */
html[data-theme="halloween"] body.control-body.staff-center-body{background:radial-gradient(circle at 14% 0,rgba(218,92,38,.075),transparent 32%),radial-gradient(circle at 88% 0,rgba(95,40,95,.05),transparent 27%),#08070a}
html[data-theme="christmas"] body.control-body.staff-center-body{background:radial-gradient(circle at 14% 0,rgba(72,128,108,.075),transparent 32%),radial-gradient(circle at 88% 0,rgba(197,155,82,.045),transparent 27%),#060b0c}
html[data-theme="newyear"] body.control-body.staff-center-body{background:radial-gradient(circle at 14% 0,rgba(83,98,143,.08),transparent 32%),radial-gradient(circle at 88% 0,rgba(215,179,88,.05),transparent 27%),#060711}

@media(max-width:700px){
  html[data-theme] body:not(.control-body) [data-server-status] :is([data-players],[data-server-name],[data-updated]){white-space:normal;overflow-wrap:anywhere}
}

/* V5.16 — Seasonal Theme Studio schedule diagnostics */
.seasonal-schedule-overview{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:14px;margin:14px 0}.seasonal-health-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.seasonal-health-grid>div{padding:12px 13px;border:1px solid rgba(255,255,255,.065);border-radius:11px;background:rgba(255,255,255,.022)}.seasonal-health-grid small{display:block;color:#7e838d;font-size:8px;font-weight:900;letter-spacing:.11em}.seasonal-health-grid b{display:block;margin-top:6px;font-size:11px}.seasonal-schedule-simulator form{display:grid;gap:10px}.seasonal-sim-result{display:grid;gap:4px;margin-top:12px;padding:12px 13px;border:1px solid rgba(78,189,125,.18);border-radius:11px;background:rgba(78,189,125,.055)}.seasonal-sim-result.error{border-color:rgba(227,27,45,.2);background:rgba(227,27,45,.06)}.seasonal-sim-result small{font-size:8px;font-weight:900;letter-spacing:.11em;color:#8b9099}.seasonal-sim-result b{font-size:14px}.seasonal-sim-result span{font-size:9px;color:#858a94;text-transform:uppercase;letter-spacing:.09em}.seasonal-timeline{margin:14px 0}.seasonal-timeline-list{display:grid;gap:8px}.seasonal-timeline-list article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;padding:11px 12px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:rgba(255,255,255,.018)}.seasonal-timeline-list article.active{border-color:color-mix(in srgb,var(--red) 35%,rgba(255,255,255,.06));background:color-mix(in srgb,var(--red) 6%,rgba(255,255,255,.018))}.seasonal-timeline-list article>span{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:rgba(255,255,255,.035)}.seasonal-timeline-list b,.seasonal-timeline-list small{display:block}.seasonal-timeline-list small{margin-top:3px;color:#818690;font-size:9px}
@media(max-width:1050px){.seasonal-schedule-overview{grid-template-columns:1fr}.seasonal-health-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.seasonal-health-grid{grid-template-columns:1fr}.seasonal-schedule-overview{display:block}.seasonal-schedule-simulator{margin-top:12px}}

/* Generic aliases used by shared components so themes do not need separate systems. */
html[data-theme]{
  --theme-bg:#08090b;
  --theme-surface:var(--pr-glass-section);
  --theme-surface-elevated:var(--pr-glass-card-strong);
  --theme-border:var(--pr-glass-border);
  --theme-accent:var(--season-accent,#e31b2d);
  --theme-accent-secondary:var(--season-accent-2,#8f111e);
  --theme-glow:var(--pr-ambient-a);
  --theme-navbar:var(--pr-glass-section-alt);
  --theme-sidebar:var(--pr-glass-card-strong);
  --theme-card:var(--pr-glass-card);
}
.seasonal-overlap-warning{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:10px 12px;border:1px solid rgba(232,174,70,.2);border-radius:10px;background:rgba(232,174,70,.065)}.seasonal-overlap-warning b{font-size:9px;letter-spacing:.1em;color:#efc978}.seasonal-overlap-warning span{font-size:10px;color:#a8a28f}

/* V5.17 — Seasonal Random Messages */
.seasonal-message-wrap{position:relative;z-index:24;padding-top:10px}.seasonal-random-message{--message-accent:var(--season-accent,#e31b2d);position:relative;display:flex;align-items:center;gap:10px;max-width:980px;min-width:0;padding:8px 12px;margin:0;border:1px solid color-mix(in srgb,var(--message-accent) 18%,rgba(255,255,255,.055));border-radius:11px;background:linear-gradient(120deg,color-mix(in srgb,var(--message-accent) 5%,rgba(11,12,15,.70)),rgba(10,11,14,.58));box-shadow:0 8px 24px rgba(0,0,0,.10);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:seasonalMessageIn .26s ease both}.seasonal-random-message-line{width:2px;height:26px;flex:0 0 2px;border-radius:999px;background:var(--message-accent);box-shadow:0 0 14px color-mix(in srgb,var(--message-accent) 40%,transparent)}.seasonal-random-message>i{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;font-style:normal;font-size:14px}.seasonal-random-message>div{min-width:0;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.seasonal-random-message small{color:color-mix(in srgb,var(--message-accent) 76%,#fff);font-size:8px;font-weight:900;letter-spacing:.12em}.seasonal-random-message p{margin:0;color:#d8dbe1;font-size:11px;line-height:1.45;overflow-wrap:anywhere}.seasonal-random-message.theme-normal{--message-accent:#e31b2d;background:linear-gradient(120deg,rgba(227,27,45,.045),rgba(12,13,16,.56))}.seasonal-random-message.theme-halloween{--message-accent:#d95a27;background:linear-gradient(120deg,rgba(217,90,39,.07),rgba(54,23,63,.055),rgba(12,11,15,.6))}.seasonal-random-message.theme-christmas{--message-accent:#c59b52;background:linear-gradient(120deg,rgba(44,93,74,.07),rgba(197,155,82,.045),rgba(10,17,21,.6))}.seasonal-random-message.theme-newyear{--message-accent:#d7b358;background:linear-gradient(120deg,rgba(215,179,88,.065),rgba(51,64,105,.055),rgba(10,12,22,.62))}.seasonal-random-message.management-message{max-width:none;margin:0 0 14px;padding:7px 10px;border-radius:9px;background:color-mix(in srgb,var(--message-accent) 3%,rgba(12,13,16,.72));box-shadow:none}.seasonal-random-message.management-message .seasonal-random-message-line{height:20px}.seasonal-random-message.management-message p{font-size:10px;color:#b9bdc5}.seasonal-random-message.management-message small{font-size:7px}.seasonal-random-message.context-gang{--message-accent:var(--gang-accent,var(--season-accent,#e31b2d))}.login-seasonal-message{margin-top:15px;max-width:680px;background:rgba(8,9,12,.42)}
@keyframes seasonalMessageIn{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}

/* Management editor */
.seasonal-message-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.seasonal-message-admin-stats article{padding:15px 16px;border:1px solid rgba(255,255,255,.065);border-radius:13px;background:linear-gradient(145deg,rgba(255,255,255,.028),rgba(255,255,255,.012))}.seasonal-message-admin-stats small{display:block;color:#777d87;font-size:8px;font-weight:900;letter-spacing:.11em}.seasonal-message-admin-stats strong{display:block;margin-top:7px;font-size:24px}.seasonal-message-admin-stats .seasonal-message-stat-text{font-size:15px;color:var(--season-accent,#e31b2d)}.seasonal-message-admin-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.7fr);gap:16px;align-items:start}.seasonal-message-library{min-width:0}.seasonal-message-filters{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr)) auto;gap:8px;margin-bottom:14px}.seasonal-message-admin-list{display:grid;gap:8px}.seasonal-message-admin-list>article{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 13px;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:rgba(255,255,255,.018)}.seasonal-message-admin-list>article.disabled{opacity:.58}.seasonal-message-row-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.025);font-size:16px}.seasonal-message-row-copy{min-width:0}.seasonal-message-row-copy>div{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.seasonal-message-row-copy span,.seasonal-message-row-copy b,.seasonal-message-row-copy i{font-size:8px;font-weight:900;letter-spacing:.09em}.seasonal-message-row-copy span{color:var(--season-accent,#e31b2d)}.seasonal-message-row-copy b{color:#8f949e}.seasonal-message-row-copy i{padding:3px 5px;border-radius:999px;background:rgba(227,27,45,.08);color:#e96a74;font-style:normal}.seasonal-message-row-copy p{margin:5px 0 3px;color:#d7d9de;font-size:11px;line-height:1.5}.seasonal-message-row-copy small{color:#707680;font-size:8px;letter-spacing:.08em}.seasonal-message-admin-side{display:grid;gap:14px;position:sticky;top:80px}.seasonal-message-preview-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:7px}.seasonal-message-preview-surface{display:grid;gap:5px;margin-top:12px;padding:16px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:linear-gradient(145deg,rgba(255,255,255,.026),rgba(255,255,255,.012))}.seasonal-message-preview-surface>span{font-size:20px}.seasonal-message-preview-surface>small{color:#878d97;font-size:8px;font-weight:900;letter-spacing:.11em}.seasonal-message-preview-surface>p{margin:3px 0 0;color:#e0e2e7;line-height:1.55}.seasonal-message-editor-card form,.seasonal-message-settings-card form{display:grid;gap:10px}.seasonal-message-context-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.seasonal-message-context-grid label{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid rgba(255,255,255,.06);border-radius:9px;background:rgba(255,255,255,.018);font-size:10px;color:#c2c5cc}.seasonal-message-seed-form{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.055)}
html[data-theme="halloween"] .seasonal-random-message{--message-accent:#d95a27}html[data-theme="christmas"] .seasonal-random-message{--message-accent:#c59b52}html[data-theme="newyear"] .seasonal-random-message{--message-accent:#d7b358}
@media(max-width:1120px){.seasonal-message-admin-grid{grid-template-columns:1fr}.seasonal-message-admin-side{position:static}.seasonal-message-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.seasonal-message-wrap{padding-top:8px}.seasonal-random-message{align-items:flex-start;padding:8px 10px}.seasonal-random-message>div{display:grid;gap:2px}.seasonal-message-filters,.seasonal-message-preview-controls{grid-template-columns:1fr}.seasonal-message-admin-list>article{grid-template-columns:32px minmax(0,1fr)}.seasonal-message-admin-list>article>.sg-row-actions{grid-column:2}.seasonal-message-context-grid,.seasonal-message-admin-stats{grid-template-columns:1fr}.seasonal-random-message p{font-size:10px}}
@media(prefers-reduced-motion:reduce){.seasonal-random-message{animation:none}}

/* V5.18 — Seasonal Theme Studio V2 + expanded message management */
.seasonal-control-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(520px,.85fr);gap:18px;align-items:stretch;margin:0 0 16px;padding:22px 24px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));box-shadow:0 22px 55px rgba(0,0,0,.16)}
.seasonal-control-hero-copy{align-self:center}.seasonal-control-hero-copy h2{margin:.32rem 0 .45rem;font-size:clamp(28px,3vw,46px);letter-spacing:-.045em}.seasonal-control-hero-copy p{max-width:760px;margin:0;color:#9297a0;line-height:1.6}.seasonal-control-hero-status{display:grid;grid-template-columns:1fr 1fr;gap:9px}.seasonal-control-hero-status article{padding:13px 14px;border:1px solid rgba(255,255,255,.065);border-radius:13px;background:rgba(255,255,255,.018)}.seasonal-control-hero-status small,.seasonal-current-meta small,.seasonal-engine-metrics small,.seasonal-theme-card-facts small,.seasonal-overview-metrics small{display:block;color:#777d87;font-size:8px;font-weight:900;letter-spacing:.12em}.seasonal-control-hero-status strong{display:block;margin-top:6px;font-size:13px;line-height:1.35}
.seasonal-current-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:16px;align-items:center;margin:0 0 16px;padding:18px 20px;border:1px solid rgba(255,255,255,.075);border-radius:17px;background:linear-gradient(110deg,rgba(227,27,45,.075),rgba(255,255,255,.016) 42%,rgba(255,255,255,.01));box-shadow:0 18px 48px rgba(0,0,0,.15)}.seasonal-current-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);font-size:25px}.seasonal-current-copy h2{margin:.2rem 0 .3rem;font-size:25px}.seasonal-current-copy p{margin:0;color:#8f949e;max-width:610px}.seasonal-current-meta{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:8px}.seasonal-current-meta>span{padding:10px 11px;border:1px solid rgba(255,255,255,.055);border-radius:11px;background:rgba(255,255,255,.016)}.seasonal-current-meta b{display:block;margin-top:5px;font-size:10px;line-height:1.35}.seasonal-current-actions form{margin:0}
.seasonal-current-card.theme-halloween{background:linear-gradient(110deg,rgba(218,92,38,.095),rgba(64,21,54,.035) 48%,rgba(255,255,255,.01));border-color:rgba(218,92,38,.14)}.seasonal-current-card.theme-christmas{background:linear-gradient(110deg,rgba(66,132,112,.105),rgba(160,54,59,.025) 50%,rgba(255,255,255,.01));border-color:rgba(174,213,202,.13)}.seasonal-current-card.theme-newyear{background:linear-gradient(110deg,rgba(217,180,91,.095),rgba(53,60,104,.035) 50%,rgba(255,255,255,.01));border-color:rgba(217,180,91,.14)}
.seasonal-engine-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:14px;margin-bottom:14px}.seasonal-engine-card,.seasonal-test-card{min-height:100%;padding:20px;border-radius:17px}.seasonal-health-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;border:1px solid rgba(95,204,137,.19);background:rgba(95,204,137,.075);color:#7fe0a2;font-size:9px;font-weight:900;letter-spacing:.09em}.seasonal-health-badge.warning{border-color:rgba(232,177,72,.22);background:rgba(232,177,72,.08);color:#edc475}.seasonal-health-badge.healthy{border-color:rgba(95,204,137,.19);background:rgba(95,204,137,.075);color:#7fe0a2}.seasonal-engine-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.seasonal-engine-metrics>div{padding:12px;border:1px solid rgba(255,255,255,.055);border-radius:11px;background:rgba(255,255,255,.016)}.seasonal-engine-metrics b{display:block;margin-top:6px;font-size:11px;line-height:1.4}.seasonal-test-card form{display:grid;gap:10px}
.seasonal-timeline-v2{margin-bottom:18px;padding:20px;border-radius:17px}.seasonal-timeline-rail{position:relative;display:grid;gap:0;margin-top:12px;padding-left:20px}.seasonal-timeline-rail:before{content:"";position:absolute;left:35px;top:18px;bottom:18px;width:1px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(227,27,45,.32),rgba(255,255,255,.05))}.seasonal-timeline-rail article{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:center;padding:11px 12px;border-radius:12px}.seasonal-timeline-rail article.active{background:rgba(227,27,45,.045)}.seasonal-timeline-marker{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.09);border-radius:50%;background:#0d0e11;font-size:15px}.seasonal-timeline-rail article.active .seasonal-timeline-marker{border-color:rgba(227,27,45,.38);box-shadow:0 0 0 4px rgba(227,27,45,.07)}.seasonal-timeline-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.seasonal-timeline-content>div{display:grid;gap:3px}.seasonal-timeline-content b{font-size:12px}.seasonal-timeline-content small{color:#777d87;font-size:8px;font-weight:900;letter-spacing:.09em}.seasonal-timeline-content strong{font-size:10px;color:#b8bcc4}.seasonal-timeline-content i{padding:0 6px;color:#555a63;font-style:normal}
.seasonal-theme-section{margin-bottom:18px}.seasonal-section-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:4px 0 12px}.seasonal-section-heading h2{margin:.2rem 0 .2rem;font-size:22px}.seasonal-section-heading p{margin:0;color:#858b95}.seasonal-status-board-v2{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.seasonal-status-board-v2 .seasonal-theme-card{display:flex;flex-direction:column;min-height:410px;border-radius:17px;background:linear-gradient(145deg,rgba(19,20,24,.9),rgba(10,11,14,.84));box-shadow:0 18px 46px rgba(0,0,0,.15)}.seasonal-status-board-v2 .seasonal-theme-card.active{border-color:color-mix(in srgb,var(--red) 48%,rgba(255,255,255,.08));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--red) 13%,transparent),0 22px 54px rgba(0,0,0,.18)}.seasonal-status-board-v2 .seasonal-theme-preview{height:145px;display:flex;align-items:flex-end;padding:13px 14px}.seasonal-theme-preview-label{position:relative;z-index:2;display:inline-flex;padding:5px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.13);background:rgba(5,6,8,.58);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);font-size:9px;font-weight:900;letter-spacing:.08em}.seasonal-status-board-v2 .seasonal-theme-card-body{display:flex;flex:1;flex-direction:column;padding:16px 17px}.seasonal-theme-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.seasonal-theme-card-head>div{display:flex;align-items:center;gap:9px}.seasonal-theme-card-head h3{margin:0;font-size:18px}.seasonal-theme-card-head .seasonal-theme-icon{font-size:19px}.seasonal-status-board-v2 .seasonal-theme-card p{min-height:62px;margin:.75rem 0;color:#9297a0}.seasonal-theme-state{border:1px solid rgba(255,255,255,.06)}.seasonal-theme-state.active{background:rgba(70,190,116,.09);color:#80dca2;border-color:rgba(70,190,116,.18)}.seasonal-theme-card-facts{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:auto}.seasonal-theme-card-facts>span{padding:9px 10px;border:1px solid rgba(255,255,255,.055);border-radius:10px;background:rgba(255,255,255,.015)}.seasonal-theme-card-facts b{display:block;margin-top:4px;font-size:9px;line-height:1.35}.seasonal-status-board-v2 .seasonal-card-actions{margin-top:12px}
.seasonal-config-grid{grid-template-columns:minmax(0,1.5fr) minmax(380px,1fr);gap:18px}.seasonal-config-grid>form.control-card{overflow:visible;padding:0;border-radius:18px;background:linear-gradient(145deg,rgba(18,19,23,.94),rgba(10,11,14,.9));box-shadow:0 20px 55px rgba(0,0,0,.16)}.seasonal-config-grid>form.control-card>.control-card-head{padding:20px 20px 0;margin-bottom:10px}.seasonal-tabs{position:sticky;top:66px;z-index:25;display:flex;gap:6px;padding:10px 12px;margin:0;border-top:1px solid rgba(255,255,255,.055);border-bottom:1px solid rgba(255,255,255,.065);background:rgba(12,13,16,.94);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);overflow-x:auto;scrollbar-width:thin}.seasonal-tab{flex:0 0 auto;min-height:38px;padding:0 12px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:rgba(255,255,255,.015);color:#888e98;font-size:9px;font-weight:900;letter-spacing:.07em}.seasonal-tab:hover{color:#fff;border-color:rgba(255,255,255,.12)}.seasonal-tab.active{color:#fff;border-color:rgba(227,27,45,.3);background:linear-gradient(180deg,rgba(227,27,45,.12),rgba(227,27,45,.055));box-shadow:inset 0 -2px 0 rgba(227,27,45,.7)}.seasonal-tab-panel{padding:0}.seasonal-setting-section{padding:20px}.seasonal-setting-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.seasonal-setting-heading h3{margin:.25rem 0 .35rem;font-size:21px}.seasonal-overview-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}.seasonal-overview-metrics article{padding:12px;border:1px solid rgba(255,255,255,.055);border-radius:11px;background:rgba(255,255,255,.016)}.seasonal-overview-metrics strong{display:block;margin-top:6px;font-size:11px}.seasonal-overview-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.seasonal-overview-toggles{margin-top:0}.seasonal-config-save{padding:14px 20px 20px;border-top:1px solid rgba(255,255,255,.06)}.seasonal-unsaved-bar{position:sticky;bottom:14px;z-index:45;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 14px 14px;padding:12px 13px;border:1px solid rgba(227,27,45,.22);border-radius:13px;background:rgba(16,13,16,.94);box-shadow:0 18px 45px rgba(0,0,0,.32);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.seasonal-unsaved-bar[hidden]{display:none}.seasonal-unsaved-bar>div:first-child{display:grid;gap:2px}.seasonal-unsaved-bar b{font-size:11px}
.seasonal-preview-v2{top:78px;border-radius:18px;background:#090a0d;box-shadow:0 22px 56px rgba(0,0,0,.2)}.seasonal-preview-browserbar{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.07);background:#0e0f12}.seasonal-preview-browserbar>b{justify-self:center;color:#9ea3ad;font-size:9px;letter-spacing:.03em}.seasonal-preview-browserbar>span:last-child{font-size:8px;font-weight:900;letter-spacing:.09em;color:#666c76}.seasonal-preview-dots{display:flex;gap:5px}.seasonal-preview-dots i{width:7px;height:7px;border-radius:50%;background:#4b4f57}.seasonal-preview-dots i:first-child{background:#7e343c}.seasonal-preview-dots i:nth-child(2){background:#856c38}.seasonal-preview-dots i:nth-child(3){background:#35634a}.seasonal-preview-toolbar{justify-content:center;background:rgba(255,255,255,.012)}.seasonal-preview-stage{overflow:hidden}.seasonal-preview-v2 .seasonal-preview-mini-nav{border-radius:0;border-left:0;border-right:0;background:rgba(10,11,14,.86)}.seasonal-preview-v2 .seasonal-preview-hero{min-height:310px}.seasonal-preview-cta-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.seasonal-preview-message{display:grid;gap:7px;padding:13px 15px;border-top:1px solid rgba(255,255,255,.065);border-bottom:1px solid rgba(255,255,255,.065);background:linear-gradient(90deg,color-mix(in srgb,var(--season-accent) 5%,#0b0c0f),#0b0c0f)}.seasonal-preview-message>div{display:flex;align-items:center;gap:7px}.seasonal-preview-message>div>span{font-size:15px}.seasonal-preview-message small{font-size:8px}.seasonal-preview-message p{margin:0;color:#d4d7dd;font-size:10px;line-height:1.5}.seasonal-preview-message .button{justify-self:start}.seasonal-preview-v2 .seasonal-preview-components{grid-template-columns:1fr 1fr;padding:12px}.seasonal-preview-v2 .seasonal-preview-mini-card{grid-column:1/-1}.seasonal-preview-mini-card p{margin:6px 0 0;font-size:10px}.seasonal-preview-note{padding:13px 15px;border-top:1px solid rgba(255,255,255,.06)}.seasonal-preview-note b{font-size:9px;letter-spacing:.08em}.seasonal-preview-note p{margin:5px 0 0;font-size:10px;line-height:1.5}.seasonal-preview[data-device="tablet"]{max-width:720px}.seasonal-preview[data-device="mobile"]{max-width:390px;margin-left:auto;margin-right:auto}.seasonal-preview[data-device="mobile"] .seasonal-preview-components{grid-template-columns:1fr}.seasonal-preview[data-device="mobile"] .seasonal-preview-mini-card{grid-column:auto}.seasonal-preview[data-device="mobile"] .seasonal-preview-mini-nav span{display:none}
/* Message Manager V2 */
.seasonal-message-admin-stats-wide{grid-template-columns:repeat(9,minmax(0,1fr));gap:8px}.seasonal-message-admin-stats-wide article{min-height:82px}.seasonal-message-admin-stats-wide article[class*="theme-"]{position:relative;overflow:hidden}.seasonal-message-admin-stats-wide article[class*="theme-"]:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:#444}.seasonal-message-admin-stats-wide .theme-halloween:before{background:#cf5b29}.seasonal-message-admin-stats-wide .theme-christmas:before{background:#7eaa9b}.seasonal-message-admin-stats-wide .theme-newyear:before{background:#d7b35b}.seasonal-message-admin-stats-wide .theme-normal:before{background:#e31b2d}.seasonal-message-low-warning{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding:10px 12px;border:1px solid rgba(231,176,73,.18);border-radius:11px;background:rgba(231,176,73,.065);color:#d9b76e;font-size:10px}.seasonal-message-low-warning span{color:#9b8b69}.seasonal-message-coverage{margin-bottom:14px}.seasonal-message-coverage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.seasonal-message-coverage-grid>article{padding:13px;border:1px solid rgba(255,255,255,.06);border-radius:13px;background:rgba(255,255,255,.015)}.seasonal-message-coverage-grid header{display:flex;align-items:center;gap:9px;margin-bottom:10px}.seasonal-message-coverage-grid header>span{font-size:20px}.seasonal-message-coverage-grid header>div{display:grid}.seasonal-message-coverage-grid header small{color:#777d87;font-size:8px;letter-spacing:.08em}.seasonal-message-coverage-grid article>div{display:grid;grid-template-columns:1fr 1fr;gap:5px}.seasonal-message-coverage-grid article>div>span{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 7px;border-radius:8px;background:rgba(255,255,255,.02);font-size:8px}.seasonal-message-coverage-grid article>div>span b{color:#8b919b}.seasonal-message-coverage-grid article>div>span i{font-style:normal;color:#d8dbe1;font-weight:900}.seasonal-message-coverage-grid article>div>span.low{background:rgba(231,176,73,.07)}.seasonal-message-coverage-grid article>div>span.low i{color:#e8c474}.seasonal-message-admin-grid-v2{grid-template-columns:minmax(0,1.55fr) minmax(360px,.72fr)}.seasonal-message-filters-v2{grid-template-columns:minmax(180px,1.2fr) repeat(3,minmax(130px,.7fr)) auto}.seasonal-message-bulk{display:grid;grid-template-columns:minmax(160px,1fr) minmax(150px,.7fr) repeat(4,auto);gap:7px;align-items:center;margin:0 0 12px;padding:10px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:rgba(255,255,255,.014)}.seasonal-message-bulk>div{display:grid}.seasonal-message-bulk b{font-size:9px;letter-spacing:.08em}.seasonal-message-bulk small{color:#767c86;font-size:8px}.seasonal-message-admin-list-v2>article{grid-template-columns:20px 36px minmax(0,1fr) auto;padding:13px 14px}.seasonal-message-select{display:grid;place-items:center}.seasonal-message-select input{position:absolute;opacity:0;pointer-events:none}.seasonal-message-select span{width:15px;height:15px;border-radius:4px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.025)}.seasonal-message-select input:checked+span{border-color:rgba(227,27,45,.55);background:#d71e31;box-shadow:0 0 0 3px rgba(227,27,45,.09)}.seasonal-message-row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.seasonal-message-row-actions form{margin:0}.seasonal-message-theme-context{display:flex;align-items:center;gap:10px;padding:10px 11px;border:1px solid rgba(255,255,255,.065);border-radius:10px;background:rgba(255,255,255,.018)}.seasonal-message-theme-context>span{font-size:20px}.seasonal-message-theme-context>div{display:grid}.seasonal-message-theme-context small{color:#777d87;font-size:8px;font-weight:900;letter-spacing:.09em}.seasonal-message-theme-context b{font-size:10px}.seasonal-message-theme-context[data-theme="halloween"]{border-color:rgba(207,91,41,.16);background:rgba(207,91,41,.045)}.seasonal-message-theme-context[data-theme="christmas"]{border-color:rgba(126,170,155,.15);background:rgba(126,170,155,.045)}.seasonal-message-theme-context[data-theme="newyear"]{border-color:rgba(215,179,91,.16);background:rgba(215,179,91,.04)}
@media(max-width:1450px){.seasonal-status-board-v2{grid-template-columns:repeat(2,minmax(0,1fr))}.seasonal-message-admin-stats-wide{grid-template-columns:repeat(5,minmax(0,1fr))}.seasonal-message-coverage-grid{grid-template-columns:1fr 1fr}}
@media(max-width:1180px){.seasonal-control-hero{grid-template-columns:1fr}.seasonal-engine-grid{grid-template-columns:1fr}.seasonal-current-card{grid-template-columns:auto minmax(0,1fr)}.seasonal-current-meta,.seasonal-current-actions{grid-column:2}.seasonal-config-grid{grid-template-columns:1fr}.seasonal-preview-v2{position:relative;top:auto}.seasonal-message-admin-grid-v2{grid-template-columns:1fr}.seasonal-message-admin-side{position:static}.seasonal-message-bulk{grid-template-columns:1fr 1fr 1fr}.seasonal-message-bulk>div{grid-column:1/-1}}
@media(max-width:820px){.seasonal-control-hero-status,.seasonal-engine-metrics,.seasonal-overview-metrics{grid-template-columns:1fr 1fr}.seasonal-status-board-v2,.seasonal-message-coverage-grid{grid-template-columns:1fr}.seasonal-current-meta{grid-template-columns:1fr}.seasonal-timeline-content{align-items:flex-start;flex-direction:column;gap:5px}.seasonal-message-admin-stats-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.seasonal-message-filters-v2{grid-template-columns:1fr 1fr}.seasonal-message-admin-list-v2>article{grid-template-columns:20px 34px minmax(0,1fr)}.seasonal-message-row-actions{grid-column:3;justify-content:flex-start}.seasonal-message-bulk{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.seasonal-control-hero{padding:16px}.seasonal-control-hero-status,.seasonal-engine-metrics,.seasonal-overview-metrics,.seasonal-message-admin-stats-wide,.seasonal-message-filters-v2,.seasonal-message-bulk{grid-template-columns:1fr}.seasonal-current-card{grid-template-columns:1fr;align-items:flex-start}.seasonal-current-meta,.seasonal-current-actions{grid-column:auto}.seasonal-current-icon{width:44px;height:44px}.seasonal-tabs{top:58px}.seasonal-status-board-v2 .seasonal-theme-card{min-height:0}.seasonal-preview-v2 .seasonal-preview-hero{min-height:250px}.seasonal-preview-v2 .seasonal-preview-components{grid-template-columns:1fr}.seasonal-preview-v2 .seasonal-preview-mini-card{grid-column:auto}.seasonal-unsaved-bar{bottom:8px;align-items:flex-start;flex-direction:column}.seasonal-message-admin-list-v2>article{grid-template-columns:20px minmax(0,1fr)}.seasonal-message-row-icon{display:none}.seasonal-message-row-copy{grid-column:2}.seasonal-message-row-actions{grid-column:2}.seasonal-message-coverage-grid article>div{grid-template-columns:1fr}.seasonal-message-low-warning{align-items:flex-start;flex-direction:column}}
.seasonal-header-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.seasonal-header-actions form{margin:0}
