:root{color:#f4fbfc;font-synthesis:none;text-rendering:geometricprecision;--ice:#82e7ee;--ice-bright:#d9fbff;--navy:#071a2b;--navy-soft:#102c43;--coral:#ff6f4d;--yellow:#ffc857;--cream:#f2efe3;--glass:#071a2bbd;background:#071a2b;font-family:Inter,ui-rounded,Avenir Next,Avenir,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{overscroll-behavior:none;min-width:320px}button{font:inherit}#app{isolation:isolate;background:radial-gradient(circle at 50% 25%,#174561,#071a2b 68%);position:relative}#game-canvas{touch-action:none;outline:none;width:100vw;height:100vh;display:block}#screen-flash{z-index:5;pointer-events:none;opacity:0;background:#eaffff;position:absolute;inset:0}#hud{z-index:10;pointer-events:none;filter:drop-shadow(0 8px 20px #010b1340);position:absolute;inset:0}.hud-blade{-webkit-backdrop-filter:blur(12px);background:linear-gradient(135deg,#092539eb,#041523bd);border:1px solid #d3f6fb33}#shift-cluster{top:max(18px, env(safe-area-inset-top));left:max(20px, env(safe-area-inset-left));clip-path:polygon(0 0,100% 0,calc(100% - 22px) 100%,0 100%);min-width:190px;padding:11px 38px 12px 16px;position:absolute}.eyebrow,#timer-cluster span,.target-copy span,.resource-label,#penalty-cluster small{color:#d9fbff9e;letter-spacing:.13em;text-transform:uppercase;font-size:.64rem;font-weight:800}#shift-cluster .eyebrow{display:block}#shift-cluster .eyebrow b{color:var(--coral)}#shift-cluster strong{letter-spacing:.015em;margin-top:3px;font-size:.98rem;display:block}#coverage-cluster{top:max(17px, env(safe-area-inset-top));align-items:center;gap:9px;display:flex;position:absolute;left:50%;transform:translate(-50%)}#coverage-dial{--coverage:0deg;background:conic-gradient(var(--ice) 0 var(--coverage), #94c8d229 var(--coverage) 360deg);border-radius:50%;place-items:center;width:78px;height:78px;display:grid;box-shadow:inset 0 0 0 1px #d9fbff2e,0 0 26px #4dd5e12e}#coverage-dial:before{content:"";background:#051a2ae6;border-radius:50%;width:62px;height:62px;position:absolute;box-shadow:inset 0 0 14px #82e7ee14}#coverage-dial>div{z-index:1;text-align:center;position:relative}#coverage-dial strong{font-variant-numeric:tabular-nums;min-width:3ch;font-size:1.1rem;display:block}#coverage-dial span{color:#d9fbff94;text-transform:uppercase;margin-top:-2px;font-size:.58rem;display:block}.target-copy{flex-direction:column;display:flex}.target-copy b{color:var(--yellow);margin-top:2px;font-size:.85rem}#timer-cluster{top:max(20px, env(safe-area-inset-top));right:max(116px, calc(env(safe-area-inset-right) + 100px));text-align:right;min-width:96px;position:absolute}#timer-cluster strong{font-variant-numeric:tabular-nums;letter-spacing:.08em;margin:1px 0 -1px;font-size:1.22rem;display:block}#timer-cluster small{color:#d9fbff80;font-size:.64rem}#action-cluster{top:max(18px, env(safe-area-inset-top));right:max(18px, env(safe-area-inset-right));pointer-events:auto;gap:8px;display:flex;position:absolute}.icon-button{width:42px;height:42px;color:var(--ice-bright);cursor:pointer;background:#051a2acc;border:1px solid #d9fbff33;border-radius:50%;transition:transform .12s,border-color .12s,background .12s}.icon-button:hover{border-color:var(--ice);background:#0c384df0}.icon-button:active{transform:scale(.92)}.icon-button:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}#resource-cluster{bottom:max(22px, env(safe-area-inset-bottom));left:max(20px, env(safe-area-inset-left));clip-path:polygon(0 0,calc(100% - 16px) 0,100% 50%,calc(100% - 16px) 100%,0 100%);width:min(286px,100vw - 40px);padding:13px 18px 13px 14px;position:absolute}.resource-row{grid-template-columns:13px 45px 1fr 30px;align-items:center;gap:8px;display:grid}.resource-row+.resource-row{margin-top:9px}.resource-icon{width:9px;height:12px;display:block}.water-icon{background:var(--ice);border-radius:70% 30% 65% 35%;transform:rotate(45deg)}.fuel-icon{border:2px solid var(--yellow);border-radius:2px}.meter-track{background:#b1dee51f;height:7px;overflow:hidden;transform:skew(-16deg)}.meter-track i{background:linear-gradient(90deg, #39bdc9, var(--ice-bright));width:100%;height:100%;transition:width .16s linear;display:block}.meter-track.fuel i{background:linear-gradient(90deg, #f0a83e, var(--yellow))}.resource-row b{font-variant-numeric:tabular-nums;text-align:right;font-size:.72rem}#penalty-cluster{right:max(20px, env(safe-area-inset-right));bottom:max(22px, env(safe-area-inset-bottom));clip-path:polygon(15px 0,100% 0,100% 100%,0 100%);gap:18px;padding:10px 14px 10px 22px;display:flex;position:absolute}#penalty-cluster>div{grid-template-columns:auto auto;align-items:center;column-gap:6px;display:grid}#penalty-cluster>div>span{color:var(--coral);grid-row:span 2;font-size:1.15rem}#penalty-cluster b{font-variant-numeric:tabular-nums;min-width:3ch;font-size:.85rem}#penalty-cluster small{font-size:.51rem}#status-banner{left:50%;bottom:max(25px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#051a2ad4;border:1px solid #d9fbff2e;border-radius:999px;grid-template-columns:15px auto;align-items:center;column-gap:8px;min-width:178px;padding:10px 17px 9px;transition:border-color .14s,box-shadow .14s;display:grid;position:absolute;transform:translate(-50%)}#status-banner[data-tone=active]{border-color:#82e7eecc;box-shadow:0 0 24px #40dbe738}#status-banner[data-tone=warning]{border-color:#ff6f4dd1}#resurface-indicator{border:2px solid #d9fbff59;border-radius:50%;grid-row:span 2;width:11px;height:11px}[data-tone=active] #resurface-indicator{border-color:var(--ice-bright);background:var(--ice);box-shadow:0 0 12px var(--ice)}[data-tone=warning] #resurface-indicator{border-color:var(--coral);background:var(--coral)}#status-banner b{letter-spacing:.04em;font-size:.72rem}#status-banner small{color:#d9fbff80;grid-column:2;font-size:.56rem}#touch-controls{display:none}#game-modal{z-index:30;padding:max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(9px)saturate(.75);backdrop-filter:blur(9px)saturate(.75);opacity:0;visibility:hidden;pointer-events:none;background:radial-gradient(circle at 50% 40%,#12465947,#020d17b3);place-items:center;transition:opacity .18s,visibility .18s;display:grid;position:absolute;inset:0}#game-modal.visible{opacity:1;visibility:visible;pointer-events:auto}.modal-panel{clip-path:polygon(0 0,calc(100% - 34px) 0,100% 34px,100% 100%,34px 100%,0 calc(100% - 34px));background:linear-gradient(145deg,#0a2a3df5,#041523f5);border:1px solid #bcedf43d;width:min(650px,94vw);max-height:min(780px,94vh);padding:24px 30px;position:relative;overflow:auto;box-shadow:0 32px 90px #00070d7a,inset 0 1px #ffffff0d}.modal-panel:after{content:"";background:var(--coral);width:86px;height:3px;position:absolute;top:0;right:34px}.modal-topline{color:var(--ice);letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.66rem;font-weight:900;display:flex}.modal-mark{width:34px;height:26px;color:var(--navy);background:var(--yellow);place-items:center;display:grid;transform:skew(-12deg)}#modal-title{letter-spacing:-.055em;text-transform:uppercase;max-width:15ch;margin:16px 0 0;font-size:clamp(2.2rem,7vw,4.6rem);line-height:.88}#modal-subtitle{color:var(--coral);letter-spacing:.1em;text-transform:uppercase;margin:12px 0 0;font-size:.82rem;font-weight:900}#modal-body{color:#e1f6f9b8;max-width:54ch;margin:12px 0 18px;font-size:.9rem;line-height:1.55}.modal-stats{background:#99d5dd21;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:17px;display:grid;overflow:hidden}.modal-stat{background:#041827f0;min-height:62px;padding:11px 12px}.modal-stat span{color:#d9fbff8a;letter-spacing:.1em;text-transform:uppercase;font-size:.56rem;font-weight:800;display:block}.modal-stat b{font-variant-numeric:tabular-nums;margin-top:5px;font-size:.96rem;display:block}.star-row{color:var(--yellow);letter-spacing:.11em}#level-strip{grid-template-columns:repeat(5,1fr);gap:7px;margin:4px 0 18px;display:grid}.level-button{color:#e2f8fb94;cursor:pointer;background:#03121e85;border:1px solid #c9eff524;min-height:58px;padding:8px 5px;transition:border .12s,color .12s,transform .12s}.level-button b{font-size:.84rem;display:block}.level-button span{min-height:12px;color:var(--yellow);letter-spacing:.06em;margin-top:4px;font-size:.56rem;display:block}.level-button:hover:not(:disabled),.level-button.selected{border-color:var(--ice);color:var(--ice-bright);transform:translateY(-2px)}.level-button:disabled{opacity:.32;cursor:not-allowed}.level-button:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}.modal-actions{gap:10px;display:flex}.primary-button,.secondary-button{letter-spacing:.055em;text-transform:uppercase;cursor:pointer;clip-path:polygon(0 0,calc(100% - 13px) 0,100% 13px,100% 100%,13px 100%,0 calc(100% - 13px));border:0;min-height:48px;padding:0 22px;font-weight:900}.primary-button{color:var(--navy);background:var(--ice)}.secondary-button{color:var(--ice-bright);background:0 0;border:1px solid #d9fbff38}.primary-button:hover,.secondary-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.primary-button:active,.secondary-button:active{transform:translateY(1px)}.primary-button:focus-visible,.secondary-button:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}#controls-copy{color:#d9fbff6b;letter-spacing:.035em;margin:17px 0 0;font-size:.66rem}@media (pointer:coarse),(width<=820px){#shift-cluster{top:max(10px, env(safe-area-inset-top));left:max(10px, env(safe-area-inset-left));min-width:142px;padding:8px 26px 8px 11px}#shift-cluster strong{font-size:.78rem}#coverage-cluster{top:max(8px, env(safe-area-inset-top))}#coverage-dial{width:62px;height:62px}#coverage-dial:before{width:49px;height:49px}#coverage-dial strong{font-size:.9rem}.target-copy{display:none}#timer-cluster{top:max(10px, env(safe-area-inset-top));right:max(102px, calc(env(safe-area-inset-right) + 92px))}#timer-cluster strong{font-size:.98rem}#action-cluster{top:max(9px, env(safe-area-inset-top));right:max(9px, env(safe-area-inset-right))}.icon-button{width:38px;height:38px}#penalty-cluster{display:none}#resource-cluster{top:max(88px, calc(env(safe-area-inset-top) + 78px));bottom:auto;left:max(10px, env(safe-area-inset-left));width:min(168px,43vw);padding:9px 13px 9px 10px;transform:none}.resource-row{grid-template-columns:10px 32px 1fr 21px;gap:5px}.resource-row+.resource-row{margin-top:7px}.resource-label{letter-spacing:.08em;font-size:.48rem}.resource-row b{font-size:.61rem}#status-banner{top:max(92px, calc(env(safe-area-inset-top) + 82px));right:max(10px, env(safe-area-inset-right));min-width:158px;max-width:43vw;padding:8px 11px 7px;bottom:auto;left:auto;transform:none}#status-banner b{font-size:.62rem}#status-banner small{white-space:nowrap;text-overflow:ellipsis;max-width:19ch;font-size:.5rem;overflow:hidden}#touch-controls{right:max(12px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));left:max(12px, env(safe-area-inset-left));z-index:15;pointer-events:none;justify-content:space-between;align-items:flex-end;display:flex;position:absolute}#touch-stick{aspect-ratio:1;pointer-events:auto;touch-action:none;background:#051a2a8a;border:1px solid #d9fbff3d;border-radius:50%;width:clamp(104px,27vw,132px);position:relative;box-shadow:inset 0 0 28px #82e7ee0d}#touch-stick:before{content:"";background:#d9fbff2e;height:1px;position:absolute;top:50%;left:13px;right:13px}#touch-stick>span{color:#d9fbff6b;letter-spacing:.12em;text-align:center;text-transform:uppercase;width:100%;font-size:.54rem;font-weight:800;position:absolute;top:14px}#touch-knob{aspect-ratio:1;border:2px solid var(--ice);background:#0b4b5cd9;border-radius:50%;width:40%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 20px #82e7ee4d}#touch-knob i{background:var(--ice-bright);height:2px;position:absolute;top:50%;left:17%;right:17%}#touch-actions{pointer-events:auto;grid-template-rows:52px 52px;grid-template-columns:repeat(3,52px);gap:6px;display:grid}#touch-actions button{color:var(--ice-bright);touch-action:none;-webkit-user-select:none;user-select:none;background:#051a2ab8;border:1px solid #d9fbff38}.pedal{letter-spacing:.04em;text-transform:uppercase;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;font-size:.52rem;font-weight:800;display:flex}.pedal span{font-size:.86rem}.pedal.drive{grid-column:2;color:var(--ice)!important}.pedal.reverse{grid-area:2/1}.pedal.brake{grid-area:2/3;color:var(--coral)!important}#resurface-button{text-transform:uppercase;border-radius:50%;grid-area:2/2;place-items:center;font-size:.46rem;font-weight:900;display:grid}#resurface-button i{background:#d9fbff52;border-radius:4px;width:18px;height:5px}#resurface-button[aria-pressed=true]{border-color:var(--ice);color:var(--navy);background:var(--ice);box-shadow:0 0 22px #82e7ee66}#resurface-button[aria-pressed=true] i{background:var(--navy)}}@media (width<=560px){#shift-cluster{min-width:118px}#shift-cluster .eyebrow{font-size:.54rem}#shift-cluster strong{white-space:nowrap;text-overflow:ellipsis;max-width:12ch;overflow:hidden}#timer-cluster{display:none}#coverage-cluster{left:auto;right:95px;transform:none}.modal-panel{padding:20px 20px 18px}#modal-title{font-size:clamp(2.1rem,14vw,3.4rem)}.modal-stats{grid-template-columns:repeat(2,1fr)}#level-strip{gap:4px}.level-button{min-height:50px;padding:6px 2px}.level-button b{font-size:.72rem}.modal-actions{flex-direction:column}.primary-button,.secondary-button{width:100%}#controls-copy{display:none}}@media (height<=560px) and (pointer:coarse){#resource-cluster{width:154px;top:60px;left:8px}#status-banner{top:62px;right:8px}#touch-stick{width:92px}#touch-actions{transform-origin:100% 100%;transform:scale(.88)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}
