@font-face{font-family:Sora;src:url(../fonts/Sora-VF.subset.woff2)format("woff2");font-weight:100 800;font-display:swap}@font-face{font-family:Figtree;src:url(../fonts/Figtree-VF.subset.woff2)format("woff2");font-weight:300 900;font-display:swap}@font-face{font-family:Noto Sans SC;src:url(../fonts/NotoSansSC-VF.subset.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--ink:#3b2314;--ink-2:#5a3620;--ink-soft:#3b23148c;--cream:#fff4dc;--paper:#fff9ec;--paper-2:#ffe7bd;--honey:#ffb627;--honey-2:#f08c00;--honey-light:#ffd66b;--mint:#4fcfa6;--coral:#ff6b57;--sky:#7cc8f2;--display:"Sora", "Noto Sans SC", system-ui, sans-serif;--body:"Figtree", "Noto Sans SC", system-ui, sans-serif;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px);--shadow:0 6px 0 var(--ink)}:lang(zh-CN){--display:"Noto Sans SC", "Sora", system-ui, sans-serif;--body:"Noto Sans SC", "Figtree", system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none;background:#f7c667;margin:0;overflow:hidden}#game{width:100%;height:100%;display:block;position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}button{font:inherit;color:inherit}svg{width:100%;height:100%;display:block}.screen{opacity:0;visibility:hidden;transition:opacity .28s,visibility 0s linear .28s;position:absolute;inset:0}.screen.is-active{opacity:1;visibility:visible;transition:opacity .28s}.screen.is-active :is(button,input,.modal){pointer-events:auto}.outlined,.logo-text,.modal-title,.banner-title,.hud-combo b,.popup,.boot-logo{font-family:var(--display);paint-order:stroke fill;-webkit-text-stroke:.18em var(--ink);letter-spacing:.01em}.panel,.modal{background:linear-gradient(180deg, var(--paper) 0%, var(--paper-2) 100%);border:4px solid var(--ink);box-shadow:var(--shadow), inset 0 3px 0 #fff, inset 0 -5px 0 #f08c002e;border-radius:18px}.screen-boot{background:radial-gradient(120% 90% at 50% 35%,#ffd98a 0%,#f5b545 60%,#d98a1e 100%);place-content:center;justify-items:center;gap:18px;display:grid}.boot-mark{width:88px;height:88px;filter:drop-shadow(0 5px 0 var(--ink));animation:1.6s linear infinite roll}.boot-logo{color:var(--honey-light);filter:drop-shadow(0 6px 0 var(--ink));font-size:clamp(40px,8vw,72px);font-weight:900}.boot-bar{background:var(--ink);border:4px solid var(--ink);border-radius:10px;width:min(320px,70vw);height:18px;overflow:hidden}.boot-bar i{background:linear-gradient(180deg, #ffe38a, var(--honey) 60%, var(--honey-2));transform-origin:0;border-radius:6px;height:100%;transition:transform .3s;display:block;transform:scaleX(.04)}.boot-label{letter-spacing:.2em;text-transform:uppercase;color:var(--ink);font-size:13px;font-weight:800}.menu{flex-direction:column;align-items:stretch;gap:14px;display:flex}.menu-row{flex-flow:wrap;justify-content:center;align-items:center;gap:14px}.btn{border:4px solid var(--ink);min-width:270px;box-shadow:0 6px 0 var(--ink), inset 0 3px 0 #fff, inset 0 -5px 0 #f08c0033;cursor:pointer;font-family:var(--display);letter-spacing:.03em;color:var(--ink);text-align:center;background:linear-gradient(#fffaf0 0%,#ffe8c0 100%);border-radius:16px;outline:none;padding:13px 28px 15px;font-size:21px;font-weight:800;transition:transform .12s cubic-bezier(.3,1.6,.5,1),box-shadow .12s,background .12s;position:relative}.btn span{justify-content:center;align-items:center;gap:10px;display:inline-flex;position:relative}.btn:is(:hover,:focus-visible,:focus){box-shadow:0 9px 0 var(--ink), 0 0 0 5px #ffd66bbf, inset 0 3px 0 #fff, inset 0 -5px 0 #f08c0033;transform:translateY(-3px)scale(1.03)}.btn:active{box-shadow:0 2px 0 var(--ink), inset 0 3px 0 #fff;transform:translateY(4px)}.btn-primary{background:linear-gradient(180deg, #ffe38a 0%, var(--honey) 55%, var(--honey-2) 100%);box-shadow:0 6px 0 var(--ink), inset 0 3px 0 #fff3c4, inset 0 -6px 0 #a046004d}.btn-primary span{color:var(--ink)}.btn-primary:is(:hover,:focus-visible,:focus){box-shadow:0 9px 0 var(--ink), 0 0 0 5px #ffffffb3, inset 0 3px 0 #fff3c4, inset 0 -6px 0 #a046004d}.btn-small{border-radius:12px;min-width:0;padding:8px 18px 10px;font-size:16px}.menu-row .btn{min-width:190px}kbd{border:2px solid var(--ink);min-width:1.9em;height:1.9em;color:var(--ink);font:800 .72em/1 "Sora", var(--display);box-shadow:0 3px 0 var(--ink);vertical-align:.1em;background:#fff;border-radius:7px;place-items:center;margin:0 .1em;padding:0 .45em;display:inline-grid}kbd.wide{min-width:4em}kbd.round{background:var(--ink-2);color:var(--cream);border-radius:50%;padding:0}kbd.a{color:#fff;background:#4cc46f}kbd.b{background:var(--coral);color:#fff}kbd.x{color:#fff;background:#3f8cff}.bottom-bar{padding:16px calc(30px + var(--safe-r)) calc(16px + var(--safe-b)) calc(30px + var(--safe-l));color:var(--cream);text-shadow:0 2px 0 var(--ink);justify-content:space-between;align-items:center;gap:16px;font-size:14px;font-weight:800;display:flex;position:absolute;bottom:0;left:0;right:0}.bottom-bar small{opacity:.9;text-align:right;max-width:60ch;font-size:11px;font-weight:600}.prompts{gap:22px;display:flex}.prompts span{align-items:center;gap:6px;display:inline-flex}.title-vignette{background:linear-gradient(90deg,#5a2d0a8c 0%,#5a2d0a33 40%,#0000 65%),radial-gradient(140% 100%,#0000 55%,#46230a73);position:absolute;inset:0}.title-block{left:calc(clamp(24px, 6vw, 96px) + var(--safe-l));flex-direction:column;gap:16px;width:min(460px,44vw);display:flex;position:absolute;top:50%;transform:translateY(-52%)}.screen-title.is-active .title-block>*{animation:.6s cubic-bezier(.2,1.2,.4,1) both rise}.screen-title.is-active .tagline{animation-delay:60ms}.screen-title.is-active .title-goal{animation-delay:.12s}.screen-title.is-active .menu{animation-delay:.18s}.logo{align-items:center;gap:14px;display:flex}.logo-mark{width:clamp(64px,8vw,104px);height:clamp(64px,8vw,104px);filter:drop-shadow(0 6px 0 var(--ink));flex:none;animation:3s ease-in-out infinite bob}.logo-words{flex-direction:column;align-items:flex-start;display:flex}.logo-text{color:var(--honey-light);-webkit-text-stroke:.14em var(--ink);text-shadow:0 .09em 0 var(--ink), 0 .12em 0 var(--ink);white-space:nowrap;margin:0;font-size:clamp(56px,8.4vw,118px);font-weight:900;line-height:1}:lang(zh-CN) .logo-text{letter-spacing:.04em}.logo-sub{background:var(--ink);color:var(--honey-light);font:800 clamp(13px, 1.4vw, 17px) "Sora", var(--display);letter-spacing:.22em;box-shadow:4px 4px 0 var(--coral);border-radius:8px;margin-top:8px;padding:4px 14px 5px;transform:rotate(-2deg)}.tagline{color:#fff;text-shadow:0 2px 0 var(--ink), 0 0 12px #3b231499;margin:4px 0 0;font-size:clamp(15px,1.5vw,18px);font-weight:700;line-height:1.5}.title-goal{border:3px solid var(--ink);background:var(--mint);box-shadow:0 4px 0 var(--ink);font:800 15px var(--display);color:var(--ink);border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:6px 14px 6px 10px;display:inline-flex}.title-goal svg{width:20px;height:20px}.title-block .menu{width:min(320px,100%);margin-top:10px}.title-best{top:calc(20px + var(--safe-t));right:calc(24px + var(--safe-r));background:var(--honey);border:4px solid var(--ink);box-shadow:0 5px 0 var(--ink);font:800 16px var(--display);color:var(--ink);border-radius:999px;padding:8px 18px;position:absolute}.is-hidden{display:none!important}.screen-modal{-webkit-backdrop-filter:blur(5px);background:#46230a66;place-items:center;display:grid}.modal{background-image:radial-gradient(circle at 12px 12px, #f08c0014 3px, transparent 3.5px), linear-gradient(180deg, var(--paper) 0%, var(--paper-2) 100%);background-size:24px 24px,auto;border-radius:26px;flex-direction:column;align-items:center;gap:20px;width:min(440px,100vw - 32px);max-height:calc(100dvh - 28px);padding:26px 32px 30px;display:flex;position:relative;overflow:auto}.screen-modal.is-active .modal{animation:.34s cubic-bezier(.2,1.4,.4,1) both pop}.modal .menu{width:100%}.modal .menu:not(.menu-row) .btn{min-width:0}.modal-wide{width:min(780px,100vw - 32px)}.modal-title{color:var(--honey-light);text-align:center;filter:drop-shadow(0 5px 0 var(--ink));margin:-6px 0 0;font-size:clamp(34px,5vw,48px);font-weight:900}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px 20px;width:100%;display:grid}fieldset{border:3px solid var(--ink);background:#ffffff8c;border-radius:14px;margin:0;padding:12px 16px 6px}fieldset:last-child{grid-column:1/-1}legend{font:800 13px var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--cream);background:var(--ink);border-radius:8px;padding:3px 12px}.row{justify-content:space-between;align-items:center;gap:16px;min-height:48px;font-size:16px;font-weight:800;display:flex}input[type=range]{--fill:50%;appearance:none;background:linear-gradient(90deg, var(--honey) var(--fill), #f1dcb4 var(--fill));border:3px solid var(--ink);cursor:pointer;border-radius:8px;outline:none;width:160px;height:16px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;border:4px solid var(--ink);width:26px;height:26px;box-shadow:0 3px 0 var(--ink);background:#fff;border-radius:50%}input[type=range]::-moz-range-thumb{border:4px solid var(--ink);background:#fff;border-radius:50%;width:18px;height:18px}input[type=range]:focus-visible,input[type=range]:focus{box-shadow:0 0 0 4px #ffb62799}.toggle{cursor:pointer;background:0 0;border:0;outline:none;justify-content:flex-end;align-items:center;gap:10px;min-width:88px;padding:0;font-size:14px;font-weight:800;display:inline-flex}.toggle i{border:3px solid var(--ink);background:#f1dcb4;border-radius:15px;width:54px;height:30px;transition:all .18s;position:relative}.toggle i:after{content:"";border:2px solid var(--ink);background:#fff;border-radius:50%;width:20px;height:20px;transition:all .18s cubic-bezier(.3,1.5,.5,1);position:absolute;top:2px;left:2px}.toggle[aria-pressed=true] i{background:var(--mint)}.toggle[aria-pressed=true] i:after{left:26px}.toggle:focus-visible i,.toggle:focus i{box-shadow:0 0 0 4px #ffb62799}.seg{border:3px solid var(--ink);background:#f1dcb4;border-radius:12px;gap:3px;padding:3px;display:inline-flex}.seg button{cursor:pointer;color:var(--ink-2);background:0 0;border:0;border-radius:8px;outline:none;padding:7px 14px;font-size:14px;font-weight:800;transition:background-color .14s,color .14s,box-shadow .14s}.seg button[aria-pressed=true]{background:var(--honey);color:var(--ink);box-shadow:inset 0 -3px #a046004d}.seg button:is(:focus-visible,:focus){box-shadow:0 0 0 3px var(--ink)}.modal-board{width:min(560px,100vw - 32px)}.board-head,.board li{grid-template-columns:40px 1fr 84px 64px 88px;align-items:center;gap:8px;width:100%;display:grid}.board-head{font:800 12px var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);padding:0 14px}.board-head em,.board em{text-align:right;font-style:normal}.board{flex-direction:column;gap:6px;width:100%;margin:-12px 0 0;padding:0;list-style:none;display:flex}.board li{border:3px solid var(--ink);font-variant-numeric:tabular-nums;background:#fff;border-radius:12px;padding:9px 14px;font-weight:800}.board li b{border:2px solid var(--ink);width:30px;height:30px;font:800 15px var(--display);background:#f1dcb4;border-radius:50%;place-items:center;display:grid}.board li:first-child b{background:var(--honey)}.board li:nth-child(2) b{background:#dfe6f2}.board li:nth-child(3) b{background:#f3b98a}.board li em{font:800 17px var(--display);color:var(--honey-2)}.board li.is-me{box-shadow:0 0 0 4px var(--honey);background:#fff1c9}.board-size small{margin-left:2px;font-size:.75em}.board-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.board .board-empty{text-align:center;border:3px dashed var(--ink-soft);background:0 0;padding:22px;display:block}.modal-results{gap:12px;width:min(500px,100vw - 32px);padding-top:20px}.modal-results .modal-title{font-size:clamp(32px,4.6vw,46px);line-height:1.05}.results-sub{color:var(--ink-2);text-align:center;margin:-4px 0 2px;font-weight:800}.results-stars{gap:10px;margin-top:2px;display:flex}.results-stars .star{color:#e9d3aa;width:54px;height:54px;filter:drop-shadow(0 4px 0 var(--ink))}.results-stars .star:nth-child(2){width:70px;height:70px;margin-top:-14px}.results-stars .star svg{stroke:var(--ink);stroke-width:1.6px;stroke-linejoin:round}.results-stars .star.is-on{color:var(--honey);animation:.5s cubic-bezier(.2,1.6,.4,1) both starIn}.screen-results:not(.is-won) .modal-title{color:#ffb3a6}.results-best{background:var(--coral);color:#fff;border:3px solid var(--ink);font:800 14px var(--display);letter-spacing:.06em;border-radius:999px;padding:4px 16px;animation:1s ease-in-out infinite pulse;display:none}.results-best.is-active{display:block}.results-table{flex-direction:column;gap:3px;width:100%;margin:0;display:flex}.results-table>div{font-variant-numeric:tabular-nums;border-radius:10px;justify-content:space-between;align-items:baseline;gap:12px;padding:5px 12px;display:flex}.results-table>div:nth-child(odd){background:#fff9}.results-table .r-sep{margin-top:6px}.results-table dt{color:var(--ink-2);font-weight:800}.results-table dd{text-align:right;font:800 17px var(--display);margin:0}.results-table dd small{margin-left:2px;font-size:.7em}.screen-results:not(.is-won) .r-bonus{display:none}.results-table .r-total-row{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);margin-top:6px;background:var(--honey)!important}.results-table .r-total-row dt{color:var(--ink);font:900 17px var(--display)}.r-total{font-size:26px!important}.results-save{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:4px;display:flex}.results-name{border:3px solid var(--ink);max-width:220px;height:46px;color:var(--ink);font:800 16px var(--body);-webkit-user-select:text;user-select:text;background:#fff;border-radius:12px;outline:none;flex:160px;padding:0 14px}.results-name:focus{box-shadow:0 0 0 4px #ffb627b3}.results-saved,.results-rank{font:800 16px var(--display);color:var(--honey-2);display:none}.results-save.is-saved :is(.results-name,.btn){display:none}.results-save.is-saved :is(.results-saved,.results-rank){display:inline}.screen-hud{font-variant-numeric:tabular-nums}.hud-top-left,.hud-top-center,.hud-top-right{top:calc(16px + var(--safe-t));flex-direction:column;gap:10px;display:flex;position:absolute}.hud-top-left{left:calc(18px + var(--safe-l));align-items:flex-start}.hud-top-center{align-items:center;left:50%;transform:translate(-50%)}.hud-top-right{right:calc(18px + var(--safe-r));align-items:flex-end}.hud-size{align-items:center;gap:12px;padding:8px 20px 8px 10px;display:flex}.hud-size.bump{animation:.26s cubic-bezier(.2,1.8,.4,1) sizeBump}.hud-size-badge{width:52px;height:52px;animation:6s linear infinite roll}.hud-size-body{flex-direction:column;line-height:1;display:flex}.hud-label{font:800 12px var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}.hud-size-value{font:900 38px/1 "Sora", var(--display);color:var(--ink);min-width:4.2ch}.hud-size-value small{color:var(--honey-2);margin-left:3px;font-size:.5em}.hud-goal{border-radius:14px;width:250px;padding:22px 14px 8px}.goal-track{border:3px solid var(--ink);background:#f1dcb4;border-radius:8px;height:16px;position:relative}.goal-fill{background:linear-gradient(180deg, #ffe38a, var(--honey) 55%, var(--honey-2));transform-origin:0;border-radius:5px;transition:transform .35s cubic-bezier(.2,1.2,.4,1);position:absolute;inset:0;transform:scaleX(0)}.goal-mark{border:2px solid var(--ink);width:22px;height:22px;color:var(--ink-2);background:#fff;border-radius:50%;margin-left:-11px;padding:3px;position:absolute;top:-22px}.goal-mark:after{content:"";background:var(--ink);width:2px;height:8px;margin-left:-1px;position:absolute;top:20px;left:50%}.goal-start{margin-left:-4px;left:0}.hud-goal-row{font:800 12px var(--display);color:var(--ink-2);justify-content:space-between;margin-top:6px;display:flex}.hud-items b{color:var(--ink);font-size:14px}.hud-clock{justify-content:center;align-items:center;gap:8px;min-width:150px;padding:6px 20px 8px 14px;display:flex}.hud-clock svg{width:26px;height:26px;color:var(--honey-2)}.hud-clock b{font:900 36px/1 "Sora", var(--display);color:var(--ink)}.hud-clock.is-low{background:linear-gradient(#ffd9d0,#ffab98);animation:.8s ease-in-out infinite pulse}.hud-clock.is-low svg{color:var(--coral)}.hud-compass{background:var(--mint);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);font:800 15px var(--display);border-radius:999px;align-items:center;gap:8px;padding:5px 16px 5px 8px;animation:1.4s ease-in-out infinite pulse;display:flex}.hud-compass-arrow{border:2px solid var(--ink);width:26px;height:26px;color:var(--coral);background:#fff;border-radius:50%;padding:3px;transition:transform 80ms linear;display:grid}.hud-pause{cursor:pointer;border-radius:16px;place-items:center;width:54px;height:54px;padding:12px;display:grid}.hud-pause:active{box-shadow:0 2px 0 var(--ink);transform:translateY(4px)}.hud-combo{right:calc(28px + var(--safe-r));opacity:0;justify-items:end;gap:2px;transition:all .2s;display:grid;position:absolute;top:34%;transform:translate(20px)rotate(4deg)}[data-active-screen=hud] .hud-combo.is-active{opacity:1;transform:rotate(4deg)}.hud-combo.pop b{animation:.35s cubic-bezier(.2,1.8,.4,1) comboPop}.hud-combo b{color:var(--honey-light);filter:drop-shadow(0 5px 0 var(--ink));font-size:64px;font-weight:900;line-height:1}.hud-combo[data-tier="2"] b{color:#ff9f7a}.hud-combo[data-tier="3"] b{color:#8ff0cf}.hud-combo span{background:var(--ink);color:var(--cream);font:800 13px var(--display);letter-spacing:.1em;border-radius:8px;padding:2px 10px}.hud-combo-bar{background:var(--ink);border:2px solid var(--ink);border-radius:5px;width:110px;height:10px;margin-top:4px;overflow:hidden}.hud-combo-bar i{background:var(--honey);transform-origin:100%;border-radius:3px;height:100%;display:block}.feed{left:calc(20px + var(--safe-l));bottom:calc(26px + var(--safe-b));flex-direction:column-reverse;align-items:flex-start;gap:6px;display:flex;position:absolute}.feed-line{background:var(--paper);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);font:800 15px var(--display);border-radius:999px;align-items:center;gap:8px;padding:4px 14px 5px 6px;transition:opacity .4s,transform .4s;animation:.25s cubic-bezier(.2,1.6,.4,1) both feedIn;display:flex}.feed-line b{background:var(--honey);border:2px solid var(--ink);border-radius:50%;place-items:center;width:22px;height:22px;font-size:15px;line-height:1;display:grid}.feed-line em{color:var(--honey-2);font-size:13px;font-style:normal}.feed-line.is-big{background:var(--honey-light);font-size:17px}.feed-line.is-out{opacity:0;transform:translate(-20px)}.banner{text-align:center;opacity:0;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:22%;left:0;right:0}.banner.show{animation:2.8s both banner}.banner-kicker:empty,.banner-sub:empty{display:none}.banner-kicker{background:var(--ink);color:var(--honey-light);font:800 15px var(--display);letter-spacing:.18em;border-radius:8px;padding:3px 14px 4px;transform:rotate(-2deg)}.banner-title{color:var(--honey-light);filter:drop-shadow(0 6px 0 var(--ink));font-size:clamp(40px,6vw,76px);font-weight:900;line-height:1.05}.banner[data-kind=milestone] .banner-title{color:#fff3c4;font-size:clamp(34px,4.6vw,56px)}.banner[data-kind=hurry] .banner-title{color:#ffab98;font-size:clamp(32px,4.4vw,52px)}.banner-sub{background:var(--paper);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);font:800 16px var(--display);border-radius:12px;padding:5px 16px}.hint{left:50%;bottom:calc(28px + var(--safe-b));background:linear-gradient(180deg, var(--paper), var(--paper-2));border:4px solid var(--ink);box-shadow:var(--shadow);white-space:nowrap;opacity:0;border-radius:16px;align-items:center;gap:14px;padding:10px 12px 10px 18px;font-size:18px;font-weight:800;transition:all .3s cubic-bezier(.2,1.3,.4,1);display:flex;position:absolute;transform:translate(-50%,24px)}.hint.is-active{opacity:1;transform:translate(-50%)}.hint.is-tutorial:before{content:attr(data-step);background:var(--ink);color:var(--honey-light);font:800 13px "Sora", var(--display);border-radius:8px;padding:2px 8px}.hint.is-gate{background:linear-gradient(#d4fff0,#9eeed3);animation:1.6s ease-in-out infinite pulse}.hint.is-active.is-gate{transform:translate(-50%)}.hint-skip{border:3px solid var(--ink);cursor:pointer;font:800 13px var(--display);color:var(--ink);box-shadow:0 3px 0 var(--ink);background:#fff;border-radius:10px;align-items:center;gap:6px;padding:5px 10px;display:none}.hint.is-tutorial .hint-skip{display:inline-flex}.hint-skip kbd{font-size:.8em}.popups{position:absolute;inset:0;overflow:hidden}.popup{color:#ffab98;white-space:nowrap;filter:drop-shadow(0 4px 0 var(--ink));font-size:30px;font-weight:900;animation:1.2s ease-out both popup;position:absolute;transform:translate(-50%,-50%)}.bump-vignette{opacity:0;background:radial-gradient(#0000 50%,#f0781473);position:absolute;inset:0}.bump-vignette.flash{animation:.5s ease-out flash}.stats{right:calc(18px + var(--safe-r));top:calc(84px + var(--safe-t));color:var(--cream);background:#3b2314d1;border-radius:10px;grid-template-columns:auto auto;gap:1px 12px;padding:8px 12px;font:600 11px/1.35 ui-monospace,Menlo,monospace;display:grid;position:absolute}.stats b{color:var(--honey-light);grid-column:1/-1;font-size:13px}.stats i{text-align:right;color:#fff;font-style:normal}.touch{display:none}body.has-touch .touch{display:block}body.has-touch .prompts{display:none}.touch-stick{border:4px solid var(--ink);opacity:.6;pointer-events:none;background:#fff4dc59;border-radius:50%;width:132px;height:132px;margin:-66px 0 0 -66px;position:absolute;top:70%;left:20%}.touch-stick.is-active{opacity:1}.touch-stick i{background:radial-gradient(circle at 35% 30%, #ffe38a, var(--honey) 60%, var(--honey-2));border:4px solid var(--ink);width:60px;height:60px;box-shadow:0 4px 0 var(--ink);border-radius:50%;margin:-30px 0 0 -30px;position:absolute;top:50%;left:50%}.touch-btn{border:4px solid var(--ink);font:900 16px var(--display);color:var(--ink);box-shadow:0 6px 0 var(--ink);touch-action:none;border-radius:50%;place-items:center;display:grid;position:absolute}.touch-btn.is-down{box-shadow:0 1px 0 var(--ink);transform:translateY(5px)}.touch-dash{right:calc(40px + var(--safe-r));bottom:calc(40px + var(--safe-b));background:radial-gradient(circle at 35% 30%, #ffe38a, var(--honey) 60%, var(--honey-2));width:96px;height:96px}body.has-touch .feed{bottom:auto;top:calc(170px + var(--safe-t))}body.has-touch .hint{bottom:auto;top:calc(92px + var(--safe-t));white-space:normal;text-align:center;max-width:56vw;padding:8px 10px 8px 14px;font-size:15px}.fatal{text-align:center;place-items:center;padding:24px;font-weight:800;display:grid;position:fixed;inset:0}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}@keyframes pop{0%{opacity:0;transform:scale(.86)}}@keyframes bob{50%{transform:translateY(-7px)rotate(8deg)}}@keyframes roll{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.05)}}@keyframes starIn{0%{opacity:0;transform:scale(0)rotate(-40deg)}}@keyframes comboPop{0%{transform:scale(1.6)}}@keyframes sizeBump{40%{transform:scale(1.08)}}@keyframes feedIn{0%{opacity:0;transform:translate(-24px)scale(.8)}}@keyframes popup{0%{opacity:0;transform:translate(-50%,-30%)scale(.6)}12%{opacity:1;transform:translate(-50%,-60%)scale(1.15)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-170%)scale(1)}}@keyframes flash{0%{opacity:1}}@keyframes banner{0%{opacity:0;transform:scale(1.5)}10%{opacity:1;transform:scale(.96)}16%{transform:scale(1)}82%{opacity:1;transform:none}to{opacity:0;transform:translateY(-24px)}}@media (max-width:900px),(max-height:560px){.btn{min-width:220px;padding:10px 22px 12px;font-size:18px}.title-block{gap:10px;width:min(420px,52vw)}.logo-text{font-size:clamp(44px,7vw,80px)}.tagline{font-size:14px}.modal{gap:14px;padding:20px 20px 22px}.hud-size-value{font-size:30px}.hud-size-badge{width:40px;height:40px}.hud-goal{width:200px}.hud-clock b{font-size:28px}.hud-clock{min-width:120px}.hud-combo b{font-size:48px}.bottom-bar small{display:none}}@media (max-height:460px){.title-block{gap:8px;top:50%;transform:translateY(-50%)}.logo-mark{width:56px;height:56px}.logo-text{font-size:48px}.logo-sub{margin-top:4px;font-size:12px}.tagline{display:none}.menu{gap:10px}.btn{padding:8px 20px 10px;font-size:17px}.hud-top-left,.hud-top-center,.hud-top-right{top:calc(10px + var(--safe-t));gap:6px}.hud-size{padding:5px 14px 5px 8px}.hud-size-value{font-size:24px}.hud-size-badge{width:32px;height:32px}.hud-goal{width:170px;padding:18px 10px 5px}.hud-clock b{font-size:22px}.hud-pause{width:44px;height:44px;padding:9px}.banner{top:18%}.banner-title{font-size:38px}.settings-grid{grid-template-columns:1fr 1fr;gap:10px}fieldset:last-child{grid-column:1/-1}.row{min-height:40px;font-size:14px}.results-table dd{font-size:15px}.modal-results{gap:8px}.results-stars .star{width:40px;height:40px}.results-stars .star:nth-child(2){width:50px;height:50px}body.has-touch .feed{top:calc(158px + var(--safe-t))}body.has-touch .hint{top:calc(66px + var(--safe-t))}.touch-dash{width:84px;height:84px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (max-height:820px){.modal-results{gap:7px;padding-top:14px;padding-bottom:16px}.modal-results .modal-title{font-size:clamp(30px,4vw,40px)}.results-stars .star{width:42px;height:42px}.results-stars .star:nth-child(2){width:56px;height:56px;margin-top:-10px}.results-table>div{padding:3px 12px}.results-table dd{font-size:16px}.results-table .r-sep,.results-table .r-total-row{margin-top:4px}.results-name{height:42px}}
