:root{--bg:#0a0b1e;--ink:#f6f3ff;--muted:#b3b0e0;--glass:#ffffff13;--glass-strong:#ffffff24;--stroke:#fff3;--sun:#ffc857;--pink:#ff6fb5;--mint:#5ef2c3;--sky:#6ab8ff;--violet:#9a7bff;--ember:#ff5a1f;--good:#5ef2c3;--warn:#ffc857;--bad:#ff7a7a;--display:"Fredoka", "Nunito", system-ui, sans-serif;--body:"Nunito", system-ui, sans-serif;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--body);-webkit-tap-highlight-color:transparent;margin:0}body{touch-action:manipulation;-webkit-user-select:none;user-select:none;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0}input{font:inherit;color:inherit}h1,h2,h3,p{margin:0}:focus-visible{outline:3px solid var(--sun);outline-offset:3px;border-radius:12px}#app,.app{position:fixed;inset:0}.layer{position:absolute;inset:0}.bg{z-index:0;pointer-events:auto;position:absolute;inset:0}.bg:after{content:"";pointer-events:none;background:radial-gradient(120% 90% at 50% 0,#0000 30%,#0506148c 100%);position:absolute;inset:0}.screen{z-index:2;padding:max(20px, env(safe-area-inset-top)) clamp(16px, 3vw, 40px) max(20px, env(safe-area-inset-bottom));scrollbar-width:none;position:absolute;inset:0;overflow:hidden auto}.screen::-webkit-scrollbar{display:none}.glass{border:1px solid var(--stroke);-webkit-backdrop-filter:blur(22px)saturate(1.5);background:linear-gradient(135deg,#ffffff21,#ffffff0a);border-radius:28px;box-shadow:0 20px 60px #04041873,inset 0 1px #ffffff40}.display{font-family:var(--display);letter-spacing:.01em}.muted{color:var(--muted)}.btn{min-height:60px;font-family:var(--display);letter-spacing:.02em;color:#3b2300;transition:transform .12s var(--ease-out), box-shadow .12s var(--ease-out), filter .2s;background:linear-gradient(#ffd978,#ffb23d);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 30px;font-size:1.3rem;font-weight:600;display:inline-flex;box-shadow:0 6px #c47a0c,0 16px 30px #ffaa2859,inset 0 2px #fff9}.btn:hover{filter:brightness(1.06)}.btn:active{transform:translateY(5px);box-shadow:0 1px #c47a0c,0 6px 12px #ffaa284d,inset 0 2px #fff9}.btn[disabled]{opacity:.45;pointer-events:none}.btn.ghost{background:var(--glass-strong);color:var(--ink);box-shadow:inset 0 0 0 1px var(--stroke);min-height:52px;padding:0 22px;font-size:1.05rem}.btn.ghost:active{transform:scale(.96)}.btn.mint{color:#00382a;background:linear-gradient(#8bffe0,#2fd9a5);box-shadow:0 6px #14946f,0 16px 30px #2fd9a559,inset 0 2px #fff9}.btn.mint:active{box-shadow:0 1px #14946f,0 6px 12px #2fd9a54d,inset 0 2px #fff9}.icon-btn{background:var(--glass-strong);border:1px solid var(--stroke);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:56px;height:56px;transition:transform .2s var(--ease-spring), background .2s;border-radius:50%;place-items:center;font-size:1.5rem;display:grid}.icon-btn:active{transform:scale(.88)}.icon-btn:hover{background:#ffffff38}.center-col{place-items:center;min-height:100%;display:grid}.enroll-card{text-align:center;gap:22px;width:min(640px,100%);padding:clamp(24px,4vw,44px);display:grid}.enroll-card h1{font-family:var(--display);font-size:clamp(2.2rem,6vw,3.6rem);line-height:1.05}.field{text-align:left;gap:8px;display:grid}.field label{font-family:var(--display);color:var(--muted);font-size:1.1rem}.text-input{width:100%;height:68px;font-size:1.6rem;font-family:var(--display);border:2px solid var(--stroke);color:var(--ink);-webkit-user-select:text;user-select:text;background:#0808248c;border-radius:20px;outline:none;padding:0 22px;transition:border-color .2s,box-shadow .2s}.text-input:focus{border-color:var(--sun);box-shadow:0 0 0 5px #ffc85733,0 0 40px #ffc85726}.age-row{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.age-chip{width:58px;height:58px;font-family:var(--display);background:var(--glass);border:1px solid var(--stroke);transition:transform .25s var(--ease-spring), background .2s, box-shadow .2s;border-radius:18px;font-size:1.4rem;font-weight:600}.age-chip:active{transform:scale(.9)}.age-chip.on{color:#3b2300;background:linear-gradient(#ffd978,#ffb23d);transform:translateY(-4px)scale(1.08);box-shadow:0 10px 24px #ffaa2873}.start-wrap{text-align:center;place-content:center;justify-items:center;gap:clamp(14px,3vh,30px);min-height:100%;display:grid}.start-title{font-family:var(--display);font-size:clamp(2rem,5.5vw,3.6rem);font-weight:600;line-height:1.1}.clock-now{font-family:var(--display);color:var(--muted);font-variant-numeric:tabular-nums;font-size:clamp(1.2rem,3vw,1.8rem)}.start-btn{--s:clamp(220px, 38vmin, 380px);width:var(--s);height:var(--s);color:#4a2400;font-family:var(--display);font-weight:700;font-size:calc(var(--s) * .24);letter-spacing:.02em;transition:transform .35s var(--ease-spring), box-shadow .3s;background:radial-gradient(circle at 35% 28%,#fff3b8 0%,#ffcf5a 38%,#ff9a2e 80%,#e8701a 100%);border-radius:50%;place-items:center;animation:4.5s ease-in-out infinite float;display:grid;position:relative;box-shadow:0 0 0 10px #ffc8572e,0 0 90px 10px #ffaa328c,0 24px 50px #00000073,inset 0 -14px 30px #be500066,inset 0 10px 30px #ffffff8c}.start-btn:active{animation-play-state:paused;transform:scale(.93)}.start-btn:before,.start-btn:after{content:"";animation:ping 2.6s var(--ease-out) infinite;pointer-events:none;border:3px solid #ffd264cc;border-radius:50%;position:absolute;inset:0}.start-btn:after{animation-delay:1.3s}.start-btn span{text-shadow:0 3px #ffffff73;position:relative}@keyframes ping{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}@keyframes float{50%{transform:translateY(-10px)}}.routine{grid-template-columns:minmax(290px,31%) 1fr;align-content:start;gap:clamp(16px,2.4vw,32px);min-height:100%;display:grid}@media (width<=920px){.routine{grid-template-columns:1fr}}.side{align-content:start;align-self:start;gap:18px;display:grid;position:sticky;top:0}@media (width<=920px){.side{position:static}}.hello{justify-content:space-between;align-items:center;gap:12px;display:flex}.hello h2{font-family:var(--display);font-size:1.5rem;font-weight:600}.clock-card{text-align:center;justify-items:center;gap:6px;padding:20px 24px;display:grid;position:relative;overflow:hidden}.clock-label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.95rem;font-weight:700}.clock-big{font-family:var(--display);font-variant-numeric:tabular-nums;background:linear-gradient(#fff,#cbbcff);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(3rem,7vw,4.8rem);font-weight:600;line-height:1}.clock-sub{color:var(--muted);font-weight:600}.stars-row{gap:8px;margin-top:6px;display:flex}.star{filter:grayscale()opacity(.35);width:34px;height:34px;transition:filter .4s, transform .6s var(--ease-spring);place-items:center;font-size:1.6rem;display:grid}.star.on{filter:none;transform:scale(1.18)rotate(-8deg)}.coach{grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:18px 20px;display:grid}.bubble{color:#2a1f5c;background:#fffffff2;border-radius:22px;align-items:center;min-height:64px;padding:14px 18px;font-size:1.12rem;font-weight:700;line-height:1.3;display:flex;position:relative;box-shadow:0 8px 24px #00000040}.bubble:before{content:"";background:inherit;border-radius:4px;width:20px;height:20px;position:absolute;top:50%;left:-9px;transform:translateY(-50%)rotate(45deg)}.bubble .bt{animation:bubbleIn .5s var(--ease-spring)}@keyframes bubbleIn{0%{opacity:0;filter:blur(6px);transform:translateY(8px)scale(.96)}}.angry-toggle{cursor:pointer;min-height:76px;transition:transform .25s var(--ease-spring), box-shadow .3s, background .3s;background:linear-gradient(135deg,#ff5a1f2e,#ff5a1f0a);border:1px solid #ff824673;border-radius:24px;align-items:center;gap:14px;padding:14px 18px;display:flex;position:relative;overflow:hidden}.angry-toggle:hover{box-shadow:0 0 36px #ff5a1f4d}.angry-toggle:active{transform:scale(.97)}.angry-toggle input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.angry-toggle .box{width:40px;height:40px;transition:all .3s var(--ease-spring);background:#00000040;border:3px solid #ff9060;border-radius:12px;flex:none;place-items:center;font-size:1.5rem;display:grid}.angry-toggle input:checked+.box{background:var(--ember);box-shadow:0 0 24px var(--ember);transform:rotate(8deg)scale(1.1)}.angry-toggle .t{font-family:var(--display);font-size:1.35rem;font-weight:600}.angry-toggle .s{color:#ffbfa0;font-size:.9rem;font-weight:600}.calm-chip{width:fit-content;animation:bubbleIn .5s var(--ease-spring);background:#5ef2c329;border:1px solid #5ef2c366;border-radius:999px;margin-top:2px;padding:8px 14px;font-size:.95rem;font-weight:700}.board{grid-template-columns:repeat(6,1fr);align-content:start;gap:clamp(12px,1.6vw,22px);display:grid}.step-label{font-family:var(--display);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;grid-column:1/-1;align-items:center;gap:12px;font-size:1.05rem;display:flex}.step-label:after{content:"";background:linear-gradient(90deg, var(--stroke), transparent);flex:1;height:1px}.board .c3{grid-column:span 3}.board .c2{grid-column:span 2}@media (width<=760px){.board .c3,.board .c2{grid-column:1/-1}}.task{--h:200;text-align:left;width:100%;min-height:190px;color:var(--ink);background:linear-gradient(145deg, hsla(var(--h), 90%, 70%, .2), hsla(var(--h), 90%, 60%, .05));border:1px solid hsla(var(--h), 90%, 80%, .35);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:transform .45s var(--ease-spring), box-shadow .4s, opacity .4s, filter .4s, border-color .3s;border-radius:30px;align-content:space-between;gap:12px;padding:22px 24px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 40px #05051e66,inset 0 1px #fff3}.task.ready:hover{transform:translateY(-4px)}.task.ready:active{transform:scale(.97)}.task.locked{opacity:.45;filter:grayscale(.7);pointer-events:none}.task.active{border-color:hsla(var(--h), 100%, 80%, .9);box-shadow:0 0 0 2px hsla(var(--h), 100%, 75%, .5), 0 0 60px hsla(var(--h), 100%, 65%, .45), 0 24px 60px #05051e80;transform:scale(1.02)}.task.done{background:linear-gradient(145deg,#5ef2c329,#5ef2c308);border-color:#5ef2c380}.task .top{align-items:center;gap:16px;display:flex}.task .emoji{filter:drop-shadow(0 6px 10px #00000059);transition:transform .5s var(--ease-spring);font-size:3rem;line-height:1}.task.active .emoji{animation:1.6s ease-in-out infinite wiggle}@keyframes wiggle{0%,to{transform:rotate(-6deg)scale(1.08)}50%{transform:rotate(6deg)scale(1.18)}}.task .name{font-family:var(--display);font-size:clamp(1.3rem,2.2vw,1.8rem);font-weight:600;line-height:1.1}.task .hint{color:var(--muted);margin-top:2px;font-size:.95rem;font-weight:600}.task .tag{align-self:flex-start;margin-left:auto;font-size:1.6rem}.task .name{overflow-wrap:anywhere}.task .meta{flex-wrap:wrap;align-items:center;gap:10px;font-weight:800;display:flex}.chip{background:#ffffff1f;border-radius:999px;padding:6px 14px;font-size:.95rem;font-weight:800}.chip.good{color:var(--good);background:#5ef2c333}.chip.warn{color:var(--warn);background:#ffc85733}.chip.rec{color:#3b2300;background:linear-gradient(90deg,#ffd978,#ff9ad1)}.live{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:clamp(2.6rem,5vw,3.8rem);font-weight:600;line-height:1}.pace{background:#00000059;border-radius:999px;height:16px;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #0006}.pace i{border-radius:inherit;transition:width .25s linear,background .5s;position:absolute;inset:0 auto 0 0}.pace b{background:#fff;border-radius:2px;width:3px;position:absolute;top:-2px;bottom:-2px;box-shadow:0 0 10px #fff}.pace-legend{color:var(--muted);justify-content:space-between;font-size:.85rem;font-weight:700;display:flex}.done-btn{width:100%;min-height:68px;font-size:1.5rem}.lock{opacity:.8;font-size:1.4rem;position:absolute;bottom:14px;right:18px}.bell{--s:clamp(120px, min(24vh, 34vw), 300px);width:var(--s);height:var(--s);touch-action:none;-webkit-user-drag:none;border-radius:50%;place-items:center;display:grid;position:relative}.bell-plate{background:conic-gradient(from 210deg,#f4f6fb,#9ba3b8,#e9edf6,#7b839a,#f4f6fb);border-radius:50%;position:absolute;inset:0;box-shadow:0 30px 60px #0009,inset 0 0 0 5px #ffffff80,inset 0 -10px 22px #00000073}.bell-plate:after{content:"";background:radial-gradient(circle at 50% 35%,#2a2f42,#12141f);border-radius:50%;position:absolute;inset:7%;box-shadow:inset 0 10px 24px #000c,0 2px #ffffff59}.bell-cap{width:74%;height:74%;font-family:var(--display);color:#fff;text-shadow:0 3px #5a000099;background:radial-gradient(circle at 36% 26%,#ff9b8f 0%,#ff3d3d 36%,#c4151c 78%,#8a0b12 100%);border-radius:50%;align-content:center;place-items:center;gap:2px;font-weight:700;transition:transform .55s cubic-bezier(.34,2.1,.5,1),box-shadow .55s cubic-bezier(.34,2.1,.5,1);display:grid;position:relative;transform:translateY(-8px);box-shadow:0 16px #6b070d,0 28px 34px #0000008c,inset 0 8px 18px #fff6,inset 0 -10px 22px #50000080}.bell-cap .big{font-size:calc(var(--s) * .17);letter-spacing:.04em;line-height:1}.bell-cap .ico{font-size:calc(var(--s) * .15);filter:drop-shadow(0 4px #5a000080);line-height:1}.bell.pressed .bell-cap{transition-duration:70ms;transition-timing-function:ease-out;transform:translateY(10px);box-shadow:0 3px #6b070d,0 8px 12px #0000008c,inset 0 4px 12px #ffffff40,inset 0 -6px 14px #50000080}.bell .ripple{pointer-events:none;animation:ripple .8s var(--ease-out) forwards;border:4px solid #ff8c5ae6;border-radius:50%;position:absolute;inset:6%}@keyframes ripple{0%{opacity:1;transform:scale(.9)}to{opacity:0;transform:scale(1.9)}}.bell.hint{animation:2.4s ease-in-out infinite bellhint}@keyframes bellhint{50%{filter:drop-shadow(0 0 40px #ff5a3c99);transform:scale(1.04)}}.anger{z-index:60;background:#04051a;position:fixed;inset:0;overflow:hidden}.anger .scene{position:absolute;inset:0}.anger .ui{z-index:2;padding:max(18px, env(safe-area-inset-top)) 24px max(22px, env(safe-area-inset-bottom));pointer-events:none;grid-template-rows:auto 1fr auto;justify-items:center;display:grid;position:absolute;inset:0}.anger .ui>*{pointer-events:auto}.anger-top{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.anger-title{font-family:var(--display);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--stroke);background:#00000059;border-radius:999px;padding:10px 20px;font-size:1.3rem;font-weight:600}.readout{text-align:left;place-self:start;justify-items:start;gap:6px;margin-top:10px;display:grid;pointer-events:none!important}.readout .num{font-family:var(--display);font-variant-numeric:tabular-nums;text-shadow:0 0 50px,0 4px #0000008c,0 0 6px #0009;font-size:clamp(3rem,11vh,6.5rem);font-weight:700;line-height:1;transition:color .4s}.readout .num span{animation:numpop .45s var(--ease-spring);display:inline-block}@keyframes numpop{0%{opacity:0;transform:scale(.5)translateY(14px)}}.readout .lbl{font-family:var(--display);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-shadow:0 2px 8px #000c;background:#0806188c;border-radius:999px;padding:4px 18px;font-size:clamp(1.2rem,3vh,1.8rem);font-weight:600}.anger-bottom{align-self:end;justify-items:center;gap:14px;width:min(900px,100%);display:grid}.anger-prompt{font-family:var(--display);text-align:center;text-shadow:0 2px 14px #000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000004d;border-radius:999px;padding:8px 20px;font-size:clamp(1.2rem,2.6vh,1.7rem)}.rate-row{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--stroke);animation:bubbleIn .6s var(--ease-spring);background:#00000059;border-radius:26px;flex-wrap:nowrap;gap:clamp(5px,1vw,10px);padding:10px;display:flex}.rate{width:clamp(36px,6.2vw,62px);height:clamp(44px,7.5vh,68px);font-family:var(--display);color:#fff;background:hsl(var(--rh), 85%, 42%);box-shadow:0 5px 0 hsl(var(--rh), 85%, 24%);transition:transform .25s var(--ease-spring), box-shadow .15s;border-radius:16px;font-size:1.5rem;font-weight:700}.rate:active{box-shadow:0 1px 0 hsl(var(--rh), 85%, 24%);transform:translateY(4px)}.rate.on{box-shadow:0 5px 0 hsl(var(--rh), 85%, 24%), 0 0 30px hsl(var(--rh), 100%, 60%);outline:3px solid #fff;transform:translateY(-8px)scale(1.14)}.anger-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.stomp-count{color:#ffd0b8;text-shadow:0 2px 8px #000;font-weight:800}.breathe{z-index:1;pointer-events:none;width:260px;height:260px;font-family:var(--display);text-shadow:0 2px 10px #000;background:radial-gradient(circle,#a0dcff40,#0000 70%);border:3px solid #a0dcffcc;border-radius:50%;place-items:center;margin:-130px 0 0 -130px;font-size:1.4rem;animation:10s ease-in-out infinite breathe;display:grid;position:absolute;top:30%;left:50%}@keyframes breathe{0%,to{transform:scale(.6)}40%{transform:scale(1.25)}60%{transform:scale(1.25)}}.menu{z-index:30;justify-items:end;gap:10px;display:grid;position:absolute;bottom:18px;right:18px}.menu-panel{gap:8px;width:min(320px,88vw);padding:16px;display:grid}.menu-panel .row{text-align:left;background:#ffffff0f;border-radius:16px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:52px;padding:0 14px;font-weight:700;display:flex}.menu-panel .row:active{transform:scale(.97)}.menu-panel h4{font-family:var(--display);color:var(--muted);margin:4px 4px 6px;font-size:1.1rem;font-weight:500}.pill-sw{background:#ffffff2e;border-radius:99px;flex:none;width:50px;height:28px;transition:background .3s;position:relative}.pill-sw:after{content:"";width:22px;height:22px;transition:transform .3s var(--ease-spring);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.pill-sw.on{background:var(--mint)}.pill-sw.on:after{transform:translate(22px)}.stats-back{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0404168c;place-items:center;padding:clamp(10px,3vw,40px);display:grid;position:fixed;inset:0}.stats-panel{border-radius:36px;grid-template-rows:auto auto 1fr;width:min(1180px,100%);max-height:100%;display:grid;position:relative;overflow:hidden}.stats-head{justify-content:space-between;align-items:center;gap:16px;padding:26px 30px 12px;display:flex}.stats-head h2{font-family:var(--display);font-size:clamp(1.6rem,3.6vw,2.4rem);font-weight:600}.tabs{background:#00000040;border-radius:999px;gap:6px;width:fit-content;margin:4px 30px 10px;padding:6px;display:flex;position:relative}.tab{z-index:1;font-family:var(--display);color:var(--muted);border-radius:999px;padding:10px 22px;font-size:1.1rem;font-weight:500;transition:color .3s;position:relative}.tab.on{color:#2a1650}.tab-pill{transition:left .45s var(--ease-spring), width .45s var(--ease-spring);background:linear-gradient(#fff,#dcd0ff);border-radius:999px;position:absolute;top:6px;bottom:6px;box-shadow:0 4px 14px #0000004d}.stats-body{scrollbar-width:thin;scrollbar-color:#ffffff4d transparent;align-content:start;gap:18px;padding:8px 30px 30px;display:grid;overflow-y:auto}.tiles{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.tile{border:1px solid var(--stroke);background:#ffffff0f;border-radius:24px;position:relative;overflow:hidden}.tile-in{z-index:1;gap:4px;padding:18px 20px;display:grid;position:relative}.tile .k{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.82rem;font-weight:800}.tile .v{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:clamp(2rem,4vw,2.8rem);font-weight:600;line-height:1.05}.tile .d{color:var(--muted);font-size:.95rem;font-weight:700}.d.good{color:var(--good)}.d.bad{color:var(--bad)}.card{border:1px solid var(--stroke);background:#ffffff0e;border-radius:26px;gap:14px;padding:22px 24px;display:grid}.card h3{font-family:var(--display);font-size:1.3rem;font-weight:500}.grid2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:18px;display:grid}.insight{background:linear-gradient(120deg,#ffc8572e,#ff6fb51f);border:1px solid #ffc85759;border-radius:22px;align-items:center;gap:14px;padding:16px 20px;font-size:1.08rem;font-weight:700;line-height:1.35;display:flex}.insight .e{font-size:2rem}.legend{color:var(--muted);flex-wrap:wrap;gap:8px 16px;font-size:.9rem;font-weight:700;display:flex}.legend i{vertical-align:-1px;border-radius:4px;width:12px;height:12px;margin-right:6px;display:inline-block}.trow{font-variant-numeric:tabular-nums;border-bottom:1px solid #ffffff14;grid-template-columns:2.4fr repeat(3,1fr) 1.6fr;align-items:center;gap:12px;padding:14px 8px;display:grid}.trow.head{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--stroke);font-size:.8rem;font-weight:800}.trow .nm{font-family:var(--display);align-items:center;gap:12px;font-size:1.15rem;display:flex}@media (width<=760px){.trow{grid-template-columns:2fr 1fr 1fr}.trow>:nth-child(n+4){display:none}}.unlock-banner{text-align:center;font-family:var(--display);background:linear-gradient(120deg,#5ef2c340,#6ab8ff33);border:1px solid #5ef2c380;border-radius:20px;padding:14px 20px;font-size:1.3rem}.stats-fab{white-space:nowrap;height:56px;font-family:var(--display);background:var(--glass-strong);border:1px solid var(--stroke);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:transform .25s var(--ease-spring);border-radius:999px;flex:none;align-items:center;gap:10px;padding:0 22px;font-size:1.1rem;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.stats-fab:active{transform:scale(.94)}.stats-fab.locked{opacity:.85}.stats-fab .prog{background:linear-gradient(90deg, var(--sun), var(--pink));height:4px;transition:width .8s var(--ease-out);position:absolute;bottom:0;left:0}.stats-fab.ready{background:linear-gradient(135deg,#ffc85773,#ff6fb559);border-color:#ffdc96cc;animation:2.2s ease-in-out infinite glowpulse;box-shadow:0 0 40px #ffc85773}@keyframes glowpulse{50%{box-shadow:0 0 60px #ffc857cc}}.cele{z-index:70;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(circle at 50% 40%,#5028a080,#040416d9);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.cele canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.cele-card{text-align:center;justify-items:center;gap:14px;max-width:720px;padding:clamp(24px,5vw,48px);display:grid;position:relative}.cele-card h1{font-family:var(--display);font-size:clamp(2.4rem,7vw,4.4rem);font-weight:700;line-height:1.05}.cele-time{font-family:var(--display);background:linear-gradient(#fff3b8,#ffb23d);color:#0000;font-variant-numeric:tabular-nums;-webkit-background-clip:text;background-clip:text;font-size:clamp(3.4rem,10vw,6.4rem);font-weight:700;line-height:1}.mascot{flex:none;width:92px;height:92px}.mascot .rays{transform-origin:50px 50px;animation:24s linear infinite spin}.mascot .body{transform-origin:50px 56px;animation:3s ease-in-out infinite bob}.mascot .lid{transform-origin:50%;transform-box:fill-box;animation:4.5s infinite blink}.mascot.pop .body{animation:mpop .7s var(--ease-spring), bob 3s .7s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bob{50%{transform:translateY(-3px)scale(1.02)}}@keyframes blink{0%,94%,to{transform:scaleY(1)}97%{transform:scaleY(.08)}}@keyframes mpop{0%{transform:scale(.8)rotate(-8deg)}60%{transform:scale(1.18)rotate(5deg)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.draw{stroke-dasharray:1;stroke-dashoffset:1px;animation:draw 1.6s .35s var(--ease-out) forwards}@keyframes draw{to{stroke-dashoffset:0}}.fadein{opacity:0;animation:1.2s .9s forwards fadein}@keyframes fadein{to{opacity:1}}.popdot{opacity:0;transform-box:fill-box;transform-origin:50%;animation:popdot .6s var(--ease-spring) forwards}@keyframes popdot{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.grow{animation:grow .9s var(--ease-spring) forwards;transform:scaleY(0)}@keyframes grow{to{transform:scaleY(1)}}
