:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#eaf1fb;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0a0d13;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}html,body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;height:100%;margin:0;padding:0;overflow:hidden}#app{width:100%;height:100%}button{font-family:inherit}.game-wrap{background:radial-gradient(120% 90% at 50% 18%,#1d2837 0%,#121822 45%,#0a0d13 100%);position:fixed;inset:0;overflow:hidden}.game-wrap canvas{touch-action:none;width:100%;height:100%;display:block}.readout{top:calc(env(safe-area-inset-top,0px) + .7rem);left:calc(env(safe-area-inset-left,0px) + .8rem);color:#d7e4f59e;pointer-events:none;letter-spacing:.02em;grid-template-columns:auto auto;gap:.1rem .7rem;font:500 .72rem/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;display:grid;position:absolute}.readout dt{text-transform:uppercase;opacity:.65;font-size:.62rem}.readout dd{color:#eaf1fb;text-align:right;font-variant-numeric:tabular-nums;margin:0}.status{top:calc(env(safe-area-inset-top,0px) + .7rem);right:calc(env(safe-area-inset-right,0px) + .8rem);align-items:center;gap:.4rem;display:flex;position:absolute}.pill{letter-spacing:.08em;text-transform:uppercase;color:#e2ecf8bf;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:999px;padding:.34rem .5rem;font:600 .6rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.pill-on{color:#8ff0c0;background:#8ff0c01a;border-color:#8ff0c059}.pill-off{color:#e2ecf880}.pill-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;padding:.3rem .55rem;font-size:.7rem;line-height:1}.title{top:calc(env(safe-area-inset-top,0px) + 1.4rem);text-align:center;pointer-events:none;position:absolute;left:0;right:0}.title h1{letter-spacing:.28em;text-transform:uppercase;color:#eaf1fbe6;margin:0;font:300 1.5rem/1.1 system-ui,sans-serif}.title p{letter-spacing:.16em;text-transform:uppercase;color:#d7e4f552;margin:.35rem 0 0;font:500 .66rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.controls{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + .8rem);-webkit-backdrop-filter:blur(14px);background:#0e131bb8;border:1px solid #ffffff14;border-radius:1rem;width:min(28rem,100vw - 1.6rem);padding:.75rem .9rem .85rem;position:absolute;transform:translate(-50%);box-shadow:0 1rem 2rem -1rem #000c}.controls[hidden]{display:none}.tabs{gap:.3rem;margin-bottom:.5rem;display:flex}.tab{letter-spacing:.08em;text-transform:uppercase;color:#d7e4f58c;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:1px solid #ffffff14;border-radius:.45rem;flex:1;padding:.45rem .4rem;font:600 .62rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.tab-on{color:#ffd9a0;background:#ffb6481a;border-color:#ffb64866}.control{grid-template-columns:3.6rem 1fr 4.2rem;align-items:center;gap:.6rem;padding:.18rem 0;display:grid}.control label{letter-spacing:.08em;text-transform:uppercase;color:#d7e4f599;font:600 .62rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.control output{color:#eaf1fb;text-align:right;font-variant-numeric:tabular-nums;font:500 .72rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.control input[type=range]{appearance:none;background:0 0;width:100%;height:1.6rem;margin:0}.control input[type=range]::-webkit-slider-runnable-track{background:#ffffff24;border-radius:999px;height:.28rem}.control input[type=range]::-moz-range-track{background:#ffffff24;border-radius:999px;height:.28rem}.control input[type=range]::-webkit-slider-thumb{appearance:none;background:#ffb648;border:2px solid #10161f;border-radius:50%;width:1.25rem;height:1.25rem;margin-top:-.49rem;box-shadow:0 0 0 1px #ffb64859}.control input[type=range]::-moz-range-thumb{background:#ffb648;border:2px solid #10161f;border-radius:50%;width:1.25rem;height:1.25rem}.row{gap:.45rem;margin-top:.5rem;display:flex}.btn{letter-spacing:.04em;color:#eaf1fbdb;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:.6rem;flex:1;padding:.6rem .5rem;font:600 .68rem/1 system-ui,sans-serif}.btn:active{background:#ffffff21}.btn-accent{color:#ffd9a0;background:#ffb6481f;border-color:#ffb64866}.toggle{right:calc(env(safe-area-inset-right,0px) + .8rem);bottom:calc(env(safe-area-inset-bottom,0px) + .8rem);color:#eaf1fbcc;-webkit-backdrop-filter:blur(14px);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:#0e131bb8;border:1px solid #ffffff1a;border-radius:50%;place-items:center;width:2.9rem;height:2.9rem;font-size:1.1rem;display:grid;position:absolute}.hint{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 4.4rem);color:#d7e4f566;pointer-events:none;white-space:nowrap;font:500 .68rem/1 system-ui,sans-serif;position:absolute;transform:translate(-50%)}.countdown{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.countdown-word{letter-spacing:.18em;text-transform:uppercase;color:#eaf1fb;text-shadow:0 .4rem 2rem #0009;will-change:transform, opacity;font:300 3rem/1 system-ui,sans-serif}.fanfare{pointer-events:none;align-content:center;place-items:center;gap:.4rem;display:grid;position:absolute;inset:0}.fanfare-title{letter-spacing:.24em;text-transform:uppercase;color:#8ff0c0;text-shadow:0 .4rem 2.4rem #000000b3;will-change:transform, opacity;font:300 2.6rem/1 system-ui,sans-serif}.fanfare-sub{letter-spacing:.4em;text-transform:uppercase;color:#d7e4f5a6;will-change:transform, opacity;font:500 .8rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.hud{top:calc(env(safe-area-inset-top,0px) + 3.1rem);pointer-events:none;justify-content:center;gap:.5rem;display:flex;position:absolute;left:0;right:0}.hud-item{letter-spacing:.06em;color:#e2ecf8cc;font-variant-numeric:tabular-nums;background:#0e131b99;border:1px solid #ffffff14;border-radius:999px;padding:.36rem .6rem;font:600 .66rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.hud-warn{color:#ffd9a0;border-color:#ffb64859}.hud-jam{color:#ff9f9f;border-color:#ff787866}.hint-line{left:0;right:0;bottom:calc(env(safe-area-inset-bottom,0px) + 21vh);text-align:center;color:#d7e4f56b;pointer-events:none;font:500 .7rem/1 system-ui,sans-serif;position:absolute}.hint-btn{right:calc(env(safe-area-inset-right,0px) + .8rem);bottom:calc(env(safe-area-inset-bottom,0px) + 21vh);letter-spacing:.05em;color:#eaf1fbd9;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:#0e131bb3;border:1px solid #ffffff1f;border-radius:999px;padding:.55rem .9rem;font:600 .66rem/1 system-ui,sans-serif;position:absolute}.result{text-align:center;-webkit-backdrop-filter:blur(18px);background:#0e131bdb;border:1px solid #ffffff1a;border-radius:1.1rem;width:min(19rem,100vw - 2rem);padding:1.4rem 1.2rem 1.2rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 1.4rem 3rem -1.2rem #000000e6}.result-title{letter-spacing:.28em;text-transform:uppercase;color:#7fd4a8;font:300 1.1rem/1 system-ui,sans-serif}.stars{letter-spacing:.2rem;color:#ffffff29;margin:.7rem 0 .2rem;font-size:1.5rem}.stars .star-on{color:#ffb648}.result-score{color:#eaf1fb;font-variant-numeric:tabular-nums;font:200 2.6rem/1.1 system-ui,sans-serif}.result-rows{grid-template-columns:auto auto;gap:.15rem .8rem;margin:.9rem 0 1.1rem;font:500 .68rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;display:grid}.result-rows dt{text-align:left;color:#d7e4f580;text-transform:uppercase;font-size:.6rem}.result-rows dd{text-align:right;color:#eaf1fb;font-variant-numeric:tabular-nums;margin:0}.ui-enter-active,.ui-leave-active{transition:opacity .35s}.ui-enter-from,.ui-leave-to{opacity:0}.result-level{letter-spacing:.16em;text-transform:uppercase;color:#d7e4f56b;margin-top:.25rem;font:500 .64rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.masthead{top:calc(env(safe-area-inset-top,0px) + .7rem);text-align:center;pointer-events:none;position:absolute;left:0;right:0}.game-title{letter-spacing:.34em;text-indent:.34em;color:#eaf1fbd1;margin:0;font:300 .95rem/1 system-ui,sans-serif}.game-title-cog{color:#ffb648}.level-tag{letter-spacing:.12em;text-transform:uppercase;color:#d7e4f561;margin-top:.3rem;font:600 .6rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}.hud-ok{color:#8ff0c0;border-color:#8ff0c059}.help-scrim{-webkit-backdrop-filter:blur(6px);z-index:10;background:#06090eb8;place-items:center;padding:1rem;display:grid;position:absolute;inset:0}.help{background:#0e131bf0;border:1px solid #ffffff1a;border-radius:1.1rem;width:min(24rem,100%);max-height:calc(100dvh - 2rem);padding:1.5rem 1.4rem 1.3rem;overflow-y:auto;box-shadow:0 1.6rem 3.4rem -1.4rem #000000e6}.help-title{text-align:center;letter-spacing:.34em;text-indent:.34em;color:#eaf1fbd9;margin:0 0 .9rem;font:300 1.05rem/1 system-ui,sans-serif}.help-goal{color:#e2ecf8cc;margin:0 0 1.1rem;font:400 .86rem/1.55 system-ui,sans-serif}.help-goal strong,.help-note strong{color:#ffd9a0;font-weight:600}.help-rows{grid-template-columns:auto 1fr;align-items:baseline;gap:.5rem .8rem;margin:0 0 1.1rem;display:grid}.help-rows dt{letter-spacing:.06em;text-transform:uppercase;color:#ffb648;white-space:nowrap;font:600 .62rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace}.help-rows dd{color:#e2ecf8c7;margin:0;font:400 .8rem/1.35 system-ui,sans-serif}.help-note{color:#d7e4f599;border-top:1px solid #ffffff14;margin:0 0 1.2rem;padding-top:.9rem;font:400 .78rem/1.5 system-ui,sans-serif}.help-go{width:100%;padding:.75rem;font-size:.78rem}.help-btn{top:calc(env(safe-area-inset-top,0px) + .7rem);right:calc(env(safe-area-inset-right,0px) + .8rem);color:#d7e4f58c;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:#0e131b99;border:1px solid #ffffff1a;border-radius:50%;place-items:center;width:2rem;height:2rem;font:600 .85rem/1 system-ui,sans-serif;display:grid;position:absolute}.help-heading{letter-spacing:.18em;text-transform:uppercase;color:#d7e4f580;border-top:1px solid #ffffff14;margin:1.2rem 0 .6rem;padding-top:.9rem;font:600 .62rem/1 ui-monospace,SFMono-Regular,Menlo,monospace}
