@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bb86985b9358e82-s.1_nwqg2oqknh7.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/98a6f59906826739-s.43efwv28dotlz.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/32ad89419f634795-s.1tb5eil6y_dva.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/8224a722d77dedea-s.0zl3jsojfe2ze.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/0461c21301ee96b8-s.p.3dojvicm65v_0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Press Start 2P Fallback";src:local(Arial);ascent-override:44.58%;descent-override:0.0%;line-gap-override:0.0%;size-adjust:224.32%}.G5wpYG_className{font-family:"Press Start 2P","Press Start 2P Fallback";font-style:normal;font-weight:400}.G5wpYG_variable{--font-pixel:"Press Start 2P", "Press Start 2P Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/faab88e4be272d29-s.3zhtymus0wdqb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a45aa1001bf9176f-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/41ba59f553543ecf-s.1da667lu-u79a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/67bba87670b402d1-s.1i05ju5aeyhye.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d6c1ff7e86974212-s.p.1dgcou5jor5q_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e60f3e45d49b65c3-s.2ontrj8z1-o25.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1f5edaafc8393c36-s.33iiebxkijmxa.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/f1c080d8717d5d0c-s.2nzetymcmw3t7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/afc8e0e4a8c58d89-s.0_f09-l1omku8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2880e9b87afbd5d9-s.p.0fcfx2a-jndc5.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.udCkxG_className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.udCkxG_variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--cyan:#3ee0ff;--coral:#ff5d8f;--gold:#ffd15c;--ink:#e8f4ff;--muted:#b7c9da;--panel:#10192be6;--pad:#07101c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{font-family:var(--font-mono), ui-monospace, monospace;color:var(--ink);background:var(--pad);font-size:16px;line-height:1.45}button,summary{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--cyan)}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.world{background:#0a0f30;flex-direction:column;min-height:100dvh;display:flex;position:relative;overflow:hidden}.sky-canvas{z-index:0;image-rendering:pixelated;image-rendering:crisp-edges;pointer-events:none;display:block;position:fixed;top:0;left:0}.scanlines{pointer-events:none;z-index:8;background:repeating-linear-gradient(#0000 0 2px,#0000001a 2px 3px),radial-gradient(#0000 60%,#02041073 100%);position:fixed;inset:0}.meter{z-index:4;top:6rem;bottom:11rem;right:max(.7rem, env(safe-area-inset-right));pointer-events:none;background:#0408188c;width:6px;position:fixed;box-shadow:0 0 0 2px #0408188c}.meter.hidden{opacity:0}.meter{transition:opacity .5s}.meter-seg{opacity:.45;transition:opacity .6s;position:absolute;left:0;right:0}.meter-seg.on{opacity:1}.meter-you{background:#fff;width:16px;height:4px;transition:bottom 1.8s cubic-bezier(.3,.9,.3,1);position:absolute;right:-5px;transform:translateY(50%);box-shadow:0 0 0 2px #141a33}.meter-tag{font-family:var(--font-pixel), monospace;color:#fff;white-space:nowrap;text-shadow:2px 2px #141a33;font-size:8px;position:absolute;top:50%;right:22px;transform:translateY(-50%)}.corner{z-index:9;top:max(.55rem, env(safe-area-inset-top));right:max(.55rem, env(safe-area-inset-right));gap:.4rem;display:flex;position:fixed}.corner-btn{color:#e9f3ff;min-height:36px;font-family:var(--font-pixel), monospace;letter-spacing:.08em;text-transform:uppercase;text-shadow:1px 1px #000;background:#080c2099;border:2px solid #ffffff59;padding:.4rem .6rem;font-size:8px}.corner-btn:hover{border-color:#fff}.corner-btn.on{border-color:var(--gold);color:var(--gold)}.corner-btn.dev{color:#7dffb5;border-style:dashed;border-color:#7dffb5}.corner-btn.dev.on{color:#141a33;text-shadow:none;background:#7dffb5}.land{z-index:3;min-height:100dvh;padding:max(4.5rem, calc(env(safe-area-inset-top) + 3.5rem)) 1rem max(1rem, env(safe-area-inset-bottom));flex-direction:column;justify-content:space-between;display:flex;position:relative}.hero{text-align:center;padding:0 .5rem}.logo{font-family:var(--font-pixel), monospace;letter-spacing:.04em;white-space:nowrap;margin:0;font-size:clamp(1.9rem,9vw,3.6rem);font-weight:400;line-height:1.35;position:relative}.logo-ch{color:#fff;text-shadow:-4px 0 var(--cyan), 4px 0 var(--coral), 0 6px 0 #141a33, 5px 7px 0 #141a33;animation:2.4s ease-in-out infinite bob;display:inline-block}.subtitle{font-family:var(--font-pixel), monospace;letter-spacing:.14em;color:var(--gold);text-shadow:2px 2px #141a33;margin:.8rem 0 0;font-size:.72rem}.tagline,.set-line,.streak,.privacy-line,.rarity,.kicker,.unit-name{color:var(--muted)}.tagline{color:#f7fbff;text-shadow:1px 1px #141a33,0 0 8px #141a3399;max-width:28rem;margin:.9rem auto 0;font-size:16px;font-weight:600}.streak{font-family:var(--font-pixel), monospace;color:var(--gold);border:2px solid var(--gold);background:#080c20b3;margin:.8rem 0 0;padding:.35rem .6rem;font-size:.6rem;display:inline-block}.press{text-align:center;font-family:var(--font-pixel), monospace;letter-spacing:.2em;text-transform:uppercase;color:#fff;text-shadow:2px 2px #141a33;margin:0;font-size:.55rem;animation:1.1s steps(2,end) infinite blink}.land-actions{gap:.75rem;width:min(100%,440px);margin:0 auto;display:grid}.set-line,.privacy-line{text-align:center;color:#eef6ff;text-shadow:1px 1px #141a33;margin:0;font-size:16px}.btn-launch,.btn-fire,.btn-mini,.btn-choice{border:3px solid var(--cyan);color:#e9fbff;background:#0d1c33;transition:transform 80ms steps(2,end),box-shadow 80ms steps(2,end),background .15s;box-shadow:4px 4px #041018}.btn-launch:hover,.btn-mini:hover,.btn-choice:hover{transform:translate(-1px,-1px);box-shadow:5px 5px #041018}.btn-launch:active,.btn-mini:active,.btn-choice:active,.btn-fire:active{transform:translate(3px,3px);box-shadow:1px 1px #041018}.btn-launch{width:100%;min-height:64px;font-family:var(--font-pixel), monospace;letter-spacing:.12em;text-transform:uppercase;font-size:.95rem}.btn-launch:hover,.btn-mini:hover,.btn-choice:hover{background:#14304c}.btn-launch.big{color:#141a33;background:var(--gold);border-color:#fff4cc;min-height:72px;font-size:1.1rem;animation:1.6s ease-in-out infinite glowpulse;box-shadow:0 0 0 3px #141a33,6px 6px #041018}.btn-launch.big:hover{background:#ffe08a}.btn-launch:disabled{opacity:.6;animation:none}.btn-fire:hover{background:#ff4f84}.btn-fire{min-width:88px;min-height:52px;font-family:var(--font-pixel), monospace;letter-spacing:.08em;text-transform:uppercase;background:#e23b6e;border-color:#ffd0df;font-size:.72rem;box-shadow:0 4px #8c1d42}.btn-mini{min-height:44px;font-family:var(--font-pixel), monospace;text-transform:uppercase;padding:.45rem .5rem;font-size:.52rem;line-height:1.45}.btn-mini.wide{width:100%}.mini-row{flex-wrap:wrap;gap:.5rem;display:flex}.mini-row .btn-mini{flex:30%}.how{background:#081020cc;border:3px solid #3ee0ff73;padding:.6rem .75rem}.how summary{cursor:pointer;font-size:16px}.how p{margin:.6rem 0 0;font-size:16px}.play{z-index:3;flex-direction:column;min-height:100dvh;display:flex;position:relative}.hud{padding:max(3.2rem, calc(env(safe-area-inset-top) + 2.7rem)) .4rem .7rem;text-shadow:2px 2px #0b0f22;grid-template-columns:1fr auto 1fr;align-items:start;gap:.9rem;margin:0 2.2rem 0 .4rem;display:grid;position:relative}.hud:after{content:"";background:repeating-linear-gradient(90deg,#ffffff8c 0 4px,#0000 4px 10px);height:2px;position:absolute;bottom:0;left:0;right:0}.hud-stat{justify-self:start;gap:.3rem;display:grid}.hud-stat strong{font-family:var(--font-pixel), monospace;color:#fff;font-size:clamp(.85rem,3.6vw,1.15rem);font-weight:400}.hud-stat strong small{font-size:.6em}.hud-zone{font-family:var(--font-pixel), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-size:.45rem}.hud-mid{justify-items:center;gap:.45rem;display:grid}.hud-right{text-align:right;justify-self:end;justify-items:end}.hud-label{font-family:var(--font-pixel), monospace;letter-spacing:.14em;text-transform:uppercase;color:#d8e8ff;font-size:.5rem}.combo{font-family:var(--font-pixel), monospace;text-transform:uppercase;color:#141a33;text-shadow:none;background:#7dffb5;padding:3px 5px;font-size:.48rem;animation:.4s steps(2,end) 2 wobble}.squares{justify-content:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sq{background:#0b0f22b3;width:14px;height:14px;box-shadow:inset 0 0 0 2px #56607e}.sq.now{background:#0b0f22b3;animation:.9s steps(2,end) infinite blink;box-shadow:inset 0 0 0 2px #fff}.sq.green{box-shadow:none;background:#3ddc97}.sq.red{background:var(--coral);box-shadow:none}.sq.yellow{background:var(--gold);box-shadow:none}.squares.big .sq{width:22px;height:22px;animation:.4s cubic-bezier(.2,1.6,.4,1) both sqpop}.stage{flex:1;justify-content:center;align-items:center;padding:.4rem 2.6rem .4rem .7rem;display:flex;overflow:auto}.card{width:min(100%,520px)}.pixel-frame{border:3px solid var(--cyan);background:0 0;position:relative;box-shadow:0 0 0 3px #0b0f22,6px 6px 0 3px #04081866}.pixel-frame:before,.pixel-frame:after{content:"";background:var(--gold);width:9px;height:9px;position:absolute;box-shadow:0 0 0 2px #0b0f22}.pixel-frame:before{top:-6px;left:-6px}.pixel-frame:after{bottom:-6px;right:-6px}.pixel-inner{background:linear-gradient(#3ee0ff12,#0000 40%),#0c1228f0;padding:.9rem .95rem 1rem}.card.pop{animation:.45s cubic-bezier(.2,1.4,.4,1) both pop}.card.pop.shake{border-color:var(--coral);animation:.3s both pop,.45s .25s both shake}.card.pop.win{border-color:var(--gold);animation:.45s cubic-bezier(.2,1.4,.4,1) both pop,1.4s ease-in-out .5s infinite glowpulse}.kicker,.unit-name,.rarity{font-family:var(--font-pixel), monospace;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.55rem}.unit-name{color:var(--cyan);margin-top:.35rem}.prompt{margin:.8rem 0}.prompt-text{margin:0 0 .55rem;font-size:1.05rem}.prompt-math{font-size:1.25rem;overflow-x:auto}.math-view{color:#fff}.graph{background:#07101c;border:2px solid #3ee0ff73;width:100%;height:auto;margin-top:.55rem;display:block}.graph .axis{stroke:#9fb4c9;stroke-width:2px}.graph .series{fill:none;stroke:#ff5d8f;stroke-width:3px}.graph .shade{fill:#3ee0ff59;stroke:none}.graph .tick{fill:#d5e8ff;font-size:13px;font-family:var(--font-mono), ui-monospace, monospace}.rarity{text-align:center;margin-top:.75rem}.dock{z-index:5;padding:.4rem 2.5rem max(.7rem, env(safe-area-inset-bottom)) .7rem;gap:.55rem;display:grid;position:relative}.choices{grid-template-columns:1fr 1fr;gap:.45rem;display:grid}.btn-choice{justify-content:center;align-items:center;gap:.4rem;min-height:52px;padding:.35rem;font-size:1.05rem;display:flex;position:relative}.btn-choice.selected{box-shadow:inset 0 0 0 3px var(--coral), 4px 4px 0 #041018}.choice-key{font-family:var(--font-pixel), monospace;color:var(--gold);font-size:.45rem;position:absolute;top:4px;left:5px}.btn-choice.selected{background:#2a1430}.dock-row{align-items:center;gap:.75rem;display:flex}.dock-hint{color:#eef6ff;text-shadow:1px 1px #0b0f22;flex:1;margin:0;font-size:16px}.timer{z-index:2;border:3px solid var(--cyan);background:#0d1c33;border-radius:50%;flex:none;width:58px;height:58px;position:relative;box-shadow:3px 3px #041018}.timer svg{width:52px;height:52px;margin:0 auto;display:block;transform:rotate(-90deg)}.timer-track{fill:#0d1c33;stroke:#1c3d58;stroke-width:4px}.timer-value{fill:none;stroke:var(--cyan);stroke-width:4px;transition:stroke .3s}.timer.warn{border-color:var(--gold)}.timer.warn .timer-value{stroke:var(--gold)}.timer.urgent{border-color:var(--coral);animation:.5s steps(2,end) infinite urgent}.timer.urgent .timer-value{stroke:var(--coral)}.timer.urgent span{color:var(--coral)}.timer span{font-family:var(--font-pixel), monospace;color:#fff;place-items:center;font-size:.72rem;display:grid;position:absolute;inset:0}math-field,.math-field{color:#f4fbff;border:3px solid var(--cyan);--hue:196;--latex-color:#f4fbff;--text-color:#f4fbff;--caret-color:#3ee0ff;--selection-color:#fff;--selection-background-color:#14506a;--contains-highlight-background-color:transparent;--highlight-text:transparent;--composition-background-color:#123044;--composition-text-color:#fff;--smart-fence-color:#7fdfff;--placeholder-color:#8ea8bd;--placeholder-opacity:1;background:#07101c;border-radius:0;flex:1 1 0;width:0;min-width:0;min-height:52px;padding:6px 12px;font-size:22px;overflow:hidden}.overlay{z-index:5;place-items:center;min-height:100dvh;padding:4.5rem 2.6rem 1.2rem .8rem;display:grid;position:relative}.overlay h2{font-family:var(--font-pixel), monospace;margin:.2rem 0 .4rem;font-size:clamp(.85rem,4vw,1.2rem);font-weight:400;line-height:1.5}.good{color:#7dffb5}.verdict{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.gain-chip{font-family:var(--font-pixel), monospace;color:#141a33;background:#7dffb5;padding:.4rem .55rem;font-size:.6rem;animation:.5s cubic-bezier(.2,1.6,.4,1) .15s both slam;box-shadow:3px 3px #041018}.gain-chip.zero{background:var(--coral);color:#fff}.tier{color:var(--gold);text-shadow:3px 3px #0b0f22;font-size:clamp(1rem,5vw,1.5rem)!important}.zone-line{font-family:var(--font-pixel), monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);margin:.2rem 0 0;font-size:.5rem}.bad{color:var(--coral)}.feedback-line{flex-wrap:wrap;align-items:center;gap:.45rem .7rem;margin:.45rem 0;font-size:16px;display:flex}.feedback-line>span:first-child{font-family:var(--font-pixel), monospace;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.5rem}.explain,.percent,.hint{margin:.55rem 0;font-size:16px}.percent{color:var(--gold)}.hint{border-left:4px solid var(--coral);background:#ff5d8f1f;padding:.55rem .65rem}.altitude-big{font-family:var(--font-pixel), monospace;color:#fff;margin:0;font-size:1.4rem}.share-pre{white-space:pre-wrap;word-break:break-word;background:#07101c;border:2px solid #3ee0ff66;margin:.6rem 0;padding:.7rem;font-size:16px}.archive-list,.unit-list{gap:.45rem;margin:0 0 .8rem;padding:0;list-style:none;display:grid}.climb{z-index:5;text-align:center;pointer-events:none;flex-direction:column;justify-content:flex-start;align-items:center;min-height:100dvh;padding-top:18dvh;display:flex;position:relative}.climb-label{font-family:var(--font-pixel), monospace;letter-spacing:.22em;text-transform:uppercase;color:#eaf4ff;text-shadow:2px 2px #0b0f22;margin:0 0 .6rem;font-size:.6rem;animation:1s steps(2,end) infinite blink}.count-num{font-family:var(--font-pixel), monospace;color:#ff4d5e;text-shadow:-4px 0 #fff,4px 0 #fff,0 -4px #fff,0 4px #fff,6px 6px #141a33;margin:.5rem 0 0;font-size:clamp(3.4rem,18vw,6.5rem);line-height:1.1;animation:.8s cubic-bezier(.2,1.6,.4,1) both slam}.count-num.go{color:var(--gold);animation:.5s cubic-bezier(.2,1.6,.4,1) both slam,.3s steps(2,end) .5s 3 wobble}.count-num.gainer{color:#7dffb5;font-size:clamp(2.6rem,13vw,4.8rem);animation:2.2s ease-out both rise}.count-num.gainer small{margin-left:.15em;font-size:.4em}.count-num.stall{color:var(--coral);animation:.6s both slam,.25s steps(2,end) .4s 4 wobble}.zone-banner{font-family:var(--font-pixel), monospace;color:#fff;text-transform:uppercase;letter-spacing:.1em;border:3px solid var(--gold);background:#080c20b8;gap:.45rem;margin:1.4rem 0 0;padding:.7rem 1.1rem;font-size:clamp(.8rem,4vw,1.1rem);animation:2.2s both banner;display:grid;box-shadow:4px 4px #0b0f22}.zone-banner span{color:var(--gold);letter-spacing:.3em;font-size:.5rem}@keyframes slam{0%{opacity:0;transform:scale(2.6)}60%{opacity:1}to{opacity:1;transform:scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(40px)scale(.6)}20%{opacity:1;transform:translateY(0)scale(1.15)}30%{transform:scale(1)}85%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(0)scale(.9)}}@keyframes banner{0%,25%{opacity:0;transform:scaleX(0)}40%{opacity:1;transform:scaleX(1.08)}48%,88%{opacity:1;transform:scaleX(1)}to{opacity:0}}@keyframes wobble{50%{transform:translate(4px)rotate(2deg)}}@keyframes blink{50%{opacity:.35}}@keyframes pop{0%{opacity:0;transform:translateY(18px)scale(.92)}60%{opacity:1;transform:translateY(-3px)scale(1.01)}to{opacity:1;transform:none}}@keyframes shake{0%,to{transform:none}20%{transform:translate(-8px)}40%{transform:translate(7px)}60%{transform:translate(-5px)}80%{transform:translate(3px)}}@keyframes glowpulse{50%{box-shadow:0 0 0 3px var(--gold), 6px 6px 0 #041018, 0 0 28px #ffd15c8c}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes sqpop{0%{transform:scale(0)}70%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes urgent{50%{box-shadow:0 0 0 3px var(--coral), 0 0 18px var(--coral);transform:scale(1.12)}}.subpage{background:linear-gradient(#b9e4ff 0%,#1a3d62 42%,#070d18 100%);min-height:100dvh;padding:2.5rem 1.1rem 2rem}.subpage-card{width:min(100%,520px);margin:3rem auto}.subpage h1{font-family:var(--font-pixel), monospace;font-size:1rem;font-weight:400;line-height:1.6}.subpage p{font-size:16px}.reduced *,.reduced :before,.reduced :after{transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.scanlines{display:none}}@media (min-width:840px){.land{padding-top:6rem}}@media (max-width:380px){.choices{grid-template-columns:1fr}.hud-stat strong{font-size:.58rem}}.notes-btn{color:#f1e9ff;background:#1d2a5a;border-color:#b99bff;min-height:56px;font-size:.8rem}.notes-btn:hover{background:#2a3a78}.mini-row.four .btn-mini{flex:45%}.wide-card{width:min(100%,640px)}.set-list{gap:.6rem;margin:.6rem 0;padding:0;list-style:none;display:grid}.set-card{background:#3ee0ff0f;border:2px solid #3ee0ff59;gap:.5rem;padding:.7rem;display:grid}.set-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.3rem .8rem;display:flex}.set-head strong{font-size:1.05rem}.set-meta{color:var(--muted);font-size:.85rem}.set-bar{background:#1b2838;height:10px;display:flex;overflow:hidden;box-shadow:inset 0 0 0 2px #3a4d63}.set-bar span{flex-basis:0;min-width:0}.set-bar .mastered{background:#3ddc97}.set-bar .retry{background:var(--gold)}.set-bar .fresh{background:0 0}.set-stats{color:var(--muted);flex-wrap:wrap;gap:.3rem .9rem;margin:0;font-size:.9rem;display:flex}.warn{color:var(--gold)}.btn-mini.go{color:#d9ffe9;background:#14402e;border-color:#7dffb5}.btn-mini.danger{border-color:var(--coral);background:#4a1020}.add-set{margin:.4rem 0 .8rem}.notes-form{gap:.45rem;margin:.8rem 0;display:grid}.field-label{font-family:var(--font-pixel), monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);margin-top:.3rem;font-size:.5rem}.text-input{width:100%;font:inherit;color:#f4fbff;background:#07101c;border:3px solid #3ee0ff99;border-radius:0;padding:.6rem .7rem;font-size:16px}.text-input:focus{border-color:var(--gold);outline:none}.notes-area{resize:vertical;min-height:220px;line-height:1.45}.notes-tools{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.file-btn{cursor:pointer;align-items:center;display:inline-flex;position:relative}.file-btn input{opacity:0;cursor:pointer;position:absolute;inset:0}.char-count{color:var(--muted);font-size:.85rem}.form-error{color:#fff;border-left:4px solid var(--coral);background:#ff5d8f2e;margin:0;padding:.5rem .6rem}.gen-card{text-align:center}.gen-note{font-family:var(--font-pixel), monospace;color:var(--gold);font-size:.6rem;line-height:1.8}.dots:after{content:"";animation:1.2s steps(4,end) infinite dots}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.fuel{background:#1b2838;height:16px;margin:.8rem 0;overflow:hidden;box-shadow:inset 0 0 0 2px #3a4d63}.fuel span{background:repeating-linear-gradient(90deg, var(--gold) 0 8px, #ff9a3c 8px 16px);width:40%;height:100%;animation:1.4s ease-in-out infinite alternate fuel;display:block}@keyframes fuel{0%{transform:translate(-100%)}to{transform:translate(250%)}}.card.retry{border-color:var(--gold)}.retry-toast{z-index:2;white-space:nowrap;font-family:var(--font-pixel), monospace;letter-spacing:.08em;text-transform:uppercase;color:#141a33;background:var(--gold);justify-items:center;gap:.25rem;margin:0;padding:.45rem .8rem;font-size:.6rem;animation:.6s cubic-bezier(.2,1.6,.4,1) both toast,1.2s ease-in-out .6s 3 toastglow;display:grid;position:absolute;top:-1.1rem;left:50%;transform:translate(-50%);box-shadow:0 0 0 3px #141a33,4px 4px 0 3px #04081866}.retry-toast small{font-family:var(--font-mono), monospace;letter-spacing:0;text-transform:none;font-size:.72rem}.card.retry{margin-top:1.4rem}.card.retry .pixel-inner{padding-top:2.7rem}@keyframes toast{0%{opacity:0;transform:translate(-50%,-30px)scale(.6)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes toastglow{50%{box-shadow:0 0 0 3px #141a33, 0 0 22px var(--gold)}}.retry-result{font-family:var(--font-pixel), monospace;text-transform:uppercase;color:#141a33;background:var(--gold);margin:0 0 .5rem;padding:.45rem .6rem;font-size:.5rem;line-height:1.7}.retry-result.cleared{background:#7dffb5}.points-split{flex-wrap:wrap;gap:.35rem;margin:.2rem 0 .4rem;display:flex}.points-split span{font-family:var(--font-pixel), monospace;color:#d8e8ff;background:#3ee0ff1a;border:1px solid #3ee0ff59;padding:.3rem .45rem;font-size:.45rem}.choices.rich{grid-template-columns:1fr}.choices.rich .btn-choice{text-align:left;justify-content:flex-start;padding:.55rem .7rem .55rem 1.9rem;font-size:.98rem;line-height:1.35}.choices.rich .choice-key{top:50%;left:.6rem;transform:translateY(-50%)}.rich-text .math-view{display:inline}.pb-badge{font-family:var(--font-pixel), monospace;color:#141a33;background:var(--gold);margin:.3rem 0;padding:.35rem .55rem;font-size:.55rem;animation:.6s cubic-bezier(.2,1.6,.4,1) both slam,.3s steps(2,end) .7s 3 wobble;display:inline-block}.points-big{font-family:var(--font-pixel), monospace;color:#fff;text-shadow:3px 3px #0b0f22;margin:.2rem 0 0;font-size:clamp(1.4rem,7vw,2rem)}.points-big small{color:var(--gold);font-size:.45em}.result-stats{grid-template-columns:repeat(3,1fr);gap:.4rem;margin:.7rem 0;display:grid}.result-stats span{text-align:center;color:var(--muted);background:#3ee0ff0f;border:2px solid #3ee0ff40;gap:.2rem;padding:.45rem;font-size:.8rem;display:grid}.result-stats strong{font-family:var(--font-pixel), monospace;color:#fff;font-size:.75rem;font-weight:400}.retry-summary{border-left:4px solid var(--gold);background:#ffd15c1a;margin:.4rem 0;padding:.55rem .7rem}.retry-summary p{margin:.2rem 0}.chip-row{flex-wrap:wrap;gap:.35rem;margin:.4rem 0 .8rem;display:flex}.chip{font-family:var(--font-pixel), monospace;text-transform:uppercase;color:#d8e8ff;background:0 0;border:2px solid #3ee0ff66;padding:.35rem .6rem;font-size:.48rem}.chip.on{background:var(--cyan);color:#0b0f22;border-color:var(--cyan)}.stat-grid{grid-template-columns:repeat(4,1fr);gap:.45rem;display:grid}.stat-tile{background:#3ee0ff0f;border:2px solid #3ee0ff40;gap:.35rem;padding:.55rem .5rem;display:grid}.stat-tile span{color:var(--muted);font-size:.75rem}.stat-tile strong{font-family:var(--font-pixel), monospace;color:#fff;font-size:.72rem;font-weight:400}.board-total{color:var(--gold);margin:.6rem 0 0;font-size:.9rem}.board-h{font-family:var(--font-pixel), monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);margin:1rem 0 .45rem;font-size:.6rem;font-weight:400}.board-list{gap:.35rem;margin:0 0 .6rem;padding:0;list-style:none;display:grid}.board-list li{background:#ffffff0a;border:2px solid #ffffff14;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;padding:.45rem .55rem;display:grid}.board-list li.me{border-color:var(--gold);background:#ffd15c1a}.rank{width:1.8rem;height:1.8rem;font-family:var(--font-pixel), monospace;background:#1b2838;place-items:center;font-size:.6rem;display:grid}.rank.r1{background:var(--gold);color:#141a33}.rank.r2{color:#141a33;background:#d5dae6}.rank.r3{color:#141a33;background:#d08b4f}.board-main,.board-side{gap:.1rem;min-width:0;display:grid}.board-main small,.board-side small{color:var(--muted);font-size:.8rem}.board-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.board-side{text-align:right}.mastery-list{gap:.5rem;margin:0 0 .8rem;padding:0;list-style:none;display:grid}.mastery-list li{gap:.25rem;display:grid}.mastery-name{font-weight:600}.mastery-list small{color:var(--muted)}@media (max-width:520px){.stat-grid{grid-template-columns:repeat(2,1fr)}}
