*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{color:#e9f6ff;-webkit-user-select:none;user-select:none;overscroll-behavior:none;background:#04010d;margin:0;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}body{visibility:visible}html.racing,html.racing body{overflow:hidden}body>:where(:not(#about)){touch-action:none}#about{z-index:15;margin-top:100vh;-webkit-user-select:text;user-select:text;touch-action:pan-y;background:#04010d;border-top:1px solid #39e6ff40;margin-top:100dvh;padding:32px 16px 48px;font:16px/1.65 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;position:relative}#about>*{max-width:680px;margin-inline-start:auto;margin-inline-end:auto}#about h1{text-shadow:0 0 18px #39e6ff73;font:700 max(24px,min(5vw,34px))/1.2 ui-monospace,SF Mono,Menlo,monospace}#about h2{color:#39e6ff;margin-top:1.6em;font:700 19px/1.3 ui-monospace,SF Mono,Menlo,monospace}#about .lead{color:#cfe3f3;font-size:18px}#about a{color:#39e6ff}#about .play{color:#e9f6ff;border:2px solid #ff5ad9;border-radius:10px;padding:10px 20px;font:700 15px ui-monospace,SF Mono,Menlo,monospace;text-decoration:none;display:inline-block}#about kbd{background:#0b0f22;border:1px solid #1d2340;border-bottom-width:2px;border-radius:5px;padding:1px 6px;font:13px ui-monospace,Menlo,monospace}[hidden]{display:none!important}#game{width:100%;height:100%;display:block;position:fixed;top:0;bottom:0;left:0;right:0}#hud{top:calc(env(safe-area-inset-top,0px) + 12px);pointer-events:none;text-shadow:0 0 8px #39e6ff99;position:fixed;left:16px}#time{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:34px;font-weight:700}#best{opacity:.7;margin-top:2px;font-size:12px}#debug{opacity:.6;margin-top:6px;font-size:11px}#buttons{top:calc(env(safe-area-inset-top,0px) + 12px);gap:8px;display:flex;position:fixed;right:16px}#buttons button{font:inherit;color:#e9f6ff;background:#140a2899;border:1px solid #39e6ff66;border-radius:8px;min-height:32px;padding:6px 10px;font-size:12px}#overlay{text-align:center;pointer-events:none;background:#080314b8;border:1px solid #ff5ad980;border-radius:14px;width:min(88vw,360px);padding:20px 16px;line-height:1.5;position:fixed;top:30%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 30px #ff5ad940}#overlay .big{letter-spacing:.04em;color:#fff;text-shadow:0 0 14px #ff5ad9;font-size:40px;font-weight:800}#overlay .dim{opacity:.6;font-size:12px}#overlay .site-links{flex-wrap:wrap;justify-content:center;gap:0 12px;margin-top:14px;font-size:12px;display:flex}#overlay .site-links a{color:inherit;pointer-events:auto}#overlay .help{margin-top:10px;font-size:13px}#overlay kbd{min-width:1.6em;font:inherit;border:1px solid #e9f6ff59;border-bottom-width:2px;border-radius:5px;margin:0 1px;padding:0 5px;font-size:12px;line-height:1.5;display:inline-block}#overlay .squares{letter-spacing:2px;margin:6px 0;font-size:22px}#buttons #mode{color:#e9f6ff8c;border-color:#39e6ff2e}#buttons #mode[data-mode=easy],#overlay .mode-note[data-mode=easy]{color:#b6ff3b;border-color:#b6ff3b99}#buttons #mode[data-mode=hard],#overlay .mode-note[data-mode=hard]{color:#ff5ad9;border-color:#ff5ad999}#overlay .mode-note[data-mode=endless]{color:#ffd23f;border-color:#ffd23f99}#overlay .mode-note{letter-spacing:.04em;margin:6px 0;font-size:12px}#overlay .friend{color:#ffd9a0;border:1px solid #ffb13d80;border-radius:8px;margin:10px 0;padding:8px}#overlay .friend>div{margin:2px 0}#overlay .friend-dot{vertical-align:1px;background:var(--c);width:8px;height:8px;box-shadow:0 0 6px var(--c);border-radius:50%;margin-right:6px;display:inline-block}#overlay .ahead,#split.ahead{color:#44ff9a}#overlay .behind,#split.behind{color:#ff6b6b}#overlay button{pointer-events:auto;font:inherit;color:#04010d;background:#39e6ff;border:0;border-radius:10px;width:100%;margin-top:14px;padding:12px 16px;font-size:15px;font-weight:700;box-shadow:0 0 18px #39e6ff80}#overlay button.secondary{color:#e9f6ff;box-shadow:none;background:#140a2899;border:1px solid #39e6ff80;margin-top:8px}#overlay button:not(.secondary) .pro-tag{background:#04010d}#overlay .revive-end{gap:8px;display:flex}#overlay button.share-icon{vertical-align:-3px;color:#39e6ff;width:auto;box-shadow:none;background:0 0;border-radius:6px;margin:-7px -3px -7px 0;padding:7px;display:inline-flex}#overlay .title{flex-direction:column;align-items:center;gap:2px;margin:0;display:flex}#overlay .title .wordmark{width:min(100%,250px);height:auto;display:block}#overlay .title span{letter-spacing:.04em;color:#fff;text-shadow:0 0 14px #ff5ad9;font-size:26px;font-weight:800}#overlay .title.small .wordmark{width:min(100%,150px)}#overlay .title.small span{font-size:17px}#overlay .countdown{font-variant-numeric:tabular-nums;margin-top:10px}#overlay .legend{flex-wrap:wrap;justify-content:center;gap:6px;margin:12px 0 2px;font-size:12px;display:flex}#overlay .legend-chip{border:1px solid color-mix(in srgb, var(--c) 45%, transparent);background:color-mix(in srgb, var(--c) 10%, transparent);color:#e9f6ff;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px 2px 5px;display:inline-flex}#overlay .legend-chip svg{fill:none;width:15px;height:15px;stroke:var(--c);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px var(--c));flex:none}.pad-btn{pointer-events:none;color:#ffc4f0;letter-spacing:.08em;background:#28082859;border:2px solid #ff5ad9d9;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:9px;font-weight:700;transition:transform 60ms,background 60ms;display:flex;position:fixed;box-shadow:0 0 16px #ff5ad973,inset 0 0 12px #ff5ad940}.pad-btn svg{fill:none;stroke:currentColor;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;width:46%;height:46%}.pad-btn.down{background:#ff5ad959;transform:scale(.92)}#zones{pointer-events:none;opacity:0;transition:opacity .4s;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}#zones.show{opacity:1}#zones.flash{animation:.45s ease-in-out 4 zone-flash}#zones>div{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 12vh);color:#bff6ff;text-align:center;text-shadow:0 0 8px #000;background:#39e6ff12;border:2px dashed #39e6ff73;flex:1;justify-content:center;align-items:flex-end;font-size:13px;line-height:1.5;display:flex}#zones>div.jump{color:#ffc4f0;background:#ff5ad914;border-color:#ff5ad98c}@keyframes zone-flash{0%,to{opacity:.15}50%{opacity:1}}#split{font-variant-numeric:tabular-nums;text-shadow:0 0 12px;pointer-events:none;font-size:28px;font-weight:800;position:fixed;top:22%;left:50%;transform:translate(-50%)}#overlay .cta-pill{color:#04010d;letter-spacing:.02em;background:#39e6ff;border-radius:999px;margin:14px auto 0;padding:11px 16px;font-size:15px;font-weight:800;animation:1.6s ease-in-out infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 10px #39e6ff59}50%{box-shadow:0 0 26px #39e6ffcc}}#overlay .endless-link{pointer-events:auto;color:#e9f6ff;text-align:left;background:#ffd23f0f;border:1px solid #ffd23f66;border-radius:10px;align-items:center;gap:10px;margin-top:12px;padding:8px 12px;font-size:13px;line-height:1.35;text-decoration:none;display:flex}#overlay .endless-link>span:nth-child(2){flex:1}#overlay .endless-link .pro-tag{vertical-align:2px}#overlay .endless-link small{opacity:.6;font-size:11px;display:block}#overlay .endless-link .inf{color:#ffd23f;text-shadow:0 0 10px #ffd23f99;font-size:24px}#overlay .endless-link .go{color:#ffd23f;font-size:20px}#overlay .back-link{pointer-events:auto;color:#e9f6ffb3;margin-top:10px;font-size:12px;display:inline-block}#overlay button.link-btn{color:#39e6ff;width:auto;box-shadow:none;text-underline-offset:3px;background:0 0;margin-top:8px;padding:4px 8px;font-size:13px;font-weight:700;text-decoration:underline}#overlay .quota{color:#ffd23f;margin-top:6px;font-size:12px}#overlay .cta-link.secondary{color:#e9f6ff;box-shadow:none;background:#140a2899;border:1px solid #39e6ff80}#overlay .card-foot{border-top:1px solid #e9f6ff1a;margin-top:14px;padding-top:8px}#overlay .card-foot .countdown,#overlay .card-foot .site-links{margin-top:0;font-size:11px}#overlay .cta{color:#39e6ff;margin-top:14px;animation:1.2s ease-in-out infinite blink}@keyframes blink{50%{opacity:.35}}#menu{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);touch-action:pan-y;-webkit-user-select:none;user-select:none;background:#04010df0;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}@media (min-width:700px){#menu{border:1px solid #39e6ff59;border-radius:16px;width:640px;top:5vh;bottom:5vh;left:50%;right:auto;transform:translate(-50%);box-shadow:0 0 40px #39e6ff26}}.menu-head{border-bottom:1px solid #39e6ff33;flex-direction:column;gap:10px;padding:10px 16px 12px;display:flex}.menu-top{justify-content:space-between;align-items:center;display:flex}.menu-logo{filter:drop-shadow(0 0 8px #2cf2ff59);width:auto;height:30px}.menu-tabs{gap:6px;display:flex}.menu-tabs button{flex:1}.view-title{text-transform:uppercase;letter-spacing:-.01em;background:linear-gradient(#9ffcff,#2cf2ff 45%,#00c8f0);color:#0000;filter:drop-shadow(0 0 6px #2cf2ff73);-webkit-background-clip:text;background-clip:text;margin:2px 0 0;font:italic 900 26px/1.1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.menu-head button{font:inherit;color:#bff6ff;background:0 0;border:1px solid #39e6ff59;border-radius:8px;min-height:36px;padding:8px 14px;font-size:14px}.menu-head .menu-tabs button.on{color:#04010d;background:#39e6ff;font-weight:700}.menu-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:10px;padding:12px 16px 24px;display:flex;overflow-y:auto}.track-card{color:#e9f6ff;background:#0d1b338c;border:1px solid #39e6ff2e;border-radius:12px;padding:10px 12px 12px;text-decoration:none;display:block}.track-card.track-today{border-color:#ff5ad9b3;padding:12px 14px 14px;box-shadow:0 0 18px #ff5ad938}.track-today .track-title{font-size:20px}.track-kicker{letter-spacing:.14em;text-transform:uppercase;color:#ff5ad9;margin-bottom:2px;font-size:11px;font-weight:800}.track-card.current{border-color:#39e6ff;box-shadow:0 0 14px #39e6ff4d}.track-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;column-gap:8px;display:flex}.track-title{white-space:nowrap;font-size:15px;font-weight:800}.track-times{white-space:nowrap;opacity:.8;font-variant-numeric:tabular-nums;font-size:12px}.track-sub{opacity:.55;margin:2px 0 8px;font-size:11px}.track-strip{width:100%;height:48px;display:block}.track-go{text-align:right;color:#39e6ff;margin-top:10px;font-size:13px;font-weight:800;display:block}.track-today .track-go{color:#ff5ad9}.track-endless{color:#e9f6ff;background:linear-gradient(100deg,#ffd23f1a,#0d1b338c 60%);border:1px solid #ffd23f73;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px 12px;padding:12px 14px;text-decoration:none;display:grid}.track-endless.current{border-color:#ffd23f;box-shadow:0 0 14px #ffd23f4d}.track-endless .inf{color:#ffd23f;text-shadow:0 0 12px #ffd23f99;font-size:34px;line-height:1}.endless-text{flex-direction:column;gap:2px;min-width:0;display:flex}.endless-text small{opacity:.6;font-size:11px}.endless-text .endless-meta{opacity:1;color:#ffe58ad9;font-variant-numeric:tabular-nums}.track-endless .go{color:#ffd23f;font-size:22px}.endless-strip{grid-column:1/-1;width:100%;display:block;-webkit-mask-image:linear-gradient(90deg,#000 55%,#0000);mask-image:linear-gradient(90deg,#000 55%,#0000)}.daily h3 small{letter-spacing:.02em;text-transform:none;margin-left:6px;font-size:11px;font-weight:600}.cal{text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal>b{opacity:.45;padding-bottom:2px;font-size:10px;font-weight:700}.cal>button,.cal>.cal-off{height:44px;font:inherit;font-variant-numeric:tabular-nums;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-size:14px;font-weight:700;display:flex}.cal>button{color:#e9f6ff;cursor:pointer;background:#04010d66;border:1px solid #39e6ff40;position:relative}.cal>button i{height:11px;font-size:11px;font-style:normal;line-height:1}.cal>button.raced i{color:#39e6ff}.cal>button.par{border-color:#ffd23f80}.cal>button.par i{color:#ffd23f}.cal>button.on{color:#04010d;background:#39e6ff;border-color:#39e6ff}.cal>button.on i{color:#04010d}.cal>.cal-off{opacity:.25}.cal>button.today{color:#ff5ad9;border-color:#ff5ad9b3;box-shadow:0 0 10px #ff5ad940}.cal>button.today.on{color:#04010d;background:#ff5ad9;border-color:#ff5ad9}.cal>button.locked{color:#e9f6ff8c;border-style:dashed;border-color:#ffd23f40}.cal>button.locked.on{color:#e9f6ff;background:#ffd23f2e;border:1px solid #ffd23f}.cal>button.locked.on i{color:inherit}.cal>button s{line-height:0;position:absolute;top:3px;right:4px}.cal>button s svg{fill:none;stroke:#ffd23f;stroke-width:1.6px;stroke-linecap:round;width:9px;height:9px}.controls small.cal-note{opacity:1;color:#e9f6ffa6}.cal-note .pro-tag{margin-left:2px}.cal-pick{background:#04010d59;margin-top:6px}.cal-pick.locked{border-color:#ffd23f73}.pick-strip{position:relative}.cal-pick.locked .track-strip{opacity:.3;filter:grayscale(.6)}.pick-lock{justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.pick-lock svg{fill:none;stroke:#ffd23f;stroke-width:1.4px;stroke-linecap:round;filter:drop-shadow(0 0 6px #ffd23f99);width:30px;height:30px}.pick-pro{width:100%;min-height:40px;font:inherit;color:#04010d;cursor:pointer;background:#ffd23f;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;margin-top:10px;font-size:14px;font-weight:800;display:flex}.pick-pro svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:13px;height:13px}.track-go svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;vertical-align:-1px;width:11px;height:11px}.ship-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;display:grid}.ship-card{font:inherit;color:#e9f6ff;cursor:pointer;background:#0d1b338c;border:1px solid #ffffff1f;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:8px;display:flex;position:relative}.ship-card canvas{width:100%;height:84px}.ship-card span{color:var(--c);font-size:13px;font-weight:700}.ship-card.on{border-color:var(--c);box-shadow:0 0 16px color-mix(in srgb, var(--c) 45%, transparent)}.menu-note{opacity:.55;text-align:center;font-size:12px}.setting-row{flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:4px;display:flex}.setting-row>span{flex:none;min-width:8.5em;font-size:13px}.setting-row>.seg,.setting-row>input{flex:160px}.setting-row b{color:#ffb13d}.setting-row input[type=range]{accent-color:#ffb13d;touch-action:pan-x}.seg.modes button{flex-direction:column;align-items:center;gap:1px;display:flex}.seg.modes button small{opacity:.6;font-size:11px;font-weight:400}.seg button:disabled{opacity:.45}details.controls summary{cursor:pointer;align-items:baseline;gap:8px;list-style:none;display:flex}details.controls summary::-webkit-details-marker{display:none}details.controls summary:after{content:"▾";opacity:.6;margin-left:auto}details.controls[open] summary:after{content:"▴"}.toggle-row{width:100%;font:inherit;color:#e9f6ff;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #e9f6ff14;align-items:center;gap:10px;padding:8px 2px;display:flex}.controls h3+.toggle-row{border-top:0}.toggle-row>span{flex-direction:column;flex:1;display:flex}.toggle-row .dot{background:var(--c);width:10px;height:10px;box-shadow:0 0 8px var(--c);border-radius:50%;flex:none}.toggle-row .switch{background:#e9f6ff26;border-radius:11px;flex:none;width:40px;height:22px;transition:background .15s;position:relative}.toggle-row .switch:after{content:"";background:#e9f6ff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px}.toggle-row[aria-checked=true] .switch{background:var(--c)}.toggle-row[aria-checked=true] .switch:after{background:#04010d;transform:translate(18px)}.controls{background:#0d1b338c;border:1px solid #39e6ff4d;border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px 12px;font-size:14px;display:flex}.pro-tag{vertical-align:1px;color:#ffd23f;letter-spacing:.1em;text-transform:none;opacity:1;border:1px solid #ffd23f;border-radius:4px;align-items:center;gap:3px;margin-left:6px;padding:1px 5px;font-size:10px;font-weight:700;line-height:1.4;display:inline-flex}.pro-tag svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;width:10px;height:10px}.controls h3{text-transform:uppercase;letter-spacing:.08em;color:#e9f6ff99;margin:4px 0 0;font-size:12px;font-weight:700}.controls small{opacity:.65;font-size:12px;line-height:1.35}.seg{flex-wrap:wrap;gap:6px;display:flex}.seg button{font:inherit;color:#e9f6ff;background:#04010d66;border:1px solid #ffffff24;border-radius:8px;flex:22%;padding:8px 4px;font-size:13px;font-weight:700}.seg button.on{color:#39e6ff;border-color:#39e6ff;box-shadow:0 0 12px #39e6ff4d}#meter{pointer-events:none;align-items:center;display:flex;position:fixed}#meter i{background:#39e6ff4d;border-radius:50%;width:8px;height:8px}#meter i.on{background:#39e6ff;transform:scale(1.5);box-shadow:0 0 10px #39e6ff}#meter.edge i.on{background:#ff5a5a;box-shadow:0 0 10px #ff5a5a}.pad-btn.arrow{color:#bff6ff;background:#0d1b3359;border-color:#39e6ffcc;box-shadow:0 0 14px #39e6ff59,inset 0 0 10px #39e6ff33}.pad-btn.arrow svg{stroke-width:6px;width:52%;height:52%}.pad-btn.arrow.down{background:#39e6ff59}#split.coach{color:#ffb13d;font-size:22px}.ship-new{border-style:dashed;border-color:#39e6ff73;justify-content:center;min-height:118px}.ship-new b{color:#39e6ff;font-size:32px;line-height:1}.ship-edit{font:inherit;color:#e9f6ff;background:#04010d99;border:1px solid #fff3;border-radius:6px;padding:3px 7px;font-size:11px;position:absolute;top:6px;right:6px}.builder{flex-direction:column;gap:10px;display:flex}.build-preview{border:1px solid color-mix(in srgb, var(--c,#39e6ff) 55%, transparent);background:radial-gradient(at 50% 70%,#39e6ff1f,#04010d99);border-radius:12px;width:100%;height:170px}.build-name{font:inherit;color:#e9f6ff;background:#04010d80;border:1px solid #ffffff2e;border-radius:8px;padding:8px 10px;font-size:16px}.build-row{align-items:center;gap:10px;font-size:13px;display:flex}.build-row>span{opacity:.75;flex:none;width:84px}.build-row input[type=range]{accent-color:#39e6ff;touch-action:pan-x;flex:1}.build-row .seg{flex:1}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{background:var(--c);width:32px;height:32px;box-shadow:0 0 10px color-mix(in srgb, var(--c) 50%, transparent);border:2px solid #ffffff26;border-radius:50%}.swatch.on{border-color:#fff;transform:scale(1.12)}.build-actions{gap:8px;display:flex}.build-actions button{font:inherit;color:#e9f6ff;background:#04010d80;border:1px solid #ffffff2e;border-radius:10px;flex:1;padding:10px 8px;font-size:14px;font-weight:700}.build-actions button.primary{color:#04010d;background:#39e6ff;border-color:#39e6ff;flex:2}#overlay .login-card{background:#0d1b338c;border:1px solid #39e6ff73;border-radius:10px;margin-top:12px;padding:12px 10px 10px}#overlay .login-card button{margin:10px 0 8px}#overlay .cta-link{pointer-events:auto;color:#04010d;background:#39e6ff;border-radius:10px;margin:10px 0 4px;padding:12px 16px;font-size:15px;font-weight:700;text-decoration:none;display:block;box-shadow:0 0 18px #39e6ff80}#overlay .rank:empty{display:none}#overlay .rank{color:#39e6ff;font-weight:700}#overlay button.rank-btn{color:#39e6ff;box-shadow:none;background:#140a2899;border:1px solid #39e6ff80;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;display:flex}#overlay button.rank-btn span{color:#e9f6ff;white-space:nowrap;font-size:13px}#overlay .badges-won{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:6px 0 2px;display:flex}#overlay .badges-won[hidden]{display:none}#overlay .badges-won small{color:#ffd23f;letter-spacing:.08em;text-transform:uppercase;width:100%;font-size:11px;font-weight:700}.badge-chip{color:#ffd23f;background:#ffd23f1a;border:1px solid #ffd23f99;border-radius:999px;align-items:center;gap:5px;padding:4px 10px 4px 7px;font-size:13px;font-weight:700;animation:.35s ease-out both badge-pop;display:inline-flex}.badge-chip i{font-style:normal}@keyframes badge-pop{0%{opacity:0;transform:scale(.6)}}@media (prefers-reduced-motion:reduce){.badge-chip{animation:none}}.account button,.account input{font:inherit;color:#e9f6ff;background:#04010d66;border:1px solid #39e6ff80;border-radius:8px;padding:8px 10px;font-size:14px}.account>button,.account form button{color:#04010d;background:#39e6ff;border:0;font-weight:700}.account>button.secondary{color:#e9f6ff;background:#04010d66;border:1px solid #39e6ff80;font-weight:400}.account form,.account .acct-row{gap:6px;display:flex}.account input{flex:1;min-width:0}.account .acct-row>*{flex:1}.account .tip-jar{flex-direction:column;gap:6px;margin-top:4px;display:flex}.account .tip-row{gap:6px;display:flex}.account .tip-row>*{flex:1}.account .danger{color:#ff8a8a;border-color:#ff6b6b99}.avatar{color:#fff;background:#1a0b3a;border:2px solid #ff2bf0;border-radius:50%;place-items:center;width:26px;height:26px;font-size:12px;font-weight:700;line-height:1;display:inline-grid;box-shadow:0 0 8px #ff2bf099}.avatar.big{border-width:3px;flex:none;width:52px;height:52px;font-size:24px}.avatar.empty{box-shadow:none;color:#e9f6ff99;border-color:#39e6ff80}#buttons #acct-btn.in{background:0 0;border-color:#0000;border-radius:50%;min-width:32px;padding:3px}.profile{align-items:center;gap:12px;padding:4px 0;display:flex}.profile>div{flex-direction:column;gap:2px;min-width:0;display:flex}.profile b{overflow-wrap:anywhere;font-size:18px}.stats{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:6px;display:grid}.stats>div{background:#04010d66;border-radius:8px;flex-direction:column;align-items:center;padding:8px 4px;display:flex}.stats b{color:#39e6ff;font-size:20px}.stats span{opacity:.65;font-size:11px}.badges h3 small{opacity:.65;margin-left:4px;font-size:12px;font-weight:400}.badge-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.badge-grid li{text-align:center;opacity:.45;background:#04010d66;border:1px solid #0000;border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;display:flex}.badge-grid li i{filter:grayscale();font-size:22px;font-style:normal}.badge-grid li b{font-size:12px}.badge-grid li small{opacity:.75;font-size:10px}.badge-grid li.on{opacity:1;border-color:#ffd23f80}.badge-grid li.on i{filter:none}.badge-grid li.on b{color:#ffd23f}.badge-grid li{cursor:pointer}.badge-pop{z-index:1;background:#04010db3;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.badge-pop-card{text-align:center;background:#0d0620;border:1px solid #39e6ff66;border-radius:14px;flex-direction:column;align-items:center;gap:4px;width:min(100%,280px);padding:20px 16px 16px;display:flex}.badge-pop-card.on{border-color:#ffd23f99;box-shadow:0 0 24px #ffd23f33}.badge-pop-card i{filter:grayscale();opacity:.6;font-size:40px;font-style:normal}.badge-pop-card.on i{filter:none;opacity:1}.badge-pop-card b{font-size:17px}.badge-pop-card.on b{color:#ffd23f}.badge-pop-card p{margin:0;font-size:14px}.badge-pop-card small{opacity:.7;font-size:12px}.badge-pop-card button{min-width:96px;font:inherit;color:#39e6ff;background:0 0;border:1px solid #39e6ff66;border-radius:8px;margin-top:10px;padding:8px 16px;font-size:14px}.board ol{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.board li{border-radius:6px;align-items:baseline;gap:10px;padding:6px 8px;display:flex}.board li span{text-align:right;opacity:.6;font-variant-numeric:tabular-nums;width:2.2em}.board li b{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.board li time{font-variant-numeric:tabular-nums;color:#39e6ff}.board li[data-mode]{--mode:57, 230, 255;background:rgba(var(--mode), .07);box-shadow:inset 3px 0 0 rgba(var(--mode), .7)}.board li[data-mode=easy]{--mode:182, 255, 59}.board li[data-mode=hard]{--mode:255, 90, 217}.board li[data-mode] time{color:rgb(var(--mode))}.board li .mode-chip{letter-spacing:.5px;color:rgb(var(--mode));border:1px solid rgba(var(--mode), .6);text-align:center;border-radius:4px;align-self:center;min-width:3.4em;padding:2px 3px;font:700 9px/1 ui-monospace,SF Mono,Menlo,monospace}.board li .dev-slot{opacity:.7;align-self:center;width:14px;display:flex}.dev{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;vertical-align:-2px;width:14px;height:14px}.board li.me{background:#e9f6ff1f;outline:1.5px solid #e9f6ffbf}.board li.gap,.board li.board-empty{opacity:.6;justify-content:center;font-size:13px}@media (max-width:429px){#buttons{gap:5px;right:10px}#buttons button{padding:6px 8px}#menu-btn .label{display:none}#time{font-size:30px}}@media (max-width:340px){#buttons{gap:4px}#buttons button{padding:5px 6px}#time{font-size:26px}}@media (max-width:400px){.menu-head{padding:10px 10px 12px}.menu-tabs{gap:4px}.menu-head button{padding:8px 9px;font-size:13px}}.board-open{font:inherit;color:#39e6ff;background:0 0;border:1px solid #39e6ff66;border-radius:8px;margin-top:6px;padding:10px;font-size:14px}.board-nav{align-items:center;gap:6px;display:flex}.board-nav button{font:inherit;color:#e9f6ff;background:#04010d66;border:1px solid #39e6ff66;border-radius:8px;min-width:40px;min-height:40px;font-size:16px}.board-nav button:disabled{opacity:.3}.board-day{flex-direction:column;flex:1;align-items:center;display:flex}.board-day b{font-size:16px}.board.full .seg button{flex:1}#paywall{z-index:30;padding:max(16px, env(safe-area-inset-top,0px)) 16px max(16px, env(safe-area-inset-bottom,0px));background:#04010dd1;place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0;overflow-y:auto}#paywall .pw-card{color:#e9f6ff;text-align:left;background:#0d1b33f5;border:1px solid #ffd23f8c;border-radius:14px;width:min(100%,360px);padding:18px 16px 14px;font-size:14px;position:relative;box-shadow:0 0 28px #ffd23f2e}#paywall h2{letter-spacing:.06em;margin:0 0 10px;font-size:18px}#paywall .pw-close{width:36px;height:36px;font:inherit;color:#bff6ff;background:0 0;border:0;position:absolute;top:8px;right:8px}#paywall .pw-perks{flex-direction:column;gap:8px;margin:0 0 14px;padding:0;list-style:none;display:flex}#paywall .pw-perks li{flex-direction:column;padding-left:18px;display:flex;position:relative}#paywall .pw-perks li:before{content:"◆";color:#ffd23f;font-size:11px;position:absolute;top:2px;left:0}#paywall .pw-perks small,#paywall .pw-msg{opacity:.7;font-size:12px}#paywall .pw-buy{flex-direction:column;gap:8px;display:flex}#paywall .pw-buy button,#paywall .pw-ad button{font:inherit;color:#e9f6ff;background:#04010d66;border:1px solid #39e6ff80;border-radius:10px;padding:12px 14px;font-size:15px}#paywall .pw-buy button.best,#paywall .pw-buy button[data-login],#paywall .pw-buy button[data-reload]{color:#04010d;background:#ffd23f;border-color:#ffd23f;font-weight:700}#paywall .pw-buy button:disabled,#paywall .pw-ad button:disabled{opacity:.5}#paywall .pw-ad{text-align:center;flex-direction:column;gap:6px;margin-top:6px;display:flex}#paywall .pw-ad small{opacity:.7;font-size:12px}#paywall .pw-ad small:empty{display:none}#paywall .pw-msg{text-align:center;margin-top:10px;display:block}.account a.secondary{box-sizing:border-box;text-align:center;color:#e9f6ff;border:1px solid #39e6ff80;border-radius:8px;padding:8px 10px;font-size:14px;text-decoration:none;display:block}.account a.secondary.danger{color:#ff8a8a;border-color:#ff6b6b99}#overlay .login-card button[data-pro]{color:#04010d;background:#ffd23f;box-shadow:0 0 18px #ffd23f73}.seg.schemes button{flex-direction:column;align-items:center;gap:4px;padding:8px 4px 6px;display:flex}.seg.schemes svg{fill:none;stroke-linecap:round;stroke-linejoin:round;width:40px;height:70px}.seg.schemes svg.tilted{transform:rotate(-10deg)}.seg.schemes.mirror svg{transform:scaleX(-1)}.seg.schemes.mirror svg.tilted{transform:scaleX(-1)rotate(-10deg)}.seg.schemes .p{stroke:#e9f6ff73;stroke-width:1.5px}.seg.schemes .z{fill:#ffd23f33}.seg.schemes .s{stroke:#39e6ff;stroke-width:1.6px}.seg.schemes .j{stroke:#ffd23f;stroke-width:1.6px}.seg.schemes .jl{stroke:#ffd23f;stroke-width:1.4px}.seg.schemes .d circle{fill:#39e6ff66}.seg.schemes .d circle.on{fill:#39e6ff}.revives-box .revive-count{align-items:baseline;gap:6px;display:flex}.revives-box .revive-count b{color:#39e6ff;font-size:22px}.watch-bar{left:50%;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:30;color:#44ff9a;background:#080414d9;border:1px solid #44ff9a80;border-radius:12px;align-items:center;gap:4px;padding:6px 8px;font:700 12px/1 ui-monospace,monospace;display:flex;position:fixed;transform:translate(-50%)}.watch-bar span{padding:0 6px}.watch-bar button{font:inherit;color:#e9f6ff;cursor:pointer;background:0 0;border:1px solid #e9f6ff33;border-radius:8px;padding:8px 9px}.watch-bar button.on{color:#04010d;background:#44ff9a;border-color:#44ff9a}.admin-list{flex-direction:column;gap:6px;margin:6px 0;padding:0;list-style:none;display:flex}.admin-list li{align-items:center;gap:6px;display:flex}.admin-list li>span{flex-direction:column;flex:1;display:flex}.admin-list li>span small{opacity:.6}.admin-list a{color:#04010d;background:#44ff9a;border-radius:8px;padding:7px 10px;font-size:12px;font-weight:700;text-decoration:none}.admin-list a.secondary{color:#e9f6ff;background:0 0;border:1px solid #39e6ff80}.nowrap{white-space:nowrap}#lesson{text-align:center;pointer-events:none;z-index:5;background:#0a0418d1;border:1px solid #39e6ff99;border-radius:12px;width:max-content;max-width:calc(100vw - 32px);padding:10px 16px;position:fixed;top:20%;left:50%;transform:translate(-50%);box-shadow:0 0 18px #39e6ff59}#lesson b{color:#39e6ff;font-size:20px;font-weight:800;display:block}#lesson small{color:#e9f6ffcc;margin-top:4px;font-size:13px;display:block}#lesson.note{border-color:#44ff9a99;box-shadow:0 0 18px #44ff9a4d}#lesson.note b{color:#44ff9a}.pad-btn.hint{border-color:#39e6ff;animation:.9s ease-in-out infinite pulse;box-shadow:0 0 24px #39e6ffe6,inset 0 0 14px #39e6ff80}#overlay .tut-link{pointer-events:auto;color:#39e6ff;margin-top:8px;font-size:13px;font-weight:700;display:inline-block}#menu .tut-link{color:#39e6ff;font-weight:700}#lesson .go{color:#39e6ff;margin-top:8px;font-size:13px;font-weight:700;animation:1.2s ease-in-out infinite blink;display:block}
