:root{--sun:#ffd23f;--mango:#ffb627;--tangerine:#ff8c42;--berry:#ff5d8f;--lime:#c9e265;--cream:#fff7dd;--ink:#3b2a12;--ink-soft:#3b2a129e;--dial:clamp(250px, min(420px, 84vw, calc(100dvh - 300px)), 420px);--mx:0;--my:0;--font:"Fredoka", ui-rounded, "SF Pro Rounded", system-ui, sans-serif;--emoji:"Apple Color Emoji", "Noto Color Emoji", "Segoe UI Emoji", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--cream);color:var(--ink);font-family:var(--font);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden}button{font:inherit;color:inherit}kbd{font-family:var(--font);color:var(--ink);background:#ffffffb3;border:1px solid #3b2a1224;border-radius:8px;padding:1px 8px 2px;font-size:.85em;font-weight:600;line-height:1.3;display:inline-block;box-shadow:0 2px #3b2a1229}.app{touch-action:none;position:fixed;inset:0}.bg{background:linear-gradient(125deg,#fff4c7,#ffe385,#ffd6a6,#fff1b5,#ffe9a0) 0 0/400% 400%;animation:28s ease-in-out infinite alternate bg-pan;position:absolute;inset:0;overflow:hidden}.blob{filter:blur(70px);opacity:.72;will-change:transform;border-radius:50%;width:58vmax;height:58vmax;position:absolute}.b1{background:radial-gradient(circle,#ffd23f 0%,#0000 65%);animation:26s ease-in-out infinite alternate drift-a;top:-18vmax;left:-15vmax}.b2{background:radial-gradient(circle,#ffa94d 0%,#0000 65%);animation:31s ease-in-out infinite alternate drift-b;top:-10vmax;right:-20vmax}.b3{background:radial-gradient(circle,#ffb3c1 0%,#0000 62%);animation:23s ease-in-out infinite alternate drift-c;bottom:-28vmax;left:10vmax}.b4{opacity:.55;background:radial-gradient(circle,#d9ef7a 0%,#0000 60%);animation:35s ease-in-out infinite alternate-reverse drift-a;bottom:-20vmax;right:-12vmax}.b5{opacity:.6;background:radial-gradient(circle,#fff 0%,#0000 60%);width:40vmax;height:40vmax;animation:20s ease-in-out infinite alternate-reverse drift-b;top:15vmax;left:25vmax}.heat{opacity:calc(var(--heat,0) * .85);background:radial-gradient(circle at 50% 52%,#ff78508c,#ff5d8f40 35%,#0000 65%);transition:opacity .6s;position:absolute;inset:0}.grain{opacity:.09;mix-blend-mode:multiply;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:-50%}@keyframes bg-pan{0%{background-position:0 30%}to{background-position:100% 70%}}@keyframes drift-a{0%{transform:translate(0)scale(1)}50%{transform:translate(18vmax,10vmax)scale(1.15)}to{transform:translate(6vmax,22vmax)scale(.9)}}@keyframes drift-b{0%{transform:translate(0)scale(1)}50%{transform:translate(-16vmax,14vmax)scale(.88)}to{transform:translate(-6vmax,4vmax)scale(1.12)}}@keyframes drift-c{0%{transform:translate(0)scale(1.1)}to{transform:translate(14vmax,-16vmax)scale(.9)}}.app.paused .blob,.app.paused .bg,.app.paused .sticker-float{animation-play-state:paused}.app.paused .bg{filter:saturate(.75)}.bg{transition:filter .6s}.stickers{transition:opacity .6s;position:absolute;inset:0}.app.running .stickers,.app.paused .stickers{opacity:.85}.sticker-pos{transform:translate(-50%, -50%) translate(calc(var(--mx) * var(--depth) * -46px), calc(var(--my) * var(--depth) * -46px));transition:transform .8s cubic-bezier(.2,.7,.3,1);position:absolute}.sticker-float{animation:ease-in-out infinite alternate float}@keyframes float{0%{transform:translate(0, 0) rotate(calc(var(--rot) * -1))}to{transform:translate(var(--dx), var(--dy)) rotate(var(--rot))}}.sticker{cursor:pointer;line-height:1;font-family:var(--emoji);filter:drop-shadow(2.5px 0 #fff)drop-shadow(-2.5px 0 #fff)drop-shadow(0 2.5px #fff)drop-shadow(0 -2.5px #fff)drop-shadow(0 8px 10px #965a0038);background:0 0;border:0;padding:0;transition:transform .35s cubic-bezier(.3,1.8,.5,1);display:block}.sticker:disabled{cursor:default}.sticker:not(:disabled):hover{transform:scale(1.18)rotate(-8deg)}.sticker.boop{animation:.7s cubic-bezier(.3,1.6,.5,1) boop}@keyframes boop{0%{transform:scale(1)}25%{transform:scale(.75,1.25)rotate(-15deg)}55%{transform:scale(1.3,.8)rotate(200deg)}to{transform:scale(1)rotate(360deg)}}.brand{text-align:center;pointer-events:none;transition:opacity .4s;position:absolute;top:max(4dvh,22px);left:0;right:0}.brand h1{letter-spacing:-.02em;color:var(--ink);filter:drop-shadow(0 3px #ffffffd9);margin:0;font-size:clamp(44px,8vw,76px);font-weight:700;line-height:1}.brand h1 span{background:linear-gradient(90deg, var(--mango), var(--tangerine), var(--berry), var(--tangerine), var(--mango));color:#0000;background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:7s linear infinite shimmer}.tagline{color:var(--ink-soft);margin:10px 0 0;font-size:clamp(15px,2vw,19px);font-weight:500}.brand.small{text-align:left;top:20px;left:24px;right:auto}.brand.small h1{font-size:26px}@keyframes shimmer{to{background-position:300% 0}}.stage{pointer-events:none;place-items:center;padding-bottom:56px;display:grid;position:absolute;inset:0}.app.idle .stage,.app.done .stage{padding-top:24px;padding-bottom:0}.dial{width:var(--dial);height:var(--dial);pointer-events:auto;--dial-px:var(--dial);position:relative}.glass{-webkit-backdrop-filter:blur(18px)saturate(1.7);backdrop-filter:blur(18px)saturate(1.7);background:radial-gradient(circle at 32% 24%,#ffffff80,#ffffff24 52%,#ffe8a038);border:1.5px solid #ffffffbf;border-radius:50%;transition:box-shadow .3s;position:absolute;inset:0;box-shadow:inset 0 3px 2px #ffffffe6,inset 0 -22px 44px #ffa01e33,inset 0 0 0 6px #ffffff1f,0 34px 70px -24px #aa5a0073,0 10px 24px #ffaa0029}.app.holding .glass{box-shadow:inset 0 3px 2px #ffffffe6, inset 0 -22px 44px rgba(255, 93, 143, calc(.15 + var(--hold) * .35)), inset 0 0 0 6px #ffffff1f, 0 34px 70px -24px #c8285a80, 0 0 calc(var(--hold) * 60px) #ff5d8f73}.glass-shine{pointer-events:none;border-radius:50%;position:absolute;inset:0}.glass-shine:before{content:"";filter:blur(2px);background:radial-gradient(at 50% 40%,#ffffffd9,#fff0 70%);border-radius:50%;width:46%;height:22%;position:absolute;top:7%;left:13%;transform:rotate(-24deg)}.glass-shine:after{content:"";-webkit-mask-composite:xor;background:conic-gradient(from 210deg,#fffffff2,#ffffff1a 25%,#ffc85080 50%,#ffffff1a 75%,#fffffff2);border-radius:50%;padding:2px;animation:14s linear infinite spin;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes spin{to{transform:rotate(360deg)}}.dial-body{position:absolute;inset:0}.dial-svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ring-track{fill:none;stroke:#ffffff80;stroke-width:14px}.ring-fill{fill:none;stroke-width:14px;stroke-linecap:round;filter:drop-shadow(0 2px 4px #ff8c0059)}.sec-mark{fill:var(--mango);transition:fill .3s}.sec-mark.passed{fill:#fff9}.dot{fill:#fff9;stroke:#fffffff2;stroke-width:1.5px;transform-box:fill-box;transform-origin:50%}.dot.lit{stroke:#fff;stroke-width:2.5px;filter:drop-shadow(0 2px 3px #c85a0066);animation:.5s cubic-bezier(.3,1.9,.5,1) dot-pop}.dot.idle-dot{animation:3.2s ease-in-out infinite dot-wave}.dot-next{fill:none;stroke:var(--tangerine);stroke-width:2.5px}@keyframes dot-pop{0%{transform:scale(.2)}to{transform:scale(1)}}@keyframes dot-wave{0%,70%,to{fill:#fff9;transform:scale(1)}20%{fill:var(--sun);transform:scale(1.6)}}.hold-ring{fill:none;stroke:var(--berry);stroke-width:7px;stroke-linecap:round;filter:drop-shadow(0 0 8px #ff5d8fb3)}.dial-content{text-align:center;place-items:center;display:grid;position:absolute;inset:0}.center-stack{flex-direction:column;align-items:center;gap:6px;display:flex}.eyebrow{letter-spacing:.06em;color:var(--ink-soft);background:#ffffff73;border:1px solid #ffffffb3;border-radius:999px;padding:4px 12px;font-size:14px;font-weight:600}.big{font-size:calc(var(--dial) * .33);color:var(--ink);text-shadow:0 5px 0 var(--mango), 0 14px 24px #c8640040;font-variant-numeric:tabular-nums;font-weight:700;line-height:.95;animation:.4s cubic-bezier(.3,1.8,.5,1) pop-in}.chew-count{animation:none}.chew-count small{color:var(--ink-soft);text-shadow:none;margin-left:2px;font-size:.3em;font-weight:600}.chew-count.complete{color:var(--berry);text-shadow:0 5px #fff,0 14px 30px #ff5d8f73;animation:.6s cubic-bezier(.3,1.8,.5,1) pop-in}.hold-big{color:var(--berry);text-shadow:0 5px #fff,0 14px 24px #ff5d8f59}.caption{color:var(--ink-soft);font-size:17px;font-weight:500}@keyframes pop-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.pause-icon{gap:16px;margin:18px 0 14px;animation:2.4s ease-in-out infinite breathe;display:flex}.pause-icon i{width:calc(var(--dial) * .07);height:calc(var(--dial) * .22);background:var(--ink);box-shadow:0 5px 0 var(--mango);border-radius:999px;display:block}@keyframes breathe{50%{opacity:.75;transform:scale(.92)}}.start-btn{aspect-ratio:1;cursor:pointer;background:radial-gradient(circle at 34% 26%,#ffffffd9 0 9%,#fff0 24%),radial-gradient(circle at 50% 45%,#ffe066,#ffc62b 55%,#ffa31a);border:0;border-radius:50%;outline:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:66%;transition:transform .25s cubic-bezier(.3,1.8,.5,1),box-shadow .2s;animation:3.6s ease-in-out infinite yolk;display:flex;box-shadow:inset 0 -10px 18px #e6780059,inset 0 4px 6px #ffffffb3,0 12px #e8930c,0 24px 40px #c86e0066}.start-btn:hover{transform:translateY(-3px)scale(1.03)}.start-btn:active{transform:translateY(8px)scale(.98);box-shadow:inset 0 -10px 18px #e6780059,inset 0 4px 6px #ffffffb3,0 4px #e8930c,0 10px 20px #c86e0059}.start-btn:focus-visible{box-shadow:0 0 0 4px #fff, 0 0 0 8px var(--tangerine)}.start-emoji{font-family:var(--emoji);font-size:calc(var(--dial) * .1);line-height:1}.start-label{font-size:calc(var(--dial) * .12);color:var(--ink);font-weight:700;line-height:1}.kbd-hint{color:#3b2a12b3;font-size:14px;font-weight:500}@keyframes yolk{0%,to{border-radius:50%}33%{border-radius:54% 46% 52% 48%/47% 53%}66%{border-radius:47% 53% 48% 52%/53% 47% 52% 48%}}.done-stack{gap:10px;animation:.5s cubic-bezier(.3,1.8,.5,1) pop-in}.done-emoji{font-family:var(--emoji);font-size:calc(var(--dial) * .11);line-height:1}.done-title{font-size:calc(var(--dial) * .085);font-weight:700;line-height:1}.stats{gap:calc(var(--dial) * .05);margin:4px 0 6px;display:flex}.stats div{flex-direction:column;align-items:center;display:flex}.stats b{font-size:calc(var(--dial) * .075);font-variant-numeric:tabular-nums;font-weight:700;line-height:1.1}.stats span{color:var(--ink-soft);font-size:13px;font-weight:500}.again-btn{cursor:pointer;background:linear-gradient(#ffe066,#ffbe2b);border:0;border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-size:18px;font-weight:600;transition:transform .2s cubic-bezier(.3,1.8,.5,1);display:inline-flex;box-shadow:inset 0 2px 3px #ffffffb3,0 5px #e8930c,0 10px 20px #c86e004d}.again-btn:hover{transform:translateY(-2px)}.again-btn:active{transform:translateY(4px)}.confetti{pointer-events:none;width:0;height:0;position:absolute;top:calc(50% - 28px);left:50%}.app.idle .confetti,.app.done .confetti{top:calc(50% + 12px)}.confetti span{font-family:var(--emoji);opacity:0;line-height:1;animation:1.6s cubic-bezier(.15,.8,.3,1) forwards burst;position:absolute;top:0;left:0}@keyframes burst{0%{opacity:1;transform:translate(-50%,-50%)scale(.2)}65%{transform:translate(calc(-50% + var(--x)), calc(-50% + var(--y))) rotate(var(--spin)) scale(1);opacity:1}to{transform:translate(calc(-50% + var(--x)), calc(-50% + var(--y) + 70px)) rotate(var(--spin)) scale(.8);opacity:0}}.dock{left:50%;bottom:max(22px, env(safe-area-inset-bottom));pointer-events:none;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;transform:translate(-50%)}.glass-pill{-webkit-backdrop-filter:blur(14px)saturate(1.6);backdrop-filter:blur(14px)saturate(1.6);background:#ffffff59;border:1px solid #ffffffb3;border-radius:999px;box-shadow:inset 0 1px 1px #ffffffe6,0 10px 24px -10px #aa5a004d}.hints{white-space:nowrap;color:var(--ink-soft);align-items:center;gap:10px;padding:10px 18px;font-size:15px;font-weight:500;display:flex}.speed-tabs{pointer-events:auto;padding:4px;display:flex;position:relative}.speed-thumb{background:radial-gradient(circle at 30% 20%,#ffffffbf 0 8%,#fff0 30%),linear-gradient(#ffe066,#ffbe2b);border-radius:999px;width:calc(33.3333% - 2.66667px);transition:transform .45s cubic-bezier(.3,1.5,.5,1);position:absolute;top:4px;bottom:4px;left:4px;box-shadow:inset 0 -3px 6px #e678004d,inset 0 2px 2px #ffffffb3,0 4px 10px #c86e004d}.speed-tab{cursor:pointer;min-width:104px;color:var(--ink-soft);background:0 0;border:0;border-radius:999px;outline:none;flex:1;justify-content:center;align-items:center;gap:7px;padding:7px 14px;font-size:15px;font-weight:600;transition:color .25s;display:inline-flex;position:relative}.speed-tab.active,.speed-tab:not(.active):hover{color:var(--ink)}.speed-tab kbd{border-radius:6px;padding:0 6px 1px;font-size:12px}.speed-tab.active kbd{background:#ffffffd9}.dot-sep{opacity:.5;background:currentColor;border-radius:50%;width:4px;height:4px}.touch-only{display:none}@media (hover:none) and (pointer:coarse){.kb-only,.kbd-hint,.paused-stack kbd,.again-btn kbd,.speed-tab kbd{display:none}.touch-only{display:inline}}@media (width<=560px){.hints{gap:7px;padding:8px 14px;font-size:13px}.speed-tab{min-width:92px;padding:7px 10px;font-size:14px}.brand.small h1{font-size:22px}}@media (prefers-reduced-motion:reduce){.blob,.bg,.sticker-float,.glass-shine:after,.start-btn,.dot.idle-dot,.brand h1 span{animation:none!important}}
