*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{background:#427da3;color:white;font-family:Inconsolata,"PingFang SC",system-ui,sans-serif;touch-action:none;user-select:none;-webkit-user-select:none}canvas{display:block;width:100%;height:100%}a{color:inherit;text-decoration:none}.back{position:absolute;left:26px;top:max(27px,env(safe-area-inset-top));font-size:13px;z-index:5}.toolbar{position:absolute;right:19px;top:max(17px,env(safe-area-inset-top));display:flex;gap:4px;z-index:5}button{font:inherit;color:inherit;background:none;border:1px solid transparent;padding:10px 14px;cursor:pointer;font-size:13px}.toolbar button:hover{border-color:#ffffff70}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid white;outline-offset:4px}.score{position:absolute;top:25px;left:50%;transform:translateX(-50%);text-align:center;text-shadow:0 1px 5px #17426855;pointer-events:none}.score strong{font-size:32px;font-weight:500;line-height:1}.score>span{font-size:11px;margin-left:4px}.score p{font-size:10px;margin:8px 0;opacity:.75}#overlay{position:absolute;top:25%;left:50%;transform:translateX(-50%);text-align:center;width:min(480px,90%);text-shadow:0 1px 6px #23437733}#overlay h1{font-size:clamp(28px,4vw,46px);font-weight:500;letter-spacing:7px;margin:0 0 18px}#overlay p{font-size:12px;line-height:1.8;margin:0 0 24px}#action{border:1px solid #ffffffb0;padding:12px 26px;background:#ffffff12;backdrop-filter:blur(8px);font-size:14px}#action:hover{background:#ffffff30}.controls{position:absolute;left:20px;right:20px;bottom:max(22px,env(safe-area-inset-bottom));text-align:center;font-size:11px;letter-spacing:.5px;text-shadow:0 1px 5px #000;pointer-events:none;opacity:.85}.touch-help{display:none}[hidden]{display:none!important}.preview>:not(canvas){display:none!important}@media(pointer:coarse){.desktop-help{display:none}.touch-help{display:inline}}@media(max-width:500px){.back{left:20px}.toolbar{right:8px}.toolbar button{padding:10px}.score strong{font-size:26px}#overlay{top:27%}#overlay p{max-width:250px;margin:0 auto 24px}.controls{font-size:10px}}@media(max-height:500px){#overlay{top:25%}#overlay h1{font-size:25px;margin:0 0 10px}#overlay p{font-size:11px;margin-bottom:12px}#action{padding:8px 20px}.score strong{font-size:22px}.score{top:16px}}
