:root{--water:#4fb6d9;--ink:#1f3a4a;--sun:#ffc93c;--panel:#fffe;--star-off:#1f3a4a40;--font:"Trebuchet MS", "Segoe UI", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;margin:0}body{background:var(--water);color:var(--ink);font-family:var(--font);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}canvas{width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}button{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}button:focus-visible{outline-offset:4px;outline:4px solid #fff}#stars{top:calc(env(safe-area-inset-top,0px) + 10px);pointer-events:none;justify-content:center;gap:6px;display:flex;position:absolute;left:16px;right:16px}#stars svg{width:clamp(28px,7vw,46px);height:auto;fill:var(--star-off);stroke:var(--ink);stroke-width:1.2px;transition:transform .4s,fill .3s}#stars svg.on{fill:var(--sun);transform:scale(1.15)rotate(8deg)}#stars svg.pop{animation:.7s ease-out star-pop}#stars.shower svg{animation:.6s ease-out star-pop}#stars.shower svg:nth-child(2){animation-delay:70ms}#stars.shower svg:nth-child(3){animation-delay:.14s}#stars.shower svg:nth-child(4){animation-delay:.21s}#stars.shower svg:nth-child(5){animation-delay:.28s}#stars.shower svg:nth-child(6){animation-delay:.35s}@keyframes star-pop{0%{transform:scale(.6)}45%{transform:scale(1.7)rotate(-12deg)}to{transform:scale(1.15)rotate(8deg)}}#say{right:calc(env(safe-area-inset-right,0px) + 16px);bottom:calc(env(safe-area-inset-bottom,0px) + 16px);border:4px solid var(--ink);background:var(--sun);cursor:pointer;width:84px;height:84px;box-shadow:0 6px 0 var(--ink);border-radius:50%;place-items:center;display:grid;position:absolute}#say:active{box-shadow:0 2px 0 var(--ink);transform:translateY(4px)}#say svg{width:44px;height:44px;fill:var(--ink)}#cards{left:16px;right:16px;bottom:calc(env(safe-area-inset-bottom,0px) + 116px);justify-content:center;gap:clamp(10px,3vw,28px);display:flex;position:absolute}.card{aspect-ratio:1;border:4px solid var(--ink);width:clamp(88px,22vw,132px);box-shadow:0 6px 0 var(--ink);cursor:pointer;background:#fff;border-radius:28px;place-items:center;padding:0;animation:.35s ease-out card-in;display:grid}.card span{pointer-events:none;font-size:clamp(44px,11vw,72px);line-height:1}.card:active{box-shadow:0 2px 0 var(--ink);transform:translateY(4px)}.card.jump{background:var(--sun);animation:.6s card-jump}.card.shake{animation:.5s card-shake}@keyframes card-in{0%{opacity:0;transform:scale(.4)}}@keyframes card-jump{30%{transform:translateY(-24px)scale(1.1)}}@keyframes card-shake{20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}#ear{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 24px);pointer-events:none;font-size:64px;line-height:1;animation:.8s ease-in-out infinite ear;position:absolute;transform:translate(-50%)}@keyframes ear{50%{transform:translate(-50%)scale(1.18)}}#hand{pointer-events:none;margin-left:-22px;font-size:64px;line-height:1;animation:.9s infinite tap;position:absolute}@keyframes tap{0%,to{transform:translateY(34px)}50%{transform:translateY(0)scale(.85)}}#parent{left:calc(env(safe-area-inset-left,0px) + 12px);bottom:calc(env(safe-area-inset-bottom,0px) + 12px);opacity:.55;cursor:pointer;z-index:2;background:0 0;border:0;width:48px;height:48px;padding:0;position:absolute}#parent svg{width:100%;height:100%;transform:rotate(-90deg)}#parent-hint{left:calc(env(safe-area-inset-left,0px) + 64px);bottom:calc(env(safe-area-inset-bottom,0px) + 24px);color:var(--ink);pointer-events:none;z-index:2;background:#fffb;border-radius:999px;padding:4px 10px;font-size:13px;position:absolute}body:not([data-screen=title]) #parent-hint{display:none}#parent .track{fill:#fff5;stroke:#fff8;stroke-width:3px}#parent .progress{fill:none;stroke:var(--ink);stroke-width:3px;stroke-dasharray:94.25;stroke-dashoffset:94.25px}#parent .icon{fill:var(--ink);transform-origin:18px 18px;transform:rotate(90deg)}#parent.holding .progress{stroke-dashoffset:0;transition:stroke-dashoffset var(--hold,3s) linear}#parent-screen{z-index:3;touch-action:pan-y;-webkit-user-select:text;user-select:text;padding:calc(env(safe-area-inset-top,0px) + 16px) 16px calc(env(safe-area-inset-bottom,0px) + 24px);background:#f4f8fa;position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}#parent-screen[hidden]{display:none}.ps{max-width:760px;margin:0 auto}.ps header{z-index:1;-webkit-backdrop-filter:blur(6px);background:#f4f8fadd;justify-content:space-between;align-items:center;gap:12px;margin:-16px -16px 0;padding:12px 16px;display:flex;position:sticky;top:0}.ps h1{margin:0;font-size:22px}.ps h2{margin:24px 0 8px;font-size:17px}.ps p{margin:8px 0;font-size:14px}.ps p.end{margin-top:32px}.ps details{background:#fff;border-radius:10px;margin:8px 0;box-shadow:0 1px 2px #0001}.ps summary{cursor:pointer;padding:10px 12px;font-weight:700}.ps summary small{color:#546e7a;margin-left:6px;font-weight:400}.ps details .scroll{padding:0 8px 8px}.ps .row-btns{flex-wrap:wrap;gap:8px;display:flex}.ps .note{background:#fff3cd;border-radius:10px;padding:10px 12px;font-size:14px}.ps .summary{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.ps .summary div{background:#fff;border-radius:10px;padding:8px 12px;font-size:14px;box-shadow:0 1px 2px #0001}.ps table{border-collapse:collapse;background:#fff;border-radius:10px;width:100%;font-size:14px;overflow:hidden;box-shadow:0 1px 2px #0001}.ps th,.ps td{text-align:left;vertical-align:top;border-bottom:1px solid #e6edf1;padding:8px 10px}.ps th{background:#e9f3f8;font-weight:700}.ps td.num{font-variant-numeric:tabular-nums}.ps .badge{border-radius:999px;padding:1px 8px;font-size:12px;font-weight:700;display:inline-block}.ps .b-none{color:#546e7a;background:#eceff1}.ps .b-learn{color:#7a5b00;background:#fff3cd}.ps .b-known{color:#1b5e20;background:#d8f3dc}.ps button.btn{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:10px;padding:8px 14px;font-weight:700}.ps button.danger{color:#b3261e;border-color:#b3261e}.ps button.btn.armed{background:var(--ink);color:#fff}.ps button.danger.armed{color:#fff;background:#b3261e}.ps .scroll{overflow-x:auto}@media (max-width:560px){.ps .hide-sm{display:none}}#debug{pointer-events:none;background:#fffd;border-radius:6px;max-width:60vw;padding:4px 6px;font:12px/1.3 monospace;position:absolute;top:60px;left:8px}@media (prefers-reduced-motion:reduce){#go,#hand,#stars svg{animation:none}}.screen{align-content:center;place-items:center;gap:clamp(16px,4vh,36px);padding:24px 16px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.veil{-webkit-backdrop-filter:blur(3px);background:#1f3a4a88}.row{justify-content:center;align-items:center;gap:clamp(20px,6vw,56px);display:flex}.big,.mid{border:6px solid var(--ink);background:var(--sun);box-shadow:0 10px 0 var(--ink);cursor:pointer;border-radius:50%;place-items:center;padding:0;line-height:1;display:grid}.big{aspect-ratio:1;width:clamp(132px,34vmin,200px);animation:1.4s infinite pulse}.big svg{width:46%;fill:var(--ink);margin-left:8%}.mid{aspect-ratio:1;background:#fff;width:clamp(96px,22vmin,128px);font-size:clamp(46px,11vmin,64px)}.big:active,.mid:active{box-shadow:0 4px 0 var(--ink);animation:none;transform:translateY(6px)}.mid.corner{top:calc(env(safe-area-inset-top,0px) + 10px);left:calc(env(safe-area-inset-left,0px) + 12px);width:96px;font-size:46px;position:absolute}@keyframes pulse{50%{transform:scale(1.07)}}@keyframes moon{50%{transform:scale(1.08)rotate(-8deg)}}#title{-webkit-backdrop-filter:blur(5px);background:#4fb6d9c4}.badge{filter:drop-shadow(0 6px #1f3a4a55);font-size:clamp(72px,20vmin,128px);line-height:1;position:relative}.badge .flag{filter:drop-shadow(0 3px #1f3a4a44);font-size:.45em;position:absolute;top:-.1em;left:-.3em}.badge .dog{font-size:.6em;animation:1.2s ease-in-out infinite hop;position:absolute;bottom:-.1em;right:-.35em}@keyframes hop{50%{transform:translateY(-.25em)rotate(-8deg)}}#map{flex-wrap:wrap;justify-content:center;gap:6px;max-width:92vw;display:flex}@media (max-width:560px){#map{max-width:calc(5*clamp(38px,9vmin,52px) + 24px)}}#map span{aspect-ratio:1;border:3px solid var(--ink);background:#fff;border-radius:50%;place-items:center;width:clamp(38px,9vmin,52px);font-size:clamp(22px,5.5vmin,32px);display:grid}#map .locked{filter:grayscale()opacity(.45);background:#dfe6ea}#map .newest{background:var(--sun);animation:1.4s infinite pulse}#title .pointer{pointer-events:none;margin-top:-28px;font-size:56px;animation:.9s infinite tap}#ended{animation:.5s ease-out 1.8s backwards end-in}@keyframes end-in{0%{opacity:0}}.end-card{border:5px solid var(--ink);box-shadow:0 10px 0 var(--ink);background:#fffe;border-radius:36px;justify-items:center;gap:20px;max-width:92vw;padding:28px 32px;display:grid}.moon-big{font-size:clamp(72px,18vmin,112px);line-height:1;animation:2.4s ease-in-out infinite moon}#today{flex-wrap:wrap;justify-content:center;gap:4px;max-width:80vw;display:flex}#today svg{width:clamp(32px,8vmin,48px);fill:var(--sun);stroke:var(--ink);stroke-width:1.2px;animation:.4s backwards card-in}#today svg:nth-child(2){animation-delay:.15s}#today svg:nth-child(3){animation-delay:.3s}#today svg:nth-child(4){animation-delay:.45s}#today svg:nth-child(n+5){animation-delay:.6s}.round{border:4px solid var(--ink);width:72px;height:72px;box-shadow:0 5px 0 var(--ink);cursor:pointer;background:#fff;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute}.round:active{box-shadow:0 1px 0 var(--ink);transform:translateY(4px)}#pause{top:calc(env(safe-area-inset-top,0px) + 10px);left:calc(env(safe-area-inset-left,0px) + 12px)}#pause svg{width:34px;fill:var(--ink)}#sun{--p:0;top:calc(env(safe-area-inset-top,0px) + 22px);right:calc(env(safe-area-inset-right,0px) + 14px);pointer-events:none;width:clamp(84px,18vw,140px);height:40px;position:absolute}#sun .track{border:2px solid var(--ink);background:#fff8;border-radius:5px;height:10px;position:absolute;top:16px;left:14px;right:18px;overflow:hidden}#sun .fill{height:100%;width:calc(var(--p) * 100%);background:linear-gradient(90deg, var(--sun), #f08c00)}#sun .sun{top:2px;left:calc(var(--p) * (100% - 40px));font-size:30px;line-height:1;transition:left .5s linear;position:absolute}#sun .moon{opacity:.85;font-size:26px;line-height:1;position:absolute;top:4px;right:-2px}#stars{left:96px;right:calc(clamp(84px,18vw,140px) + 24px)}
