:root{--orange:#ff714a;--sky:#8eeaf9;--soft:#95aaba;--light:#eaf4f6}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#060d1d;color:var(--light);font-family:Inter,Arial,sans-serif}body{user-select:none;-webkit-user-select:none}button{font:inherit;cursor:pointer}#game,#game canvas{position:fixed;inset:0;width:100%;height:100%;display:block}#game canvas{outline:none;touch-action:none}#grain{pointer-events:none;position:fixed;inset:0;z-index:2;opacity:.085;background:repeating-linear-gradient(24deg,transparent 0,transparent 7px,#dbefff33 7.3px,transparent 8px),repeating-linear-gradient(112deg,transparent 0,transparent 12px,#0b142a33 12.4px,transparent 13px)}#vignette{position:fixed;inset:0;pointer-events:none;z-index:2;background:radial-gradient(ellipse 74% 67% at 50% 45%,transparent 29%,rgba(3,9,22,.26) 74%,rgba(2,6,16,.74) 110%)}#hitflash{position:fixed;inset:0;pointer-events:none;z-index:8;opacity:0;background:radial-gradient(ellipse,transparent 50%,rgba(255,42,43,.84) 100%);transition:opacity .12s}#speedlines{position:fixed;inset:0;pointer-events:none;z-index:3;opacity:0;transition:opacity .3s;background:repeating-conic-gradient(from 0deg at 50% 50%,transparent 0deg,rgba(153,221,255,.035) 1deg,transparent 2.2deg,transparent 8deg);mask-image:radial-gradient(ellipse,transparent 10%,#000 100%)}.hidden{display:none!important}.hud{position:fixed;z-index:5;pointer-events:none}.brand{display:flex;align-items:center;gap:12px}.brand-logo,.logo-stamp{border:2px solid #d5edff;color:#ebf6ff;display:grid;place-items:center;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;letter-spacing:-3px;transform:skew(-7deg);font-size:30px;width:65px;height:49px;line-height:1}.brand-logo span,.logo-stamp span{font-size:14px;color:var(--orange);letter-spacing:0;margin:0 -1px}.brand-copy strong{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:20px;line-height:1;font-weight:800;letter-spacing:1px}.brand-copy small{display:block;font-size:8px;letter-spacing:1.65px;color:#aac0d3;margin-top:6px}#topHud{top:27px;left:30px;right:30px;display:flex;align-items:flex-start;justify-content:space-between;gap:30px}.mission-bar{width:320px;margin-left:-65px}.eyebrow{display:flex;align-items:center;gap:11px;font-size:10px;letter-spacing:2px;font-weight:800;color:#b3cddd}.red-dot{width:6px;height:6px;border-radius:50%;background:#ff4d57;box-shadow:0 0 12px #fa465b}.mission-bar #stageMode{color:#f5b98a}.mission-title{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;font-size:25px;letter-spacing:1px;margin-top:9px;line-height:1}.mission-sub{font-family:'Barlow Condensed',Impact,sans-serif;font-size:12px;letter-spacing:2px;color:#adc6d5;margin-top:6px;font-weight:700}.mission-meter{height:3px;margin-top:9px;background:#80909f4d}.mission-meter div{height:100%;width:0;background:#f68b60;box-shadow:0 0 10px #ff6945}.hud-stats{text-align:right}.score-label,.speed-label{font-size:10px;font-weight:700;letter-spacing:2px;color:#adc1d3}.score-num{font-family:'Barlow Condensed',Impact,sans-serif;font-size:44px;line-height:.9;font-weight:800;letter-spacing:3px;margin-top:7px}.wave-badge{color:var(--orange);font-size:10px;letter-spacing:2px;font-weight:800;margin-top:9px}#leftHud{bottom:71px;left:31px;width:255px}.metric{margin-bottom:13px}.metric-top{display:flex;justify-content:space-between;font-family:'Barlow Condensed',Impact,sans-serif;font-size:12px;font-weight:700;letter-spacing:1.7px;color:#d9e8f1;margin-bottom:6px}.meter{height:5px;background:rgba(164,182,191,.21);border:1px solid rgba(255,255,255,.09)}.meter div{height:100%;width:100%;transition:width .13s}.meter.health div{background:#f26d60}.meter.city div{background:#bde5cf}.meter.boost div{background:#6ae3ff}.tool-status{margin-top:19px;font-family:'Barlow Condensed',Impact,sans-serif;color:#c6d7df;font-size:12px;letter-spacing:1.3px}.tool-status b{color:#82f3ff}#rightHud{bottom:92px;right:31px;text-align:right}.speed-label{font-size:10px}#speed{font-family:'Barlow Condensed',Impact,sans-serif;font-size:66px;font-weight:900;line-height:1;letter-spacing:1px}.speed-unit{font-family:'Barlow Condensed',Impact,sans-serif;font-size:16px;font-weight:700;letter-spacing:2px;margin-left:7px;color:#c6deed}.alt-label{font-family:'Barlow Condensed',Impact,sans-serif;font-size:12px;letter-spacing:1.7px;color:#94bdcc;margin-top:4px}#crosshair{position:fixed;left:50%;top:49%;transform:translate(-50%,-50%);z-index:5;pointer-events:none;text-align:center}.crosshair-ring{width:37px;height:37px;border:1px solid rgba(205,246,248,.42);border-radius:50%;position:relative;margin:auto;box-shadow:0 0 22px rgba(135,240,255,.08)}.crosshair-ring .mark{position:absolute;background:#cefdff;box-shadow:0 0 6px #80e5ff}.crosshair-ring .n,.crosshair-ring .s{height:8px;width:2px;left:17px}.crosshair-ring .n{top:-9px}.crosshair-ring .s{bottom:-9px}.crosshair-ring .e,.crosshair-ring .w{height:2px;width:8px;top:17px}.crosshair-ring .e{right:-9px}.crosshair-ring .w{left:-9px}.crosshair-dot{position:absolute;inset:16px;border:1px solid #e5fbff;background:#e5fbff}#crosshair.locked .crosshair-ring{border-color:#ff975c;transform:scale(1.13)}#crosshair.locked .mark,#crosshair.locked .crosshair-dot{background:#ff8d58;box-shadow:0 0 12px #ff8355}#lockLabel{display:inline-block;margin-top:17px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:10px;font-weight:700;letter-spacing:1.8px;color:#c7e8f0;white-space:nowrap}#crosshair.locked #lockLabel{color:#ffa570}#targetIndicator{position:fixed;z-index:5;pointer-events:none;left:50%;top:calc(49% - 55px);transform:translateX(-50%);display:flex;gap:12px;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;font-size:12px;letter-spacing:1.4px;color:#ffb191}#targetIndicator span:last-child{color:#e9f8ff}#notification{position:fixed;top:23%;width:100%;text-align:center;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;font-size:20px;color:#fff;letter-spacing:3px;z-index:5;pointer-events:none;text-shadow:0 2px 14px black}#bottomHud{left:0;bottom:20px;width:100%;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px}.control-hint{font-size:9px;font-weight:800;letter-spacing:1px;color:#b4becf}.control-hint b{color:#fff;font-weight:600;margin-left:4px}#toastLog{position:fixed;z-index:5;left:50%;bottom:126px;transform:translateX(-50%);text-align:center;pointer-events:none}.toast{font-family:'Barlow Condensed',Impact,sans-serif;letter-spacing:2px;color:#e0f9ff;font-weight:800;font-size:18px;margin-top:3px;text-shadow:0 1px 15px #050914;animation:toastAnim 2.5s ease forwards}@keyframes toastAnim{0%{opacity:0;transform:translateY(13px)}15%,75%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-13px)}}#stageSplash{position:fixed;inset:0;background:linear-gradient(90deg,rgba(5,10,23,.9),rgba(5,10,23,.1));z-index:11;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-left:12%;pointer-events:none;animation:stageFade 3.6s ease both}.stage-count{font-size:14px;color:#ffa46e;letter-spacing:5px;font-weight:800}#stageSplash h2{font-family:'Barlow Condensed',Impact,sans-serif;letter-spacing:-2px;font-size:clamp(53px,8vw,120px);line-height:.86;margin:18px 0;font-weight:900}#stageSplash p{font-family:'Barlow Condensed',Impact,sans-serif;font-size:20px;color:#d4dae8;letter-spacing:2px;font-weight:700}@keyframes stageFade{0%{opacity:0}12%,68%{opacity:1}100%{opacity:0}}.overlay{position:fixed;z-index:10;inset:0;background:linear-gradient(90deg,rgba(4,9,21,.98) 0%,rgba(6,13,29,.85) 29%,rgba(6,13,29,.36) 58%,rgba(6,13,29,.1) 100%),linear-gradient(0deg,rgba(4,10,22,.96),transparent 30%);display:flex;flex-direction:column;justify-content:space-between;padding:28px 45px 24px}.overlay-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:2px;font-weight:800;color:#b5c5d4}.logo-stamp{width:58px;height:43px;font-size:26px}.separator{color:var(--orange);padding:0 5px}.status-led{color:#f5ae9b}.status-led i{display:inline-block;background:#ff654c;border-radius:100%;width:7px;height:7px;margin-right:9px;box-shadow:0 0 11px #e85c50}.hero-title{position:absolute;left:8%;top:44%;transform:translateY(-42%)}.huge-eyebrow{font-size:10px;letter-spacing:3px;color:#b9ccdd}.orange-bar{height:3px;width:26px;background:var(--orange)}.big-title{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-size:clamp(76px,11.2vw,183px);line-height:.76;letter-spacing:-.038em;font-style:italic;font-weight:900;text-shadow:0 6px 30px rgba(0,0,0,.24);margin:24px 0}.big-title span,.big-title strong{display:block}.big-title strong{font-weight:900;color:#f5f7f6}.big-title .period{display:inline;color:var(--orange)}.hero-title p{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(22px,2.2vw,32px);font-weight:800;letter-spacing:2px;line-height:1.23;color:#e5eaf1;margin:30px 0}.hero-title p em{color:#f59b70;font-style:normal}.launch-row{display:flex;gap:26px;align-items:center}.primary-btn{display:flex;justify-content:center;align-items:center;gap:22px;border:0;background:#ff7048;color:#07111e;min-width:210px;padding:19px 23px;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;font-size:19px;letter-spacing:1.4px;clip-path:polygon(0 0,96% 0,100% 24%,100% 100%,0 100%);transition:background .15s,transform .15s}.primary-btn:hover{background:#ff986a;transform:translateY(-2px)}.play-icon{font-size:12px}.right-arrow{font-size:25px;font-weight:400}.launch-note{font-family:'Barlow Condensed',Impact,sans-serif;font-size:11px;line-height:1.6;letter-spacing:2px;color:#c3cede;font-weight:700}.overlay-bottom{display:flex;align-items:center;gap:38px;border-top:1px solid #95a9bb2f;padding-top:19px}.act-preview{display:flex;gap:12px;align-items:center}.act-number{font-family:'Barlow Condensed',Impact,sans-serif;font-size:38px;font-weight:900;color:#6e8da5}.act-preview b{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:14px;letter-spacing:1.3px}.act-preview small{display:block;font-size:10px;margin-top:5px;color:#9cabbb}.move-preview{margin-left:auto;font-size:9px;font-weight:800;letter-spacing:1.1px;color:#b4c0cb}.end-overlay{position:fixed;z-index:18;inset:0;background:rgba(3,8,19,.89);backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}.end-kicker{color:var(--orange);font-size:13px;letter-spacing:4px;font-weight:800}.end-overlay h2{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;font-size:clamp(58px,8vw,100px);line-height:.92;letter-spacing:-1px;margin:20px 0}.end-overlay p{color:#bfcddc;font-size:15px;max-width:530px;line-height:1.7}.end-result{display:flex;gap:24px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:16px;letter-spacing:1.5px;font-weight:800;color:#d7edf5;margin:26px}.end-actions{display:flex;gap:14px}.ghost-btn{border:1px solid #7e96a680;background:transparent;color:#d3e4e8;padding:15px 22px;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;font-size:17px;letter-spacing:1px}.loading{position:fixed;inset:0;background:#07101e;z-index:30;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;transition:opacity .6s}.loading-logo{font-family:'Barlow Condensed',Impact,sans-serif;font-size:95px;font-weight:900;font-style:italic;letter-spacing:-7px}.loading-logo span{color:#ff724d;font-size:41px}.loading #loadingStatus{font-size:10px;letter-spacing:3px;color:#bdc9d9;font-weight:800}.loading-track{width:160px;height:2px;background:#314150}.loading-progress{width:70%;height:2px;background:#ff714a;animation:load 1.5s infinite ease-in-out}@keyframes load{0%{width:0}80%{width:100%}100%{width:0;transform:translateX(160px)}}#error{position:fixed;inset:0;background:#101726;z-index:99;padding:20vh 10vw;text-align:center}#error h2{font-family:'Barlow Condensed';font-size:60px}#error p{line-height:1.7;color:#d4dfe8}#error button{padding:15px 25px;color:black;background:var(--orange);border:0}#mobileControls{position:fixed;inset:0;z-index:7;pointer-events:none}.joystick{width:120px;height:120px;position:absolute;left:26px;bottom:30px;border-radius:50%;background:#16263888;border:2px solid #b6dded50;pointer-events:auto;touch-action:none}.joystick>div{position:absolute;left:36px;top:36px;width:46px;height:46px;background:#d7f0f28a;border-radius:50%}.mobile-buttons{position:absolute;bottom:30px;right:25px;display:grid;grid-template-columns:repeat(3,67px);grid-template-rows:repeat(2,61px);gap:8px;pointer-events:auto}.mobile-buttons button{border:1px solid #b8e4ee78;border-radius:15px;background:#142d44b8;color:white;font-family:'Barlow Condensed',Impact,sans-serif;font-size:15px;font-weight:900;touch-action:none}.mobile-buttons button:first-child{background:#ff7646dd;border-color:#ffad76;color:#121624}#lookPad{position:absolute;left:40%;right:0;top:10%;bottom:200px;pointer-events:auto;touch-action:none}#mobileControls:not(.hidden)~#bottomHud{display:none}@media(max-width:900px){.overlay{padding:20px}.overlay-top{gap:18px}.overlay-top>span:nth-child(2){display:none}.hero-title{left:6%;top:42%}.big-title{font-size:clamp(72px,13vw,125px)}.overlay-bottom{gap:12px;flex-wrap:wrap}.act-preview:nth-child(3),.move-preview{display:none}#topHud{left:17px;right:17px;top:14px;gap:10px}.brand-copy small{display:none}.mission-bar{margin:0;width:auto}.mission-title{font-size:21px}.mission-bar #stageMode{display:none}.hud-stats{display:none}#leftHud{width:190px;bottom:192px;left:20px}#rightHud{right:16px;bottom:190px}#speed{font-size:43px}#bottomHud{display:none}.brand-logo{width:42px;height:36px;font-size:22px}.brand-copy strong{font-size:14px}#toastLog{bottom:203px}.end-result{gap:10px;flex-wrap:wrap;justify-content:center}}@media(max-width:580px){.overlay{padding:16px}.hero-title{top:42%;left:6%}.big-title{font-size:clamp(62px,15.7vw,100px);margin:20px 0}.hero-title p{font-size:23px}.hero-title .huge-eyebrow{font-size:8px}.launch-note{display:none}.act-preview:nth-child(2){display:none}#topHud{gap:8px}.mission-title{font-size:18px}.mission-bar .eyebrow{font-size:8px}.brand-copy{display:none}#leftHud{width:135px;bottom:185px}.metric-top{font-size:10px}.tool-status{display:none}#rightHud{bottom:184px}#speed{font-size:35px}#stageSplash{padding-left:7%}#stageSplash h2{font-size:62px}}@media(pointer:coarse){#bottomHud{display:none}}
