.daytint{position:absolute;inset:0;pointer-events:none;z-index:2;transition:background 1.2s linear}
.scene.phase-night::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;opacity:.9;background:radial-gradient(1.5px 1.5px at 12% 10%,#fff,transparent),radial-gradient(1.5px 1.5px at 30% 20%,#fff,transparent),radial-gradient(2px 2px at 52% 8%,#fff,transparent),radial-gradient(1.5px 1.5px at 70% 18%,#fff,transparent),radial-gradient(2px 2px at 88% 9%,#fff,transparent),radial-gradient(1.5px 1.5px at 20% 32%,#fff,transparent),radial-gradient(1.5px 1.5px at 62% 30%,#fff,transparent),radial-gradient(1.5px 1.5px at 92% 28%,#fff,transparent)}
.scene.phase-night .sun{opacity:.35}
.scene.phase-night .cloud{opacity:.35}

.hclock{position:absolute;left:12px;top:calc(160px + var(--sat));z-index:5;display:flex;align-items:center;gap:7px;border:0;border-radius:99px;padding:4px 12px 4px 6px;color:inherit;text-align:left;font-family:inherit}
.app.hell .hclock{top:calc(300px + var(--sat))}
.hclock[hidden]{display:none}
.hclock .hc-ic{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.35);flex:none}
.hclock .hc-ic svg{width:22px;height:22px}
.hclock .hc-box{display:flex;flex-direction:column;line-height:1.1}
.hclock b{font-family:var(--f-display);font-weight:800;font-size:16px;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.hclock small{font-weight:800;font-size:10px;opacity:.75;white-space:nowrap}
.hclock.sleeping{box-shadow:0 0 0 2px rgba(120,130,255,.55),0 0 14px rgba(120,130,255,.45)}

.hzzz{position:absolute;z-index:6;pointer-events:none;width:50px;height:60px}
.hzzz[hidden]{display:none}
.hzzz i{position:absolute;left:0;bottom:0;font-style:normal;font-family:var(--f-display);font-weight:800;color:#fff;text-shadow:0 0 6px #6E7BFF,0 2px 0 #3A3F9E;opacity:0;animation:zzz 3.6s ease-in-out infinite}
.hzzz i:nth-child(1){font-size:16px}
.hzzz i:nth-child(2){font-size:22px;animation-delay:1.2s}
.hzzz i:nth-child(3){font-size:30px;animation-delay:2.4s}
@keyframes zzz{0%{opacity:0;transform:translate(0,0) rotate(-8deg)}20%{opacity:1}100%{opacity:0;transform:translate(26px,-48px) rotate(10deg)}}

.streak b{font-weight:900}
.streak svg{transition:filter .4s}
.streak.tier-0{color:#8A8497}
.streak.tier-0 svg{filter:grayscale(1) brightness(.8)}
.streak.tier-2 svg{filter:saturate(1.3) drop-shadow(0 0 3px #FF7A1A)}
.streak.tier-3 svg{filter:hue-rotate(-18deg) saturate(1.5) drop-shadow(0 0 5px #FF3B30);transform:scale(1.12)}
.streak.tier-4 svg{filter:hue-rotate(250deg) saturate(1.6) drop-shadow(0 0 6px #9B5CFF);transform:scale(1.2)}
.streak.risk svg{animation:stkrisk 1.4s ease-in-out infinite}
@keyframes stkrisk{0%,100%{opacity:1}50%{opacity:.45}}
.streak .stk-sh{display:inline-flex;align-items:center;gap:2px;margin-left:3px;font-size:11px;color:#4C7FD6}
.streak .stk-sh svg{width:13px;height:13px;filter:none;transform:none}

.stk{text-align:center}
.stk h2{margin:6px 0 2px}
.stk-flame{display:flex;justify-content:center}
.stk-flame svg{width:96px;height:96px;animation:stkbob 2.2s ease-in-out infinite}
.stk-flame.tier-0 svg{filter:grayscale(1) brightness(.8);animation:none}
.stk-flame.tier-2 svg{filter:saturate(1.3) drop-shadow(0 0 8px #FF7A1A)}
.stk-flame.tier-3 svg{filter:hue-rotate(-18deg) saturate(1.5) drop-shadow(0 0 12px #FF3B30)}
.stk-flame.tier-4 svg{filter:hue-rotate(250deg) saturate(1.6) drop-shadow(0 0 14px #9B5CFF)}
@keyframes stkbob{0%,100%{transform:scale(1)}50%{transform:scale(1.07) translateY(-2px)}}
.stk-dots{display:flex;gap:6px;justify-content:center;margin:12px 0 8px}
.stk-dots i{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:900;font-size:14px;background:rgba(0,0,0,.12);border:2px solid rgba(0,0,0,.15);color:#F5C030}
.stk-dots i.on{background:linear-gradient(180deg,#FFB347,#FF6B2C);border-color:#B9460F;color:#fff}
.stk-today{font-weight:800;font-size:13px;margin:0 0 14px}
