:root{font-family:Arial,Helvetica,sans-serif;color:#e9f4f1;background:#050b14;font-synthesis:none;--cyan:#74fff0;--amber:#ffd28a}*{box-sizing:border-box}html,body,#app{height:100%;margin:0;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:2px solid var(--cyan);outline-offset:-3px}button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}[hidden]{display:none!important}.shell{height:100dvh;padding:10px;position:relative;background:radial-gradient(ellipse at 50% 48%,#1a3146 0,#0c1728 35%,#060d18 66%,#040911)}.shell:before,.shell:after{content:"";position:absolute;bottom:0;top:35%;width:18%;opacity:.14;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 17px,#657e94 18px,transparent 19px),repeating-linear-gradient(90deg,#081120 0 31px,#3a4c66 32px,#081120 35px);clip-path:polygon(0 15%,18% 15%,18% 5%,37% 5%,37% 30%,60% 30%,60% 0,78% 0,78% 22%,100% 22%,100% 100%,0 100%)}.shell:before{left:0}.shell:after{right:0;transform:scaleX(-1);top:45%}.arena-wrap{display:flex;align-items:center;justify-content:center;height:100%;width:100%;position:relative;z-index:1}.arena{display:flex;flex-direction:column;position:relative;flex-shrink:0;overflow:hidden;border:1px solid #4261717a;border-radius:12px;background:#0b1725;box-shadow:0 20px 80px #0009,0 0 80px #76c0d008}.topbar{height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 10px 0 14px;background:#0a1522;border-bottom:1px solid #70869912}.brand{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:600;letter-spacing:1.8px;color:#91a5b6}.brand b{color:#e4f1ed}.brandmark{height:18px;width:16px;display:flex;gap:3px;align-items:center;margin-right:4px}.brandmark i{display:block;width:4px;height:18px;background:var(--cyan);transform:skewY(-22deg)}.brandmark i:last-child{height:12px}.tools{display:flex;gap:5px}.icon-button{width:32px;height:32px;display:grid;place-items:center;border:0;background:transparent;color:#9aafbd;border-radius:6px}.icon-button:hover{background:#ffffff08;color:#fff}.icon-button .muted-line,.icon-button.muted .wave{display:none}.icon-button.muted .muted-line{display:block}.arena-header{height:56px;flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:space-between;padding:0 15px;background:linear-gradient(120deg,#152637,#0b1929)}.section-toggle{display:flex;align-items:center;gap:10px;border:0;background:transparent;text-align:left;padding:7px 0}.stage{color:var(--cyan);font-weight:800;font-size:23px;letter-spacing:-1px}.section-theme{display:block;font-size:7px;font-weight:700;letter-spacing:2px;color:#8a9fb4;margin-bottom:4px}.section-toggle strong{display:block;font-size:12px;font-weight:700;color:#e7f1ed}.chevron{font-size:13px;color:#829dad;margin-left:2px}.altitude{white-space:nowrap;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:3px}.altitude strong{font-size:26px;letter-spacing:-1px;font-weight:800}.altitude span{font-size:8px;color:#728c9f;font-weight:600}.altitude b{font-size:8px;color:var(--cyan);margin-left:3px}.progress-track{position:absolute;bottom:0;left:0;right:0;height:2px;background:#293b4b}.progress-track i{display:block;width:0;height:100%;background:var(--cyan);box-shadow:0 0 7px #8affde60}.canvas-wrap{flex:1;min-height:0;position:relative;touch-action:none;user-select:none;-webkit-user-select:none;outline:none}.canvas-wrap canvas{display:block;touch-action:none;width:100%!important;height:100%!important;margin:0!important}.arena-footer{height:53px;flex-shrink:0;background:#0b1826;border-top:1px solid #304654;padding:6px 9px}.hold-control{display:flex;align-items:center;justify-content:center;gap:11px;position:relative;overflow:hidden;width:100%;height:100%;touch-action:none;border:1px solid #45636c;background:linear-gradient(110deg,#1a343e,#122835);border-radius:5px;color:#b5e4db;font-size:10px;font-weight:700;letter-spacing:2px;user-select:none;-webkit-user-select:none}.hold-control span{position:relative;z-index:1}.touch-symbol{font-size:19px;font-weight:400;color:var(--cyan)}.control-arrow{position:absolute!important;right:13px;color:var(--cyan);font-size:20px}.hold-control i{position:absolute;inset:0;background:linear-gradient(90deg,#2e756755,#63eec63a);transform:scaleX(0);transform-origin:left}.hold-control.charging{border-color:#8aedd3;color:#eafff2}.hold-control.full{border-color:#ffd28a;color:#ffe5af}.hold-control.full i{background:#bf8d3c55}.hold-control.full .touch-symbol,.hold-control.full .control-arrow{color:#ffe0a6}.section-menu{position:absolute;top:94px;left:8px;right:8px;background:#0a1828f5;border:1px solid #456474;border-radius:8px;padding:6px;z-index:4;box-shadow:0 12px 30px #0007;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.level-button{width:100%;display:flex;align-items:center;gap:13px;text-align:left;border:0;background:transparent;padding:14px 10px;border-radius:4px}.level-button>span{color:#69899e;font-size:21px;font-weight:800}.level-button strong{display:block;font-size:13px}.level-button small{display:block;color:#809eaf;font-size:10px;margin-top:4px}.level-button>b{margin-left:auto;color:#5d8090}.level-button.active,.level-button:hover{background:#86eec610}.level-button.active>span,.level-button.active>b{color:var(--cyan)}.overlay{position:absolute;inset:96px 0 53px;background:linear-gradient(#071522d9,#0a1e2eef);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:25px;z-index:5}.outcome-symbol{height:64px;width:64px;display:grid;place-items:center;border:1px solid #c3eed85e;border-radius:16px;color:var(--cyan);font-size:42px;background:#8df2c909;margin-bottom:23px}.eyebrow{font-size:9px;letter-spacing:3px;color:var(--cyan);font-weight:700;margin-bottom:12px}.overlay h2{font-size:37px;line-height:1;letter-spacing:-1.5px;margin:0 0 18px}.overlay p{font-size:12px;line-height:1.9;color:#91aebd;white-space:pre-line;margin:0 0 25px}.primary{padding:16px 25px;min-width:210px;border:1px solid #b4ffda;background:#9ff7d3;color:#0b2a2b;border-radius:5px;font-weight:800;font-size:11px;letter-spacing:1px;box-shadow:0 5px 20px #64d3af14}.secondary{background:none;border:0;color:#8daab9;margin-top:12px;padding:12px;font-size:11px}.dev{position:fixed;right:12px;bottom:12px;max-height:85vh;width:280px;overflow:auto;background:#071522f5;border:1px solid #456775;border-radius:7px;padding:14px;z-index:8;font:11px monospace}.dev pre{white-space:pre-wrap}.dev button{padding:7px 12px;background:#294958;border:1px solid #557784}.dev small{display:block;color:#8ba5b5;margin-top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:500px){.shell{padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px)}.arena{border-radius:0;border-left:0;border-right:0;box-shadow:none}.topbar{height:37px;padding-left:12px}.arena-header{height:54px;padding:0 12px}.arena-footer{height:54px;padding:6px 8px}.section-menu{top:89px}.overlay{inset:91px 0 54px}.shell:before,.shell:after{display:none}.brand{font-size:9px;letter-spacing:1.4px}}@media(orientation:landscape)and (max-height:600px){.shell{padding:4px}.topbar{height:25px;padding:0 6px}.brand{font-size:5px;letter-spacing:.5px;gap:2px}.brandmark{transform:scale(.6);margin-right:-2px}.icon-button{width:23px;height:23px}.icon-button svg{width:14px;height:14px}.tools{gap:0}.arena-header{height:35px;padding:0 7px}.stage{font-size:16px}.section-toggle{gap:5px}.section-theme{font-size:5px;letter-spacing:1px;margin-bottom:2px}.section-toggle strong,.chevron{font-size:8px}.altitude strong{font-size:17px}.altitude span,.altitude b{font-size:5px}.arena-footer{height:32px;padding:3px}.hold-control{font-size:6px;letter-spacing:.5px;gap:5px}.touch-symbol{font-size:13px}.control-arrow{font-size:13px;right:7px}.section-menu{top:58px}.level-button{padding:8px;gap:8px}.level-button>span{font-size:15px}.level-button strong{font-size:9px}.level-button small{font-size:7px}.overlay{inset:60px 0 32px;padding:8px}.outcome-symbol{height:30px;width:30px;font-size:22px;border-radius:8px;margin-bottom:10px}.eyebrow{font-size:6px;letter-spacing:1px;margin-bottom:8px}.overlay h2{font-size:21px;margin-bottom:9px}.overlay p{font-size:7px;margin-bottom:10px}.primary{padding:9px;min-width:130px;font-size:7px}.secondary{font-size:7px;padding:5px;margin-top:5px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.shell.has-surround:before,.shell.has-surround:after{display:none}.shell.has-surround .arena{box-shadow:0 0 0 1px #74fff040,0 20px 80px #000c}.hud{height:48px;flex-shrink:0;display:flex;align-items:center;gap:8px;padding:0 4px 0 6px;background:linear-gradient(#081420,#0a1827);border-bottom:1px solid #74fff01f;position:relative;z-index:3}.hud-stage{display:flex;align-items:center;gap:3px;height:44px;min-width:56px;padding:0 8px;border:0;background:transparent;border-radius:8px;color:var(--cyan);font-weight:800;font-size:20px;letter-spacing:-.5px}.hud-stage:hover{background:#ffffff08}.hud-chev{font-size:12px;color:#7d97a8;margin-top:2px}.hud-progress{flex:1;height:4px;border-radius:2px;background:#22384a;overflow:hidden;min-width:40px}.hud-progress i{display:block;height:100%;width:0;background:var(--cyan);box-shadow:0 0 6px #8affde80;border-radius:2px}.hud-alt{display:flex;align-items:baseline;gap:3px;font-variant-numeric:tabular-nums;white-space:nowrap;margin:0 2px}.hud-alt strong{font-size:20px;font-weight:800;color:#eef7f4;letter-spacing:-.5px}.hud-alt span{font-size:11px;font-weight:700;color:var(--cyan)}.hud .icon-button{width:44px;height:44px;border-radius:8px}.hud .icon-button svg{width:19px;height:19px}.section-menu{top:52px}.overlay{inset:48px 0 53px}@media(max-width:500px){.hud{height:48px}.section-menu{top:52px}.overlay{inset:48px 0 54px}}@media(orientation:landscape)and (max-height:600px){.hud{height:34px;gap:4px}.hud-stage{height:32px;font-size:14px;min-width:40px}.hud-alt strong{font-size:14px}.hud .icon-button{width:32px;height:32px}.section-menu{top:36px}.overlay{inset:34px 0 32px}}
