:root{--ink:#e9f4ff;--cyan:#69d8ff;--gold:#ffd36d;--panel:#071227b8;--font-geist-mono:"SFMono-Regular", Consolas, "Liberation Mono"}*{box-sizing:border-box}html,body{overscroll-behavior:none;background:#020711;min-height:100%;margin:0;overflow:hidden}body{color:var(--ink);font-family:Arial,Microsoft YaHei,sans-serif}button{font:inherit}.game-shell{width:100vw;max-width:100vw;height:100svh;-webkit-user-select:none;user-select:none;cursor:none;background:#020711;height:100dvh;position:relative;overflow:hidden;container:game/size}.game-shell:before{content:"";pointer-events:none;z-index:2;opacity:.2;background-image:linear-gradient(#73cdff09 1px,#0000 1px),linear-gradient(90deg,#73cdff09 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 72%);mask-image:linear-gradient(#000,#0000 72%)}.game-shell:after{content:"";pointer-events:none;z-index:9;position:absolute;inset:0;box-shadow:inset 0 0 120px #000000c7}.game-canvas{touch-action:none;cursor:none;width:100%;height:100%;position:absolute;inset:0}.topbar{z-index:13;pointer-events:none;grid-template-columns:minmax(300px,1fr) 170px;align-items:stretch;gap:14px;width:min(650px,100vw - 36px);display:grid;position:absolute;top:clamp(14px,2.1vw,30px);left:clamp(18px,3.5vw,56px)}.eyebrow,.record-card span,.record-card em,.play-count span,.play-count small,.speed-panel span,footer{font-family:var(--font-geist-mono), monospace;letter-spacing:.1em}.brand-identity{min-width:0}.identity-meta{justify-content:space-between;align-items:center;gap:10px;min-height:29px;display:flex}.brand-meta{align-items:center;gap:12px;min-width:0;display:flex}.eyebrow{color:#8ee6ff;white-space:nowrap;text-shadow:0 0 14px #69d8ff3d;font-size:8px}.legal-note{color:#ffffffe0;letter-spacing:.05em;white-space:nowrap;font-size:9px;font-weight:700}.brand-logo{object-fit:contain;object-position:left center;filter:drop-shadow(0 6px 13px #0000006b);width:100%;height:78px;display:block}.brand-stats{grid-template-rows:1fr 1fr;gap:8px;display:grid}.play-count,.record-card{min-width:0;min-height:49px;color:inherit;text-align:left;background:linear-gradient(135deg,#051834d1,#0c132bb3);border:1px solid #69d8ff3b;border-radius:13px;box-shadow:0 10px 28px #00000038}.play-count{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:7px 10px;display:grid}.play-count.online{border-color:#69d8ff70;box-shadow:0 10px 28px #00000038,inset 2px 0 #69d8ffb8}.play-count.device{border-color:#ffb56247;box-shadow:0 10px 28px #00000038,inset 2px 0 #ffac5c7a}.play-count span{color:#e9f4ffbf;font-size:7.5px;font-weight:700;display:block}.play-count strong{color:#ffba67;font-family:var(--font-geist-mono), monospace;font-variant-numeric:tabular-nums;font-size:23px;line-height:1}.play-count small{color:#76dbff9e;margin-top:3px;font-size:5.4px;display:block}.record-card{pointer-events:auto;cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;padding:7px 9px;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid}.record-card:hover,.record-card:focus-visible{border-color:#69d8ffb8;outline:none;transform:translateY(-1px);box-shadow:0 10px 28px #00000038,0 0 22px #69d8ff26}.record-card span{color:#e9f4ffc4;font-size:7.5px;font-weight:700;display:block}.record-card strong{color:var(--gold);font-family:var(--font-geist-mono), monospace;font-size:24px;line-height:1}.record-card small{color:#ffe29fb8;margin-left:3px;font-size:8px}.record-card em{color:#74daffcc;white-space:nowrap;margin-top:3px;font-size:5.5px;font-style:normal;display:block}.guide-trigger{z-index:2;color:#fff2ca;pointer-events:auto;cursor:pointer;width:29px;height:29px;font-family:var(--font-geist-mono), monospace;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#08122ac7;border:1px solid #ff6572ad;border-radius:50%;flex:none;padding:0;font-size:14px;line-height:27px;position:relative;box-shadow:0 8px 20px #00000038,0 0 15px #ff435d21}.guide-trigger:hover,.guide-trigger[aria-expanded=true]{color:#fff;border-color:#ff838cf2;box-shadow:0 0 22px #ff435d47}.install-guide{z-index:15;color:#ffffffe6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);cursor:default;width:min(290px,100vw - 28px);font-family:var(--font-geist-mono), "Microsoft YaHei", monospace;text-align:center;background:#07102ef5;border:1px solid #ff4c5bb8;border-radius:15px;padding:17px 18px 14px;position:absolute;top:clamp(172px,14vw,204px);right:clamp(18px,3.5vw,56px);box-shadow:0 20px 58px #00000085,inset 0 0 34px #4451a51f}.install-guide h2{color:#fff6dd;letter-spacing:.16em;margin:0 0 11px;font-size:14px}.install-guide p{letter-spacing:.045em;margin:8px 0;font-size:12px;line-height:1.9}.guide-separator{background:linear-gradient(90deg,#0000,#ff64778c,#0000);height:1px;margin:12px 4px}.install-guide button{color:#ffffff94;cursor:pointer;background:0 0;border:0;margin-top:4px;padding:5px 10px;font-size:10px}.install-guide button:hover{color:#fff}.pilot-card{z-index:3;aspect-ratio:1.28;background:#040c1ab8;border:1px solid #69d8ff47;border-radius:18px;width:clamp(148px,17vw,228px);transition:border-color .2s,filter .2s;position:absolute;top:31%;left:clamp(18px,3.5vw,56px);overflow:hidden;box-shadow:0 16px 45px #00000047}.pilot-card.tier-3{filter:drop-shadow(0 0 16px #ffd36d33);border-color:#ffd36de6}.pilot-card img{object-fit:cover;object-position:center;opacity:.9;width:100%;height:100%;transform:none}.pilot-card.lacus img{object-fit:contain;object-position:50% 50%;background:#170a22b8}.pilot-card.zaku{aspect-ratio:1;background:#20050dc2;border-color:#ff4d696b}.pilot-card.zaku img{object-fit:cover;object-position:center;filter:saturate(1.18)contrast(1.08);background:#231f26eb;transform:none}.pilot-card.zaku .pilot-scan{background:#ff4d78;box-shadow:0 0 10px #ff4d78}.pilot-card.zaku .pilot-meta span{color:#ff809a;text-shadow:0 0 8px #ff38629e}.pilot-card:after{content:"";background:linear-gradient(#0000 50%,#020813f5),repeating-linear-gradient(#0000 0 3px,#69d8ff0a 4px);position:absolute;inset:0}.pilot-scan{z-index:3;background:var(--cyan);height:1px;box-shadow:0 0 10px var(--cyan);animation:2.4s linear infinite scan;position:absolute;top:20%;left:0;right:0}@keyframes scan{to{opacity:.12;transform:translateY(130px)}}.pilot-meta{z-index:4;position:absolute;bottom:9px;left:12px;right:12px}.pilot-meta span{font-family:var(--font-geist-mono), monospace;letter-spacing:.13em;color:var(--cyan);text-shadow:0 0 8px #69d8ff94;font-size:9px;font-weight:800;display:block}.speed-panel{z-index:4;text-align:right;pointer-events:none;width:clamp(145px,15vw,215px);position:absolute;top:38%;right:clamp(18px,3.5vw,56px)}.speed-panel span{color:#e9f4ff6b;font-size:8px;display:block}.speed-panel strong{color:var(--gold);font-family:var(--font-geist-mono), monospace;text-shadow:0 0 24px #ffd36d40;font-variant-numeric:tabular-nums;font-size:clamp(44px,7vw,92px);line-height:.95;display:block}.speed-panel small{color:#e9f4ff85;letter-spacing:.16em;font-size:9px}.speed-track{background:#ffffff1f;height:2px;margin-top:12px}.speed-track i{background:linear-gradient(90deg, var(--cyan), var(--gold));height:100%;box-shadow:0 0 8px var(--gold);transition:width 80ms linear;display:block}.wah-counter{z-index:4;color:#e9f4ff80;border-right:2px solid var(--gold);pointer-events:none;background:linear-gradient(90deg,#0000,#1d1727b8);align-items:baseline;gap:7px;padding:8px 12px;display:flex;position:absolute;top:59%;right:clamp(18px,3.5vw,56px)}.wah-counter span{letter-spacing:.15em;font-size:9px}.wah-counter strong{color:var(--gold);font-family:var(--font-geist-mono), monospace;font-variant-numeric:tabular-nums;text-shadow:0 0 12px #ffd36d59;font-size:28px}.wah-counter small{color:#ffe091b3;font-size:11px}.controls{z-index:11;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#040c1c80;border:1px solid #73d0ff24;border-radius:16px;gap:8px;padding:5px;display:flex;position:absolute;bottom:clamp(24px,3vw,42px);right:clamp(18px,3.5vw,56px)}.controls button{color:#e9f4ffb3;cursor:pointer;text-align:left;background:#0b1d3980;border:1px solid #0000;border-radius:11px;width:108px;padding:9px 11px;transition:all .2s}.controls button:hover,.controls button.active{color:#fff;border-color:var(--cyan);transform:translateY(-2px);box-shadow:inset 0 0 20px #69d8ff14,0 0 18px #69d8ff14}.controls button span{font-size:12px;display:block}.controls button small{color:var(--cyan);font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;margin-top:4px;font-size:8px;display:block}.character-selector{z-index:12;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#030c1da8;border:1px solid #79d7ff2b;border-radius:18px;gap:8px;padding:5px;display:flex;position:absolute;bottom:clamp(24px,3vw,42px);left:50%;transform:translate(-50%);box-shadow:0 18px 46px #0000004d}.character-selector button{color:#e9f4ff9e;cursor:pointer;text-align:left;background:#0d1d3a6b;border:1px solid #0000;border-radius:13px;align-items:center;gap:9px;width:156px;height:54px;padding:5px 9px 5px 5px;transition:all .2s;display:flex}.character-selector button:hover{color:#fff;background:#17335b8f}.character-selector button.active{color:#fff;background:linear-gradient(120deg,#1b5381a3,#49205e7a);border-color:#69d8ff99;box-shadow:inset 0 0 18px #69d8ff14}.character-selector button.zaku.active{background:linear-gradient(120deg,#701427b3,#44173d85);border-color:#ff536fb3;box-shadow:inset 0 0 18px #ff3b5f1f}.character-selector img{object-fit:contain;object-position:top center;background:#040a18b3;border-radius:9px;flex:none;width:40px;height:42px}.character-selector button.zaku img{object-fit:cover;object-position:center;transform:none}.character-selector span,.character-selector strong{display:block}.character-selector strong{letter-spacing:.04em;font-size:12px}.record-toast{z-index:18;color:#fff4cd;letter-spacing:.07em;text-align:center;pointer-events:none;background:linear-gradient(100deg,#3f1f1eeb,#0b1d3ae6);border:1px solid #ffd36d8f;border-radius:9px;min-width:220px;padding:10px 18px;font-size:12px;animation:.28s ease-out both record-in;position:absolute;top:17%;left:50%;transform:translate(-50%);box-shadow:0 0 28px #ffb5412e}.record-toast span{color:var(--gold);font-family:var(--font-geist-mono), monospace;letter-spacing:.27em;margin-bottom:3px;font-size:7px;display:block}@keyframes record-in{0%{opacity:0;transform:translate(-50%,-10px)scale(.94)}to{opacity:1;transform:translate(-50%)scale(1)}}.leaderboard-backdrop{z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:auto;background:#01050eb8;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.leaderboard-dialog{width:min(430px,100vw - 28px);max-height:min(650px,100dvh - 30px);color:var(--ink);cursor:auto;background:linear-gradient(145deg,#05142bfa,#0c0e27fa);border:1px solid #69d8ff6b;border-radius:18px;padding:18px;overflow:auto;box-shadow:0 24px 90px #000000b8,inset 0 0 58px #3094dc0f}.leaderboard-dialog.lacus{border-color:#ff7ed375;box-shadow:0 24px 90px #000000b8,inset 0 0 58px #ff55be12}.leaderboard-dialog.zaku{border-color:#ff4d6985;box-shadow:0 24px 90px #000000b8,inset 0 0 58px #ff345514}.leaderboard-dialog>header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex;position:static}.leaderboard-dialog>header span{color:var(--cyan);font-family:var(--font-geist-mono), monospace;letter-spacing:.26em;font-size:7px}.leaderboard-dialog>header h2{color:#fff5d5;letter-spacing:.06em;margin:4px 0 0;font-size:20px}.leaderboard-dialog>header button{color:#e9f4ffa3;cursor:pointer;background:#0819339e;border:1px solid #69d8ff3d;border-radius:50%;width:32px;height:32px;padding:0;font-size:22px;line-height:28px}.ranking-source{font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;background:#0a1f3d6b;border:1px solid #69d8ff1f;border-radius:8px;justify-content:space-between;align-items:center;padding:7px 10px;font-size:8px;display:flex}.ranking-source span{color:var(--cyan)}.ranking-source strong{color:#e9f4ff94;font-weight:500}.ranking-list{counter-reset:rank;min-height:132px;margin:10px 0 14px;padding:0;list-style:none}.ranking-list li{border-bottom:1px solid #75cfff17;grid-template-columns:36px 1fr auto;align-items:center;min-height:37px;padding:5px 10px;display:grid}.ranking-list li:nth-child(-n+3) b{color:var(--gold)}.ranking-list li.current{box-shadow:inset 2px 0 0 var(--cyan);background:linear-gradient(90deg,#45b9ec1f,#ffbb5414)}.ranking-list li b{color:#9dd3f080;font-family:var(--font-geist-mono), monospace;font-size:10px}.ranking-list li>span{color:#f4f9ffdb;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.ranking-list li>strong{color:var(--gold);font-family:var(--font-geist-mono), monospace;font-variant-numeric:tabular-nums;font-size:18px}.ranking-list li>strong small{color:#ffe09a94;margin-left:3px;font-size:8px}.ranking-list .ranking-empty{color:#e9f4ff6b;letter-spacing:.06em;text-align:center;grid-template-columns:1fr;place-items:center;min-height:132px;font-size:11px;display:grid}.ranking-list .ranking-ellipsis{color:#e9f4ff4d;text-align:center;letter-spacing:.5em;min-height:20px;padding:0 10px;display:block}.ranking-actions{text-align:center;gap:8px;display:grid}.ranking-actions button,.score-form button{color:#07152b;cursor:pointer;background:linear-gradient(135deg,#79e1ff,#ffd66f);border:0;border-radius:9px;min-height:40px;padding:9px 15px;font-weight:800;box-shadow:0 0 20px #69d8ff24}.ranking-actions button:disabled{opacity:.32;cursor:not-allowed;filter:grayscale(.5)}.ranking-actions small{color:#e9f4ff66;letter-spacing:.05em;font-size:9px}.score-form{padding-top:2px}.score-form label{color:#ffe0a1;letter-spacing:.08em;margin-bottom:8px;font-size:11px;display:block}.score-form>div{grid-template-columns:1fr auto;gap:7px;display:grid}.score-form input{color:#fff;background:#020c1dcc;border:1px solid #69d8ff6b;border-radius:9px;outline:0;min-width:0;height:42px;padding:0 12px}.score-form input:focus{border-color:var(--cyan);box-shadow:0 0 0 2px #69d8ff1a}.score-form p{color:#ff91a1;margin:7px 0 0;font-size:10px}footer{z-index:4;color:#e9f4ff47;pointer-events:none;gap:25px;font-size:7px;display:flex;position:absolute;bottom:clamp(30px,4vw,55px);left:clamp(18px,3.5vw,56px)}@media (max-width:720px){.record-card,.guide-trigger,.install-guide,.controls,.character-selector,.leaderboard-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}footer span:last-child{display:none}.pilot-card{width:130px;top:22%}.speed-panel{width:120px;top:auto;bottom:225px;right:18px}.speed-panel strong{font-size:42px}.wah-counter{top:auto;bottom:330px;right:18px}.character-selector{bottom:82px;left:14px;right:14px;transform:none}.character-selector button{flex:1;width:auto;height:54px}.controls{bottom:14px;left:14px;right:14px}.controls button{text-align:center;flex:1;width:auto}.record-toast{width:min(280px,100vw - 36px);top:15%}.leaderboard-backdrop{padding:10px}.leaderboard-dialog{border-radius:15px;width:min(410px,100vw - 20px);max-height:calc(100dvh - 20px);padding:15px}.score-form>div{grid-template-columns:1fr}footer{display:none}}@container game (width<=720px) and (height>=600px){footer{display:none}.topbar{left:9px;top:max(8px, env(safe-area-inset-top));grid-template-columns:minmax(0,1fr) 116px;gap:9px;width:calc(100% - 18px)}.identity-meta{min-height:29px}.brand-meta{flex-direction:column;align-items:flex-start;gap:1px}.eyebrow{letter-spacing:.035em;font-size:clamp(7.2px,2vw,7.8px)}.legal-note{letter-spacing:.02em;font-size:8px}.brand-logo{height:73px}.guide-trigger{width:29px;height:29px;font-size:14px;line-height:27px}.brand-stats{gap:7px}.play-count,.record-card{border-radius:12px;min-height:49px}.play-count{padding:7px 8px}.play-count span,.record-card span{letter-spacing:.055em;font-size:8px}.play-count strong{font-size:23px}.play-count small,.record-card em{letter-spacing:.035em;margin-top:3px;font-size:5.8px}.record-card{padding:7px}.record-card strong{font-size:23px}.record-card small{font-size:8px}.install-guide{top:max(122px, calc(env(safe-area-inset-top) + 114px));padding:15px 15px 12px;right:9px}.install-guide p{font-size:11px;line-height:1.75}.pilot-card{border-radius:13px;width:clamp(104px,31vw,124px);top:126px;left:10px}.pilot-meta{bottom:7px;left:8px;right:8px}.pilot-meta span{font-size:7px}.speed-panel{width:104px;top:38%;bottom:auto;right:10px}.speed-panel strong{font-size:43px}.speed-panel span{letter-spacing:.1em;font-size:6px}.speed-panel small{letter-spacing:.08em;font-size:7px;display:block}.wah-counter{padding:6px 8px;top:calc(38% + 92px);bottom:auto;right:10px}.wah-counter span{font-size:7px}.wah-counter strong{font-size:22px}.character-selector{left:8px;right:8px;bottom:calc(76px + env(safe-area-inset-bottom));border-radius:14px;gap:5px;padding:4px}.character-selector button{border-radius:10px;gap:6px;height:50px;padding:4px 7px 4px 4px}.character-selector img{width:34px;height:39px}.character-selector strong{font-size:10px}.controls{left:8px;right:8px;bottom:max(7px, env(safe-area-inset-bottom));border-radius:13px;gap:5px;padding:4px}.controls button{border-radius:9px;min-height:57px;padding:7px 4px}.controls button span{font-size:10px}.controls button small{letter-spacing:.1em;font-size:6px}}@container game (width<=390px) and (height>=600px){.eyebrow{font-size:7.2px}.legal-note{font-size:7.6px}.play-count span,.record-card span{font-size:7.7px}.record-card em{font-size:5.5px}.pilot-card{width:103px;top:126px}.character-selector{bottom:calc(75px + env(safe-area-inset-bottom))}.controls button span{font-size:9px}}@media (max-height:650px) and (orientation:landscape){.pilot-card{width:135px;top:25%}.character-selector{display:none}.controls{bottom:18px}footer{bottom:22px}}
