:root{color-scheme:dark;font:15px/1.5 system-ui,-apple-system,sans-serif;background:#000;color:#f7f7f7}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{background:#000}#canvas{position:fixed;inset:0;width:100%;height:100%;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;outline:none;background:#000}#art{position:absolute;left:0;top:0;max-width:none;max-height:none;transform-origin:0 0;will-change:transform;pointer-events:none;user-select:none;-webkit-user-drag:none}#loading{position:absolute;inset:45% 10% auto;text-align:center;color:#bbb;font-size:13px;pointer-events:none}#hint{position:fixed;left:0;right:0;bottom:max(22px,env(safe-area-inset-bottom));text-align:center;padding:14px;color:#fff;font-size:12px;line-height:1.8;background:linear-gradient(transparent,#000b);text-shadow:0 1px 4px #000;pointer-events:none;transition:opacity .3s}#hint span{color:#d1d1d1}#hint.hidden{opacity:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}button,select{font:inherit;color:inherit;background:#303234;border:0;border-radius:10px;padding:12px 14px;min-height:44px;cursor:pointer}button:hover{background:#444}button:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #dcebc2;outline-offset:3px}button:disabled{opacity:.35;cursor:default}a{color:#dcebc2}dialog{padding:0;border:0;background:#1b1c1ef5;color:inherit;border-radius:22px 22px 0 0;width:min(100%,580px);max-width:100%;max-height:90dvh;margin:auto auto 0;overflow:auto;overscroll-behavior:contain;box-shadow:0 -10px 80px #0008}dialog::backdrop{background:#0005}.panel{padding:24px max(22px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left))}.heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}h1{font-size:22px;line-height:1.2;margin:0}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:#adb0b5;margin:0 0 5px}label{display:block;font-size:12px;color:#bbb;margin-bottom:6px}select{width:100%}.actions{display:flex;gap:8px;margin-top:10px}.actions>*{flex:1;min-width:0}.gestures{font-size:13px;color:#d1d1d1;line-height:1.7;margin:22px 0}.small{font-size:12px;color:#b2b4b8}#enable-shake{width:100%}details{margin:20px 0;font-size:13px}summary{cursor:pointer}.footer{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;margin-top:22px}#close-controls{background:#dcebc2;color:#192211}@media(prefers-reduced-motion:reduce){#hint{transition:none}}
