/* Evolution RP Seasonal Hub
   Fully scoped: no selectors below alter the normal Evolution RP UI outside Hub/Admin Hub pages. */

.season-hub{position:relative;z-index:2;--hub-accent:var(--season-accent,var(--red,#e31b2d));--hub-accent-2:var(--season-accent-2,#8f111e);--hub-line:rgba(255,255,255,.09);--hub-surface:rgba(10,11,13,.78);--hub-soft:rgba(255,255,255,.045);--hub-text:#f5f5f7;--hub-muted:#92959e;color:var(--hub-text);isolation:isolate}
.season-hub *{box-sizing:border-box}.season-hub a{text-decoration:none}.season-hub button,.season-hub input,.season-hub textarea,.season-hub select{font:inherit}
.season-hub:before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(circle at 15% 0%,color-mix(in srgb,var(--hub-accent) 12%,transparent),transparent 36%),radial-gradient(circle at 90% 28%,color-mix(in srgb,var(--hub-accent-2) 10%,transparent),transparent 34%)}

.season-hub-hero{position:relative;min-height:610px;display:flex;align-items:flex-end;overflow:hidden;border-bottom:1px solid var(--hub-line);background:#070809}
.season-hub-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(4,5,6,.92) 3%,rgba(4,5,6,.66) 48%,rgba(4,5,6,.38)),linear-gradient(180deg,rgba(0,0,0,.18),rgba(4,5,6,.8)),var(--season-hub-hero,none);background-size:cover;background-position:center}
.season-hub-hero:after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(180deg,transparent,rgba(5,6,7,.95));pointer-events:none}
.season-hub-hero-inner{position:relative;z-index:2;width:100%;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:50px;align-items:end;padding-top:150px;padding-bottom:72px}
.season-hub-hero-copy{max-width:830px}.season-hub-hero-copy .eyebrow{display:inline-flex;margin-bottom:18px}.season-hub-hero h1{margin:0;font-size:clamp(52px,7.2vw,108px);line-height:.86;letter-spacing:-.055em;font-weight:950;text-wrap:balance}.season-hub-hero p{max-width:690px;margin:26px 0 0;font-size:clamp(17px,1.5vw,22px);line-height:1.6;color:#b5b8c0}.season-hub-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.season-hub-hero-mark{justify-self:end;width:220px;min-height:220px;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;border:1px solid var(--hub-line);border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--hub-accent) 12%,rgba(8,9,11,.86)),rgba(8,9,11,.6));backdrop-filter:blur(16px);box-shadow:0 28px 80px rgba(0,0,0,.24)}
.season-hub-hero-mark span{font-size:68px;line-height:1;font-weight:950;letter-spacing:-.06em;color:var(--hub-accent)}.season-hub-hero-mark b{font-size:12px;letter-spacing:.18em;margin-top:12px}.season-hub-archive-badge{display:inline-flex;margin-top:20px;border:1px solid var(--hub-line);padding:8px 11px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.12em;color:#b7bbc3;background:rgba(0,0,0,.28)}

.season-hub-nav-strip{position:sticky;top:92px;z-index:10;border-bottom:1px solid var(--hub-line);background:rgba(7,8,10,.76);backdrop-filter:blur(18px)}
.season-hub-nav-strip .container{display:flex;gap:18px;align-items:center;min-height:58px;overflow-x:auto;scrollbar-width:none}.season-hub-nav-strip .container::-webkit-scrollbar{display:none}.season-hub-nav-strip span{flex:none;font-size:10px;letter-spacing:.2em;color:var(--hub-accent);font-weight:950}.season-hub-nav-strip a{flex:none;color:#9fa3ac;font-size:12px;font-weight:850;letter-spacing:.04em;transition:.2s}.season-hub-nav-strip a:hover{color:#fff}

.season-hub-section{position:relative;padding:90px 0;border-bottom:1px solid rgba(255,255,255,.055)}.season-hub-section:nth-of-type(even){background:linear-gradient(180deg,rgba(255,255,255,.012),rgba(255,255,255,.024),rgba(255,255,255,.012))}
.season-hub-section-head{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:32px}.season-hub-section-head>div{max-width:780px}.season-hub-section-head h2{margin:8px 0 0;font-size:clamp(32px,4.2vw,60px);line-height:.96;letter-spacing:-.045em}.season-hub-section-head>p{max-width:440px;margin:0;color:var(--hub-muted);line-height:1.6}.season-hub-section-head .eyebrow{color:var(--hub-accent)}

.season-hub-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.season-hub-event-card{min-width:0;overflow:hidden;border:1px solid var(--hub-line);border-radius:20px;background:linear-gradient(160deg,color-mix(in srgb,var(--hub-accent) 7%,rgba(13,14,17,.92)),rgba(10,11,13,.83));box-shadow:0 22px 60px rgba(0,0,0,.14);transition:transform .25s,border-color .25s}.season-hub-event-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--hub-accent) 35%,var(--hub-line))}.season-hub-event-cover{height:180px;background-size:cover;background-position:center;position:relative}.season-hub-event-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(8,9,11,.4))}.season-hub-event-copy{padding:20px}.season-hub-event-copy h3{margin:12px 0 20px;font-size:23px;line-height:1.05}.season-hub-meta{display:flex;gap:8px;flex-wrap:wrap}.season-hub-meta span{font-size:10px;font-weight:900;letter-spacing:.1em;color:#aeb1b8;border:1px solid var(--hub-line);padding:6px 8px;border-radius:999px}.season-hub-mini-countdown{display:flex;gap:7px;margin:-8px 0 18px}.season-hub-mini-countdown span{font-size:10px;font-weight:900;color:var(--hub-accent);background:rgba(0,0,0,.25);padding:6px 8px;border-radius:8px;border:1px solid var(--hub-line)}

.season-hub-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.season-hub-case{position:relative;overflow:hidden;padding:24px;border:1px solid var(--hub-line);border-radius:18px;background:linear-gradient(135deg,rgba(13,11,16,.9),rgba(8,9,11,.85));box-shadow:0 25px 80px rgba(0,0,0,.16)}.season-hub-case.focus{border-color:color-mix(in srgb,var(--hub-accent) 55%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--hub-accent) 20%,transparent),0 25px 80px rgba(0,0,0,.2)}.season-hub-case:before{content:"CASE FILE";position:absolute;right:-22px;top:23px;transform:rotate(34deg);font-size:9px;letter-spacing:.24em;color:rgba(255,255,255,.09);font-weight:950}.season-hub-case-top{display:flex;justify-content:space-between;align-items:center;gap:15px}.season-hub-case-top>span{font-size:11px;font-weight:950;letter-spacing:.18em;color:var(--hub-accent)}.season-hub-status{padding:6px 9px;border-radius:999px;border:1px solid var(--hub-line);font-size:9px;letter-spacing:.12em}.season-hub-status.status-open{color:#f2a654}.season-hub-status.status-solved{color:#86d79f}.season-hub-status.status-expired{color:#777}.season-hub-case h3{font-size:28px;margin:18px 0 10px}.season-hub-case>p{color:var(--hub-muted);line-height:1.65}.season-hub-clues{display:grid;gap:10px;margin:20px 0}.season-hub-clue{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:12px;border-radius:12px;border:1px solid var(--hub-line);background:rgba(0,0,0,.2)}.season-hub-clue>span{font-size:20px;font-weight:950;color:var(--hub-accent)}.season-hub-clue img{width:100%;max-height:190px;object-fit:cover;border-radius:8px;margin-bottom:10px}.season-hub-clue b{font-size:11px;letter-spacing:.12em}.season-hub-clue p{margin:6px 0 0;color:#a6a8af;line-height:1.55}.season-hub-case-solved{margin:18px 0;padding:14px;border-left:2px solid #62bd80;background:rgba(64,143,90,.08)}.season-hub-case-solved b{color:#79d495;letter-spacing:.12em}.season-hub-case-solved p{margin:6px 0 0;color:#aeb5b0}.season-hub-text-link{display:inline-block;margin-top:10px;color:var(--hub-accent);font-size:11px;font-weight:950;letter-spacing:.08em}

.season-hub-passport{display:grid;grid-template-columns:250px 1fr;gap:18px}.season-hub-passport-summary{padding:24px;border:1px solid var(--hub-line);border-radius:18px;background:var(--hub-surface);align-self:start}.season-hub-passport-summary strong{display:block;font-size:46px;line-height:1;letter-spacing:-.05em}.season-hub-passport-summary span{display:block;margin:6px 0 16px;font-size:10px;font-weight:950;letter-spacing:.14em;color:var(--hub-muted)}.season-hub-passport-summary>div{height:6px;border-radius:99px;overflow:hidden;background:rgba(255,255,255,.07)}.season-hub-passport-summary i{display:block;height:100%;background:linear-gradient(90deg,var(--hub-accent-2),var(--hub-accent));border-radius:inherit}.season-hub-objectives{display:grid;gap:9px}.season-hub-objective{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:center;padding:16px 17px;border:1px solid var(--hub-line);border-radius:14px;background:rgba(12,13,16,.72)}.season-hub-objective>span{font-size:24px;color:#727780}.season-hub-objective.complete{border-color:color-mix(in srgb,var(--hub-accent) 28%,var(--hub-line));background:color-mix(in srgb,var(--hub-accent) 6%,rgba(12,13,16,.76))}.season-hub-objective.complete>span{color:var(--hub-accent)}.season-hub-objective b{display:block}.season-hub-objective small{display:block;margin-top:4px;color:var(--hub-muted);line-height:1.35}.season-hub-objective .season-hub-system-note{color:#777d87}.season-hub-check{border:1px solid var(--hub-line);background:rgba(255,255,255,.025);color:#bbb;padding:8px 10px;border-radius:8px;font-size:9px;font-weight:950;letter-spacing:.08em;cursor:pointer}.season-hub-check:hover{border-color:var(--hub-accent);color:#fff}

.season-hub-meter{padding:32px;border:1px solid var(--hub-line);border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--hub-accent) 9%,rgba(12,11,15,.9)),rgba(7,8,10,.84));overflow:hidden}.season-hub-meter-value{display:flex;align-items:end;gap:18px}.season-hub-meter-value strong{font-size:clamp(58px,8vw,110px);line-height:.82;letter-spacing:-.07em;color:var(--hub-accent)}.season-hub-meter-value span{font-size:13px;font-weight:950;letter-spacing:.14em}.season-hub-meter-track{height:9px;border-radius:99px;background:rgba(255,255,255,.07);margin:27px 0;overflow:hidden}.season-hub-meter-track i{height:100%;display:block;background:linear-gradient(90deg,var(--hub-accent-2),var(--hub-accent));box-shadow:0 0 28px color-mix(in srgb,var(--hub-accent) 45%,transparent)}.season-hub-milestones{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.season-hub-milestones>div{padding:13px;border:1px solid var(--hub-line);border-radius:12px;color:#6f737d}.season-hub-milestones>div.reached{color:#dfe1e6;border-color:color-mix(in srgb,var(--hub-accent) 28%,var(--hub-line));background:color-mix(in srgb,var(--hub-accent) 5%,transparent)}.season-hub-milestones b{display:block;color:var(--hub-accent)}.season-hub-milestones span{font-size:11px;line-height:1.4}

.season-hub-masonry,.season-hub-memory-wall{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:160px;gap:10px}.season-hub-gallery-item,.season-hub-memory{position:relative;overflow:hidden;border:1px solid var(--hub-line);border-radius:14px;background:#0c0d0f;padding:0;cursor:pointer;color:#fff;text-align:left}.season-hub-gallery-item.featured,.season-hub-memory.featured{grid-column:span 2;grid-row:span 2}.season-hub-gallery-item img,.season-hub-memory img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.season-hub-gallery-item:hover img,.season-hub-memory:hover img{transform:scale(1.035)}.season-hub-gallery-item:after,.season-hub-memory:not(.text):after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.72))}.season-hub-gallery-item span,.season-hub-memory>span{position:absolute;z-index:2;left:14px;right:14px;bottom:13px;font-weight:850}.season-hub-memory.text{padding:20px;display:flex;flex-direction:column;justify-content:flex-end;text-decoration:none}.season-hub-memory.text h3{margin:7px 0 14px}.season-hub-memory.text b{color:var(--hub-accent);font-size:11px}

.season-hub-update-grid,.season-hub-next-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.season-hub-update-card,.season-hub-next-grid>a{min-height:180px;padding:21px;border:1px solid var(--hub-line);border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.015));display:flex;flex-direction:column;color:#fff;transition:.2s}.season-hub-update-card:hover,.season-hub-next-grid>a:hover{border-color:color-mix(in srgb,var(--hub-accent) 38%,var(--hub-line));transform:translateY(-3px)}.season-hub-update-card span,.season-hub-next-grid>a span{font-size:9px;font-weight:950;letter-spacing:.17em;color:var(--hub-accent)}.season-hub-update-card h3,.season-hub-next-grid>a h3{font-size:23px;margin:14px 0 auto}.season-hub-update-card b,.season-hub-next-grid>a b{font-size:10px;letter-spacing:.12em;color:#aeb1b8}

.season-hub-advent-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}.season-hub-advent-door{aspect-ratio:1/1.15;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--hub-line);border-radius:14px;color:#fff;background:linear-gradient(145deg,rgba(25,55,43,.2),rgba(93,20,29,.12),rgba(8,10,12,.85));transition:.2s}.season-hub-advent-door.open:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--hub-accent) 38%,var(--hub-line));box-shadow:0 20px 50px rgba(0,0,0,.16)}.season-hub-advent-door.locked{opacity:.44;cursor:not-allowed}.season-hub-advent-door small{font-size:8px;color:#929b98;letter-spacing:.08em}.season-hub-advent-door strong{font-size:28px;line-height:1.2;margin:4px 0}.season-hub-advent-door span{font-size:8px;font-weight:950;letter-spacing:.12em;color:var(--hub-accent)}.season-hub-advent-reveal{margin-top:16px;padding:26px;border:1px solid var(--hub-line);border-radius:20px;background:linear-gradient(135deg,rgba(33,76,57,.17),rgba(154,31,45,.08),rgba(11,13,15,.88))}.season-hub-advent-reveal img{max-width:100%;max-height:440px;object-fit:cover;border-radius:14px;margin:14px 0}.season-hub-advent-reveal h3{font-size:32px;margin:8px 0}.season-hub-advent-reveal p{max-width:800px;color:#adb2b1;line-height:1.7}

.season-hub-community-split,.season-hub-message-wrap{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:14px}.season-hub-form-card,.season-hub-message-form{padding:22px;border:1px solid var(--hub-line);border-radius:18px;background:var(--hub-surface)}.season-hub-form-card h3{margin-top:0}.season-hub-form{display:grid;gap:12px}.season-hub-form label{display:grid;gap:6px;font-size:10px;font-weight:900;letter-spacing:.1em;color:#a5a8af}.season-hub-submitted{padding:16px;border-radius:12px;background:color-mix(in srgb,var(--hub-accent) 6%,rgba(255,255,255,.025));border:1px solid var(--hub-line)}.season-hub-submitted b,.season-hub-submitted span{display:block}.season-hub-submitted span{font-size:10px;color:var(--hub-muted);margin-top:4px}.season-hub-submitted p{line-height:1.55}.season-hub-wish-wall,.season-hub-message-wall{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.season-hub-wish-wall article,.season-hub-message-wall article{min-height:150px;padding:17px;border:1px solid var(--hub-line);border-radius:14px;background:rgba(255,255,255,.025)}.season-hub-wish-wall article>span{font-size:9px;color:var(--hub-accent);font-weight:950;letter-spacing:.1em}.season-hub-wish-wall article p,.season-hub-message-wall article p{line-height:1.5}.season-hub-wish-wall article div{display:flex;justify-content:space-between;gap:10px;color:#8d929a;font-size:9px;letter-spacing:.08em}.season-hub-message-wall article p{font-size:16px}.season-hub-message-wall article span{font-size:10px;color:var(--hub-accent);font-weight:850}.season-hub-soft-empty,.season-hub-login-panel{padding:24px;border:1px dashed var(--hub-line);border-radius:14px;color:var(--hub-muted);background:rgba(255,255,255,.015)}

.season-hub-tree-wrap{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:35px;align-items:center;padding:30px;border:1px solid var(--hub-line);border-radius:24px;background:linear-gradient(135deg,rgba(16,55,40,.12),rgba(7,9,11,.82))}.season-hub-tree{position:relative;width:min(360px,100%);height:410px;margin:auto}.season-hub-tree .tree-layer{position:absolute;left:50%;transform:translateX(-50%);clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(135deg,#173e2e,#0d261d);filter:drop-shadow(0 20px 25px rgba(0,0,0,.22))}.season-hub-tree .l1{top:30px;width:170px;height:150px;z-index:3}.season-hub-tree .l2{top:105px;width:250px;height:190px;z-index:2}.season-hub-tree .l3{top:195px;width:330px;height:200px;z-index:1}.season-hub-tree .tree-trunk{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:45px;height:70px;background:#4a2d20;border-radius:5px}.season-hub-tree .tree-star{position:absolute;z-index:5;left:50%;top:-12px;transform:translateX(-50%) scale(.7);font-size:54px;color:#5a5546;opacity:.35;text-shadow:none;transition:.4s}.season-hub-tree.has-star .tree-star{color:#e2c772;opacity:1;transform:translateX(-50%) scale(1);text-shadow:0 0 30px rgba(226,199,114,.45)}.season-hub-tree .orn,.season-hub-tree .light{position:absolute;z-index:6;border-radius:50%;opacity:0;transition:.35s}.season-hub-tree .orn{width:16px;height:16px;background:#b73845;box-shadow:0 0 0 3px rgba(255,255,255,.04)}.season-hub-tree .o1{left:43%;top:110px}.season-hub-tree .o2{left:60%;top:182px;background:#c7a657}.season-hub-tree .o3{left:30%;top:240px;background:#cf4650}.season-hub-tree .o4{left:66%;top:280px;background:#d9c28b}.season-hub-tree.has-ornaments .orn{opacity:1}.season-hub-tree .light{width:8px;height:8px;background:#f4d98a;box-shadow:0 0 14px rgba(244,217,138,.8)}.season-hub-tree .p1{left:47%;top:82px}.season-hub-tree .p2{left:38%;top:170px}.season-hub-tree .p3{left:58%;top:230px}.season-hub-tree .p4{left:44%;top:310px}.season-hub-tree.has-lights .p1,.season-hub-tree.has-lights .p2{opacity:1}.season-hub-tree.has-more-lights .p3,.season-hub-tree.has-more-lights .p4{opacity:1}.season-hub-tree-progress strong{display:block;font-size:72px;letter-spacing:-.07em;color:var(--hub-accent)}.season-hub-tree-progress>span{font-size:11px;letter-spacing:.14em;font-weight:950}.season-hub-tree-progress>div{height:7px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden;margin:18px 0}.season-hub-tree-progress>div i{display:block;height:100%;background:linear-gradient(90deg,#244f3e,var(--hub-accent))}.season-hub-tree-progress small{display:block;color:#747a82;margin:8px 0}.season-hub-tree-progress small.done{color:#c7cfd0}

.season-hub-countdown{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:30px;border:1px solid color-mix(in srgb,var(--hub-accent) 25%,var(--hub-line));border-radius:26px;background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--hub-accent) 10%,transparent),transparent 42%),rgba(7,8,11,.78);overflow:hidden}.season-hub-countdown>div{padding:30px 12px;border:1px solid var(--hub-line);border-radius:18px;background:rgba(255,255,255,.025);text-align:center}.season-hub-countdown strong{display:block;font-size:clamp(52px,7vw,94px);line-height:.9;letter-spacing:-.07em;color:#fff}.season-hub-countdown span{display:block;margin-top:12px;font-size:10px;letter-spacing:.16em;color:var(--hub-accent);font-weight:950}.season-hub-countdown>p{display:none;grid-column:1/-1;text-align:center;font-size:clamp(26px,4vw,48px);font-weight:950;letter-spacing:-.04em;color:#f2d27c}.season-hub-countdown.complete>div{display:none}.season-hub-countdown.complete>p{display:block}

.season-hub-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:30px}.season-hub-stat-grid>div{min-height:145px;padding:22px;border:1px solid var(--hub-line);border-radius:16px;background:rgba(255,255,255,.024);display:flex;flex-direction:column;justify-content:end}.season-hub-stat-grid strong{font-size:45px;line-height:1;letter-spacing:-.05em;color:var(--hub-accent)}.season-hub-stat-grid span{margin-top:8px;font-size:10px;letter-spacing:.12em;color:#9ca0a8;font-weight:900}.season-hub-stat-grid.personal>div{justify-content:space-between}.season-hub-stat-grid.personal span{margin:0}.season-hub-stat-grid.personal strong{font-size:26px;color:#f3f3f5;margin-top:18px}.season-hub-timeline{position:relative;display:grid;gap:0;margin-left:18px}.season-hub-timeline:before{content:"";position:absolute;left:8px;top:10px;bottom:10px;width:1px;background:linear-gradient(var(--hub-accent),rgba(255,255,255,.07))}.season-hub-timeline article{position:relative;margin-left:42px;padding:0 0 50px}.season-hub-timeline-dot{position:absolute;left:-40px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--hub-accent);box-shadow:0 0 25px color-mix(in srgb,var(--hub-accent) 50%,transparent)}.season-hub-timeline small{font-size:10px;letter-spacing:.14em;color:var(--hub-accent);font-weight:950}.season-hub-timeline h3{font-size:32px;margin:8px 0}.season-hub-timeline p{max-width:800px;color:var(--hub-muted);line-height:1.65}.season-hub-timeline img{display:block;width:min(680px,100%);max-height:400px;object-fit:cover;border-radius:16px;border:1px solid var(--hub-line);margin:15px 0}.season-hub-timeline a{font-size:11px;font-weight:950;color:var(--hub-accent)}

.season-hub-awards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.season-hub-awards>article{padding:22px;border:1px solid var(--hub-line);border-radius:18px;background:linear-gradient(145deg,rgba(211,175,83,.04),rgba(255,255,255,.02))}.season-hub-award-head span{font-size:9px;letter-spacing:.16em;color:var(--hub-accent);font-weight:950}.season-hub-award-head h3{font-size:27px;margin:7px 0 18px}.season-hub-nominees{display:grid;gap:7px}.season-hub-nominee button{width:100%;display:flex;justify-content:space-between;gap:10px;padding:12px 13px;border:1px solid var(--hub-line);border-radius:10px;background:rgba(255,255,255,.02);color:#c7c9cf;text-align:left;cursor:pointer}.season-hub-nominee button:not(:disabled):hover{border-color:var(--hub-accent);color:#fff}.season-hub-nominee button:disabled{cursor:default}.season-hub-nominee.selected button{border-color:color-mix(in srgb,var(--hub-accent) 50%,var(--hub-line));background:color-mix(in srgb,var(--hub-accent) 7%,transparent);color:#fff}.season-hub-nominee small{color:var(--hub-accent)}

.season-hub-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.9);display:grid;place-items:center;padding:30px}.season-hub-lightbox[hidden]{display:none}.season-hub-lightbox>button{position:absolute;right:22px;top:18px;border:0;background:transparent;color:#fff;font-size:38px;cursor:pointer}.season-hub-lightbox figure{max-width:min(1200px,94vw);margin:0}.season-hub-lightbox img{display:block;max-width:100%;max-height:82vh;object-fit:contain;border-radius:16px}.season-hub-lightbox figcaption{text-align:center;color:#aeb1b7;margin-top:10px}

/* Theme-specific Hub identity. The existing global Seasonal system still owns navbar/body effects. */
.season-hub-halloween{--hub-accent:#df5d28;--hub-accent-2:#6b315f}.season-hub-halloween .season-hub-hero:before{background-image:radial-gradient(circle at 78% 34%,rgba(205,75,27,.2),transparent 27%),radial-gradient(circle at 88% 4%,rgba(87,34,93,.22),transparent 24%),linear-gradient(90deg,rgba(5,5,7,.95),rgba(8,6,10,.67) 53%,rgba(8,5,8,.46)),linear-gradient(180deg,rgba(0,0,0,.08),rgba(3,4,5,.86)),var(--season-hub-hero,none)}.season-hub-halloween .season-hub-hero-mark{background:linear-gradient(145deg,rgba(101,38,74,.2),rgba(165,59,23,.09),rgba(5,6,8,.78))}.season-hub-halloween .season-hub-section.module-cases:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 10% 10%,rgba(113,47,104,.06),transparent 26%),radial-gradient(circle at 88% 70%,rgba(207,75,30,.05),transparent 22%)}
.season-hub-christmas{--hub-accent:#d9b864;--hub-accent-2:#2d6a52}.season-hub-christmas .season-hub-hero:before{background-image:radial-gradient(circle at 75% 20%,rgba(219,187,100,.14),transparent 30%),radial-gradient(circle at 88% 60%,rgba(36,102,78,.14),transparent 30%),linear-gradient(90deg,rgba(4,8,9,.95),rgba(6,12,13,.66) 55%,rgba(4,9,10,.46)),linear-gradient(180deg,rgba(0,0,0,.08),rgba(4,8,9,.86)),var(--season-hub-hero,none)}.season-hub-christmas .season-hub-hero-mark{background:linear-gradient(145deg,rgba(31,89,66,.2),rgba(175,42,55,.08),rgba(5,10,11,.78))}.season-hub-christmas .season-hub-section:nth-of-type(even){background:linear-gradient(180deg,rgba(30,78,59,.015),rgba(255,255,255,.018),rgba(30,78,59,.012))}
.season-hub-newyear{--hub-accent:#d7b45d;--hub-accent-2:#8591a8}.season-hub-newyear .season-hub-hero:before{background-image:radial-gradient(circle at 82% 14%,rgba(229,197,100,.14),transparent 28%),radial-gradient(circle at 68% 45%,rgba(80,94,129,.15),transparent 35%),linear-gradient(90deg,rgba(4,5,9,.96),rgba(6,8,14,.68) 55%,rgba(5,7,12,.43)),linear-gradient(180deg,rgba(0,0,0,.06),rgba(3,4,8,.86)),var(--season-hub-hero,none)}.season-hub-newyear .season-hub-hero-mark{background:linear-gradient(145deg,rgba(219,181,84,.14),rgba(87,101,139,.11),rgba(4,5,9,.8));box-shadow:0 28px 90px rgba(0,0,0,.3),inset 0 0 40px rgba(216,181,91,.03)}

/* Master / control-center UI. Scoped to dedicated Seasonal Hub classes. */
.season-hub-admin-overview{display:grid;grid-template-columns:1.6fr .8fr;gap:12px;margin-bottom:14px}.season-hub-admin-current,.season-hub-admin-next,.season-hub-admin-season-card,.season-hub-admin-note{border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025);padding:22px}.season-hub-admin-current>span,.season-hub-admin-next>span,.season-hub-admin-season-card>div:first-child>span{font-size:9px;letter-spacing:.16em;color:#8d9199;font-weight:950}.season-hub-admin-current h2{font-size:42px;margin:8px 0 4px}.season-hub-admin-current p,.season-hub-admin-next p,.season-hub-admin-season-card p,.season-hub-admin-note p{color:#8e929a}.season-hub-admin-current>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.season-hub-admin-next h3{margin:10px 0 4px;font-size:25px}.season-hub-admin-season-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.season-hub-admin-season-card{position:relative;overflow:hidden}.season-hub-admin-season-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 100% 0%,rgba(227,27,45,.06),transparent 38%)}.season-hub-admin-season-card.season-halloween:before{background:radial-gradient(circle at 100% 0%,rgba(219,85,36,.09),transparent 38%)}.season-hub-admin-season-card.season-christmas:before{background:radial-gradient(circle at 100% 0%,rgba(53,118,89,.09),transparent 38%)}.season-hub-admin-season-card.season-newyear:before{background:radial-gradient(circle at 100% 0%,rgba(214,178,83,.1),transparent 38%)}.season-hub-admin-season-card>div:first-child{display:flex;justify-content:space-between;gap:10px;position:relative}.season-hub-admin-season-card>div:first-child b{font-size:9px;color:#7d828a;letter-spacing:.09em}.season-hub-admin-season-card.active>div:first-child b{color:#77d190}.season-hub-admin-season-card h2{font-size:25px;margin:28px 0 4px;position:relative}.season-hub-admin-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;position:relative}.season-hub-admin-note{margin-top:12px}.season-hub-admin-note b{font-size:11px;letter-spacing:.12em}.season-hub-admin-tabs{display:flex;gap:6px;overflow:auto;margin-bottom:12px;padding-bottom:2px}.season-hub-admin-tabs a{flex:none;padding:9px 11px;border:1px solid rgba(255,255,255,.08);border-radius:9px;color:#9a9ea6;font-size:9px;font-weight:950;letter-spacing:.1em;background:rgba(255,255,255,.02)}.season-hub-admin-tabs a:hover{color:#fff;border-color:rgba(227,27,45,.35)}.season-hub-admin-form{display:grid;gap:12px}.season-hub-admin-toggle-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.season-hub-admin-toggle-grid>label{display:flex;gap:10px;align-items:flex-start;padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.018)}.season-hub-admin-toggle-grid b,.season-hub-admin-toggle-grid small{display:block}.season-hub-admin-toggle-grid small{color:#777c85;margin-top:3px}.season-hub-admin-save{display:flex;justify-content:flex-end;margin-bottom:14px}.season-hub-module-sort{display:grid;gap:7px}.season-hub-module-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.018);cursor:grab}.season-hub-module-row.dragging{opacity:.45;border-color:var(--red)}.season-hub-module-row label{display:flex;gap:10px;align-items:center}.season-hub-module-row small{color:#777d86;font-size:9px;letter-spacing:.08em}.season-hub-drag{color:#636872}.season-hub-inline-fields{display:grid;grid-template-columns:92px 1fr;gap:7px}.season-hub-tag-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.season-hub-tag-group{padding:14px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.015);max-height:360px;overflow:auto}.season-hub-tag-group h3{font-size:11px;letter-spacing:.13em;margin:0 0 10px}.season-hub-tag-group label{display:flex;gap:9px;align-items:flex-start;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.04);font-size:11px;color:#aeb1b8}.season-hub-tag-group small{color:#696e77}.season-hub-admin-create{padding:14px;border:1px dashed rgba(255,255,255,.09);border-radius:12px;margin-bottom:14px}.season-hub-admin-list{display:grid;gap:8px}.season-hub-admin-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;align-items:start;padding:14px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:rgba(255,255,255,.015)}.season-hub-admin-list.compact>article{align-items:center}.season-hub-admin-list article>div>span{font-size:9px;font-weight:950;letter-spacing:.11em;color:#747983}.season-hub-admin-list h3{margin:5px 0;font-size:17px}.season-hub-admin-list p{margin:4px 0;color:#858a93;line-height:1.45}.season-hub-admin-list details{min-width:240px}.season-hub-admin-list details summary{cursor:pointer;color:#bfc2c8;font-size:10px;font-weight:900}.season-hub-clue-admin{display:grid;gap:7px;margin-top:10px}.season-hub-clue-admin>div{padding:10px;border:1px solid rgba(255,255,255,.06);border-radius:8px}.season-hub-clue-admin span,.season-hub-clue-admin b{display:block}.season-hub-inline-form{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.season-hub-inline-form .input{min-width:120px}.text-danger{border:0;background:transparent;color:#d05c67;font-size:9px;font-weight:950;letter-spacing:.08em;cursor:pointer}.season-hub-admin-nominees{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.season-hub-admin-nominees>span{display:flex;align-items:center;gap:4px;padding:5px 7px;border:1px solid rgba(255,255,255,.07);border-radius:7px;font-size:10px;color:#9fa3aa}.season-hub-admin-nominees form{display:inline}.season-hub-admin-nominees button{border:0;background:transparent;color:#d05c67;cursor:pointer}

@media(max-width:1100px){.season-hub-hero-inner{grid-template-columns:1fr}.season-hub-hero-mark{justify-self:start;width:180px;min-height:150px}.season-hub-event-grid{grid-template-columns:repeat(2,1fr)}.season-hub-advent-grid{grid-template-columns:repeat(6,1fr)}.season-hub-masonry,.season-hub-memory-wall{grid-template-columns:repeat(3,1fr)}.season-hub-admin-season-grid,.season-hub-tag-columns{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.season-hub-hero{min-height:540px}.season-hub-hero-inner{padding-top:120px;padding-bottom:52px}.season-hub-hero-mark{display:none}.season-hub-nav-strip{top:76px}.season-hub-section{padding:68px 0}.season-hub-section-head{display:block}.season-hub-section-head>p{margin-top:12px}.season-hub-event-grid,.season-hub-case-grid,.season-hub-update-grid,.season-hub-next-grid,.season-hub-awards,.season-hub-community-split,.season-hub-message-wrap,.season-hub-tree-wrap,.season-hub-passport{grid-template-columns:1fr}.season-hub-passport-summary{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:center}.season-hub-passport-summary>div{grid-column:1/-1}.season-hub-advent-grid{grid-template-columns:repeat(4,1fr)}.season-hub-countdown{grid-template-columns:repeat(2,1fr)}.season-hub-stat-grid{grid-template-columns:repeat(2,1fr)}.season-hub-milestones{grid-template-columns:repeat(2,1fr)}.season-hub-tree{height:360px;transform:scale(.88)}.season-hub-admin-overview,.season-hub-admin-season-grid,.season-hub-admin-toggle-grid,.season-hub-tag-columns{grid-template-columns:1fr}.season-hub-admin-list>article{grid-template-columns:1fr}.season-hub-admin-list details{min-width:0}}
@media(max-width:560px){.season-hub-hero h1{font-size:46px}.season-hub-hero p{font-size:16px}.season-hub-hero-actions .button{width:100%;justify-content:center}.season-hub-nav-strip .container{min-height:52px;gap:14px}.season-hub-section{padding:55px 0}.season-hub-section-head h2{font-size:34px}.season-hub-event-grid{grid-template-columns:1fr}.season-hub-masonry,.season-hub-memory-wall{grid-template-columns:repeat(2,1fr);grid-auto-rows:130px}.season-hub-advent-grid{grid-template-columns:repeat(3,1fr)}.season-hub-countdown{padding:14px;gap:7px}.season-hub-countdown>div{padding:20px 8px}.season-hub-countdown strong{font-size:46px}.season-hub-stat-grid{grid-template-columns:1fr}.season-hub-wish-wall,.season-hub-message-wall{grid-template-columns:1fr}.season-hub-objective{grid-template-columns:30px 1fr}.season-hub-objective form{grid-column:2}.season-hub-meter{padding:20px}.season-hub-meter-value{display:block}.season-hub-meter-value span{display:block;margin-top:10px}.season-hub-milestones{grid-template-columns:1fr}.season-hub-tree-wrap{padding:20px}.season-hub-tree{width:290px;transform:scale(.82);transform-origin:top center;margin-bottom:-60px}.season-hub-inline-fields{grid-template-columns:1fr}.season-hub-module-row{grid-template-columns:28px 1fr}.season-hub-module-row small{grid-column:2}.season-hub-admin-current h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.season-hub *{scroll-behavior:auto!important;transition:none!important}.season-hub-event-card:hover,.season-hub-update-card:hover,.season-hub-next-grid>a:hover,.season-hub-advent-door.open:hover{transform:none}}

/* Homepage CTA exists only while an active seasonal hub is public. */
.season-hub-home-cta-wrap{position:relative;z-index:4;padding:18px 0 0}.season-hub-home-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:22px 24px;border:1px solid rgba(255,255,255,.09);border-radius:17px;background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(255,255,255,.018));color:#fff;text-decoration:none;box-shadow:0 18px 50px rgba(0,0,0,.13);transition:.22s}.season-hub-home-cta:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--season-accent,var(--red)) 35%,rgba(255,255,255,.09))}.season-hub-home-cta span{font-size:9px;font-weight:950;letter-spacing:.15em;color:var(--season-accent,var(--red))}.season-hub-home-cta h2{font-size:24px;margin:6px 0 4px}.season-hub-home-cta p{margin:0;color:#92969e;max-width:760px}.season-hub-home-cta>b{flex:none;font-size:10px;letter-spacing:.11em;color:#b6bac1}.season-hub-home-cta.season-halloween{background:linear-gradient(135deg,rgba(104,43,91,.10),rgba(205,76,28,.07),rgba(255,255,255,.015))}.season-hub-home-cta.season-christmas{background:linear-gradient(135deg,rgba(35,93,69,.10),rgba(179,42,55,.06),rgba(255,255,255,.015))}.season-hub-home-cta.season-newyear{background:linear-gradient(135deg,rgba(213,177,82,.09),rgba(91,105,143,.07),rgba(255,255,255,.015))}@media(max-width:700px){.season-hub-home-cta{display:block}.season-hub-home-cta>b{display:inline-block;margin-top:14px}}
.season-hub-countdown>.seasonal-countdown-complete{grid-column:1/-1;padding:38px 20px;text-align:center;font-size:clamp(28px,4vw,52px);font-weight:950;letter-spacing:-.04em;color:#f2d27c}


/* Christmas calendar claim system V3.1 — scoped to Seasonal Hub/Admin only */
.season-hub-advent-notice{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px;padding:17px 18px;border:1px solid rgba(221,182,88,.18);border-radius:16px;background:linear-gradient(120deg,rgba(16,50,35,.28),rgba(112,22,34,.12),rgba(11,13,15,.82))}.season-hub-advent-notice>div{display:flex;gap:13px;align-items:flex-start}.season-hub-advent-notice>div>span{font-size:24px}.season-hub-advent-notice b{display:block;font-size:11px;letter-spacing:.12em}.season-hub-advent-notice p{margin:4px 0 0;color:#aeb6b2;line-height:1.55;font-size:13px;max-width:760px}.season-hub-advent-door-form{margin:0}.season-hub-advent-door-form .season-hub-advent-door{width:100%;font:inherit}.season-hub-advent-door.available{cursor:pointer;border-color:rgba(209,56,69,.42);background:linear-gradient(145deg,rgba(33,86,57,.28),rgba(146,27,39,.19),rgba(8,10,12,.9));box-shadow:inset 0 0 30px rgba(190,35,49,.05)}.season-hub-advent-door.available span{color:#f2d07c}.season-hub-advent-door.claimed{border-color:rgba(221,182,88,.34);background:linear-gradient(145deg,rgba(88,70,24,.14),rgba(27,75,50,.22),rgba(8,10,12,.9))}.season-hub-advent-door.claimed span{color:#e0bf69}.season-hub-advent-door.missed{opacity:.28;filter:saturate(.45)}.season-hub-advent-door.future{opacity:.47}.season-hub-advent-door em{margin-top:5px;font-size:7px;font-style:normal;color:#858d8a;letter-spacing:.08em}.season-hub-claim-card{position:relative;overflow:hidden;border-color:rgba(221,182,88,.3);background:radial-gradient(circle at 80% 0,rgba(218,178,73,.12),transparent 30%),linear-gradient(135deg,rgba(28,73,51,.2),rgba(128,24,37,.12),rgba(9,11,12,.94))}.season-hub-claim-card:after{content:"EVOLUTION RP CHRISTMAS";position:absolute;right:-18px;bottom:12px;font-size:54px;font-weight:1000;letter-spacing:-.06em;color:rgba(255,255,255,.025);pointer-events:none}.season-hub-claim-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.season-hub-claim-status{padding:8px 10px;border:1px solid rgba(221,182,88,.25);border-radius:999px;color:#e4c36f;background:rgba(221,182,88,.07);font-size:9px;font-weight:950;letter-spacing:.11em;white-space:nowrap}.season-hub-claim-status.redeemed{border-color:rgba(93,190,126,.28);background:rgba(93,190,126,.08);color:#7fd39c}.season-hub-reward-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.season-hub-reward{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.025)}.season-hub-reward>span{display:grid;place-items:center;min-width:42px;height:42px;padding:0 7px;border-radius:10px;background:rgba(211,43,57,.12);color:#f0c86d;font-weight:1000}.season-hub-reward b,.season-hub-reward small{display:block}.season-hub-reward b{font-size:13px}.season-hub-reward small{margin-top:3px;color:#737b78;font-size:9px;font-family:monospace}.season-hub-proof{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1px;margin-top:18px;border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;background:rgba(255,255,255,.07)}.season-hub-proof>div{padding:15px;background:#0b0d0e}.season-hub-proof span,.season-hub-proof strong,.season-hub-proof small{display:block}.season-hub-proof span{font-size:8px;color:#747d79;letter-spacing:.12em;font-weight:900}.season-hub-proof strong{margin-top:6px;font-size:13px;letter-spacing:.04em}.season-hub-proof small{margin-top:3px;color:#737b78;font-size:9px}.season-hub-proof>div:first-child strong{font-family:monospace;color:#edcf7b;font-size:17px}.season-hub-ticket-instruction{position:relative;z-index:1;margin-top:14px;padding:16px;border:1px dashed rgba(221,182,88,.25);border-radius:14px;background:rgba(221,182,88,.035)}.season-hub-ticket-instruction b{font-size:11px;letter-spacing:.08em}.season-hub-ticket-instruction p{margin:7px 0 13px;max-width:900px;font-size:12px}.season-hub-delivered{position:relative;z-index:1;margin-top:12px;padding:12px 14px;border-radius:12px;background:rgba(76,170,109,.08);border:1px solid rgba(76,170,109,.18);color:#82d49e;font-size:12px;font-weight:800}
.season-hub-advent-admin-callout{display:flex;gap:12px;padding:13px 15px;margin-bottom:14px;border:1px solid rgba(221,182,88,.16);border-radius:12px;background:rgba(221,182,88,.04);font-size:11px}.season-hub-advent-admin-callout b{color:#e3c36f}.season-hub-advent-admin-callout span{color:#a1aaa6}.season-hub-calendar-generator{align-items:end;margin-bottom:18px}.season-hub-advent-configure{margin-bottom:20px}.season-hub-reward-config{margin:18px 0;padding:16px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(255,255,255,.018)}.season-hub-reward-config-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.season-hub-reward-config-head h3{margin:2px 0}.season-hub-reward-config-head p{margin:3px 0 0;color:#7f8985;font-size:11px}.season-hub-reward-config-list{display:grid;gap:8px}.season-hub-reward-config-row{display:grid;grid-template-columns:1fr 1.2fr 120px 42px;gap:8px;align-items:end}.season-hub-reward-remove{height:42px;border:1px solid rgba(255,89,89,.18);border-radius:10px;background:rgba(255,89,89,.05);color:#ff7777;font-size:20px;cursor:pointer}.season-hub-advent-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:18px}.season-hub-advent-admin-grid>article{display:grid;grid-template-columns:74px 1fr auto;gap:13px;align-items:center;padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.018)}.season-hub-advent-admin-day{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:66px;border-radius:10px;background:rgba(255,255,255,.035)}.season-hub-advent-admin-day strong{font-size:25px}.season-hub-advent-admin-day span{font-size:8px;color:#777f7c}.season-hub-advent-admin-grid h3{margin:0 0 3px;font-size:14px}.season-hub-advent-admin-grid p{margin:0;color:#7f8885;font-size:10px}.season-hub-advent-admin-actions{display:grid;gap:5px;justify-items:end}.season-hub-admin-reward-preview{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.season-hub-admin-reward-preview span{padding:4px 6px;border-radius:7px;background:rgba(255,255,255,.04);color:#aeb6b3;font-size:8px}.season-hub-claim-admin-list article{align-items:center}.season-hub-admin-claim-status{display:block;margin-bottom:8px;color:#e1be66;font-size:9px;font-weight:950;letter-spacing:.08em}.season-hub-admin-claim-status.done{color:#74cc91}
@media(max-width:900px){.season-hub-reward-list{grid-template-columns:repeat(2,1fr)}.season-hub-proof{grid-template-columns:1fr}.season-hub-advent-admin-grid{grid-template-columns:1fr}.season-hub-reward-config-row{grid-template-columns:1fr 1fr 100px 42px}}
@media(max-width:560px){.season-hub-advent-notice{align-items:flex-start;flex-direction:column}.season-hub-advent-notice .button{width:100%;justify-content:center}.season-hub-claim-head{display:block}.season-hub-claim-status{display:inline-flex;margin-top:8px}.season-hub-reward-list{grid-template-columns:1fr}.season-hub-reward-config-head{align-items:flex-start;flex-direction:column}.season-hub-reward-config-row{grid-template-columns:1fr 80px 42px}.season-hub-reward-config-row .field:nth-child(1){grid-column:1/-1}.season-hub-advent-admin-grid>article{grid-template-columns:62px 1fr}.season-hub-advent-admin-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.season-hub-proof>div:first-child strong{font-size:14px}}

/* ========================================================================== 
   V4.0 — Seasonal Hub atmosphere pass
   Scoped to the active seasonal data-theme only. The existing Hub layout,
   content model and normal Evolution RP UI remain unchanged.
   ========================================================================== */
html[data-theme="halloween"] .season-hub-halloween{
  --hub-accent:#d95a27;--hub-accent-2:#5f285f;--hub-line:rgba(218,104,56,.14);--hub-surface:rgba(12,8,9,.82);
}
html[data-theme="halloween"] .season-hub-halloween .season-hub-hero:before{
  background-image:linear-gradient(90deg,rgba(4,3,4,.96) 2%,rgba(8,4,5,.72) 45%,rgba(43,13,8,.36)),radial-gradient(circle at 82% 23%,rgba(222,82,31,.20),transparent 28%),radial-gradient(circle at 72% 60%,rgba(95,40,101,.14),transparent 31%),var(--season-hub-hero,none);
}
html[data-theme="halloween"] .season-hub-halloween .season-hub-hero:after{height:52%;background:linear-gradient(180deg,transparent,rgba(8,4,5,.55) 42%,rgba(5,4,5,.97))}
html[data-theme="halloween"] .season-hub-halloween .season-hub-hero-mark{border-color:rgba(224,99,47,.18);background:radial-gradient(circle at 70% 15%,rgba(98,39,104,.14),transparent 42%),linear-gradient(145deg,rgba(88,29,17,.18),rgba(8,6,8,.78));box-shadow:0 32px 90px rgba(0,0,0,.34),inset 0 1px 0 rgba(232,118,59,.04)}
html[data-theme="halloween"] .season-hub-halloween .season-hub-section:nth-of-type(even){background:radial-gradient(circle at 7% 12%,rgba(96,37,92,.045),transparent 28%),linear-gradient(180deg,rgba(60,19,11,.015),rgba(255,255,255,.018),rgba(0,0,0,.02))}
html[data-theme="halloween"] .season-hub-halloween :is(.season-hub-case,.season-hub-event-card,.season-hub-meter,.season-hub-update-card){box-shadow:0 24px 76px rgba(0,0,0,.23),inset 0 1px 0 rgba(218,95,45,.025)}
html[data-theme="halloween"] .season-hub-halloween .season-hub-case:after{content:"";position:absolute;right:-34px;bottom:-38px;width:130px;height:130px;border:1px solid rgba(129,59,125,.08);border-radius:50%;box-shadow:0 0 70px rgba(116,42,107,.06);pointer-events:none}

html[data-theme="christmas"] .season-hub-christmas{
  --hub-accent:#c93040;--hub-accent-2:#2f6b50;--hub-line:rgba(190,221,211,.14);--hub-surface:rgba(7,15,15,.82);
}
html[data-theme="christmas"] .season-hub-christmas .season-hub-hero:before{
  background-image:linear-gradient(90deg,rgba(3,7,9,.96) 2%,rgba(4,12,12,.70) 45%,rgba(20,47,39,.30)),radial-gradient(circle at 80% 20%,rgba(240,211,147,.13),transparent 27%),radial-gradient(circle at 68% 62%,rgba(67,123,103,.13),transparent 34%),var(--season-hub-hero,none);
}
html[data-theme="christmas"] .season-hub-christmas .season-hub-hero-mark{border-color:rgba(207,228,219,.16);background:radial-gradient(circle at 76% 8%,rgba(229,201,130,.10),transparent 40%),linear-gradient(145deg,rgba(36,92,67,.16),rgba(7,13,14,.78));box-shadow:0 32px 90px rgba(0,0,0,.28),inset 0 1px 0 rgba(235,245,241,.04)}
html[data-theme="christmas"] .season-hub-christmas .season-hub-nav-strip{border-bottom-color:rgba(200,224,216,.12);background:rgba(5,13,13,.72)}
html[data-theme="christmas"] .season-hub-christmas :is(.season-hub-advent-door,.season-hub-event-card,.season-hub-tree-wrap,.season-hub-memory){box-shadow:0 22px 68px rgba(0,0,0,.18),inset 0 1px 0 rgba(226,241,236,.035)}
html[data-theme="christmas"] .season-hub-christmas .season-hub-advent-door{position:relative;overflow:hidden}
html[data-theme="christmas"] .season-hub-christmas .season-hub-advent-door:before{content:"";position:absolute;left:-4%;right:-4%;top:-3px;height:10px;opacity:.30;pointer-events:none;background:radial-gradient(ellipse at 10px 3px,rgba(236,244,242,.76) 0 7px,transparent 8px) 0 0/31px 10px repeat-x;filter:drop-shadow(0 2px 2px rgba(50,70,74,.28))}
html[data-theme="christmas"] .season-hub-christmas .season-hub-section:nth-of-type(even){background:radial-gradient(circle at 90% 4%,rgba(218,198,141,.035),transparent 25%),radial-gradient(circle at 9% 90%,rgba(52,103,85,.05),transparent 30%),linear-gradient(180deg,rgba(255,255,255,.01),rgba(255,255,255,.023),rgba(0,0,0,.015))}

html[data-theme="newyear"] .season-hub-newyear{
  --hub-accent:#d7b358;--hub-accent-2:#8c96aa;--hub-line:rgba(222,190,110,.15);--hub-surface:rgba(7,9,15,.84);
}
html[data-theme="newyear"] .season-hub-newyear .season-hub-hero:before{
  background-image:linear-gradient(90deg,rgba(3,4,9,.97) 2%,rgba(5,7,15,.68) 45%,rgba(24,27,51,.28)),radial-gradient(circle at 81% 20%,rgba(229,193,104,.17),transparent 27%),radial-gradient(circle at 68% 62%,rgba(103,113,163,.12),transparent 34%),var(--season-hub-hero,none);
}
html[data-theme="newyear"] .season-hub-newyear .season-hub-hero-mark{border-color:rgba(225,192,108,.19);background:linear-gradient(140deg,rgba(194,157,70,.11),rgba(14,17,29,.80) 45%,rgba(120,132,162,.055));box-shadow:0 34px 100px rgba(0,0,0,.31),inset 0 1px 0 rgba(249,226,169,.055)}
html[data-theme="newyear"] .season-hub-newyear :is(.season-hub-countdown,.season-hub-awards,.season-hub-timeline,.season-hub-next-grid,.season-hub-message-wall){position:relative}
html[data-theme="newyear"] .season-hub-newyear .season-hub-countdown{border-color:rgba(225,192,108,.18);background:radial-gradient(circle at 50% -35%,rgba(225,192,108,.10),transparent 45%),linear-gradient(145deg,rgba(11,14,25,.90),rgba(5,7,12,.90));box-shadow:0 30px 90px rgba(0,0,0,.25),inset 0 1px 0 rgba(248,225,164,.04)}
html[data-theme="newyear"] .season-hub-newyear .season-hub-countdown strong{color:#efd48b;text-shadow:0 0 28px rgba(224,187,91,.11)}
html[data-theme="newyear"] .season-hub-newyear :is(.season-hub-nominee,.season-hub-update-card,.season-hub-event-card,.season-hub-memory,.season-hub-message-wrap){background-image:linear-gradient(135deg,rgba(216,179,85,.035),transparent 37%,rgba(141,152,178,.025));border-color:rgba(217,184,101,.13)}
html[data-theme="newyear"] .season-hub-newyear .season-hub-section:nth-of-type(even){background:radial-gradient(circle at 87% 8%,rgba(219,182,88,.04),transparent 27%),radial-gradient(circle at 10% 88%,rgba(83,97,145,.05),transparent 31%),linear-gradient(180deg,rgba(255,255,255,.009),rgba(255,255,255,.021),rgba(0,0,0,.015))}

@media(max-width:720px){
  html[data-theme="halloween"] .season-hub-halloween .season-hub-hero:before,
  html[data-theme="christmas"] .season-hub-christmas .season-hub-hero:before,
  html[data-theme="newyear"] .season-hub-newyear .season-hub-hero:before{background-position:center;background-size:cover}
}
@media(prefers-reduced-motion:reduce){
  html[data-theme="halloween"] .season-hub-halloween *,html[data-theme="christmas"] .season-hub-christmas *,html[data-theme="newyear"] .season-hub-newyear *{scroll-behavior:auto!important}
}

/* ==========================================================================\n   V5 · Seasonal submissions moderation + community walls\n   ========================================================================== */
.control-sidebar a .side-count{margin-left:auto;min-width:20px;height:20px;padding:0 6px;display:inline-grid;place-items:center;border-radius:999px;background:var(--red,#e31b2d);color:#fff;font-size:9px;font-weight:950;line-height:1;box-shadow:0 0 0 3px rgba(227,27,45,.08)}
.control-sidebar a{gap:9px}.control-sidebar a>span:first-child{min-width:0}
.seasonal-control-submissions{margin:18px 0;padding:20px 22px;border:1px solid rgba(227,55,70,.20);border-radius:16px;background:radial-gradient(circle at 86% -20%,rgba(227,40,55,.10),transparent 34%),linear-gradient(145deg,#101014,#0b0b0e);display:flex;justify-content:space-between;align-items:center;gap:22px}.seasonal-control-submissions h2{margin:5px 0;font-size:22px}.seasonal-control-submissions p{margin:0;color:var(--muted);font-size:12px}

.season-hub-char-counter{display:block;text-align:right;margin-top:6px;color:#727781;font-size:10px;font-weight:800}.season-hub-char-counter.near-limit{color:#d9b35f}.season-hub-char-counter.at-limit{color:#e55d68}
.season-hub-form-kicker{display:inline-flex;margin-bottom:8px;color:#d7b36a;font-size:9px;font-weight:950;letter-spacing:.12em}.season-hub-submitted{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:16px;background:rgba(255,255,255,.025)}.season-hub-submitted>b,.season-hub-submitted>span{display:block}.season-hub-submitted>span{margin-top:5px;font-size:10px;font-weight:950;letter-spacing:.08em}.season-hub-submitted.status-pending>span{color:#d8b15f}.season-hub-submitted.status-approved>span{color:#74c893}.season-hub-submitted.status-rejected>span{color:#df6a74}.season-hub-submitted p{margin:12px 0 0}.season-hub-submitted small{display:block;margin-top:10px;color:#9ba0aa}.season-hub-resubmit-note{margin-bottom:12px;padding:10px 12px;border:1px solid rgba(216,177,87,.13);border-radius:10px;background:rgba(216,177,87,.035);color:#b8a373;font-size:11px}
.season-hub-public-submission{position:relative;overflow:hidden}.season-hub-public-submission:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.6}.season-hub-public-submission>*{position:relative;z-index:1}
html[data-theme="christmas"] .season-hub-public-submission.christmas-wish{border-color:rgba(194,222,211,.14);background:radial-gradient(circle at 90% 0,rgba(224,196,127,.08),transparent 30%),linear-gradient(145deg,rgba(9,19,18,.88),rgba(6,11,13,.92));box-shadow:0 18px 52px rgba(0,0,0,.19)}
html[data-theme="christmas"] .season-hub-public-submission.christmas-wish:before{content:"";position:absolute;left:-3%;right:-3%;top:-4px;height:11px;pointer-events:none;background:radial-gradient(ellipse at 12px 2px,#f6fafc 0 7px,transparent 8px) 0 0/37px 11px repeat-x;opacity:.45;filter:drop-shadow(0 2px 2px rgba(89,111,126,.20))}
html[data-theme="newyear"] .season-hub-public-submission.newyear-message{border-color:rgba(220,188,105,.15);background:linear-gradient(140deg,rgba(217,180,85,.045),rgba(9,11,19,.91) 35%,rgba(134,145,174,.025));box-shadow:0 20px 60px rgba(0,0,0,.22),inset 0 1px 0 rgba(249,225,163,.035)}
html[data-theme="newyear"] .season-hub-public-submission.newyear-message:after{background:radial-gradient(circle at 91% 9%,rgba(231,199,116,.11),transparent 19%)}
.season-hub-public-submission.newyear-message>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.season-hub-public-submission.newyear-message small{color:#6e7480;font-size:9px}
.season-hub-soft-empty b,.season-hub-soft-empty span{display:block}.season-hub-soft-empty span{margin-top:7px;color:#777c85;font-size:11px}

/* Approval dashboard. */
.seasonal-approval-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.seasonal-approval-stat{min-width:0;padding:17px 18px;border:1px solid #292a31;border-radius:14px;background:linear-gradient(145deg,#111216,#0c0d10)}.seasonal-approval-stat span{display:block;color:#777b84;font-size:8px;font-weight:950;letter-spacing:.14em}.seasonal-approval-stat strong{display:block;margin-top:7px;font-size:28px;line-height:1}.seasonal-approval-stat.priority{border-color:rgba(227,54,70,.25);background:radial-gradient(circle at 90% 0,rgba(227,35,51,.10),transparent 36%),linear-gradient(145deg,#121114,#0c0d10)}
.seasonal-approval-toolbar{margin-bottom:16px;padding:14px 16px}.seasonal-approval-type-tabs,.seasonal-approval-status-tabs{display:flex;gap:7px;flex-wrap:wrap}.seasonal-approval-status-tabs{margin-top:9px}.seasonal-approval-type-tabs a,.seasonal-approval-status-tabs a{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border:1px solid #2a2b31;border-radius:9px;background:#0d0e11;color:#858a94;text-decoration:none;font-size:9px;font-weight:950;letter-spacing:.08em}.seasonal-approval-type-tabs a.active,.seasonal-approval-status-tabs a.active{border-color:rgba(227,54,70,.30);background:rgba(227,31,48,.07);color:#fff}.seasonal-approval-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;margin-top:14px}.seasonal-approval-search .input{min-width:0}
.seasonal-approval-workspace{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr);gap:16px;align-items:start}.seasonal-approval-bulk-form{min-width:0}.seasonal-approval-list,.seasonal-approval-detail{margin:0;min-width:0}.seasonal-approval-detail{position:sticky;top:18px}.seasonal-approval-list-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.seasonal-approval-list-head h2{margin:4px 0 0}.seasonal-approval-select-all{color:#858a94;font-size:9px;font-weight:900}.seasonal-approval-cards{display:grid;gap:8px}.seasonal-approval-card{position:relative;border:1px solid #27282e;border-radius:13px;background:#0d0e11;transition:border-color .18s ease,transform .18s ease,background .18s ease}.seasonal-approval-card:hover{transform:translateY(-1px);border-color:#34363e;background:#101115}.seasonal-approval-card.selected{border-color:rgba(227,59,74,.42);box-shadow:0 0 0 1px rgba(227,59,74,.06)}.seasonal-approval-check{position:absolute;z-index:4;left:13px;top:15px}.seasonal-approval-card-link{min-height:102px;padding:14px 14px 14px 43px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:start;color:inherit;text-decoration:none}.seasonal-approval-card-link>img{width:44px;height:44px;border-radius:12px;object-fit:cover;background:#17181c}.seasonal-approval-type-icon{position:absolute;left:77px;top:46px;width:20px;height:20px;display:grid;place-items:center;border:2px solid #0d0e11;border-radius:7px;background:#17181d;font-size:10px}.seasonal-approval-card-link div{min-width:0}.seasonal-approval-card-link small,.seasonal-approval-card-link b,.seasonal-approval-card-link time{display:block}.seasonal-approval-card-link small{color:#737780;font-size:8px;font-weight:900;letter-spacing:.08em}.seasonal-approval-card-link b{margin-top:4px;font-size:12px}.seasonal-approval-card-link p{margin:5px 0;color:#a3a6ad;font-size:11px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.seasonal-approval-card-link time{color:#62666e;font-size:8px}.seasonal-approval-card-link em{position:absolute;left:43px;bottom:11px;color:#d0aa56;font-size:8px;font-style:normal;font-weight:950;letter-spacing:.06em}.seasonal-approval-status{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid #34353c;border-radius:999px;color:#9a9da5;font-size:8px;font-weight:950;letter-spacing:.07em;white-space:nowrap}.seasonal-approval-status.status-pending{border-color:rgba(216,177,87,.25);color:#d8b45f;background:rgba(216,177,87,.045)}.seasonal-approval-status.status-approved{border-color:rgba(79,188,118,.24);color:#74c993;background:rgba(79,188,118,.045)}.seasonal-approval-status.status-rejected{border-color:rgba(221,82,95,.26);color:#df737d;background:rgba(221,82,95,.045)}.seasonal-approval-status.status-archived{color:#7d818a}
.seasonal-approval-bulkbar{position:sticky;bottom:10px;z-index:6;margin-top:12px;padding:10px;border:1px solid #2e2f36;border-radius:12px;background:rgba(10,11,14,.94);backdrop-filter:blur(14px);display:grid;grid-template-columns:auto auto auto auto minmax(150px,1fr);gap:7px;align-items:center}.seasonal-approval-bulkbar>span{color:#8a8e97;font-size:9px;font-weight:900}.seasonal-approval-bulkbar .input{height:36px;font-size:10px}
.seasonal-approval-empty{text-align:center;padding:46px 18px}.seasonal-approval-empty>span{display:grid;width:42px;height:42px;margin:0 auto 12px;place-items:center;border:1px solid rgba(84,186,119,.20);border-radius:13px;background:rgba(84,186,119,.045);color:#72c690;font-size:17px}.seasonal-approval-empty h3{margin:0}.seasonal-approval-empty p{color:#777b84;font-size:11px}.seasonal-approval-detail-head{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:13px;align-items:center}.seasonal-approval-detail-head>img{width:58px;height:58px;border-radius:15px;object-fit:cover}.seasonal-approval-detail-head span:first-child{color:#737780;font-size:8px;font-weight:950;letter-spacing:.10em}.seasonal-approval-detail-head h2{margin:3px 0 0;font-size:18px}.seasonal-approval-detail-head p{margin:4px 0 0;color:#6f737d;font-size:9px;overflow-wrap:anywhere}.seasonal-approval-warning{margin-top:14px;padding:12px;border:1px solid rgba(216,177,87,.20);border-radius:11px;background:rgba(216,177,87,.04)}.seasonal-approval-warning b,.seasonal-approval-warning span{display:block}.seasonal-approval-warning b{color:#d6ae58;font-size:9px;letter-spacing:.08em}.seasonal-approval-warning span{margin-top:4px;color:#9b8a65;font-size:10px}.seasonal-approval-message{margin-top:17px;padding:17px;border:1px solid #282a30;border-radius:13px;background:#0b0c0f}.seasonal-approval-message span{color:#70747d;font-size:8px;font-weight:950;letter-spacing:.12em}.seasonal-approval-message p{margin:9px 0 0;color:#d7d8dc;font-size:13px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.seasonal-approval-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:13px 0}.seasonal-approval-meta div{padding:10px;border:1px solid #25262b;border-radius:10px;background:#0c0d10}.seasonal-approval-meta dt{color:#666a73;font-size:7px;font-weight:950;letter-spacing:.12em}.seasonal-approval-meta dd{margin:5px 0 0;color:#bbbfc7;font-size:10px;overflow-wrap:anywhere}.seasonal-approval-reason{padding:12px;border-left:2px solid #9f4b54;background:#100c0e}.seasonal-approval-reason b{font-size:8px;color:#bd747b}.seasonal-approval-reason p{margin:5px 0 0;color:#9c878a;font-size:10px}.seasonal-approval-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.seasonal-approval-actions form{margin:0}.seasonal-approval-public-settings{margin-top:17px;padding-top:15px;border-top:1px solid #26272c;display:grid;gap:10px}.seasonal-approval-dialog{width:min(92vw,510px);padding:0;border:1px solid #34353c;border-radius:18px;background:#0e0f12;color:#fff;box-shadow:0 40px 120px rgba(0,0,0,.58)}.seasonal-approval-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}.seasonal-approval-dialog form{padding:24px}.seasonal-approval-dialog h2{margin:6px 0}.seasonal-approval-dialog p{color:#858991;font-size:11px}.seasonal-approval-dialog form>div{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}

@media(max-width:1100px){.seasonal-approval-workspace{grid-template-columns:1fr}.seasonal-approval-detail{position:static}.seasonal-approval-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.seasonal-control-submissions{align-items:flex-start;flex-direction:column}.seasonal-approval-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.seasonal-approval-search{grid-template-columns:1fr}.seasonal-approval-card-link{grid-template-columns:40px minmax(0,1fr);padding-left:42px}.seasonal-approval-card-link>img{width:40px;height:40px}.seasonal-approval-card-link>.seasonal-approval-status{grid-column:2;justify-self:start}.seasonal-approval-type-icon{left:70px}.seasonal-approval-bulkbar{grid-template-columns:1fr 1fr}.seasonal-approval-bulkbar>span,.seasonal-approval-bulkbar .input{grid-column:1/-1}.seasonal-approval-detail-head{grid-template-columns:50px minmax(0,1fr)}.seasonal-approval-detail-head>img{width:50px;height:50px}.seasonal-approval-detail-head>.seasonal-approval-status{grid-column:2;justify-self:start}.seasonal-approval-meta{grid-template-columns:1fr}}

/* V5 Christmas Hub snow depth — selective, organic accumulation only. */
html[data-theme="christmas"] body.season-snow-build-on .season-hub-christmas .season-hub-hero-inner{isolation:isolate}
html[data-theme="christmas"] body.season-snow-build-on .season-hub-christmas .season-hub-hero-inner>*{position:relative;z-index:2}
html[data-theme="christmas"] body.season-snow-build-on .season-hub-christmas .season-hub-hero-inner:after{
  content:"";position:absolute;z-index:1;pointer-events:none;left:50%;bottom:-73px;transform:translateX(-50%);width:100vw;height:38px;
  background:linear-gradient(180deg,#fff 0 5%,#f7fafc 18%,#edf3f7 72%,#dce6ef 100%);
  filter:drop-shadow(0 -1px 0 rgba(255,255,255,.34)) drop-shadow(0 7px 7px rgba(104,126,143,.18));
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 90' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 49 C55 29 104 42 156 28 C222 10 278 38 331 27 C397 13 448 40 506 23 C572 4 634 40 694 26 C765 9 827 39 888 24 C956 8 1023 41 1076 26 C1125 12 1166 29 1200 22 L1200 90 L0 90 Z'/%3E%3C/svg%3E");
  -webkit-mask-size:100% 100%;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 90' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 49 C55 29 104 42 156 28 C222 10 278 38 331 27 C397 13 448 40 506 23 C572 4 634 40 694 26 C765 9 827 39 888 24 C956 8 1023 41 1076 26 C1125 12 1166 29 1200 22 L1200 90 L0 90 Z'/%3E%3C/svg%3E");mask-size:100% 100%;
}
html[data-theme="christmas"] body.season-snow-build-on .season-hub-christmas .season-hub-tree-wrap,
html[data-theme="christmas"] body.season-snow-build-on .season-hub-christmas .season-hub-event-card:first-child{position:relative;overflow:hidden}
html[data-theme="christmas"] body.season-snow-build-on .season-hub-christmas .season-hub-tree-wrap:after,
html[data-theme="christmas"] body.season-snow-build-on .season-hub-christmas .season-hub-event-card:first-child:after{
  content:"";position:absolute;z-index:3;pointer-events:none;left:-3%;right:-3%;bottom:-2px;height:18px;
  background:linear-gradient(180deg,#fbfdff,#edf3f7 68%,#d9e4ed);
  box-shadow:0 -1px 0 rgba(255,255,255,.34),0 -5px 13px rgba(212,228,238,.045),0 4px 7px rgba(83,110,128,.14);
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 55' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 34 C48 20 84 30 122 21 C170 9 216 31 257 20 C303 8 354 29 398 17 C452 3 500 31 546 18 C600 5 650 31 696 19 C748 6 800 29 842 18 C868 12 885 15 900 13 L900 55 L0 55 Z'/%3E%3C/svg%3E");
  -webkit-mask-size:100% 100%;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 55' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 34 C48 20 84 30 122 21 C170 9 216 31 257 20 C303 8 354 29 398 17 C452 3 500 31 546 18 C600 5 650 31 696 19 C748 6 800 29 842 18 C868 12 885 15 900 13 L900 55 L0 55 Z'/%3E%3C/svg%3E");mask-size:100% 100%;
  opacity:.84;
}
@media(max-width:760px){
  html[data-theme="christmas"] body.season-snow-build-on .season-hub-christmas .season-hub-hero-inner:after{height:25px;bottom:-53px}
  html[data-theme="christmas"] body.season-snow-build-on .season-hub-christmas .season-hub-tree-wrap:after,
  html[data-theme="christmas"] body.season-snow-build-on .season-hub-christmas .season-hub-event-card:first-child:after{height:12px;opacity:.68}
}
.seasonal-approval-history{margin-top:14px;padding-top:13px;border-top:1px solid #25262c;display:grid;gap:7px}.seasonal-approval-history>span{color:#696d76;font-size:8px;font-weight:950;letter-spacing:.12em}.seasonal-approval-history>a{display:block;padding:10px 11px;border:1px solid #24262b;border-radius:9px;background:#0b0c0f;color:inherit;text-decoration:none}.seasonal-approval-history>a:hover{border-color:#34363e;background:#0e0f12}.seasonal-approval-history b,.seasonal-approval-history small{display:block}.seasonal-approval-history b{font-size:9px}.seasonal-approval-history small{margin-top:3px;color:#6c7079;font-size:8px}.seasonal-approval-history p{margin:6px 0 0;color:#9498a0;font-size:9px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.seasonal-approval-breadcrumb{display:flex;align-items:center;gap:7px;margin:-5px 0 14px;color:#595d66;font-size:8px;font-weight:950;letter-spacing:.10em}.seasonal-approval-breadcrumb a{color:#727680;text-decoration:none}.seasonal-approval-breadcrumb a:hover{color:#d4d5d9}.seasonal-approval-breadcrumb b{color:#a5a8af;font-size:inherit}
.season-hub-public-author{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;margin-bottom:10px!important}.season-hub-public-author img{width:28px;height:28px;border-radius:9px;object-fit:cover;border:1px solid rgba(255,255,255,.08);background:#111318}.season-hub-public-author small{color:#aeb2ba!important;font-size:9px!important;font-weight:850!important;letter-spacing:.04em!important}

/* V5.1 · Season Hub transparency + module failsafe presentation */
.season-hub{background:transparent}
.season-hub .season-hub-hero{background:rgba(5,6,8,.30)}
.season-hub .season-hub-hero:after{background:linear-gradient(180deg,transparent,rgba(5,6,8,.50))}
.season-hub .season-hub-section{background:transparent}
.season-hub .season-hub-section:nth-of-type(even){background:linear-gradient(180deg,var(--pr-glass-section,rgba(8,9,12,.58)),rgba(255,255,255,.008),var(--pr-glass-section,rgba(8,9,12,.58)))}
.season-hub :is(.season-hub-event-card,.season-hub-case,.season-hub-passport-summary,.season-hub-objective,.season-hub-meter,.season-hub-update-card,.season-hub-next-grid>a,.season-hub-tree-wrap,.season-hub-memory,.season-hub-countdown,.season-hub-awards>article,.season-hub-message-form,.season-hub-message-wall,.season-hub-form-card,.season-hub-public-submission){
  background-color:var(--pr-glass-card,rgba(14,15,19,.80));
  border-color:var(--pr-glass-border,rgba(255,255,255,.075));
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
}
html[data-theme="newyear"] .season-hub-newyear .season-hub-countdown{background:radial-gradient(circle at 50% -35%,rgba(225,192,108,.10),transparent 46%),linear-gradient(145deg,rgba(11,14,25,.66),rgba(5,7,12,.64))}
html[data-theme="newyear"] .season-hub-newyear .season-hub-section:nth-of-type(even){background:radial-gradient(circle at 85% 12%,rgba(219,182,88,.055),transparent 31%),radial-gradient(circle at 8% 86%,rgba(83,97,145,.065),transparent 34%),rgba(7,9,16,.30)}
html[data-theme="christmas"] .season-hub-christmas .season-hub-section:nth-of-type(even){background:radial-gradient(circle at 90% 7%,rgba(218,198,141,.045),transparent 30%),radial-gradient(circle at 8% 88%,rgba(52,103,85,.065),transparent 33%),rgba(7,13,15,.30)}
html[data-theme="halloween"] .season-hub-halloween .season-hub-section:nth-of-type(even){background:radial-gradient(circle at 8% 12%,rgba(96,37,92,.06),transparent 31%),radial-gradient(circle at 89% 80%,rgba(128,45,18,.055),transparent 33%),rgba(9,7,10,.30)}
.season-hub-module-fallback{padding:26px 28px;border:1px solid var(--hub-line);border-radius:18px;background:var(--pr-glass-card-strong,rgba(16,17,21,.86));box-shadow:0 18px 58px rgba(0,0,0,.16);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.season-hub-module-fallback h3{margin:7px 0 9px;font-size:24px}.season-hub-module-fallback p{margin:0;color:var(--hub-muted);line-height:1.6}

/* ========================================================================== 
   V5.3 · SEASON HUB LARGE PANEL GLASS FIX
   Important: override old background shorthands, not only background-color.
   ========================================================================== */
.season-hub :is(
  .season-hub-tree-wrap,
  .season-hub-meter,
  .season-hub-countdown,
  .season-hub-advent-reveal,
  .season-hub-passport-summary,
  .season-hub-form-card,
  .season-hub-message-form,
  .season-hub-message-wall,
  .season-hub-module-fallback
){
  position:relative;
  background:
    linear-gradient(180deg,var(--pr-glass-panel-highlight,rgba(255,255,255,.03)),transparent 22%),
    var(--pr-glass-panel,rgba(8,9,12,.68));
  border-color:var(--pr-glass-panel-border,var(--pr-glass-border,rgba(255,255,255,.075)));
  box-shadow:0 22px 68px rgba(0,0,0,.14),inset 0 1px 0 var(--pr-glass-panel-highlight,rgba(255,255,255,.03));
  -webkit-backdrop-filter:blur(var(--pr-glass-panel-blur,12px)) saturate(1.04);
  backdrop-filter:blur(var(--pr-glass-panel-blur,12px)) saturate(1.04);
}

/* Christmas: dark winter glass with cold evergreen on the left and warm light on the right. */
html[data-theme="christmas"] .season-hub-christmas :is(
  .season-hub-tree-wrap,
  .season-hub-meter,
  .season-hub-countdown,
  .season-hub-advent-reveal,
  .season-hub-passport-summary,
  .season-hub-form-card,
  .season-hub-message-form,
  .season-hub-message-wall,
  .season-hub-module-fallback
){
  background:
    linear-gradient(180deg,rgba(242,249,246,.032),transparent 22%),
    radial-gradient(circle at 8% 35%,rgba(46,105,84,.075),transparent 38%),
    radial-gradient(circle at 92% 24%,rgba(222,188,105,.052),transparent 34%),
    radial-gradient(circle at 88% 82%,rgba(177,42,55,.035),transparent 31%),
    rgba(8,14,13,.66);
  border-color:rgba(215,233,227,.085);
  box-shadow:0 22px 70px rgba(0,0,0,.14),inset 0 1px 0 rgba(242,249,246,.04);
}

/* The full-width alternating Hub sections must never become black walls. */
.season-hub .season-hub-section:nth-of-type(even){
  background:
    linear-gradient(180deg,rgba(255,255,255,.012),rgba(255,255,255,.005)),
    color-mix(in srgb,var(--pr-glass-section,rgba(8,9,12,.58)) 43%,transparent);
}
html[data-theme="christmas"] .season-hub-christmas .season-hub-section:nth-of-type(even){
  background:
    radial-gradient(circle at 9% 72%,rgba(47,105,84,.045),transparent 34%),
    radial-gradient(circle at 91% 18%,rgba(220,188,106,.032),transparent 30%),
    rgba(7,13,15,.18);
}
html[data-theme="halloween"] .season-hub-halloween .season-hub-section:nth-of-type(even){
  background:
    radial-gradient(circle at 8% 18%,rgba(96,37,92,.045),transparent 34%),
    radial-gradient(circle at 91% 78%,rgba(157,55,21,.038),transparent 33%),
    rgba(9,7,10,.19);
}
html[data-theme="newyear"] .season-hub-newyear .season-hub-section:nth-of-type(even){
  background:
    radial-gradient(circle at 88% 16%,rgba(219,182,88,.042),transparent 31%),
    radial-gradient(circle at 9% 82%,rgba(83,97,145,.045),transparent 34%),
    rgba(7,9,16,.18);
}

/* Child cards keep stronger opacity than the parent glass panel for hierarchy/readability. */
.season-hub :is(
  .season-hub-event-card,
  .season-hub-case,
  .season-hub-objective,
  .season-hub-update-card,
  .season-hub-next-grid>a,
  .season-hub-memory,
  .season-hub-awards>article,
  .season-hub-public-submission,
  .season-hub-advent-door
){
  background-color:var(--pr-glass-card,rgba(14,15,19,.74));
  border-color:var(--pr-glass-border,rgba(255,255,255,.075));
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}

/* Explicitly remove the old high-opacity gradient from the large Christmas tree panel. */
html[data-theme="christmas"] .season-hub-christmas .season-hub-tree-wrap{
  background:
    linear-gradient(180deg,rgba(240,248,245,.03),transparent 22%),
    radial-gradient(circle at 10% 45%,rgba(42,99,78,.085),transparent 42%),
    radial-gradient(circle at 90% 30%,rgba(224,191,109,.055),transparent 35%),
    rgba(8,14,13,.65);
}

/* Snow/ambient canvas remains behind glass; content remains above it. */
.season-hub{position:relative;z-index:2}
.season-hub :is(.season-hub-tree-wrap,.season-hub-meter,.season-hub-countdown,.season-hub-advent-reveal,.season-hub-form-card,.season-hub-message-form,.season-hub-message-wall)>*{position:relative;z-index:2}

@media(max-width:760px){
  .season-hub :is(
    .season-hub-tree-wrap,.season-hub-meter,.season-hub-countdown,.season-hub-advent-reveal,
    .season-hub-passport-summary,.season-hub-form-card,.season-hub-message-form,.season-hub-message-wall
  ){
    -webkit-backdrop-filter:blur(8px) saturate(1.02);
    backdrop-filter:blur(8px) saturate(1.02);
  }
}

/* =========================================================
   V5.6 — PUMPKIN / STREAM / MASTER EXPERIENCE UI
   ========================================================= */
.season-pumpkin-panel,.season-stream-card{position:relative;border:1px solid rgba(255,255,255,.075);border-radius:24px;background:rgba(11,11,14,.68);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 22px 60px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.035);overflow:hidden}
.season-pumpkin-panel{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr);gap:34px;align-items:center;padding:34px;background:radial-gradient(circle at 18% 48%,rgba(220,91,34,.16),transparent 24%),radial-gradient(circle at 84% 18%,rgba(104,43,120,.09),transparent 29%),rgba(13,9,14,.67);border-color:rgba(225,111,52,.14)}
.season-pumpkin-visual{display:grid;place-items:center;min-height:280px;position:relative}
.season-pumpkin-visual:after{content:"";position:absolute;width:75%;height:22%;left:12%;bottom:4%;border-radius:50%;background:rgba(0,0,0,.42);filter:blur(18px);z-index:0}
.season-pumpkin-visual img{position:relative;z-index:1;max-width:min(100%,390px);max-height:300px;object-fit:contain;filter:drop-shadow(0 24px 34px rgba(0,0,0,.42))}
.season-pumpkin-css{position:relative;z-index:1;width:230px;height:190px;transform:scale(.58);transform-origin:center bottom;transition:transform .3s ease}
.season-pumpkin-panel.stage-2 .season-pumpkin-css{transform:scale(.72)}.season-pumpkin-panel.stage-3 .season-pumpkin-css{transform:scale(.84)}.season-pumpkin-panel.stage-4 .season-pumpkin-css{transform:scale(.94)}.season-pumpkin-panel.stage-5 .season-pumpkin-css{transform:scale(1.02)}
.season-pumpkin-css .pumpkin-body{position:absolute;left:14px;right:14px;top:42px;bottom:8px;border-radius:47% 47% 50% 50%;background:linear-gradient(90deg,#7e2b16 0,#bd491e 15%,#e06d2a 34%,#ef8c41 50%,#d45c22 69%,#a63c19 85%,#6f2414 100%);box-shadow:inset 0 -28px 35px rgba(58,9,5,.38),inset 0 9px 15px rgba(255,177,94,.13),0 24px 35px rgba(0,0,0,.38)}
.season-pumpkin-css .pumpkin-body b{position:absolute;top:4%;bottom:5%;width:1px;background:linear-gradient(transparent,rgba(80,20,7,.35),transparent)}
.season-pumpkin-css .pumpkin-body b:nth-child(1){left:28%}.season-pumpkin-css .pumpkin-body b:nth-child(2){left:50%}.season-pumpkin-css .pumpkin-body b:nth-child(3){left:72%}
.pumpkin-stem{position:absolute;left:104px;top:4px;width:25px;height:55px;border-radius:65% 38% 15% 15%;background:linear-gradient(90deg,#2d3b20,#617344,#3c4e2c);transform:rotate(7deg);z-index:2}
.pumpkin-vine{position:absolute;left:120px;top:27px;width:74px;height:34px;border:3px solid #465b2e;border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(-12deg)}
.pumpkin-face{position:absolute;left:0;right:0;top:86px;height:70px;z-index:3}.pumpkin-face i{position:absolute;top:0;width:34px;height:23px;background:#2a100a;clip-path:polygon(0 0,100% 28%,50% 100%)}.pumpkin-face i:nth-child(1){left:57px}.pumpkin-face i:nth-child(2){right:57px;transform:scaleX(-1)}.pumpkin-face b{position:absolute;left:72px;right:72px;bottom:4px;height:26px;background:#2a100a;clip-path:polygon(0 20%,18% 45%,31% 26%,48% 52%,64% 28%,82% 48%,100% 22%,91% 78%,9% 78%)}
.season-pumpkin-panel.has-final-glow.stage-5 .pumpkin-face i,.season-pumpkin-panel.has-final-glow.stage-5 .pumpkin-face b{background:#ffd06d;filter:drop-shadow(0 0 10px rgba(255,126,42,.65))}
.season-pumpkin-panel.has-final-glow.stage-5 .season-pumpkin-css{filter:drop-shadow(0 0 26px rgba(235,97,31,.28))}
.season-pumpkin-panel.has-final-animation.stage-5 .season-pumpkin-css{animation:pumpkinFinalBreath 4.8s ease-in-out infinite}
@keyframes pumpkinFinalBreath{50%{filter:drop-shadow(0 0 33px rgba(235,97,31,.34));transform:scale(1.04)}}
.season-pumpkin-copy h3{margin:5px 0 10px;font-size:clamp(27px,4vw,48px);line-height:.98}.season-pumpkin-copy p{max-width:600px;color:rgba(232,233,238,.67)}
.season-pumpkin-percent{display:flex;align-items:baseline;gap:8px;margin-top:22px}.season-pumpkin-percent strong{font-size:38px;line-height:1;color:#ec955d}.season-pumpkin-percent span{font-size:10px;font-weight:900;letter-spacing:.12em;color:rgba(255,255,255,.5)}
.season-pumpkin-progress{height:7px;max-width:520px;margin:10px 0 9px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.season-pumpkin-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a53e1e,#d86527,#ef9a54);box-shadow:0 0 18px rgba(224,106,40,.35)}.season-pumpkin-copy>small{font-size:10px;font-weight:900;letter-spacing:.08em;color:rgba(255,255,255,.48)}

.season-stream-card{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:30px;align-items:center;padding:30px}
.season-stream-halloween{background:radial-gradient(circle at 12% 28%,rgba(207,78,28,.14),transparent 25%),radial-gradient(circle at 92% 18%,rgba(103,44,121,.08),transparent 27%),rgba(13,9,15,.70);border-color:rgba(224,104,44,.14)}
.season-stream-christmas{background:radial-gradient(circle at 9% 22%,rgba(43,107,88,.15),transparent 29%),radial-gradient(circle at 90% 26%,rgba(184,137,61,.10),transparent 24%),rgba(8,17,18,.69);border-color:rgba(207,229,219,.13)}
.season-stream-newyear{background:radial-gradient(circle at 12% 22%,rgba(191,150,64,.14),transparent 28%),radial-gradient(circle at 88% 70%,rgba(83,101,150,.07),transparent 26%),rgba(8,11,20,.72);border-color:rgba(218,184,107,.14)}
.season-stream-main h3{margin:5px 0 8px;font-size:clamp(27px,4vw,44px);line-height:1}.season-stream-main p{max-width:650px;color:rgba(237,238,241,.66)}
.season-stream-status{display:inline-flex;align-items:center;gap:7px;margin-bottom:12px;padding:5px 8px;border-radius:999px;background:rgba(0,0,0,.22);font-size:9px;font-weight:900;letter-spacing:.1em;color:rgba(255,255,255,.72)}.season-stream-card.status-live .season-stream-status{color:#ffb1b7}.season-stream-card.status-live .season-stream-status i{animation:seasonHubLivePulse 1.7s ease-in-out infinite}
@keyframes seasonHubLivePulse{50%{opacity:.32}}
.season-stream-meta{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0 18px}.season-stream-meta span{padding:6px 8px;border-radius:8px;background:rgba(255,255,255,.045);font-size:10px;font-weight:850;letter-spacing:.08em;color:rgba(255,255,255,.6)}
.season-stream-countdown>small{display:block;text-align:center;margin-bottom:10px;color:rgba(255,255,255,.46);font-size:10px;font-weight:900;letter-spacing:.12em}.season-stream-countdown>div{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.season-stream-countdown span{display:grid;place-items:center;min-width:58px;padding:14px 7px;border:1px solid rgba(255,255,255,.075);border-radius:13px;background:rgba(0,0,0,.22)}.season-stream-countdown strong{font-size:25px;color:#fff}.season-stream-countdown em{font-style:normal;font-size:8px;font-weight:900;letter-spacing:.08em;color:rgba(255,255,255,.43)}
.season-stream-live-mark,.season-stream-ended{display:grid;place-items:center;text-align:center;min-height:180px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(0,0,0,.18)}.season-stream-live-mark i{width:12px;height:12px;border-radius:50%;background:#e43845;box-shadow:0 0 18px rgba(228,56,69,.46);margin-bottom:9px}.season-stream-live-mark strong{font-size:26px;color:#fff}.season-stream-live-mark span,.season-stream-ended span{color:rgba(255,255,255,.5);font-size:11px}.season-stream-ended strong{color:rgba(255,255,255,.7)}

/* Master experience controls */
.season-experience-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 20px}.season-experience-dashboard-grid article{padding:18px;border:1px solid rgba(255,255,255,.075);border-radius:16px;background:rgba(255,255,255,.025)}.season-experience-dashboard-grid article>span{font-size:9px;font-weight:900;letter-spacing:.1em;color:rgba(255,255,255,.45)}.season-experience-dashboard-grid h3{margin:7px 0 4px;font-size:21px}.season-experience-dashboard-grid p{margin:0 0 10px;color:rgba(255,255,255,.5);font-size:11px}.season-experience-dashboard-grid a{font-size:10px;font-weight:900;letter-spacing:.06em}
.seasonal-experience-admin>.control-card-head{margin-bottom:18px}.season-experience-admin-block{padding:18px 0;border-top:1px solid rgba(255,255,255,.06)}.season-experience-admin-block:first-of-type{border-top:0}.season-experience-admin-block>div:first-child{margin-bottom:14px}.season-experience-admin-block h3{margin:4px 0}.season-experience-admin-block p{margin:0;color:rgba(255,255,255,.54)}
.pumpkin-stage-admin-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:16px}.pumpkin-stage-admin-grid>.field{padding:12px;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:rgba(255,255,255,.018)}.pumpkin-stage-admin-grid img{display:block;width:100%;height:100px;object-fit:contain;margin:6px 0;border-radius:9px;background:rgba(0,0,0,.18)}.inline-check{display:flex;gap:7px;align-items:center;margin:7px 0;font-size:10px;color:rgba(255,255,255,.58)}

@media (max-width:900px){.season-pumpkin-panel,.season-stream-card{grid-template-columns:1fr}.season-pumpkin-visual{min-height:220px}.season-stream-countdown>div{grid-template-columns:repeat(4,minmax(52px,1fr))}.season-experience-dashboard-grid{grid-template-columns:1fr}.pumpkin-stage-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.season-pumpkin-panel,.season-stream-card{padding:20px;border-radius:18px}.season-pumpkin-visual{min-height:175px}.season-pumpkin-css{width:190px;height:158px}.pumpkin-stem{left:86px}.pumpkin-vine{left:100px}.pumpkin-face i:nth-child(1){left:47px}.pumpkin-face i:nth-child(2){right:47px}.pumpkin-face b{left:58px;right:58px}.season-stream-countdown>div{grid-template-columns:repeat(2,1fr)}.pumpkin-stage-admin-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.season-pumpkin-panel.has-final-animation.stage-5 .season-pumpkin-css,.season-stream-card.status-live .season-stream-status i{animation:none!important}}
.season-experience-quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin:-6px 0 20px}

/* =========================================================
   EVOLUTION RP — HALLOWEEN SEASON HUB VISUAL REWORK 2026
   Presentation only. All progression/data/state logic stays untouched.
   Scoped to the Halloween hub so Christmas/New Year keep their own UI.
   ========================================================= */

.season-hub-halloween{
  --halloween-orange:#e06b2b;
  --halloween-amber:#f0a05a;
  --halloween-red:#9c271c;
  --halloween-purple:#5a315f;
  --halloween-panel:rgba(12,9,12,.68);
  --halloween-panel-strong:rgba(13,10,13,.82);
  --halloween-edge:rgba(235,126,66,.15);
  --halloween-muted:rgba(236,232,235,.62);
  overflow:clip;
  background:
    radial-gradient(circle at 16% 18%,rgba(145,43,22,.095),transparent 25%),
    radial-gradient(circle at 88% 48%,rgba(83,46,92,.07),transparent 26%),
    linear-gradient(180deg,rgba(8,6,8,.16),rgba(8,6,8,.04) 52%,rgba(8,6,8,.28));
}

.season-hub-halloween .container{
  width:min(calc(100% - 40px),1420px);
  max-width:1420px;
  margin-inline:auto;
}

/* Small seasonal message strip: integrated, not a second hero. */
html[data-theme="halloween"] body[data-page="seasonal"] .seasonal-announcement{
  min-height:40px;
  padding:7px 20px;
  border-bottom-color:rgba(225,105,45,.13);
  background:linear-gradient(90deg,rgba(27,11,9,.84),rgba(13,8,11,.72) 50%,rgba(25,10,14,.82));
  box-shadow:none;
}
html[data-theme="halloween"] body[data-page="seasonal"] .seasonal-announcement div{
  gap:10px;
}
html[data-theme="halloween"] body[data-page="seasonal"] .seasonal-announcement b,
html[data-theme="halloween"] body[data-page="seasonal"] .seasonal-announcement span{
  font-size:11px;
  line-height:1.35;
}

/* HERO — cinematic, controlled and shorter. */
.season-hub-halloween .season-hub-hero{
  min-height:clamp(520px,64vh,645px);
  align-items:center;
  border-bottom-color:rgba(230,119,57,.10);
  background:#080608;
}
.season-hub-halloween .season-hub-hero:before{
  background-image:
    linear-gradient(90deg,rgba(6,5,7,.91) 0%,rgba(7,5,7,.72) 38%,rgba(7,5,7,.28) 70%,rgba(7,5,7,.12) 100%),
    linear-gradient(180deg,rgba(6,4,5,.08) 0%,rgba(8,5,7,.17) 56%,rgba(8,6,8,.78) 100%),
    radial-gradient(circle at 73% 40%,rgba(224,92,35,.10),transparent 25%),
    var(--season-hub-hero,none);
  background-size:cover;
  background-position:center;
  filter:saturate(.94) contrast(1.04);
}
.season-hub-halloween .season-hub-hero:after{
  height:31%;
  background:linear-gradient(180deg,transparent,rgba(8,6,8,.82) 78%,rgba(8,6,8,.96));
}
.season-hub-halloween .season-hub-hero-inner{
  grid-template-columns:minmax(0,1fr) 180px;
  gap:46px;
  align-items:end;
  padding-top:106px;
  padding-bottom:54px;
}
.season-hub-halloween .season-hub-hero-copy{
  max-width:680px;
}
.season-hub-halloween .season-hub-hero-copy .eyebrow{
  margin-bottom:13px;
  color:var(--halloween-amber);
}
.season-hub-halloween .season-hub-hero h1{
  max-width:650px;
  font-size:clamp(58px,5.6vw,100px);
  line-height:.86;
  letter-spacing:-.052em;
  text-shadow:0 10px 34px rgba(0,0,0,.42);
}
.season-hub-halloween .season-hub-hero p{
  max-width:620px;
  margin-top:18px;
  font-size:clamp(15px,1.22vw,18px);
  line-height:1.55;
  color:rgba(239,236,239,.70);
}
.season-hub-halloween .season-hub-hero-actions{
  margin-top:23px;
  gap:9px;
}
.season-hub-halloween .season-hub-hero-actions .button{
  min-height:46px;
  padding-inline:18px;
}
.season-hub-halloween .season-hub-hero-mark{
  width:154px;
  min-height:168px;
  padding:18px;
  border-radius:20px;
  border-color:rgba(230,119,57,.16);
  background:
    radial-gradient(circle at 70% 18%,rgba(223,102,41,.15),transparent 35%),
    rgba(12,9,12,.60);
  box-shadow:0 22px 54px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.season-hub-halloween .season-hub-hero-mark span{
  font-size:48px;
  color:var(--halloween-orange);
}
.season-hub-halloween .season-hub-hero-mark b{
  margin-top:8px;
  font-size:9px;
  letter-spacing:.16em;
  color:rgba(255,255,255,.68);
}

/* Compact sticky sub-navigation. */
.season-hub-halloween .season-hub-nav-strip{
  top:92px;
  border-top:1px solid rgba(255,255,255,.025);
  border-bottom-color:rgba(230,119,57,.11);
  background:rgba(10,7,10,.74);
  box-shadow:0 12px 28px rgba(0,0,0,.12);
  backdrop-filter:blur(18px) saturate(1.12);
  -webkit-backdrop-filter:blur(18px) saturate(1.12);
}
.season-hub-halloween .season-hub-nav-strip .container{
  min-height:52px;
  gap:14px;
  scroll-behavior:smooth;
}
.season-hub-halloween .season-hub-nav-strip span{
  margin-right:5px;
  font-size:9px;
  letter-spacing:.18em;
  color:var(--halloween-amber);
}
.season-hub-halloween .season-hub-nav-strip a{
  position:relative;
  display:flex;
  align-items:center;
  min-height:52px;
  padding:0 2px;
  color:rgba(231,228,232,.58);
  font-size:11px;
  font-weight:850;
}
.season-hub-halloween .season-hub-nav-strip a:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  border-radius:2px 2px 0 0;
  background:linear-gradient(90deg,var(--halloween-orange),var(--halloween-amber));
  opacity:0;
  transform:scaleX(.42);
  transition:opacity .18s ease,transform .18s ease;
}
.season-hub-halloween .season-hub-nav-strip a:hover,
.season-hub-halloween .season-hub-nav-strip a.is-active{
  color:#fff;
}
.season-hub-halloween .season-hub-nav-strip a.is-active:after{
  opacity:1;
  transform:scaleX(1);
}

/* Continuous page rhythm: less empty space, fewer solid black walls. */
.season-hub-halloween .season-hub-section{
  padding:64px 0;
  scroll-margin-top:166px;
  border-bottom:0;
  background:transparent;
}
.season-hub-halloween .season-hub-section:nth-of-type(even){
  background:transparent;
}
.season-hub-halloween .season-hub-section:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:min(1180px,76vw);
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(176,64,34,.22) 35%,rgba(105,54,91,.13) 68%,transparent);
  opacity:.72;
  pointer-events:none;
}
.season-hub-halloween .season-hub-section.module-updates,
.season-hub-halloween .season-hub-section.module-pumpkin,
.season-hub-halloween .season-hub-section.module-stream{
  padding-block:54px;
}
.season-hub-halloween .season-hub-section-head{
  gap:28px;
  align-items:end;
  margin-bottom:23px;
}
.season-hub-halloween .season-hub-section-head>div{
  max-width:720px;
}
.season-hub-halloween .season-hub-section-head .eyebrow{
  color:var(--halloween-amber);
  font-size:10px;
  letter-spacing:.13em;
}
.season-hub-halloween .season-hub-section-head h2{
  margin-top:6px;
  font-size:clamp(38px,3.6vw,54px);
  line-height:.95;
  letter-spacing:-.04em;
}
.season-hub-halloween .season-hub-section-head>p{
  max-width:510px;
  color:rgba(235,232,236,.57);
  font-size:14px;
  line-height:1.55;
}

/* FEAR METER — compact progression widget. */
.season-hub-halloween .module-meter .season-hub-section-head{
  margin-bottom:20px;
}
.season-hub-halloween .season-hub-meter{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  grid-template-rows:auto auto;
  gap:18px 24px;
  padding:25px 26px;
  border-color:rgba(230,119,57,.12);
  border-radius:20px;
  background:
    radial-gradient(circle at 4% 42%,rgba(218,82,31,.12),transparent 24%),
    radial-gradient(circle at 95% 20%,rgba(88,47,96,.07),transparent 27%),
    rgba(13,9,13,.64);
  box-shadow:0 18px 48px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.025);
  backdrop-filter:blur(11px);
  -webkit-backdrop-filter:blur(11px);
}
.season-hub-halloween .season-hub-meter-value{
  grid-column:1;
  grid-row:1;
  align-items:flex-end;
  gap:13px;
  min-width:0;
}
.season-hub-halloween .season-hub-meter-value strong{
  font-size:clamp(62px,5.6vw,86px);
  color:var(--halloween-orange);
}
.season-hub-halloween .season-hub-meter-value span{
  max-width:170px;
  padding-bottom:4px;
  font-size:10px;
  line-height:1.45;
  letter-spacing:.11em;
  color:rgba(255,255,255,.64);
}
.season-hub-halloween .season-hub-meter-track{
  grid-column:1;
  grid-row:2;
  align-self:start;
  height:9px;
  margin:0;
  background:rgba(255,255,255,.055);
}
.season-hub-halloween .season-hub-meter-track i{
  background:linear-gradient(90deg,#8e2c1c,var(--halloween-orange),var(--halloween-amber));
  box-shadow:0 0 18px rgba(224,107,43,.24);
}
.season-hub-halloween .season-hub-milestones{
  grid-column:2;
  grid-row:1 / span 2;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  align-self:stretch;
}
.season-hub-halloween .season-hub-milestones>div{
  min-height:104px;
  padding:14px 13px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  border-radius:14px;
  border-color:rgba(255,255,255,.065);
  background:rgba(0,0,0,.17);
}
.season-hub-halloween .season-hub-milestones>div.reached{
  border-color:rgba(224,107,43,.22);
  background:linear-gradient(145deg,rgba(215,86,32,.075),rgba(0,0,0,.15));
}
.season-hub-halloween .season-hub-milestones b{
  font-size:19px;
  color:var(--halloween-amber);
}
.season-hub-halloween .season-hub-milestones span{
  font-size:10px;
  line-height:1.35;
  color:rgba(236,233,237,.52);
}

/* HALLOWEEN UPDATE — content-sized grid, never a giant empty section. */
.season-hub-halloween .module-updates .season-hub-section-head{
  margin-bottom:18px;
}
.season-hub-halloween .season-hub-update-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));
  gap:10px;
  align-items:stretch;
}
.season-hub-halloween .season-hub-update-card{
  min-height:138px;
  padding:18px 19px;
  border-radius:15px;
  border-color:rgba(255,255,255,.07);
  background:linear-gradient(145deg,rgba(22,13,16,.74),rgba(10,8,11,.61));
  box-shadow:0 15px 38px rgba(0,0,0,.11);
}
.season-hub-halloween .season-hub-update-card:only-child{
  width:min(100%,520px);
  justify-self:start;
}
.season-hub-halloween .season-hub-update-card h3{
  margin:11px 0 17px;
  font-size:clamp(19px,1.5vw,24px);
  line-height:1.08;
}
.season-hub-halloween .season-hub-update-card span{
  color:var(--halloween-amber);
}
.season-hub-halloween .season-hub-update-card:hover{
  transform:translateY(-2px);
  border-color:rgba(224,107,43,.24);
  box-shadow:0 18px 44px rgba(0,0,0,.16);
}

/* EVOLUTION RP PUMPKIN — cinematic 40/60 composition. */
.season-hub-halloween .season-pumpkin-panel{
  grid-template-columns:minmax(245px,.68fr) minmax(0,1.08fr);
  gap:28px;
  min-height:0;
  padding:26px 30px;
  border-radius:21px;
  border-color:rgba(230,119,57,.14);
  background:
    radial-gradient(ellipse at 19% 69%,rgba(229,104,40,.16),transparent 26%),
    radial-gradient(circle at 88% 18%,rgba(93,45,102,.08),transparent 28%),
    linear-gradient(115deg,rgba(20,11,13,.72),rgba(11,9,12,.66));
  box-shadow:0 20px 54px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.028);
}
.season-hub-halloween .season-pumpkin-panel:before{
  content:"";
  position:absolute;
  left:-7%;
  bottom:-36px;
  width:55%;
  height:120px;
  pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(112,56,44,.19),transparent 68%);
  filter:blur(16px);
}
.season-hub-halloween .season-pumpkin-visual{
  min-height:224px;
}
.season-hub-halloween .season-pumpkin-visual:before{
  content:"";
  position:absolute;
  width:70%;
  aspect-ratio:1.35;
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(230,103,37,.16),rgba(191,63,25,.05) 44%,transparent 72%);
  filter:blur(8px);
  z-index:0;
}
.season-hub-halloween .season-pumpkin-visual:after{
  width:69%;
  height:18%;
  left:15%;
  bottom:5%;
  background:rgba(0,0,0,.50);
  filter:blur(15px);
}
.season-hub-halloween .season-pumpkin-visual img{
  max-width:min(100%,340px);
  max-height:242px;
  filter:drop-shadow(0 22px 28px rgba(0,0,0,.46)) drop-shadow(0 0 18px rgba(215,83,28,.10));
}
.season-hub-halloween .season-pumpkin-css{
  width:214px;
  height:176px;
}
.season-hub-halloween .season-pumpkin-copy h3{
  margin:5px 0 8px;
  font-size:clamp(30px,3.2vw,44px);
}
.season-hub-halloween .season-pumpkin-copy p{
  max-width:610px;
  margin:0;
  font-size:14px;
  line-height:1.55;
  color:rgba(236,232,236,.59);
}
.season-hub-halloween .season-pumpkin-percent{
  margin-top:17px;
}
.season-hub-halloween .season-pumpkin-percent strong{
  font-size:36px;
  color:var(--halloween-amber);
}
.season-hub-halloween .season-pumpkin-progress{
  max-width:590px;
  height:9px;
  margin:8px 0 9px;
  background:rgba(255,255,255,.055);
}
.season-hub-halloween .season-pumpkin-progress i{
  background:linear-gradient(90deg,#8f301d,#dc6829,#f0a05a);
  box-shadow:0 0 16px rgba(224,106,40,.28);
}
.season-hub-halloween .season-pumpkin-copy>small{
  color:rgba(245,235,229,.55);
}

/* HALLOWEEN STREAM — one compact card, only current visual state occupies space. */
.season-hub-halloween .season-stream-card{
  grid-template-columns:minmax(0,1.08fr) minmax(315px,.72fr);
  gap:26px;
  min-height:0;
  padding:26px 28px;
  border-radius:21px;
  border-color:rgba(230,119,57,.14);
  background:
    radial-gradient(circle at 9% 25%,rgba(211,79,29,.12),transparent 24%),
    radial-gradient(circle at 92% 14%,rgba(92,47,101,.07),transparent 25%),
    rgba(14,9,13,.70);
  box-shadow:0 20px 54px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.028);
}
.season-hub-halloween .season-stream-main h3{
  margin:5px 0 7px;
  font-size:clamp(29px,2.8vw,42px);
}
.season-hub-halloween .season-stream-main p{
  max-width:620px;
  margin:0;
  font-size:14px;
  line-height:1.5;
  color:rgba(239,235,239,.58);
}
.season-hub-halloween .season-stream-status{
  margin-bottom:9px;
  padding:5px 8px;
  border-color:rgba(255,255,255,.055);
  background:rgba(0,0,0,.19);
}
.season-hub-halloween .season-stream-status i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--halloween-orange);
  box-shadow:0 0 10px rgba(224,107,43,.34);
}
.season-hub-halloween .season-stream-card.status-live .season-stream-status i{
  background:#e23e4b;
  box-shadow:0 0 12px rgba(226,62,75,.48);
}
.season-hub-halloween .season-stream-meta{
  margin:12px 0 15px;
  gap:7px;
}
.season-hub-halloween .season-stream-meta span{
  padding:6px 8px;
  border:1px solid rgba(255,255,255,.045);
  background:rgba(255,255,255,.03);
}
.season-hub-halloween .season-stream-main .button{
  min-height:44px;
  padding-inline:16px;
}
.season-hub-halloween .season-stream-countdown{
  align-self:center;
}
.season-hub-halloween .season-stream-countdown>small{
  margin-bottom:9px;
  text-align:left;
  color:rgba(255,255,255,.47);
}
.season-hub-halloween .season-stream-countdown>div{
  grid-template-columns:repeat(4,minmax(64px,1fr));
  gap:7px;
}
.season-hub-halloween .season-stream-countdown span{
  min-width:0;
  min-height:88px;
  padding:12px 7px;
  border-radius:13px;
  border-color:rgba(255,255,255,.065);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.18));
}
.season-hub-halloween .season-stream-countdown strong{
  font-size:clamp(27px,2.2vw,34px);
  line-height:1;
}
.season-hub-halloween .season-stream-countdown em{
  margin-top:6px;
  color:rgba(255,255,255,.43);
}
.season-hub-halloween .season-stream-live-mark,
.season-hub-halloween .season-stream-ended{
  min-height:142px;
  border-radius:15px;
  border-color:rgba(255,255,255,.06);
  background:rgba(0,0,0,.17);
}
.season-hub-halloween .season-stream-live-mark strong,
.season-hub-halloween .season-stream-ended strong{
  font-size:clamp(22px,2vw,28px);
}
.season-hub-halloween .season-stream-card>[hidden]{
  display:none;
}

/* Light touches on other Halloween modules to keep one visual language. */
.season-hub-halloween :is(.season-hub-event-card,.season-hub-case,.season-hub-passport-summary,.season-hub-objective,.season-hub-gallery-item){
  border-color:rgba(255,255,255,.065);
  box-shadow:0 14px 40px rgba(0,0,0,.11);
}
.season-hub-halloween :is(.season-hub-event-card,.season-hub-case,.season-hub-objective):hover{
  transform:translateY(-2px);
}

/* Footer fade for the Halloween experience, without changing footer links/content. */
html[data-theme="halloween"] body[data-page="seasonal"] .site-footer{
  border-top-color:rgba(222,103,46,.10);
  background:
    radial-gradient(circle at 18% 0,rgba(128,38,23,.08),transparent 27%),
    linear-gradient(180deg,rgba(8,6,8,.96),rgba(6,6,7,1));
}

@media (max-width:1100px){
  .season-hub-halloween .season-hub-hero-inner{grid-template-columns:minmax(0,1fr) 145px;gap:30px}
  .season-hub-halloween .season-hub-hero-mark{width:140px;min-height:150px}
  .season-hub-halloween .season-hub-meter{grid-template-columns:1fr}
  .season-hub-halloween .season-hub-meter-value{grid-column:1;grid-row:1}
  .season-hub-halloween .season-hub-meter-track{grid-column:1;grid-row:2}
  .season-hub-halloween .season-hub-milestones{grid-column:1;grid-row:3}
  .season-hub-halloween .season-stream-card{grid-template-columns:minmax(0,1fr) minmax(290px,.72fr)}
}

@media (max-width:900px){
  .season-hub-halloween .season-hub-section{padding:56px 0;scroll-margin-top:150px}
  .season-hub-halloween .season-hub-section-head{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:20px}
  .season-hub-halloween .season-hub-section-head>p{max-width:650px}
  .season-hub-halloween .season-pumpkin-panel,
  .season-hub-halloween .season-stream-card{grid-template-columns:1fr}
  .season-hub-halloween .season-pumpkin-visual{min-height:205px}
  .season-hub-halloween .season-pumpkin-visual img{max-height:220px}
  .season-hub-halloween .season-stream-countdown>small{text-align:left}
}

@media (max-width:760px){
  .season-hub-halloween .container{width:min(calc(100% - 28px),1420px)}
  .season-hub-halloween .season-hub-hero{min-height:500px}
  .season-hub-halloween .season-hub-hero-inner{display:block;padding-top:96px;padding-bottom:42px}
  .season-hub-halloween .season-hub-hero h1{font-size:clamp(48px,13vw,72px);max-width:540px}
  .season-hub-halloween .season-hub-hero p{font-size:15px}
  .season-hub-halloween .season-hub-hero-mark{display:none}
  .season-hub-halloween .season-hub-nav-strip{top:72px}
  .season-hub-halloween .season-hub-nav-strip .container{min-height:50px;gap:13px}
  .season-hub-halloween .season-hub-nav-strip a{min-height:50px;font-size:10px}
  .season-hub-halloween .season-hub-section{padding:50px 0;scroll-margin-top:132px}
  .season-hub-halloween .season-hub-section.module-updates,
  .season-hub-halloween .season-hub-section.module-pumpkin,
  .season-hub-halloween .season-hub-section.module-stream{padding-block:46px}
  .season-hub-halloween .season-hub-section-head h2{font-size:clamp(34px,9vw,46px)}
  .season-hub-halloween .season-hub-meter{padding:21px}
  .season-hub-halloween .season-hub-milestones{grid-template-columns:repeat(2,minmax(0,1fr))}
  .season-hub-halloween .season-hub-milestones>div{min-height:88px}
  .season-hub-halloween .season-pumpkin-panel,
  .season-hub-halloween .season-stream-card{padding:22px;border-radius:18px}
  .season-hub-halloween .season-stream-countdown>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .season-hub-halloween .season-stream-countdown span{min-height:82px}
}

@media (max-width:520px){
  .season-hub-halloween .season-hub-hero{min-height:470px}
  .season-hub-halloween .season-hub-hero-inner{padding-top:82px;padding-bottom:34px}
  .season-hub-halloween .season-hub-hero h1{font-size:clamp(45px,14vw,62px)}
  .season-hub-halloween .season-hub-hero-actions{margin-top:19px}
  .season-hub-halloween .season-hub-hero-actions .button{width:100%;justify-content:center}
  .season-hub-halloween .season-hub-section{padding:44px 0}
  .season-hub-halloween .season-hub-section-head{margin-bottom:17px}
  .season-hub-halloween .season-hub-section-head>p{font-size:13px}
  .season-hub-halloween .season-hub-meter{padding:18px;border-radius:17px}
  .season-hub-halloween .season-hub-meter-value{align-items:flex-end;gap:10px}
  .season-hub-halloween .season-hub-meter-value strong{font-size:60px}
  .season-hub-halloween .season-hub-meter-value span{font-size:9px}
  .season-hub-halloween .season-hub-milestones{gap:7px}
  .season-hub-halloween .season-hub-milestones>div{padding:12px;min-height:82px}
  .season-hub-halloween .season-pumpkin-visual{min-height:180px}
  .season-hub-halloween .season-pumpkin-copy h3{font-size:30px}
  .season-hub-halloween .season-stream-main h3{font-size:29px}
}

@media (prefers-reduced-motion:reduce){
  .season-hub-halloween *,
  .season-hub-halloween *:before,
  .season-hub-halloween *:after{
    scroll-behavior:auto;
  }
  .season-hub-halloween :is(.season-hub-update-card,.season-hub-event-card,.season-hub-case,.season-hub-objective):hover{
    transform:none;
  }
  .season-hub-halloween .season-hub-nav-strip a:after{
    transition:none;
  }
}

/* EVOLUTION RP 2026 HALLOWEEN EVOLUTION — scoped to Halloween Hub only.
   Uses existing Pumpkin percent and stage from server-side seasonal_experience_pumpkin(). */
.season-hub-halloween{--pacific-halloween-intensity:0;--pacific-pumpkin-scale:.64;isolation:isolate}
.season-hub-halloween>.pacific-halloween-ambience{
  position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;contain:paint;
}
.season-hub-halloween .pacific-halloween-fog,
.season-hub-halloween .pacific-halloween-glow{
  position:absolute;inset:0;pointer-events:none;
}
.season-hub-halloween .pacific-halloween-fog{
  background:radial-gradient(ellipse at 8% 35%,rgba(122,59,66,.20),transparent 34%),radial-gradient(ellipse at 82% 72%,rgba(91,53,103,.21),transparent 39%),linear-gradient(180deg,transparent 0%,rgba(38,17,20,.19) 55%,transparent 93%);
  opacity:calc(.20 + var(--pacific-halloween-intensity) * .7);
  filter:blur(24px);
}
.season-hub-halloween .pacific-halloween-glow{
  background:radial-gradient(ellipse at 76% 11%,rgba(235,92,37,.21),transparent 23%),radial-gradient(ellipse at 13% 58%,rgba(205,67,27,.16),transparent 27%);
  opacity:calc(.18 + var(--pacific-halloween-intensity) * .82);
}
.season-hub-halloween .pacific-halloween-bats{position:absolute;inset:0;pointer-events:none}
.season-hub-halloween .pacific-halloween-bat{
  display:none;position:absolute;width:clamp(26px,3.8vw,54px);height:clamp(14px,2vw,28px);opacity:.3;
  background:#06070b;clip-path:polygon(0 29%,11% 21%,24% 42%,37% 14%,46% 35%,50% 20%,54% 35%,63% 14%,76% 42%,89% 21%,100% 29%,90% 54%,81% 67%,70% 58%,57% 65%,50% 54%,43% 65%,30% 58%,19% 67%,10% 54%);
  animation:pacificBatDrift 15s ease-in-out infinite alternate;
}
.season-hub-halloween .pacific-halloween-bat:nth-child(1){top:8%;left:80%;animation-delay:-2s}
.season-hub-halloween .pacific-halloween-bat:nth-child(2){top:18%;left:92%;animation-delay:-8s;transform:scale(.66)}
.season-hub-halloween .pacific-halloween-bat:nth-child(3){top:29%;left:13%;animation-delay:-3s}
.season-hub-halloween .pacific-halloween-bat:nth-child(4){top:35%;left:77%;animation-delay:-6s;transform:scale(.73)}
.season-hub-halloween .pacific-halloween-bat:nth-child(5){top:42%;left:92%;animation-delay:-5s}
.season-hub-halloween .pacific-halloween-bat:nth-child(6){top:49%;left:39%;animation-delay:-11s;transform:scale(.8)}
.season-hub-halloween .pacific-halloween-bat:nth-child(7){top:56%;left:86%;animation-delay:-4s}
.season-hub-halloween .pacific-halloween-bat:nth-child(8){top:63%;left:18%;animation-delay:-9s;transform:scale(.75)}
.season-hub-halloween .pacific-halloween-bat:nth-child(9){top:67%;left:70%;animation-delay:-2s}
.season-hub-halloween .pacific-halloween-bat:nth-child(10){top:75%;left:93%;animation-delay:-7s;transform:scale(.78)}
.season-hub-halloween .pacific-halloween-bat:nth-child(11){top:79%;left:27%;animation-delay:-13s}
.season-hub-halloween .pacific-halloween-bat:nth-child(12){top:83%;left:76%;animation-delay:-4s;transform:scale(.62)}
.season-hub-halloween .pacific-halloween-bat:nth-child(13){top:88%;left:47%;animation-delay:-8s}
.season-hub-halloween .pacific-halloween-bat:nth-child(14){top:91%;left:89%;animation-delay:-5s;transform:scale(.76)}
.season-hub-halloween .pacific-halloween-bat:nth-child(15){top:96%;left:14%;animation-delay:-11s}
.season-hub-halloween .pacific-halloween-bat:nth-child(16){top:98%;left:61%;animation-delay:-4s;transform:scale(.72)}
.season-hub-halloween[data-halloween-stage="1"] .pacific-halloween-bat:nth-child(-n+2),
.season-hub-halloween[data-halloween-stage="2"] .pacific-halloween-bat:nth-child(-n+4),
.season-hub-halloween[data-halloween-stage="3"] .pacific-halloween-bat:nth-child(-n+7),
.season-hub-halloween[data-halloween-stage="4"] .pacific-halloween-bat:nth-child(-n+11),
.season-hub-halloween[data-halloween-stage="5"] .pacific-halloween-bat{display:block}
@keyframes pacificBatDrift{0%{translate:0 0;opacity:.15}50%{opacity:.27}100%{translate:32px -10px;opacity:.32}}
.season-hub-halloween .season-pumpkin-panel .season-pumpkin-css{
  transform:scale(var(--pacific-pumpkin-scale));transform-origin:center bottom;
  transition:transform 900ms cubic-bezier(.2,.8,.2,1);
}
.season-hub-halloween .season-pumpkin-panel .season-pumpkin-visual img{
  transform:scale(var(--pacific-pumpkin-scale));transform-origin:center bottom;transition:transform 900ms cubic-bezier(.2,.8,.2,1);
}
.season-hub-halloween .season-pumpkin-visual:before{
  opacity:calc(.18 + var(--pacific-halloween-intensity) * .67);
}
.season-hub-halloween .season-pumpkin-panel{
  box-shadow:0 24px 66px rgba(0,0,0,.23),0 0 32px rgba(191,68,24,.09);
}
.season-hub-halloween .season-hub-hero{
  box-shadow:inset 0 -48px 80px rgba(14,6,9,.24);
}
/* Master-managed seasonal update feed, without hiding preexisting linked content. */
.season-hub .season-hub-seasonal-feed .sc-public-update{
  display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;
  border:1px solid rgba(255,255,255,.08);background:linear-gradient(150deg,rgba(24,18,24,.86),rgba(14,13,18,.77));
  padding:clamp(19px,2.2vw,29px);color:#f2eef0;text-decoration:none;
}
.season-hub-halloween .season-hub-seasonal-feed .sc-public-update{
  border-color:rgba(219,105,49,.18);
  background:radial-gradient(ellipse at 100% 0%,rgba(200,70,30,.10),transparent 57%),rgba(20,12,16,.78);
}
.season-hub .season-hub-seasonal-feed .sc-public-update.sc-featured{border-color:rgba(218,131,62,.33)}
.season-hub .sc-public-metadata{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;color:#c09a89;font-size:11px;letter-spacing:.12em;font-weight:800}
.season-hub .sc-public-metadata time{color:#aaa1a6;font-weight:600;letter-spacing:.04em}
.season-hub .sc-public-update h3{font-size:clamp(23px,2vw,32px);line-height:1.13;margin:0}
.season-hub .sc-public-update p{font-size:14px;line-height:1.65;color:#cbc1c5;margin:0}
.season-hub .sc-public-details{width:100%;margin-top:auto;padding-top:8px}
.season-hub .sc-public-details summary{cursor:pointer;color:#efaf7c;font-weight:800;font-size:11px;letter-spacing:.08em;list-style:none}
.season-hub .sc-public-details summary::-webkit-details-marker{display:none}
.season-hub .sc-public-details[open] summary{margin-bottom:13px}
.season-hub .sc-public-details>div{padding:14px 0 0;border-top:1px solid rgba(255,255,255,.09);color:#e2d9da;font-size:14px;line-height:1.75;overflow-wrap:anywhere}
.season-hub .sc-public-details summary:focus-visible{outline:2px solid #f5af75;outline-offset:4px;border-radius:2px}
@media(max-width:767px){.season-hub-halloween .pacific-halloween-fog{filter:blur(14px)}.season-hub-halloween .pacific-halloween-bat{width:23px;height:13px;opacity:.15}}
@media(prefers-reduced-motion:reduce){.season-hub-halloween .pacific-halloween-bat{animation:none}.season-hub-halloween .season-pumpkin-panel .season-pumpkin-css,.season-hub-halloween .season-pumpkin-panel .season-pumpkin-visual img{transition:none}}
