@font-face{font-family:Creepster;src:url(../assets/fonts/creepster-400.woff2) format("woff2");font-weight:400;font-display:swap}[data-theme=halloween]{--night: #120b1f;--panel: rgba(26, 14, 42, .76);--panel-2: rgba(32, 18, 52, .9);--line: rgba(255, 158, 70, .3);--cream: #fff3e2;--dim: rgba(255, 238, 220, .68);--red: #ff7a1a;--red-2: #c94a0b;--gold: #ffc65a;--gold-2: #ff8a1f;--green: #8fe04a;--purple: #8d55e0;--spook: "Creepster", "Fredoka", cursive}[data-theme=halloween] .presents{color:#ffc88cd9}[data-theme=halloween] .logo{font-family:var(--spook);font-weight:400;letter-spacing:.03em;line-height:.95;color:#fff3dc;text-shadow:0 0 1px #fff,0 3px 0 #5b2a8c,0 6px 0 #2c1247,0 10px 18px rgba(0,0,0,.6),0 0 44px rgba(255,130,40,.45)}[data-theme=halloween] .logo span:first-child{color:#ff8f24}[data-theme=halloween] .logo .year{color:#a6ef5f;letter-spacing:.14em}[data-theme=halloween] .tagline{color:#e8d6ff}[data-theme=halloween] #loading{background:radial-gradient(ellipse at 50% 28%,#3b2160,#160c26 58%,#0a0612)}[data-theme=halloween] .candybar .fill{background:repeating-linear-gradient(-45deg,#ff8a1f 0 10px,#ffd24a 10px 20px,#fff6e4 20px 28px);background-size:40px 40px;box-shadow:0 0 16px #ff8c288c}[data-theme=halloween] #title{background:radial-gradient(ellipse at 50% 120%,#0000 30%,#0a041499)}[data-theme=halloween] #name-input:focus{border-color:#ff9a3a;box-shadow:0 0 0 4px #ff8c3233}[data-theme=halloween] .goal b{color:#ffa54a}[data-theme=halloween] .title-foot{background:#10081c9e}.stage-pick{display:none}[data-theme=halloween] .stage-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%;max-width:440px}.stage-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 6px 7px;border-radius:14px;cursor:pointer;font:500 13px Fredoka,sans-serif;color:var(--dim);background:#ffffff0d;border:1.5px solid rgba(255,255,255,.12);transition:transform .12s ease,border-color .2s,background .2s,box-shadow .2s}.stage-card:hover{transform:translateY(-1px);background:#ffffff17}.stage-card svg{width:34px;height:34px}.stage-card b{font-weight:600;font-size:13.5px;color:var(--cream);line-height:1.1;text-align:center}.stage-card small{font-size:11px;color:#c9b2ea;min-height:1.2em}.stage-card.done:after{content:"\2713";position:absolute;top:4px;right:7px;font-size:12px;color:#a6ef5f;font-weight:700}.stage-card.on{border-color:#ff9a3a;background:#ff8a1f29;box-shadow:0 0 0 3px #ff8c282e,0 6px 18px #00000059;color:var(--cream)}[data-theme=halloween] .btn.candy{border-color:#ffc88c8c;background:linear-gradient(180deg,#ff9636,#d4500c);box-shadow:0 6px #4a1d6e,0 10px 26px #c8501473,inset 0 2px #ffffff59}[data-theme=halloween] .btn.candy:after{background:repeating-linear-gradient(-45deg,rgba(255,230,120,.16) 0 10px,transparent 10px 20px)}[data-theme=halloween] .btn.candy:active{box-shadow:0 2px #4a1d6e,0 4px 12px #c8501473,inset 0 2px #ffffff59}[data-theme=halloween] .seg button.on{background:linear-gradient(180deg,#ff9636,#d4500c)}[data-theme=halloween] .gauge-ring .track{fill:#160c24d1}[data-theme=halloween] .gauge-goal{color:#ffb066}[data-theme=halloween] .gauge.ready .gauge-tree{box-shadow:0 0 0 3px #ff8a1f,0 0 24px #ff8a1f;animation:hwPulse 1.2s ease-in-out infinite}@keyframes hwPulse{50%{box-shadow:0 0 0 5px #ffb347,0 0 34px #ff8a1f}}[data-theme=halloween] .room-banner{font-family:var(--spook);letter-spacing:.05em;color:#ffe2c2;text-shadow:0 3px 0 #4a1d6e,0 8px 20px rgba(0,0,0,.65),0 0 26px rgba(255,120,30,.4)}[data-theme=halloween] .toast{text-shadow:0 3px 0 rgba(90,40,140,.95),0 8px 24px rgba(0,0,0,.6)}[data-theme=halloween] .toast small,[data-theme=halloween] .chat-msg.sys{color:#ffd2a0}[data-theme=halloween] .stick .knob{background:radial-gradient(circle at 40% 35%,#ffab5e,#d4500c)}[data-theme=halloween] .touch-btn{background:radial-gradient(circle at 40% 35%,#b88cff,#6a35b8)}[data-theme=halloween] .touch-btn.small{background:#1a0e2ac7}[data-theme=halloween] #dash-fill{background:linear-gradient(90deg,#a6ef5f,#ff8a1f)}[data-theme=halloween] .card h2{font-family:var(--spook);font-weight:400;letter-spacing:.04em;color:#ffe8cc;text-shadow:0 3px 0 #4a1d6e}[data-theme=halloween] .card h3{color:#ffa54a}[data-theme=halloween] .countdown{color:#ffa54a;text-shadow:0 4px 0 #4a1d6e}[data-theme=halloween] #caption{font-family:var(--spook);letter-spacing:.04em;color:#fff0d8;text-shadow:0 3px 0 #4a1d6e,0 0 30px rgba(255,150,60,.55),0 10px 26px rgba(0,0,0,.6)}[data-theme=halloween] #caption small{color:#ffd2a0}[data-theme=halloween] #fade.white{background:#fff4e0}[data-theme=halloween] #error{background:#120b1f}@media(max-width:720px),(max-height:520px){[data-theme=halloween] .stage-pick{gap:6px}.stage-card{padding:6px 4px}.stage-card svg{width:26px;height:26px}.stage-card b{font-size:12px}}@media(max-height:520px){.stage-card small{display:none}[data-theme=halloween] .stage-pick{gap:6px}.stage-card{flex-direction:row;justify-content:center;gap:4px;padding:4px 6px}.stage-card svg{width:20px;height:20px;flex:none}.stage-card b{font-size:11.5px}}@media(min-aspect-ratio:21/20)and (max-height:520px){[data-theme=halloween] #title .title-foot{left:auto;right:max(4vw,calc(16px + var(--safe-r)))}}@media(min-aspect-ratio:21/20){[data-theme=halloween] #title{justify-content:safe center;overflow-y:auto}[data-theme=halloween] #title .title-foot{left:auto;right:max(4vw,calc(16px + var(--safe-r)))}}@media(min-aspect-ratio:21/20)and (max-height:820px){[data-theme=halloween] #title{gap:2.4vh;padding-top:calc(16px + var(--safe-t))}[data-theme=halloween] #title .logo{font-size:clamp(44px,min(8.4vw,12.5vh),120px)}[data-theme=halloween] .title-panel{gap:8px;padding:12px 20px}[data-theme=halloween] .stage-card{padding:6px 6px 5px}[data-theme=halloween] .stage-card svg{width:26px;height:26px}}@media(min-aspect-ratio:21/20)and (max-height:660px)and (min-height:521px){[data-theme=halloween] #title .name-field span,[data-theme=halloween] #title .goal,[data-theme=halloween] .stage-card small{display:none}[data-theme=halloween] #title .presents{font-size:11px}[data-theme=halloween] #title .tagline{font-size:16px}}
