*{box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{margin:0;text-size-adjust:100%;-webkit-text-size-adjust:100%;background:#0b151e;color:#dbedea;font:14px system-ui;overflow:hidden}button,select{font:inherit;color:#e3f9f3;background:#142d36;border:1px solid #53737a;border-radius:6px;min-height:44px;padding:8px 12px;touch-action:none}button:active{background:#386b71}canvas{position:absolute;inset:0;width:100%;height:100%;display:block;outline:none;touch-action:none}header{position:absolute;top:max(14px,env(safe-area-inset-top));left:max(18px,env(safe-area-inset-left));right:18px;display:flex;align-items:center;gap:24px;pointer-events:none}header button{margin-left:auto;pointer-events:auto}strong{letter-spacing:4px;font-size:20px}small{display:block;font:10px system-ui;letter-spacing:2px;color:#83aaa9}aside{position:absolute;top:82px;left:18px;width:260px;display:grid;gap:7px;pointer-events:none}meter,progress{width:100%;height:10px;accent-color:#ffbf69}#prompt{min-height:36px;color:#a8ddd4}#settings{position:absolute;right:18px;top:82px;display:none;gap:6px;align-items:center;flex-wrap:wrap;max-width:min(390px,calc(100% - 36px));max-height:calc(100% - 96px);overflow:auto;touch-action:pan-y;background:#0c1c24db;padding:8px;border-radius:8px}#settings.open{display:flex}#settings label{display:flex;gap:8px;align-items:center}input{width:80px}#debug{width:100%;font:11px monospace;color:#99bbb8}#message{position:absolute;bottom:80px;left:50%;transform:translate(-50%);text-align:center;max-width:65%;padding:12px;background:#0a202ae0;border-left:2px solid #72d4bb;pointer-events:none}footer{position:absolute;bottom:16px;width:100%;text-align:center;font-size:12px;color:#b5c9cc;pointer-events:none}#look{position:absolute;right:0;top:200px;width:55%;bottom:150px;touch-action:none;display:none}#stick{position:absolute;left:max(26px,env(safe-area-inset-left));bottom:35px;width:116px;height:116px;border:2px solid #9bc5c77a;background:#15333b66;border-radius:50%;touch-action:none;display:none}#stick div{width:46px;height:46px;border-radius:50%;background:#8acdc5aa;position:absolute;left:33px;top:33px;pointer-events:none}#actions{position:absolute;right:24px;bottom:34px;display:flex;gap:12px}#actions button{min-height:54px}#paused{position:absolute;inset:0;background:#07131de8;z-index:5;text-align:center;padding-top:25cqh}#paused[hidden]{display:none}#rotate{display:none;position:absolute;inset:0;background:#0b1c26;z-index:10;place-items:center;font-size:24px;text-align:center}@media(pointer:coarse){#stick,#look{display:block}footer{display:none}#settings{top:65px;max-width:330px}#message{bottom:15px;font-size:12px}aside{top:70px;width:220px}}@media(max-height:500px){#settings{font-size:11px;max-width:310px}#settings button,#settings select{min-height:36px;padding:5px}header{top:6px}header strong{font-size:16px}aside{top:62px}#message{bottom:5px}}@media(orientation:portrait)and (pointer:coarse){#rotate{display:grid}}#app{position:fixed;left:0;top:0;width:100%;height:100dvh;overflow:hidden;container:game / size;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}header,aside,#actions{z-index:2}header nav{margin-left:auto;display:flex;gap:6px;max-width:100%;flex-wrap:wrap;pointer-events:auto}header nav button{margin-left:0}#settings{z-index:4}#settings-toggle,#settings-close{display:block}@media(pointer:coarse){body{font-size:12px}header{left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));gap:10px;top:max(5px,env(safe-area-inset-top))}header strong{font-size:14px;letter-spacing:2px}header small{display:none}header button{padding:5px 9px;min-height:44px}#settings{top:54px;right:max(10px,env(safe-area-inset-right));max-height:calc(100% - 64px);overflow:auto;max-width:min(320px,calc(100% - 20px))}#settings button,#settings select{min-height:44px}aside{top:54px;left:max(10px,env(safe-area-inset-left));width:200px;gap:3px;font-size:11px}#prompt{min-height:0}#prompt:empty,#hack[value="0"]{display:none}#stick{width:96px;height:96px;bottom:max(18px,env(safe-area-inset-bottom));left:max(18px,env(safe-area-inset-left))}#stick div{left:23px;top:23px}#actions{bottom:max(18px,env(safe-area-inset-bottom));right:max(14px,env(safe-area-inset-right));gap:8px}#actions button{min-height:44px;padding:6px 12px}#message{max-width:max(140px,calc(100% - 480px));bottom:max(10px,env(safe-area-inset-bottom));padding:6px 8px;font-size:11px}#look{top:50px;bottom:75px}}#graphics-error{position:absolute;z-index:20;left:10%;right:10%;top:15%;padding:20px;background:#10242df5;border:1px solid #eab75f;max-height:75%;overflow:auto;overflow-wrap:anywhere}#graphics-error[hidden]{display:none}.world-label{position:absolute;transform:translate(-50%,-100%);font:10px system-ui;letter-spacing:1px;padding:3px 5px;background:#0b202b66;text-shadow:0 1px 2px #000,0 0 3px #000;border-bottom:1px solid #9cdbcd;pointer-events:none;max-width:150px;text-align:center}.world-label[hidden]{display:none}#graphics-detail{white-space:pre-wrap;user-select:text;-webkit-user-select:text}#beacon{position:absolute;right:0;bottom:62px;min-width:80px}#terminal-mode{pointer-events:auto;width:100%;min-height:44px}#terminal-mode[hidden]{display:none}#security-status{font-size:10px;color:#a8c7c4}.world-label[data-agent]{background:#0b202b40;border-bottom-color:#9cdbcd66;font-size:9px}#zoom-in,#zoom-out{min-width:44px;padding:5px 10px;font-size:20px}#camera-status{font-size:10px;color:#b4d6d1}header #objective{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}header strong,header nav{flex-shrink:0}@media(pointer:coarse){header nav{gap:4px}}@container game (max-width: 760px){header strong,header #objective{display:none}header{gap:0}header nav{width:100%;justify-content:flex-end}#message{bottom:130px;max-width:calc(100% - 32px)}}@container game (max-width: 460px){header nav{gap:4px}header button{padding:5px 7px;font-size:11px}aside{top:105px}#settings{top:105px;max-height:calc(100% - 115px)}#look{top:104px}#actions button{padding-inline:8px}}#mine{position:absolute;right:90px;bottom:62px;min-width:80px}#camera-link{display:grid;gap:4px;pointer-events:auto}#camera-link[hidden]{display:none}#camera-link button,#camera-link select{min-height:44px;width:100%}#optics-frame{position:absolute;inset:0;pointer-events:none;border:14px solid #051015aa}#optics-frame[hidden]{display:none}#optics-label{position:absolute;bottom:100px;left:50%;transform:translate(-50%);background:#08202bd9;padding:5px 10px;font:11px monospace;text-align:center}#optics-frame i{position:absolute;left:50%;top:50%;width:20px;height:20px;border:1px solid #c2efe7;border-radius:50%;transform:translate(-50%,-50%)}#throw-ui{position:absolute;bottom:110px;left:50%;transform:translate(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:5px;max-width:40%;background:#0b202bdf;padding:6px;font-size:11px;text-align:center}#throw-ui[hidden]{display:none}#cancel-throw{min-height:44px}button:disabled{opacity:.45}@container game (max-height: 260px){header button,#actions button,#settings button,#settings select{min-height:32px;padding:4px 6px;font-size:10px}aside{top:48px;width:180px;font-size:10px;gap:2px}#prompt{max-height:24px;overflow:hidden}#security-status,#message,.world-label{display:none}#settings{top:48px;max-height:calc(100% - 56px)}#actions{bottom:max(12px,env(safe-area-inset-bottom));gap:6px}#mine,#beacon{bottom:44px;min-width:64px}#mine{right:72px}#stick{width:72px;height:72px;bottom:max(12px,env(safe-area-inset-bottom))}#stick div{width:32px;height:32px;left:18px;top:18px}#look{top:42px;bottom:60px}#throw-ui{bottom:90px}}@container game (max-width: 460px) and (max-height: 260px){aside{top:82px}#settings{top:82px;max-height:calc(100% - 90px)}#look{top:78px}}#throw-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:center}#throw-help{display:block;opacity:.8;font-size:11px}@container game (max-height: 260px){#throw-ui{bottom:8px;transform:translate(-50%);width:max-content;max-width:calc(100% - 32px);max-height:calc(100% - 12px);overflow:auto;pointer-events:none}#cancel-throw{min-height:32px;padding:4px 8px;pointer-events:auto}}@media(pointer:coarse){header{padding-right:94px}header nav{position:absolute;top:0;right:0;width:84px;max-width:none;max-height:calc(100cqh - max(5px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)));flex-direction:column;flex-wrap:nowrap;justify-content:flex-start;gap:4px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;touch-action:pan-y}header nav button{flex-shrink:0;width:100%;touch-action:pan-y}#actions{right:calc(max(10px,env(safe-area-inset-right)) + 94px);display:grid;grid-template-columns:repeat(3,64px);gap:8px}#actions button{padding-inline:4px}#mine,#beacon{min-width:64px;width:64px;bottom:52px}#mine{right:72px}#look{right:calc(max(10px,env(safe-area-inset-right)) + 94px)}#settings{top:max(8px,env(safe-area-inset-top));right:calc(max(10px,env(safe-area-inset-right)) + 94px);max-width:min(320px,calc(100% - 124px));max-height:calc(100% - 16px)}#throw-ui{left:calc(max(18px,env(safe-area-inset-left)) + 108px);right:calc(max(10px,env(safe-area-inset-right)) + 312px);bottom:max(12px,env(safe-area-inset-bottom));transform:none;width:auto;max-width:none;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 8px;pointer-events:none}#throw-ui[hidden]{display:none}#throw-hint,#throw-help{grid-column:2}#throw-actions{grid-column:1;grid-row:1 / span 2}#cancel-throw{pointer-events:auto;padding-inline:8px}.throw-cancel-detail{display:none}#message{bottom:max(12px,env(safe-area-inset-bottom))}#app:has(#throw-ui:not([hidden])) #message{visibility:hidden}@container game (max-height: 340px) or (max-width: 760px){header nav button{min-height:32px;padding:4px;font-size:11px}#throw-help{display:none}#actions{grid-template-columns:repeat(3,56px);gap:6px}#actions button{font-size:11px}#mine,#beacon{width:56px;min-width:56px}#mine{right:62px}#stick{width:72px;height:72px}#stick div{width:32px;height:32px;left:18px;top:18px}#throw-ui{left:calc(max(18px,env(safe-area-inset-left)) + 84px);right:calc(max(10px,env(safe-area-inset-right)) + 284px)}}@container game (max-height: 260px){#throw-ui{left:max(10px,env(safe-area-inset-left));right:calc(max(10px,env(safe-area-inset-right)) + 94px);bottom:max(8px,env(safe-area-inset-bottom));max-height:54px;overflow:auto}#stick,#actions{bottom:max(68px,env(safe-area-inset-bottom))}#mine,#beacon{bottom:40px}}@container game (max-width: 460px){#throw-ui{left:max(10px,env(safe-area-inset-left));right:calc(max(10px,env(safe-area-inset-right)) + 94px);bottom:max(8px,env(safe-area-inset-bottom));max-height:54px;overflow:auto}#stick,#actions{bottom:max(68px,env(safe-area-inset-bottom))}#actions{grid-template-columns:repeat(2,56px);gap:6px}#mine,#beacon{position:static;width:56px;min-width:56px}aside{width:130px}}@container game (max-width: 460px) and (max-height: 260px){aside{top:8px;gap:1px}#prompt,#camera-status,#security-status{display:none}}}#mine-controls{position:absolute;left:max(18px,env(safe-area-inset-left));bottom:140px;width:236px;max-width:calc(100% - 128px);max-height:calc(100% - 156px);z-index:3;display:flex;flex-direction:column-reverse;gap:5px}#mine-controls[hidden],#mine-panel[hidden]{display:none}#mine-tabs,#mine-modes{display:flex;gap:5px}#mine-tabs{flex-shrink:0}#mine-tabs button{padding-inline:8px}#mine-tabs button[aria-expanded=true],#mine-modes button[aria-pressed=true]{border-color:#ffe29a;background:#355158}#mine-panel{grid-template-columns:minmax(0,1fr) 80px;min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:6px;border-radius:6px;background:#0b202bef;display:grid;gap:5px;font-size:11px}#mine-panel button{touch-action:pan-y}#mine-status,#mine-note{grid-column:1 / -1}#mine-status{font-weight:600}#mine-detonate{grid-column:2;padding:4px;font-size:11px}#mine-modes{grid-column:1}#mine-modes button{flex:1;min-width:0;padding-inline:5px;font-size:12px}#mine-note{font-size:10px;letter-spacing:normal}.world-label.mine-highlight{color:#ffe29a;border-color:#ffe29a}@media(pointer:coarse){#mine-controls{left:max(10px,env(safe-area-inset-left));bottom:136px;width:220px;max-height:calc(100% - 148px)}@container game (max-height: 340px) or (max-width: 760px){#mine-controls{bottom:104px;max-height:calc(100% - 116px)}#mine-controls button{min-height:32px;padding:4px 6px;font-size:11px}}@container game (max-height: 260px){#mine-controls{bottom:max(8px,env(safe-area-inset-bottom));width:144px;max-height:calc(100% - 16px)}#mine-panel{grid-template-columns:1fr;font-size:10px}#mine-detonate{grid-column:1}#mine-note{display:none}}}#sector-summary{width:100%;font-size:11px;color:#a8ddd4}#mission-target{font-size:11px;color:#a8ddd4}#mission-target[hidden],#settings label[hidden]{display:none}#training-tools{position:absolute;bottom:52px;left:12px;display:flex;gap:6px;z-index:12}#lesson-card{position:absolute;z-index:40;left:50%;top:50%;transform:translate(-50%,-50%);width:min(620px,88%);max-height:80%;overflow:auto;padding:18px;border:1px solid #69d8c7;border-radius:10px;background:#10262bf5;color:#edfafa;box-shadow:0 16px 60px #000a;font-size:14px;line-height:1.5}#lesson-card[hidden]{display:none}#lesson-card button{margin:5px;min-height:44px}#lesson-card summary{cursor:pointer;padding:10px 0}#lesson-card h2{margin:0}@media(max-height:500px){#lesson-card{max-height:86%;padding:12px;font-size:12px}#training-tools{bottom:12px}}#app:has(#throw-ui:not([hidden])) #training-tools{display:none}#throw-actions button{pointer-events:auto;min-height:36px}#landing-status{font-size:11px;color:#f3d9ff}#landing-edge{position:absolute;z-index:2;transform:translate(-50%,-50%);padding:5px 8px;color:#f3d9ff;background:#10212be8;border:1px solid #e3a9ff99;border-radius:4px;font-size:11px;pointer-events:none}#landing-edge span{display:inline-block}#landing-edge span:before{content:"➜"}@media(pointer:coarse){#throw-ui{grid-template-columns:minmax(0,1fr)}#throw-hint,#throw-help,#landing-status{grid-column:1}#throw-actions{grid-row:auto;grid-column:1}#throw-actions button{padding:4px 7px;font-size:11px}}#throw-compact-hint,#inspect-short-label{display:none}@media(pointer:coarse){@container game (max-width: 760px) or (max-height: 340px){#throw-ui{padding:4px;gap:2px;font-size:10px}#throw-hint,#inspect-full-label{display:none}#throw-compact-hint,#inspect-short-label{display:block}#throw-actions button{min-height:32px;padding:3px 6px;font-size:10px}#landing-status{font-size:10px}}@container game (max-height: 260px){#throw-ui{grid-template-columns:auto minmax(0,1fr)}#throw-actions{grid-column:1;grid-row:1 / span 2;flex-wrap:nowrap}#throw-compact-hint{grid-column:2;grid-row:1}#landing-status{grid-column:2;grid-row:2}}}.world-label[data-agent]{width:max-content}.world-label-connector{position:absolute;height:1px;background:#b8e6db80;box-shadow:0 1px 1px #0b202b80;transform-origin:left center;pointer-events:none}.world-label-connector[hidden]{display:none}
