:root{font-family:ui-rounded,"Arial Rounded MT Bold","Trebuchet MS",sans-serif;color:#343046;background:#cdebdc;font-synthesis:none;--ink:#343046;--pink:#e54d78;--cream:#fff9de}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0}button:focus-visible,a:focus-visible{outline:3px solid #793cc6;outline-offset:5px}button:disabled{cursor:default}button:not(:disabled):active{transform:translateY(3px)!important;box-shadow:none!important}[hidden]{display:none!important}#game{position:relative;width:100%;height:100svh;min-height:0;overflow:hidden}canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}header{position:absolute;inset:30px 42px auto;pointer-events:none;display:flex;justify-content:space-between;align-items:flex-start}.back{position:absolute;top:0;color:var(--ink);text-decoration:none;font-size:10px;letter-spacing:2px;font-weight:900;pointer-events:auto;opacity:.65}.brand{padding-top:35px}.brand h1{font-size:clamp(42px,5.7vw,87px);line-height:.76;margin:0;letter-spacing:-5px;font-weight:1000;transform:rotate(-5deg);position:relative;text-shadow:0 4px 0 #ffffff65}.brand h1 span{color:var(--pink);font-size:1.25em;letter-spacing:-6px}.brand h1 i{font-size:.7em;font-style:normal;color:#f4a948;display:inline-block;margin-left:7px;transform:rotate(10deg)}.brand p{font-size:10px;font-weight:900;letter-spacing:1.7px;margin:24px 0 0}.scoreboard{text-align:right;display:flex;flex-direction:column;padding-top:10px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:2.5px}.scoreboard strong{font-size:54px;line-height:1.1;letter-spacing:-3px;font-weight:1000}.scoreboard #best{font-size:10px;letter-spacing:1.5px;opacity:.6;font-weight:bold;margin-top:8px}.run-info{position:absolute;top:37px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:11px;letter-spacing:1.4px;font-weight:900}.divider{opacity:.3}#hearts{position:absolute;top:27px;left:50%;transform:translateX(-50%);font-size:22px;letter-spacing:5px;color:var(--pink)}.intro{position:absolute;left:50%;bottom:43px;transform:translateX(-50%);text-align:center;width:max-content;max-width:92%}.intro p{font-size:15px;margin:0 0 17px}.intro small{display:block;font-size:11px;opacity:.55;margin-top:16px}.pill{border:2px solid var(--ink);border-radius:40px;padding:17px 32px;font-weight:900;font-size:15px;letter-spacing:1px;box-shadow:0 5px 0 var(--ink);transition:transform .15s,background .15s}.pill:hover{transform:translateY(-2px)}.primary{background:var(--pink);color:#fff9eb}.primary span{padding-left:25px;font-size:22px}footer{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);text-align:center;width:max-content;max-width:95%}#hint{font-size:14px;margin:0 0 13px;min-height:20px}#hint.danger{color:#b92c57;font-weight:800}.control-row{display:flex;align-items:center;justify-content:center;gap:20px}.dpad{display:flex;align-items:center;gap:5px}.dpad>div{display:flex;flex-direction:column;gap:4px}.dpad button{width:39px;height:30px;border:2px solid var(--ink);background:var(--cream);border-radius:10px;box-shadow:0 3px var(--ink);font-weight:900;font-size:19px;line-height:20px}.bloom{display:flex;gap:12px;align-items:center;text-align:left;background:#f9dc79;padding:11px 21px;font-size:13px}.bloom>span{font-size:34px;line-height:1}.bloom small{display:block;font-size:8px;margin-top:3px;letter-spacing:1px}.bloom:disabled{background:#c5d8b8;color:#68745c;border-color:#76816c;box-shadow:0 4px #76816c}.bloom.ready{animation:bloom 1.5s ease-in-out infinite}.wait{background:none;font-size:10px;font-weight:900;letter-spacing:1px;padding:12px 2px}.wait span{display:block;font-size:28px;line-height:14px}.keyboard-note{font-size:8px;letter-spacing:1.5px;display:block;opacity:.5;margin-top:13px}.utilities{position:absolute;bottom:25px;right:32px;display:flex;gap:10px;align-items:center}.utilities button{background:transparent;font-size:10px;font-weight:900;letter-spacing:1px;padding:8px}.utilities #help,.utilities #pause{border:1.5px solid #34304660;border-radius:50%;width:29px;height:29px;padding:0}.utilities #pause{font-size:12px}#announcement{position:absolute;left:50%;top:25%;transform:translate(-50%,-50%) rotate(-7deg);text-align:center;color:var(--pink);font-size:clamp(35px,6vw,78px);font-weight:1000;letter-spacing:-3px;white-space:nowrap;pointer-events:none;text-shadow:3px 4px var(--cream);opacity:0}#announcement.pop{animation:pop 1.5s ease both}dialog{padding:0;border:3px solid var(--ink);border-radius:30px;background:var(--cream);color:var(--ink);box-shadow:0 12px var(--ink);max-width:min(470px,92vw);width:470px;overflow:visible}dialog::backdrop{background:#294b4260;backdrop-filter:blur(5px)}.modal-inner{padding:32px;text-align:center}h2{font-size:49px;line-height:.95;letter-spacing:-2.7px;margin:14px 0 20px;font-weight:1000}#modal-copy{line-height:1.6;font-size:14px;opacity:.8}#modal-action{margin-top:20px}#modal-content .results{display:flex;justify-content:center;gap:30px;margin:22px 0}#modal-content .results b{display:block;font-size:29px}#modal-content .results span{font-size:9px;font-weight:900;letter-spacing:1px}#modal-content .upgrades{display:flex;flex-direction:column;gap:9px;margin-top:23px}.upgrade{background:#e6ebc6;border:2px solid var(--ink);border-radius:16px;display:flex;text-align:left;align-items:center;padding:13px;gap:13px}.upgrade:hover{background:#f8d47a}.upgrade>span{font-size:30px;min-width:32px;text-align:center}.upgrade b{font-size:15px}.upgrade small{display:block;font-size:11px;line-height:1.4;margin-top:3px}.how{display:flex;justify-content:space-around;align-items:center;background:#e0ebc9;border-radius:15px;padding:18px 8px;font-size:28px;margin:20px 0}.how span{font-size:12px}.rules{font-size:13px;line-height:1.8;text-align:left}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes pop{0%{opacity:0;transform:translate(-50%,-30%) rotate(-10deg) scale(.5)}15%,65%{opacity:1;transform:translate(-50%,-50%) rotate(-7deg) scale(1)}100%{opacity:0;transform:translate(-50%,-80%) rotate(-5deg) scale(1.1)}}@keyframes bloom{50%{box-shadow:0 5px var(--ink),0 0 0 6px #fff9de70}}@media(max-width:750px){header{inset:21px 22px auto}.brand{padding-top:30px}.brand h1{font-size:44px;letter-spacing:-3px}.brand h1 span{letter-spacing:-4px}.brand p{font-size:7px;letter-spacing:1px;margin-top:16px}.back{font-size:8px}.scoreboard{padding-top:26px}.scoreboard strong{font-size:39px}.scoreboard .eyebrow{font-size:9px}.run-info{top:156px;font-size:10px;gap:10px}#hearts{top:23px;font-size:18px}.utilities{bottom:12px;right:14px;gap:2px}.utilities #sound{font-size:8px}.utilities #help,.utilities #pause{width:25px;height:25px}.intro{bottom:69px}.intro p{font-size:12px}.intro small{font-size:10px}footer{bottom:58px}#hint{font-size:12px;margin-bottom:10px}.control-row{gap:17px}.keyboard-note{display:none}.pill{padding:14px 25px}.bloom{padding:10px 17px}.modal-inner{padding:25px}h2{font-size:42px}#announcement{top:30%}}@media(max-height:680px) and (min-width:751px){.brand h1{font-size:52px}.brand p{font-size:8px}footer{bottom:12px}.keyboard-note{display:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}#announcement.pop{opacity:1}}@media(max-height:620px) and (max-width:750px){.brand h1{font-size:32px}.brand p{display:none}.run-info{top:112px}footer{bottom:45px}.intro{bottom:50px}.intro small{display:none}}
