/* HALLOWS · A removable costume, not a different product. */
html[data-season=halloween]{--season-plum:#baa0e1;--season-gold:#f4bd73;}
html[data-season=halloween] body{background-image:radial-gradient(ellipse at 88% 4%,#48325317,transparent 38%);}
html[data-season=halloween] .brand-symbol{position:relative;overflow:visible;}
html[data-season=halloween] .brand-symbol::after{content:"";position:absolute;left:-7px;top:-21px;width:47px;height:40px;background:url('/assets/witch-hat.svg') center/contain no-repeat;transform:rotate(-16deg);pointer-events:none;}
html[data-season=halloween] .public-header .brand-symbol::after{width:43px;height:35px;top:-17px;}
html[data-season=halloween] .rally-hero{background-image:radial-gradient(ellipse at 87% 13%,#6535802b,transparent 58%),radial-gradient(ellipse at 60% 85%,#bb602015,transparent 60%);}
html[data-season=halloween] .sculpture-stage{background-image:radial-gradient(ellipse at 53% 41%,#8e4c9520,transparent 52%);}
html[data-season=halloween] .sculpture-stage::before{content:"";position:absolute;right:12%;top:8%;width:40px;height:40px;border-radius:50%;box-shadow:inset -9px -2px 0 #eed4a5;opacity:.4;pointer-events:none;}
html[data-season=halloween] .sculpture-stage[data-render-mode=static]::after{content:"";position:absolute;top:8%;left:30%;width:30%;height:30%;background:url('/assets/witch-hat.svg') center/contain no-repeat;transform:rotate(-14deg);pointer-events:none;}
html[data-season=halloween] .auth-story{background:radial-gradient(ellipse at 25% 90%,#51304a45,transparent 55%),linear-gradient(145deg,#28212b,#281e19);}
html[data-season=halloween] .f-side-note,html[data-season=halloween] .sidebar-card{background-image:radial-gradient(ellipse at 0 0,#6e40732c,transparent 80%);}
#season-scenery{position:fixed;inset:0;z-index:29;pointer-events:none;overflow:hidden;contain:strict;}
#season-scenery[hidden]{display:none!important;}.season-web{position:absolute;top:0;width:150px;height:150px;color:#d9bfd4;opacity:.21;}
.season-web svg{width:100%;height:100%;}.season-web-left{left:0;}.season-web-right{right:0;transform:scaleX(-1);width:120px;height:120px;opacity:.17;}
.season-spider{position:absolute;width:29px;height:143px;color:#bd9367;opacity:.63;top:-40px;filter:drop-shadow(0 2px 3px #0006);animation:spider-descent 17s cubic-bezier(.45,0,.35,1) infinite;will-change:transform;}
.season-spider svg{height:100%;width:100%;}.season-spider-one{right:13px;}.season-spider-two{left:208px;width:21px;height:116px;top:-57px;opacity:.32;animation-duration:23s;animation-delay:-9s;}
@keyframes spider-descent{0%,100%{transform:translateY(-39px)}42%,56%{transform:translateY(73px)}72%{transform:translateY(61px)}}
html[data-page-hidden=true] .season-spider{animation-play-state:paused;}
.season-switch{position:fixed;bottom:12px;left:16px;z-index:48;display:flex;align-items:center;gap:6px;background:#221e26ed;border:1px solid #a67d5555;color:#e5ba88;border-radius:20px;font-size:10px;line-height:1;padding:9px 12px;box-shadow:0 3px 16px #0003;cursor:pointer;}
.season-switch-hint{color:#a68d99;font-size:8px;}.season-switch[hidden]{display:none;}.season-switch:hover{border-color:#e3a263;}
html[data-season=halloween] .sidebar-bottom{padding-bottom:40px;}
html[data-motion=reduced] .season-spider{animation:none;transform:translateY(-10px);will-change:auto;}
@media(prefers-reduced-motion:reduce){.season-spider{animation:none;transform:translateY(-10px);will-change:auto;}}
@media(max-width:850px){.season-spider-two{display:none;}.season-web-left{width:91px;height:91px;opacity:.13;}.season-web-right{width:77px;height:77px;opacity:.12;}.season-spider-one{width:21px;height:107px;right:0;opacity:.34;}.season-switch{bottom:max(9px,env(safe-area-inset-bottom));font-size:9px;left:9px;padding:8px 10px;}.season-switch-hint{display:none;}html[data-season=halloween] .public-header .brand-symbol::after,html[data-season=halloween] .mobile-brand .brand-symbol::after{width:35px;height:30px;left:-5px;top:-14px;}html[data-season=halloween] .sculpture-stage::before{width:25px;height:25px;}}
@media(forced-colors:active){#season-scenery{display:none}.season-switch{border:1px solid ButtonText;}.brand-symbol::after{display:none;}}
