:root{color-scheme:dark;font-family:Inter,Lato,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#fff7e4;background:#05080d;--panel: rgba(8, 14, 22, .78);--panel-strong: rgba(10, 18, 28, .92);--panel-solid: #101923;--line: rgba(114, 146, 166, .34);--line-hot: rgba(255, 191, 61, .72);--text: #fff7e4;--muted: #c8c2e6;--dim: #8da0ad;--amber: #ffbf3d;--teal: #18c3bf;--blue: #2566d6;--danger: #ff6565;--shadow: 0 14px 36px rgba(0, 0, 0, .42)}*{box-sizing:border-box}html,body,#root{width:100%;height:100%}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden;background:#05080d}button,input,select{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;max-width:100%;border:1px solid var(--line);border-radius:6px;padding:0 10px;color:var(--text);background:#131f2be6;cursor:pointer;white-space:normal;overflow-wrap:anywhere}button:hover,button.virtual-hover{border-color:var(--teal);background:#192d3bf2}.virtual-hover:not(button){outline:1px solid var(--teal);outline-offset:2px}button.active,button.primary{border-color:var(--line-hot);background:#ffbf3d2e;color:#fff9e8}button:disabled{cursor:not-allowed;opacity:.45}input,select{width:100%;min-height:36px;border:1px solid var(--line);border-radius:6px;padding:0 10px;color:var(--text);background:#050a10e6}label{display:grid;gap:6px;font-size:13px;color:var(--muted)}h2{margin:14px 0 8px;font-size:14px;letter-spacing:0;color:var(--text)}pre{max-height:min(52vh,560px);overflow:auto;padding:10px;border:1px solid rgba(255,191,61,.18);border-radius:6px;background:#02060ae6;color:#d7e7ef;font-size:12px}.game-client{position:relative;width:100vw;height:100vh;min-width:320px;min-height:560px;overflow:hidden;background:#05080d}.world-stage{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.scene-loading-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:end center;padding:0 24px 74px;background:radial-gradient(circle at 50% 45%,rgba(24,195,191,.18),transparent 34%),linear-gradient(180deg,#070c12f2,#03070cfa)}.scene-loading-fallback .loading-status{width:min(360px,calc(100vw - 48px))}.scene-canvas{width:100%;height:100%;display:block;outline:none}.screen-vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset 0 0 130px #000000b8,inset 0 -140px 130px #03080d7a}.build-version-badge{position:fixed;top:10px;right:12px;z-index:50;max-width:min(360px,calc(100vw - 24px));padding:5px 8px;border:1px solid rgba(114,146,166,.38);border-radius:6px;background:#050a10b8;color:#fff7e4d6;font-size:11px;font-weight:700;line-height:1.2;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none}.loading-screen{position:relative;width:100vw;height:100vh;min-width:320px;min-height:560px;overflow:hidden;color:var(--text);background:#05080d}.loading-art{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/assets/loading/aphelion-hub-concourse.png) center / cover no-repeat;filter:saturate(1.08) contrast(1.04);transform:scale(1.02)}.loading-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#03070cd1,#03070c75 42%,#03070c2e),linear-gradient(0deg,#03070cbd,#03070c14 58%)}.loading-copy{position:absolute;left:48px;bottom:52px;width:min(560px,calc(100vw - 72px));display:grid;gap:16px;text-shadow:0 2px 18px rgba(0,0,0,.78)}.loading-kicker{display:inline-flex;align-items:center;gap:8px;width:fit-content;color:#c8fff4;font-size:13px;font-weight:800}.loading-copy h1{margin:0;color:#fff7e4;font-size:58px;line-height:.96;letter-spacing:0}.loading-status{position:relative;width:min(420px,100%);min-height:42px;overflow:hidden;border:1px solid rgba(24,195,191,.44);border-radius:8px;padding:10px 12px;color:#dffaf5;background:#050c12b8;box-shadow:0 10px 28px #00000052}.loading-status span{position:relative;z-index:1;font-weight:700}.loading-status i{position:absolute;left:0;bottom:0;width:42%;height:3px;background:linear-gradient(90deg,transparent,rgba(255,191,61,.95),transparent);animation:loading-sweep 1.4s ease-in-out infinite}.loading-status.compact{width:100%;min-height:10px;padding:0}.loading-status.error{border-color:#ff6565cc;color:#ffd8d8;background:#591418b8}.loading-copy p{max-width:520px;margin:0;color:#ffd8d8;font-size:14px;line-height:1.5}.zone-loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:220;overflow:hidden;color:var(--text);background:#05080d}.zone-loading-copy h1{max-width:min(680px,calc(100vw - 72px));overflow-wrap:anywhere}.launcher-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:grid;align-items:center;justify-content:center;padding:24px;background:#02050947}.auth-shell,.select-shell{width:min(980px,calc(100vw - 36px));min-height:0;display:grid;align-items:center;justify-content:center}.auth-panel,.panel,.hud-panel{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.auth-panel{width:min(430px,calc(100vw - 36px));display:grid;gap:14px;padding:18px;border-left:3px solid var(--amber)}.auth-link{justify-self:center;color:var(--teal);font-size:13px;text-decoration:none}.auth-link:hover{color:#8ff3ef;text-decoration:underline}.auth-status,.approval-qr,.approval-code{border:1px solid rgba(24,195,191,.42);border-radius:6px;padding:8px;color:#d8f7f3;background:#072b2e9e;font-size:13px}.approval-qr{display:grid;justify-items:center;gap:8px;padding:10px;text-align:center}.approval-qr img{width:172px;height:172px;border-radius:6px;background:#f3fffb}.approval-qr span,.approval-code em{color:var(--muted);font-size:12px;font-style:normal;line-height:1.35}.approval-code{display:grid;gap:4px}.approval-code span{color:var(--muted);font-size:12px}.approval-code strong{color:var(--amber);font-size:22px;letter-spacing:.08em}.editor-login-overlay{background:#02050970}.editor-login-stack{width:min(470px,calc(100vw - 36px));display:grid;gap:12px}.editor-login-stack .auth-shell,.editor-access-note{width:100%}.select-shell{align-items:stretch;justify-content:stretch;gap:12px}.grid{display:grid;gap:14px}.grid.two{grid-template-columns:minmax(260px,370px) minmax(340px,1fr)}.panel{padding:16px}.character-preview{display:grid;gap:8px;margin-top:4px;padding:10px;border:1px solid var(--line);border-left-width:3px;border-radius:8px;background:#030a108f}.character-preview p{margin:0;color:#e9f4f4;font-size:12px;line-height:1.42}.character-preview-title{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.character-preview-title span{color:var(--muted);font-size:12px}.character-preview small{color:var(--muted)}.preview-tags{display:flex;flex-wrap:wrap;gap:6px}.preview-tags span{padding:3px 7px;border:1px solid rgba(114,146,166,.24);border-radius:999px;color:var(--text);background:#131f2bd1;font-size:11px}.panel-title{display:flex;align-items:center;gap:8px;font-weight:800}.segmented,.toolbar,nav{display:flex;flex-wrap:wrap;gap:8px}.toolbar.compact{gap:6px}.hud-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.hud-layer>*{pointer-events:auto}.pilot-status{position:absolute;top:14px;left:14px;width:min(560px,calc(100vw - 280px));min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;border-left:3px solid var(--amber)}.status-brand{display:flex;align-items:center;gap:10px;min-width:170px}.status-brand>div,.row>div:first-child,.drawer-row>div,.target-row>div{display:grid;gap:3px}.status-brand span,.row span,.drawer-row span,.target-row span,.object-row small,.objective-tracker>span,.ship-frame span,.stat-grid span{color:var(--muted);font-size:12px}.status-readouts{display:grid;grid-template-columns:repeat(3,minmax(82px,1fr));gap:8px;min-width:0}.status-readouts>div,.stat-pair{display:grid;gap:3px;min-width:0;padding:7px 8px;border:1px solid rgba(114,146,166,.24);border-radius:6px;background:#040a0f70}.status-readouts strong,.stat-pair strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hud-command-strip{position:absolute;top:14px;right:14px;display:flex;align-items:center;gap:6px;padding:8px}.hud-command-strip button{min-width:44px}.reticle{position:absolute;left:50%;top:50%;width:34px;height:34px;transform:translate(-50%,-50%);pointer-events:none}.reticle:before,.reticle:after,.reticle span:before,.reticle span:after{content:"";position:absolute;background:#18c3bfd9;box-shadow:0 0 8px #18c3bf80}.reticle:before,.reticle:after{left:50%;width:1px;height:9px}.reticle:before{top:0}.reticle:after{bottom:0}.reticle span:before,.reticle span:after{top:50%;width:9px;height:1px}.reticle span:before{left:0}.reticle span:after{right:0}.ship-reticle:before,.ship-reticle:after,.ship-reticle span:before,.ship-reticle span:after{background:#ffbf3de0;box-shadow:0 0 10px #ffbf3d8c}.mobile-controls{display:none}.mobile-pad,.mobile-action{touch-action:none;-webkit-user-select:none;user-select:none}@media(pointer:coarse),(max-width:760px){.mobile-controls{position:absolute;inset:auto 12px 92px 12px;z-index:10;display:grid;grid-template-columns:104px minmax(70px,auto) 104px;align-items:end;justify-content:space-between;gap:12px;pointer-events:none}.mobile-pad{position:relative;width:104px;height:104px;border:1px solid rgba(114,146,166,.5);border-radius:50%;background:radial-gradient(circle at 50% 50%,#18c3bf24,#070e16bd);box-shadow:inset 0 0 18px #000000b8,0 8px 22px #00000061;pointer-events:auto}.mobile-pad i{position:absolute;left:50%;top:50%;width:38px;height:38px;border:1px solid rgba(255,191,61,.7);border-radius:50%;background:#ffbf3d47;box-shadow:0 0 14px #ffbf3d47}.mobile-pad-label{position:absolute;left:50%;top:8px;transform:translate(-50%);color:#fff7e4c2;font-size:10px;font-weight:800;letter-spacing:0;text-transform:uppercase;pointer-events:none}.mobile-action-column{display:grid;gap:7px;min-width:70px;pointer-events:auto}.mobile-button-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.mobile-action{min-width:0;min-height:38px;padding:0 8px;border-color:#ffbf3d75;background:#070e16d1;color:#fff7e4;font-size:11px;font-weight:900;text-transform:uppercase}}@media(max-width:520px){.mobile-controls{inset:auto 8px 84px 8px;grid-template-columns:92px minmax(58px,auto) 92px;gap:8px}.mobile-pad{width:92px;height:92px}.mobile-pad i{width:34px;height:34px}.mobile-action{min-height:34px;padding:0 6px;font-size:10px}}.flight-status{position:absolute;right:18px;top:292px;width:150px;display:grid;gap:4px;padding:10px;border-left:3px solid var(--teal);font-size:12px}.flight-status strong{color:var(--amber);font-size:13px}.flight-status span{color:var(--muted)}.flight-status.boosting{border-left-color:var(--amber);background:#2a1e08d1}.objective-tracker{position:absolute;left:14px;top:104px;width:min(340px,calc(100vw - 28px));display:grid;gap:8px;padding:12px}.objective-list{display:grid;gap:6px}.objective-line{display:grid;grid-template-columns:1fr auto;gap:8px;padding-top:6px;border-top:1px solid rgba(114,146,166,.18);color:#e9f4f4;font-size:12px}.objective-line.done{color:var(--teal)}.ship-frame{position:absolute;left:14px;bottom:82px;width:min(300px,calc(100vw - 28px));display:grid;gap:9px;padding:12px}.vital-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px}.meter{height:8px;overflow:hidden;border:1px solid rgba(255,191,61,.26);border-radius:999px;background:#ff656533}.meter i{display:block;height:100%;background:var(--teal)}.target-frame{position:absolute;right:14px;top:86px;width:min(330px,calc(100vw - 28px));display:grid;gap:8px;padding:12px}.target-list,.drawer-list,.object-list,.numeric-editor,.list{display:grid;gap:8px}.target-row,.drawer-row,.row,.object-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:46px;border:1px solid rgba(114,146,166,.24);border-radius:6px;padding:8px;background:#060c12b3}.drawer-row.compact{min-height:38px}.drawer-section-title{margin:10px 0 4px;color:#ffcf5d;font-size:12px;font-weight:800;letter-spacing:0}.row.tall{align-items:start}.row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.context-actions{position:absolute;left:50%;right:360px;bottom:68px;min-width:min(540px,calc(100vw - 380px));max-height:38vh;transform:translate(-50%);display:grid;gap:10px;overflow:auto;padding:10px}.context-primary{display:flex;justify-content:center;gap:8px}.contact-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.contact-node{display:grid;gap:6px;min-width:0;padding:8px;border:1px solid rgba(114,146,166,.22);border-radius:6px;background:#050a109e}.contact-node>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.contact-node>div,.contact-chip-row,.contact-action-row{display:flex;flex-wrap:wrap;gap:6px}.contact-node button{min-height:30px;padding:0 8px;font-size:12px}.contact-node .contact-action-button{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;min-width:150px;max-width:100%;min-height:38px;text-align:left}.contact-action-button.locked{border-color:#ff765e6b;background:#481e1ca3}.contact-action-copy{display:grid;min-width:0;gap:2px}.contact-action-copy strong,.contact-action-copy small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-action-copy strong{font-size:12px}.contact-action-copy small{color:#ded6b9c7;font-size:10px}.contact-chip-row button{background:#ffffff0a}.contact-chip-row span{min-width:0;padding:4px 7px;border:1px solid rgba(114,146,166,.2);border-radius:6px;color:#d8d0b5;font-size:11px}.contact-chip-row button.active{border-color:#ffbf56b8;background:#ffb43c29;color:#fff4d6}.contact-action-row{padding-top:2px}.drawer-panel{position:absolute;top:86px;right:14px;bottom:82px;width:min(440px,calc(100vw - 28px));min-height:0;overflow:auto;display:grid;align-content:start;gap:12px;padding:14px}.comms-log{position:absolute;left:326px;right:14px;bottom:14px;min-height:44px;display:flex;gap:8px;align-items:center;overflow:hidden;padding:8px}.comms-log span{white-space:nowrap;border:1px solid rgba(114,146,166,.22);border-radius:999px;padding:5px 9px;color:#d8e6ec;font-size:12px;background:#050a10bd}.object-row{width:100%;text-align:left}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat-grid>div{display:grid;gap:4px;padding:10px;border:1px solid rgba(114,146,166,.24);border-radius:6px;background:#040a0f94}.numeric-editor{margin-top:4px}.check{display:flex;align-items:center}.check input{width:auto}fieldset{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;border:1px solid rgba(114,146,166,.24);border-radius:6px;margin:0;padding:8px}legend{color:var(--muted);font-size:12px}.error{border:1px solid rgba(255,101,101,.8);border-radius:6px;padding:8px;color:#ffd8d8;background:#591418b3}.status{margin-top:4px;border-radius:6px;padding:8px}.status.ok{color:#c8f4d4;background:#113e25c2}.status.error{color:#ffd1d1;background:#591418c2}@media(max-width:1120px){.pilot-status{width:calc(100vw - 28px);right:14px}.hud-command-strip{top:96px;left:14px;right:auto}.objective-tracker,.target-frame,.drawer-panel{top:158px}.target-selector{top:252px}.context-actions{left:14px;right:14px;bottom:68px;min-width:0;transform:none}.comms-log{left:14px;right:14px;bottom:14px}}@media(max-width:760px){body{overflow:auto}.game-client{min-height:100vh;overflow:hidden}.loading-screen{min-height:100vh}.loading-art{background-position:58% center}.loading-copy{left:22px;right:22px;bottom:30px;width:auto}.loading-copy h1{font-size:40px;line-height:1}.launcher-overlay{align-items:start;overflow:auto;padding:14px}.grid.two,.contact-strip,.status-readouts{grid-template-columns:1fr}.pilot-status{align-items:stretch;flex-direction:column}.hud-command-strip button span{display:none}.objective-tracker{width:calc(100vw - 28px)}.target-frame,.target-selector,.ship-frame{display:none}.context-actions{bottom:14px;max-height:34vh;overflow:auto}.drawer-panel{left:14px;width:auto}.comms-log{display:none}}.scene-wrap{position:absolute;top:0;right:0;bottom:0;left:0}.nameplate-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.nameplate{position:absolute;min-width:92px;max-width:180px;translate:-50% -100%;display:grid;justify-items:center;gap:2px;color:#fff7e4;text-align:center;text-shadow:0 2px 3px #000,0 0 8px #000;filter:drop-shadow(0 2px 4px rgba(0,0,0,.75))}.nameplate.hidden{display:none}.nameplate strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f8f1cf;font-size:13px}.nameplate span{min-width:58px;border:1px solid rgba(0,0,0,.72);border-radius:999px;padding:1px 7px;color:#101014;background:linear-gradient(#37d66b,#168d38);font-size:10px;font-weight:800}.nameplate .np-hp{width:72px;height:5px;overflow:hidden;border:1px solid rgba(0,0,0,.72);border-radius:999px;background:#0a0c11}.nameplate .np-hp i{display:block;height:100%;background:linear-gradient(#37d66b,#168d38);transition:width .12s linear}.nameplate.hostile .np-hp i{background:linear-gradient(#ff6058,#922620)}.nameplate.self .np-hp i,.nameplate.player .np-hp i{background:linear-gradient(#44a5ff,#244bc2)}.nameplate.hostile strong{color:#ff7770}.nameplate.hostile span{background:linear-gradient(#ff6058,#922620);color:#fff7e4}.nameplate.contact strong{color:#ffcf5d}.nameplate.contact span{color:#fff7e4;background:#ffbf3d52;border-color:#ffbf3d9e}.nameplate.loot strong{color:#8df5ff}.nameplate.loot span{color:#061318;background:linear-gradient(#8df5ff,#37b8ca);border-color:#8df5ffbd}.unit-frame,.minimap,.actionbar,.xp-strip,.micro-menu,.chat-box,.interaction-prompt{border:2px solid rgba(81,63,27,.92);border-radius:8px;background:linear-gradient(165deg,#12151ce0,#05080edb);box-shadow:0 10px 24px #0000006b,inset 0 1px #fff4cc14;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pilot-status.unit-frame{top:14px;left:14px;right:auto;width:min(330px,calc(100vw - 28px));min-height:88px;display:flex;align-items:center;gap:10px;padding:8px 10px;border-left:2px solid rgba(81,63,27,.92)}.target-frame.unit-frame{top:18px;left:360px;right:auto;width:min(330px,calc(100vw - 720px));min-width:270px;display:flex;align-items:center;gap:10px;padding:8px 10px}.target-frame.unit-frame.hostile{border-color:#99342af0}.target-selector{position:absolute;top:112px;left:360px;width:min(330px,calc(100vw - 720px));min-width:270px;display:grid;gap:7px;padding:8px 10px;border-color:#513f1bb8}.target-selector-title{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:12px;font-weight:800}.target-selector-title span{display:inline-flex;align-items:center;gap:6px}.target-selector kbd{min-width:34px;border:1px solid rgba(255,191,61,.36);border-radius:4px;padding:2px 6px;color:#f8e8b6;background:#ffbf3d1a;font-size:11px;text-align:center}.target-chip-row{display:grid;gap:6px;max-height:174px;overflow:auto}.target-chip{min-height:38px;justify-content:space-between;padding:6px 8px;border-color:#7292a63d;background:#060c12b8}.target-chip.active{border-color:#ffbf3dbd;background:#ffbf3d29}.target-chip span{min-width:0;display:grid;gap:2px;text-align:left}.target-chip strong{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.target-chip small{color:var(--muted);font-size:10px;text-transform:uppercase}.target-chip em{flex:0 0 auto;color:#ffd0c8;font-size:11px;font-style:normal}.target-empty{color:var(--muted);font-size:12px}.unit-portrait{position:relative;width:62px;height:62px;flex:0 0 62px;display:grid;place-items:center;border:2px solid rgba(255,191,61,.78);border-radius:50%;color:#fbe8b0;background:radial-gradient(circle at 35% 25%,rgba(255,255,255,.22),transparent 32%),linear-gradient(145deg,#27333e,#080b11 70%);box-shadow:inset 0 0 18px #000000b3,0 0 12px #ffbf3d29}.unit-portrait span{position:absolute;right:-5px;bottom:-4px;min-width:23px;height:23px;display:grid;place-items:center;border:1px solid #000;border-radius:50%;color:#15100a;background:linear-gradient(#ffd567,#c48622);font-size:12px;font-weight:900}.target-portrait{border-color:#ff6565c7}.unit-main{min-width:0;flex:1;display:grid;gap:5px}.unit-name-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.unit-name-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffcf5d;font-size:15px}.unit-name-row span{color:#d8d0b5;font-size:11px;text-transform:uppercase}.unit-bar{position:relative;height:17px;overflow:hidden;border:1px solid rgba(0,0,0,.75);border-radius:4px;background:#090a0f}.unit-bar i{position:absolute;inset:0 auto 0 0;display:block;background:linear-gradient(#3bea73,#128c31)}.unit-bar.resource i{background:linear-gradient(#44a5ff,#244bc2)}.unit-bar span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff7e4;font-size:11px;font-weight:800;text-shadow:0 1px 2px #000}.target-frame .unit-main button{justify-self:end;min-height:27px;padding:0 8px;color:#fff4d0;background:linear-gradient(#4d1f1d,#271012);border-color:#ff6565ad}.unit-bar.resource.energy i{background:linear-gradient(var(--resource-color, #44a5ff),#11203f)}.unit-bar.swing-timer{height:14px;border-color:#ffbf3d70;background:#110f0deb}.unit-bar.swing-timer i{background:linear-gradient(90deg,#8f5d1a,#ffbf3d)}.unit-bar.swing-timer.ready{border-color:#ffda6ddb;box-shadow:inset 0 0 10px #ffbf3d2e}.unit-bar.swing-timer.ready i{background:linear-gradient(90deg,#d06638,#ffe083)}.unit-bar.swing-timer span{font-size:10px;letter-spacing:0;text-transform:uppercase}.buff-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:4px;margin-top:4px}.buff-chip{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:4px;min-width:0;height:20px;padding:0 5px;border-radius:4px;border:1px solid rgba(255,244,204,.35);background:#283c5aa6;color:#d8ecff;font-size:10px;line-height:1}.buff-chip strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700}.buff-chip small{color:#fff4ccc7;font-size:10px;font-weight:800}.buff-chip.stat_mod,.buff-chip.heal,.buff-chip.hot,.buff-chip.resource,.buff-chip.buff{background:#305a3cb3;border-color:#78f59680}.buff-chip.shield{background:#28466eb3;border-color:#6eb4ff8c}.buff-chip.control,.buff-chip.damage,.buff-chip.dot,.buff-chip.debuff{background:#602c2cb3;border-color:#ff826e8c}.buff-chip.neutral{background:#3a3a4ab8;border-color:#cdcde666}.buff-chip em{position:absolute;right:-3px;bottom:-3px;font-size:9px;font-weight:800;font-style:normal;color:#fff;text-shadow:0 1px 2px #000}.combat-text-layer{position:absolute;left:0;right:0;top:-4px;display:grid;place-items:center;pointer-events:none;z-index:5}.combat-text{position:absolute;top:0;font-size:18px;font-weight:900;text-shadow:0 2px 4px #000,0 0 8px rgba(0,0,0,.6);animation:combat-float 1.1s ease-out forwards;white-space:nowrap}.combat-text.damage{color:#ff8a5c}.combat-text.heal{color:#6cf59a}.combat-text.kill{color:#ffd24c;font-size:15px}.combat-notice-stack{position:absolute;left:50%;top:calc(50% + 42px);z-index:8;display:grid;gap:6px;justify-items:center;transform:translate(-50%);pointer-events:none}.combat-notice{min-width:150px;max-width:min(360px,calc(100vw - 32px));padding:6px 12px;border:1px solid rgba(114,146,166,.34);border-radius:6px;color:#f8fbff;background:#060d14db;box-shadow:0 8px 22px #00000057;font-size:12px;font-weight:900;text-align:center;text-transform:uppercase;animation:combat-notice-pop 1.6s ease-out forwards}.combat-notice.projectile{border-color:#58b7ff8f;color:#bfe6ff}.combat-notice.impact{border-color:#ffcf5da3;color:#ffe6a4}.combat-notice.miss,.combat-notice.error{border-color:#ff65659e;color:#ffb8b8}@keyframes combat-float{0%{opacity:0;transform:translateY(6px) scale(.8)}20%{opacity:1;transform:translateY(-2px) scale(1.1)}to{opacity:0;transform:translateY(-34px) scale(1)}}@keyframes combat-notice-pop{0%{opacity:0;transform:translateY(8px)}12%{opacity:1;transform:translateY(0)}78%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-12px)}}.minimap{position:absolute;top:12px;right:14px;width:190px;display:grid;justify-items:center;gap:4px;border:0;background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.minimap>strong{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffcf5d;font-size:14px;text-shadow:0 2px 3px #000}.minimap>span{color:#d9e7ed;font-size:11px;text-shadow:0 1px 3px #000}.minimap-disc{position:relative;width:166px;height:166px;overflow:hidden;border:4px solid rgba(81,63,27,.95);border-radius:50%;outline:1px solid #000;background:radial-gradient(circle at center,#0f3945eb,#05101ceb 58%,#02070cfa),repeating-linear-gradient(35deg,rgba(255,191,61,.06) 0 5px,transparent 5px 14px);box-shadow:0 0 18px #000000c7,inset 0 0 28px #000000bd}.minimap-ring{position:absolute;left:50%;top:50%;border:1px solid rgba(24,195,191,.2);border-radius:50%;transform:translate(-50%,-50%)}.minimap-ring.r1{width:44%;height:44%}.minimap-ring.r2{width:72%;height:72%}.minimap-player,.minimap-blip{position:absolute;width:8px;height:8px;border-radius:50%;transform:translate(-50%,-50%)}.minimap-player{left:50%;top:50%;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:13px solid #fff7e4;filter:drop-shadow(0 0 4px #18c3bf)}.minimap-blip.contact{background:#ffcf5d;box-shadow:0 0 6px #ffbf3de6}.minimap-blip.player{background:#18c3bf}.minimap-blip.hostile{background:#ff6565}.minimap-blip.friendly{background:#7ff58e}.objective-tracker.quest-tracker{top:222px;left:auto;right:22px;width:min(320px,calc(100vw - 44px));border:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;text-shadow:0 2px 3px #000}.objective-tracker.quest-tracker.ship-layout{right:190px;width:min(300px,calc(100vw - 220px))}.quest-tracker .panel-title,.quest-tracker strong{color:#ffcf5d}.quest-tracker .objective-line{border-top-color:#ffbf3d2e;color:#f5f0d7}.interaction-prompt.context-actions{left:50%;right:auto;bottom:116px;width:min(520px,calc(100vw - 480px));min-width:340px;max-height:138px;transform:translate(-50%);gap:8px;padding:8px}.interaction-prompt .contact-strip{grid-template-columns:1fr}.interaction-prompt .contact-node{background:#05080ca3}.interaction-prompt .contact-node>span{color:#d8d0b5;font-size:12px}@property --cd-pct{syntax: "<percentage>"; inherits: false; initial-value: 0%;}@keyframes cd-sweep{0%{--cd-pct: 0%}to{--cd-pct: 100%}}@keyframes loading-sweep{0%{transform:translate(-120%)}to{transform:translate(280%)}}.loot-roll-stack,.loot-container-stack{position:absolute;left:50%;width:min(560px,calc(100vw - 380px));min-width:360px;transform:translate(-50%);display:grid;gap:7px;pointer-events:auto}.loot-roll-stack{bottom:104px}.loot-container-stack{bottom:188px}.loot-roll-card,.loot-container-card{min-height:70px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px;border-left:3px solid var(--line-hot)}.loot-container-card{border-left-color:var(--line-cool);align-items:start}.loot-roll-main{min-width:0;display:grid;gap:2px}.loot-roll-main span,.loot-roll-main small{color:#9fb4bd;font-size:11px}.loot-roll-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.loot-roll-actions{display:grid;grid-template-columns:repeat(3,minmax(54px,1fr));gap:5px}.loot-roll-actions button{min-height:30px;padding:0 8px;font-size:12px}.loot-container-card .loot-roll-actions{grid-template-columns:minmax(76px,1fr);align-self:start}.loot-container-items{display:grid;gap:4px;margin-top:4px}.loot-container-item-row{display:grid;gap:4px}.loot-container-item-row.assignable{grid-template-columns:minmax(0,1fr) minmax(156px,.8fr);align-items:center}.loot-container-item{width:100%;min-height:26px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:3px 7px;border-color:#497a87b8;background:linear-gradient(180deg,#18242beb,#090c11f0);text-align:left}.loot-container-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.loot-container-item em{color:#d7e8ee;font-size:11px;font-style:normal}.loot-container-item:disabled{opacity:.62;cursor:not-allowed}.loot-assign-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px}.loot-assign-row select{min-width:0;height:28px;border:1px solid rgba(114,146,166,.32);border-radius:5px;padding:0 6px;color:#f8f1cf;background:#060c12f0;font-size:11px}.loot-assign-row button{min-height:28px;gap:4px;padding:0 7px;font-size:11px}.party-summary{display:grid;gap:8px;border:1px solid rgba(114,146,166,.24);border-radius:6px;padding:9px;background:#060c12b3}.party-summary-title,.party-member-list{display:flex;align-items:center;gap:8px}.party-summary-title{justify-content:space-between}.party-summary-title span{color:#9fb4bd;font-size:11px;text-transform:uppercase}.party-marker-list,.party-ready-check,.ready-actions{display:flex;align-items:center;gap:6px}.party-marker-list{flex-wrap:wrap}.party-marker-list button{min-height:28px;gap:5px;padding:0 8px;font-size:11px}.party-marker-list button span{max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-ready-check{justify-content:space-between;border:1px solid rgba(255,191,61,.26);border-radius:6px;padding:7px;background:#ffbf3d14}.party-ready-check>div:first-child{min-width:0;display:grid;gap:2px}.party-ready-check strong{color:#ffcf5d;font-size:12px}.party-ready-check span{color:#9fb4bd;font-size:11px}.ready-actions button{min-height:28px;padding:0 8px;font-size:11px}.ready-actions button.active{border-color:#4de681ad;background:#4de68129}.ready-actions button.warn.active{border-color:#ff6058ad;background:#ff605829}.party-member-list{align-items:stretch;flex-direction:column}.party-member-card{border:1px solid rgba(114,146,166,.28);border-radius:6px;padding:6px 8px;color:#d7e8ee;background:#0f1b23cc;font-size:12px;display:grid;gap:5px}.party-member-card.leader{border-color:#ffbf3d7a}.party-member-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.party-member-head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-member-head span{color:#ffcf5d;font-size:10px;text-transform:uppercase}.party-vitals{position:relative;height:12px;overflow:hidden;border-radius:999px;background:#04080cdb;border:1px solid rgba(114,146,166,.22)}.party-vitals i{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#19994a,#47e681)}.party-vitals.resource i{background:linear-gradient(90deg,#2454b8,#5aa8ff)}.party-vitals span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#f7fbff;font-size:10px;font-weight:800;text-shadow:0 1px 2px #000}.trade-card{display:grid;gap:8px;border:1px solid rgba(88,183,255,.28);border-radius:6px;padding:9px;background:#051018c2}.trade-offers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.trade-offer{min-width:0;display:grid;gap:4px;border:1px solid rgba(114,146,166,.24);border-radius:6px;padding:7px;background:#060c12b8}.trade-offer.accepted{border-color:#4de68185;background:#16442b61}.trade-offer strong,.trade-offer span,.trade-offer em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trade-offer strong{color:#bfe6ff;font-size:12px}.trade-offer span,.trade-offer em,.trade-actions span{color:#a9bdc7;font-size:11px;font-style:normal}.trade-offer div{display:grid;gap:2px}.trade-editor{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:6px}.trade-editor select,.trade-editor input{min-width:0;height:30px;border:1px solid rgba(114,146,166,.32);border-radius:5px;padding:0 7px;color:#f8f1cf;background:#060c12f0;font-size:11px}.trade-draft-lines{grid-column:1 / -1;display:grid;gap:5px}.trade-draft-line{display:grid;grid-template-columns:minmax(0,1fr) 64px auto;align-items:center;gap:6px;padding:5px;border:1px solid rgba(114,146,166,.18);border-radius:6px;background:#09121a94}.trade-draft-line span,.trade-empty{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a9bdc7;font-size:11px}.trade-actions{grid-column:1 / -1;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.trade-actions button{min-height:28px;padding:0 8px;font-size:11px}.actionbar-shell{position:absolute;left:50%;bottom:16px;width:min(650px,calc(100vw - 360px));min-width:430px;transform:translate(-50%);display:grid;gap:5px;pointer-events:auto}.xp-strip{height:10px;overflow:hidden;border-radius:999px}.xp-strip i{display:block;height:100%;background:linear-gradient(90deg,#792fe0,#c157ff);box-shadow:0 0 10px #c157ff80}.actionbar{display:grid;grid-template-columns:repeat(8,minmax(46px,1fr)) 40px;gap:5px;padding:7px}.action-slot{position:relative;aspect-ratio:1;min-height:0;height:auto;display:grid;place-items:center;gap:0;overflow:hidden;border:2px solid rgba(81,63,27,.95);border-radius:7px;padding:0;color:#fff7e4;background:radial-gradient(circle at 40% 25%,rgba(255,255,255,.18),transparent 32%),linear-gradient(145deg,#24303af2,#07090efa);box-shadow:inset 0 0 12px #000000c7;cursor:pointer;transition:border-color .1s,box-shadow .1s}.action-slot:not(:disabled):hover,.action-slot:not(:disabled):focus-visible{border-color:#ffcf5d;box-shadow:0 0 10px #ffbf3d5c,inset 0 0 12px #000000c7}.action-slot.empty{filter:grayscale(.55) brightness(.62);cursor:default}.action-slot.drag-over{border-color:#18c3bf;box-shadow:0 0 12px #18c3bf99,inset 0 0 12px #000000c7}.slot-blocked{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000061;pointer-events:none;border-radius:5px}.slot-unaffordable{position:absolute;top:0;right:0;bottom:0;left:0;background:#14285a85;pointer-events:none;border-radius:5px}.action-slot.unaffordable{border-color:#5a8ce68c}.action-slot.item-slot{border-color:#5cf5879e}.action-slot.unavailable{filter:grayscale(.65) brightness(.58)}.action-slot .keybind{position:absolute;top:2px;right:4px;color:#ede3c4;font-size:10px;font-weight:900;line-height:1;text-shadow:0 1px 3px #000;z-index:2}.slot-count{position:absolute;left:4px;top:3px;z-index:2;color:#fff;font-size:10px;font-weight:900;line-height:1;text-shadow:0 1px 3px #000}.action-slot small{position:absolute;left:2px;right:2px;bottom:2px;overflow:hidden;color:#f4e4ad;font-size:9px;line-height:1.05;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px #000;z-index:2}.cd-overlay{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:5px;pointer-events:none;z-index:3;animation-name:cd-sweep;animation-timing-function:linear;animation-fill-mode:forwards;background:conic-gradient(from -90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.72) calc(100% - var(--cd-pct)),transparent calc(100% - var(--cd-pct)))}.cd-text{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:15px;font-weight:700;color:#fff;text-shadow:0 1px 4px #000,0 0 8px rgba(0,0,0,.9);pointer-events:none;z-index:4}.spellbook-btn{aspect-ratio:1;height:auto;display:grid;place-items:center;border:2px solid rgba(81,63,27,.75);border-radius:7px;background:linear-gradient(145deg,#1c242ee6,#07090efa);color:#9fb4bd;cursor:pointer;padding:0;align-self:stretch}.spellbook-btn:hover,.spellbook-btn.active{border-color:#ffcf5d;color:#ffcf5d;box-shadow:0 0 8px #ffcf5d4d}.spellbook-panel{display:grid;grid-template-rows:auto 1fr auto;max-height:240px;border-radius:10px;overflow:hidden}.spellbook-header{display:flex;align-items:baseline;gap:12px;padding:8px 12px 6px;border-bottom:1px solid rgba(81,63,27,.6)}.spellbook-header strong{color:#ffcf5d;font-size:13px}.spellbook-header small{color:#7d909a;font-size:11px}.spellbook-grid{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px;overflow-y:auto}.spellbook-ability{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid rgba(81,63,27,.55);border-radius:8px;background:linear-gradient(135deg,#1c2632e6,#080c12e6);color:#d9e7ed;font-size:12px;cursor:grab;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:border-color .1s}.spellbook-ability:hover{border-color:#18c3bf}.spellbook-ability:active{cursor:grabbing}.ability-cat{font-style:normal;font-size:10px;padding:1px 5px;border-radius:99px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.cat-attack{background:#ff7a5c38;color:#ff7a5c}.cat-heal{background:#5cf5872e;color:#5cf587}.cat-buff{background:#c157ff33;color:#c157ff}.cat-defense{background:#5cb8ff33;color:#5cb8ff}.cat-utility{background:#ffcf5d2e;color:#ffcf5d}.vendor-panel{position:fixed;top:92px;right:16px;z-index:55;width:min(380px,calc(100vw - 32px));max-height:min(560px,calc(100vh - 170px));display:grid;grid-template-rows:auto 1fr auto;gap:10px;padding:14px;overflow:hidden}.economy-panel{position:fixed;top:88px;right:16px;z-index:60;pointer-events:auto;color:#d8eef1}.vendor-economy{width:min(790px,calc(100vw - 32px));display:grid;grid-template-columns:minmax(310px,.95fr) minmax(330px,1fr);gap:12px;align-items:start}.market-economy{width:min(900px,calc(100vw - 32px));max-height:min(640px,calc(100vh - 150px));padding:14px;overflow:hidden}.vendor-window,.economy-bags,.inventory-window{min-width:0}.vendor-window,.economy-bags{max-height:min(620px,calc(100vh - 145px));padding:14px;overflow:hidden}.inventory-window{display:grid;grid-template-rows:auto auto auto auto minmax(0,1fr) auto;gap:10px;min-height:0}.panel-title .icon-close{margin-left:auto;width:28px;min-width:28px;height:28px;min-height:28px;padding:0;display:grid;place-items:center}.economy-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.economy-stats div{min-width:0;padding:7px 8px;border:1px solid rgba(24,195,191,.2);background:#070e16a8}.economy-stats span{display:block;color:#7f98a6;font-size:10px;text-transform:uppercase}.economy-stats strong{display:block;overflow:hidden;color:#ffcf5d;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.economy-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.economy-tabs button,.item-category-row button,.item-actions button,.vendor-row>button,.market-form button{min-height:28px;padding:5px 8px;border-color:#5dc5cc40;border-radius:6px;background:linear-gradient(180deg,#132430eb,#080d15f2);color:#cadbe3;font-size:11px}.economy-tabs button.active,.item-category-row button.active{border-color:#ffcf5dd1;color:#ffcf5d;box-shadow:inset 0 0 0 1px #ffcf5d2e,0 0 14px #18c3bf1f}.item-filter{display:grid;grid-template-columns:1fr auto;gap:7px}.item-category-row{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:5px}.item-search{display:flex;align-items:center;gap:6px;min-width:0;height:32px;padding:0 8px;border:1px solid rgba(93,197,204,.25);border-radius:6px;background:#050910b8;color:#75d9dc}.item-search input,.item-filter select,.market-form input{min-width:0;border:0;outline:0;background:transparent;color:#d8eef1;font:inherit}.item-search input{width:100%}.item-filter select{height:32px;padding:0 8px;border:1px solid rgba(93,197,204,.25);border-radius:6px;background:#050910db}.item-grid,.vendor-goods{min-height:0;display:grid;gap:6px;overflow-y:auto;padding-right:2px}.vendor-goods{max-height:min(290px,calc(100vh - 350px))}.item-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:46px;padding:6px;border:1px solid rgba(93,197,204,.16);border-radius:7px;background:linear-gradient(90deg,#09111ce0,#070a11c2)}.item-row.selectable{width:100%;grid-template-columns:38px minmax(0,1fr);text-align:left;cursor:pointer}.item-row.selectable span{overflow:hidden;color:#d8eef1;text-overflow:ellipsis;white-space:nowrap}.item-row.selected{border-color:#ffcf5d;box-shadow:inset 0 0 0 1px #ffcf5d38}.item-main{min-width:0;display:grid;gap:2px}.item-main strong,.item-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-main strong{font-size:13px}.item-main span{color:#8ea3ad;font-size:11px}.item-actions{display:flex;flex-wrap:wrap;justify-content:end;gap:4px;max-width:150px}.item-icon{width:38px;height:38px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(255,207,93,.42);border-radius:7px;background:radial-gradient(circle at 35% 25%,#18c3bf42,#0a101af2 58%);color:#ffcf5d;font-size:12px;font-weight:700}.item-icon img{width:100%;height:100%;object-fit:contain}.item-icon.fallback span{display:grid;place-items:center;width:100%;height:100%}.quality-junk{color:#89969b}.quality-common{color:#d8eef1}.quality-uncommon{color:#5cf587}.quality-rare{color:#5cb8ff}.quality-prototype{color:#c157ff}.quality-artifact{color:#ffcf5d}.vendor-buyback{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,207,93,.24)}.vendor-buyback h4,.market-browser h4,.market-sell h4{margin:0 0 8px;color:#ffcf5d;font-size:12px;text-transform:uppercase}.item-empty,.market-error{padding:9px 10px;border:1px dashed rgba(93,197,204,.25);border-radius:7px;color:#91a7b1;font-size:12px}.market-error{margin-bottom:10px;border-color:#ff7a5c80;color:#ffad9b}.market-layout{min-height:0;display:grid;grid-template-columns:minmax(330px,1fr) minmax(300px,.86fr);gap:12px}.market-browser,.market-sell{min-width:0;min-height:0;display:grid;align-content:start;gap:8px}.compact-market-list{max-height:210px}.market-form{display:grid;grid-template-columns:80px 96px 1fr;gap:7px;align-items:end}.market-form label{display:grid;gap:4px;color:#8ea3ad;font-size:10px;text-transform:uppercase}.market-form input{height:30px;padding:0 8px;border:1px solid rgba(93,197,204,.25);border-radius:6px;background:#050910b8}@media(max-width:860px){.economy-panel{top:74px;right:8px;left:8px;width:auto}.vendor-economy,.market-layout{grid-template-columns:1fr}.vendor-window,.economy-bags,.market-economy{max-height:calc((100vh - 105px)/2)}.market-economy{max-height:calc(100vh - 105px)}.market-form{grid-template-columns:1fr 1fr}.market-form button{grid-column:1 / -1}}@media(max-width:560px){.item-row{grid-template-columns:34px minmax(0,1fr)}.item-actions,.vendor-row>button{grid-column:1 / -1;justify-content:start;max-width:none}.item-icon{width:34px;height:34px}}.spellbook-reset{margin:6px 12px 8px;width:auto;padding:5px 10px;font-size:11px;border-color:#513f1bb3;background:linear-gradient(#1a2029,#0b0e15);color:#9fb4bd;justify-self:end}.micro-menu{position:absolute;right:18px;bottom:18px;display:grid;gap:5px;padding:6px}.micro-menu button{width:38px;min-width:38px;height:34px;min-height:34px;padding:0;border-color:#513f1beb;background:linear-gradient(#242a35,#0c0f16)}.micro-menu button span{display:none}.chat-box.comms-log{left:12px;right:auto;bottom:14px;width:min(390px,calc(50vw - 232px));min-width:300px;height:178px;min-height:0;display:grid;align-items:stretch;gap:0;overflow:hidden;padding:0}.chat-tabs{display:flex;gap:2px;padding-left:6px;transform:translateY(1px)}.chat-tabs strong,.chat-tabs span{border:1px solid rgba(81,63,27,.92);border-bottom:0;border-radius:6px 6px 0 0;padding:4px 9px;color:#ffcf5d;background:#090a0fe0;font-size:12px}.chat-tabs span{color:#9ca8b8}.chat-lines{display:flex;flex-direction:column;justify-content:end;gap:3px;min-height:0;overflow:hidden;padding:8px 10px 10px}.chat-box.comms-log .chat-lines span{display:block;width:100%;border:0;border-radius:0;padding:0;color:#d9f0d1;background:transparent;white-space:normal}.drawer-panel{top:112px;right:86px;bottom:118px}@media(max-width:1180px){.target-frame.unit-frame{display:none}.interaction-prompt.context-actions,.actionbar-shell{width:min(560px,calc(100vw - 260px));min-width:360px}.chat-box.comms-log{width:300px}}@media(max-width:820px){.pilot-status.unit-frame{width:min(300px,calc(100vw - 150px));min-height:74px}.unit-portrait{width:50px;height:50px;flex-basis:50px}.minimap{top:8px;right:8px;width:126px}.minimap-disc{width:112px;height:112px;border-width:3px}.objective-tracker.quest-tracker,.chat-box.comms-log{display:none}.interaction-prompt.context-actions{left:10px;right:10px;bottom:104px;width:auto;min-width:0;max-height:122px;transform:none}.loot-roll-stack,.loot-container-stack{left:10px;right:58px;width:auto;min-width:0;transform:none}.loot-roll-stack{bottom:98px}.loot-container-stack{bottom:182px}.loot-roll-card,.loot-container-card{grid-template-columns:38px minmax(0,1fr)}.loot-roll-actions{grid-column:1 / -1}.interaction-prompt .contact-strip{grid-template-columns:1fr}.actionbar-shell{left:10px;right:58px;bottom:10px;width:auto;min-width:0;transform:none}.actionbar{grid-template-columns:repeat(6,minmax(42px,1fr));overflow:hidden}.micro-menu{right:8px;bottom:10px}.micro-menu button{width:36px;min-width:36px;height:32px;min-height:32px}.drawer-panel{left:10px;right:10px;top:92px;bottom:106px;width:auto}}.minimap.space .minimap-disc{border-color:#188c96f2}.minimap-blip.beacon{width:11px;height:11px;background:#ffd76a;box-shadow:0 0 8px #ffcf5df2,0 0 2px #000;animation:beacon-pulse 1.6s ease-in-out infinite}@keyframes beacon-pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.45);opacity:.65}}.minimap-blip.above:after,.minimap-blip.below:after{position:absolute;left:50%;font-size:9px;line-height:1;transform:translate(-50%);color:#fff7e4;text-shadow:0 0 3px #000}.minimap-blip.above:after{content:"▲";bottom:100%}.minimap-blip.below:after{content:"▼";top:100%}.virtual-cursor{position:fixed;z-index:9999;pointer-events:none;filter:drop-shadow(0 1px 3px rgba(0,0,0,.9))}.vcursor-free{transform:translate(0)}.vcursor-aim{transform:translate(-50%,-50%)}.virtual-tooltip{position:fixed;z-index:9998;max-width:min(280px,calc(100vw - 32px));padding:7px 9px;border:1px solid rgba(114,146,166,.56);border-radius:6px;background:#050a10f0;box-shadow:0 8px 20px #0000006b;color:#fff7e4;font-size:12px;line-height:1.35;white-space:pre-line;pointer-events:none}.capture-hint{position:absolute;left:50%;bottom:96px;transform:translate(-50%);padding:6px 14px;border:1px solid rgba(81,63,27,.9);border-radius:18px;background:#080c14bd;color:#d9e7ed;font-size:12px;letter-spacing:.04em;text-shadow:0 1px 3px #000;pointer-events:none}.cursor-mode-banner{position:absolute;left:50%;top:70px;transform:translate(-50%);padding:5px 14px;border:1px solid rgba(24,195,191,.6);border-radius:16px;background:#061a1ecc;color:#8ff3ef;font-size:12px;letter-spacing:.05em;text-shadow:0 1px 3px #000;pointer-events:none}.reticle.cursor-mode span:before,.reticle.cursor-mode span:after{background:#8ff3ef!important}.reticle.cursor-mode:before,.reticle.cursor-mode:after{border-color:#8ff3ef!important}.map-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;background:#02060c9e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:auto}.map-frame,.settings-frame{width:min(860px,calc(100vw - 48px));max-height:calc(100vh - 64px);display:flex;flex-direction:column;padding:14px 16px;gap:12px}.character-sheet,.skilltree-window{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:60;padding:14px 16px;display:flex;flex-direction:column;gap:12px;color:#f3ead0}.character-sheet{width:min(360px,calc(100vw - 32px));max-height:calc(100vh - 64px);overflow-y:auto}.cs-header{display:flex;align-items:center;gap:12px}.cs-portrait{position:relative;display:grid;place-items:center;width:52px;height:52px;border-radius:8px;border:2px solid rgba(81,63,27,.92);background:linear-gradient(160deg,#1b2230,#0a0d14);color:#ffd98a}.cs-portrait span{position:absolute;right:-4px;bottom:-4px;font-size:11px;font-weight:900;color:#fff;background:#1b2230;border-radius:999px;padding:0 5px;border:1px solid rgba(255,244,204,.4)}.cs-identity{display:flex;flex-direction:column;flex:1}.cs-identity strong{font-size:16px}.cs-identity span{font-size:12px;color:#b7c4cf}.cs-identity em{font-size:11px;color:#ffcf5d;text-transform:capitalize}.cs-close,.st-close{background:none;border:none;color:#cdb98a;cursor:pointer}.cs-bar{position:relative;height:18px;border:1px solid rgba(0,0,0,.7);border-radius:4px;overflow:hidden;background:#090a0f}.cs-bar i{position:absolute;inset:0 auto 0 0;display:block}.cs-bar.xp i{background:linear-gradient(#c9a23b,#7c5c12)}.cs-bar.health i{background:linear-gradient(#3bea73,#128c31)}.cs-bar.resource i{background:linear-gradient(var(--resource-color, #44a5ff),#11203f)}.cs-bar span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff7e4;text-shadow:0 1px 2px #000}.cs-vitals{display:flex;flex-direction:column;gap:6px}.cs-stats h4,.cs-points h4,.cs-lockouts h4,.cs-equip h4,.cs-sets h4{display:flex;align-items:center;gap:6px;margin:0 0 6px;font-size:12px;color:#cdb98a;text-transform:uppercase;letter-spacing:.06em}.cs-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.cs-stat{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:6px;background:#141a24b3;border:1px solid rgba(81,63,27,.5)}.cs-stat-ico{color:#8fd2ff;display:grid;place-items:center}.cs-stat-label{flex:1;font-size:12px}.cs-stat-val{font-size:14px;font-weight:900;color:#fff7e4}.cs-points-row{display:flex;gap:8px}.cs-point{flex:1;text-align:center;padding:6px;border-radius:6px;background:#141a24b3;border:1px solid rgba(81,63,27,.5);font-size:12px}.cs-point strong{display:block;font-size:18px}.cs-point.ground strong{color:#6cf59a}.cs-point.ship strong{color:#7c9cff}.cs-points small{display:block;margin-top:4px;color:#93a3ad;font-size:11px}.cs-lockouts ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.cs-lockouts li{display:flex;justify-content:space-between;gap:8px;font-size:12px;padding:6px 8px;border-radius:5px;background:#141a248c;border:1px solid rgba(255,207,93,.22)}.cs-lockouts span{color:#fff7e4;font-weight:800}.cs-lockouts em{color:#9fb4bf;font-style:normal;text-align:right}.cs-equip ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cs-equip li{display:flex;justify-content:space-between;font-size:12px;padding:4px 8px;border-radius:5px;background:#141a248c}.cs-slot{color:#9fb4bf;text-transform:capitalize}.cs-sets ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.cs-sets li{display:flex;flex-direction:column;gap:2px;font-size:12px;padding:6px 8px;border-radius:5px;background:#141a248c;border:1px solid rgba(90,115,125,.28)}.cs-sets li.active{border-color:#6cf59a6b}.cs-sets li.inactive{opacity:.7}.cs-sets span{color:#fff7e4;font-weight:800}.cs-sets em{color:#9fb4bf;font-style:normal;line-height:1.3}.skilltree-window{width:min(640px,calc(100vw - 32px));max-height:calc(100vh - 64px)}.st-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.st-header strong{font-size:15px;flex:1}.st-line-tabs{display:flex;gap:4px}.st-line-tabs button{padding:4px 10px;border-radius:6px;border:1px solid rgba(81,63,27,.7);background:#141a24b3;color:#cdb98a;cursor:pointer;font-size:12px}.st-line-tabs button.active{background:linear-gradient(#2c4a66,#16283a);color:#fff7e4;border-color:#78b4ff99}.st-points{font-size:12px;color:#b7c4cf}.st-points strong{color:#6cf59a;font-size:14px}.st-empty{padding:30px 10px;text-align:center;color:#93a3ad}.st-board-scroll{overflow:auto;padding:8px 0}.st-board{position:relative;margin:0 auto}.st-links{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.st-link{stroke:#788ca059;stroke-width:3}.st-link.filled{stroke:#6cf59ab3;stroke-width:4}.st-node{position:absolute;display:grid;place-items:center;border-radius:10px;cursor:default;color:#e7eef4;border:2px solid rgba(90,110,130,.6);background:radial-gradient(circle at 50% 35%,#2a3445,#121822);box-shadow:0 3px 8px #00000080}.st-node .st-node-ico{display:grid;place-items:center}.st-node.owned{border-color:#6cf59a;box-shadow:0 0 10px #6cf59a80;color:#fff}.st-node.available{border-color:#ffcf5d;box-shadow:0 0 10px #ffcf5d73;cursor:pointer}.st-node.available:hover{transform:scale(1.06)}.st-node.locked{opacity:.5;filter:grayscale(.6)}.st-node-cost{position:absolute;right:-4px;bottom:-5px;font-size:10px;font-weight:900;color:#fff;background:#1b2230;border:1px solid rgba(255,244,204,.4);border-radius:999px;padding:0 5px}.st-node-lock{position:absolute;top:-5px;left:-5px;color:#ff9;background:#1b2230;border-radius:999px;padding:2px}.st-legend{display:flex;align-items:center;gap:12px;font-size:11px;color:#93a3ad;flex-wrap:wrap}.st-legend span{display:flex;align-items:center;gap:5px}.st-legend span:before{content:"";width:11px;height:11px;border-radius:3px;border:2px solid}.st-legend .owned:before{border-color:#6cf59a}.st-legend .available:before{border-color:#ffcf5d}.st-legend .locked:before{border-color:#5a6e8299}.st-legend small{margin-left:auto}.settings-frame{width:min(420px,calc(100vw - 48px))}.map-header{display:flex;align-items:center;justify-content:space-between}.map-title{display:flex;flex-direction:column}.map-title strong{color:#ffcf5d;font-size:16px}.map-title span{color:#9fb4bd;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.map-close{width:32px;height:32px;display:grid;place-items:center;border-color:#513f1be6;background:linear-gradient(#242a35,#0c0f16)}.map-body{display:grid;grid-template-columns:1fr 280px;gap:14px;min-height:0}.map-plot{position:relative;aspect-ratio:1 / 1;border:2px solid rgba(24,140,150,.5);border-radius:10px;overflow:hidden;background:radial-gradient(circle at center,#0d2c38cc,#040c16eb 70%),repeating-linear-gradient(0deg,rgba(24,195,191,.06) 0 1px,transparent 1px 32px),repeating-linear-gradient(90deg,rgba(24,195,191,.06) 0 1px,transparent 1px 32px)}.map-axis{position:absolute;background:#18c3bf2e}.map-axis.x{left:0;right:0;top:50%;height:1px}.map-axis.z{top:0;bottom:0;left:50%;width:1px}.map-dot{position:absolute;width:9px;height:9px;margin:0;padding:0;border:0;border-radius:50%;transform:translate(-50%,-50%);background:#d9e7ed;cursor:default}button.map-dot{cursor:pointer}.map-dot.nav{width:6px;height:6px;background:#6f97a6}.map-dot.hostile{background:#ff6565;box-shadow:0 0 6px #ff6565b3}.map-dot.friendly{background:#7ff58e}.map-dot.contact{background:#ffcf5d;box-shadow:0 0 6px #ffcf5db3}.map-dot.contact.beacon{width:13px;height:13px;background:#ffd76a;box-shadow:0 0 10px #ffcf5df2;animation:beacon-pulse 1.6s ease-in-out infinite}.map-dot.player{width:0;height:0;background:none;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:15px solid #fff7e4;filter:drop-shadow(0 0 5px #18c3bf)}.map-dot .map-label{position:absolute;left:12px;top:-2px;white-space:nowrap;font-size:11px;color:#eef6f8;text-shadow:0 1px 3px #000;pointer-events:none}.map-list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;min-height:0}.map-list-title{color:#9fb4bd;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.map-list-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid rgba(81,63,27,.6);border-radius:8px;background:linear-gradient(#1a2029,#0b0e15);text-align:left}.map-list-row.beacon{border-color:#ffcf5db3}.map-list-select{flex:1;display:flex;align-items:center;gap:10px;border:0;background:none;box-shadow:none;padding:2px;text-align:left}.map-course{flex:0 0 auto;padding:5px 10px;font-size:11px;white-space:nowrap;border-color:#18c3bf99;background:linear-gradient(#15303a,#0a141b);color:#8ff3ef}.autopilot-banner{position:absolute;left:50%;top:102px;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:5px 8px 5px 14px;border:1px solid rgba(255,207,93,.7);border-radius:16px;background:#1c1608db;color:#ffd76a;font-size:12px;letter-spacing:.04em;text-shadow:0 1px 3px #000;pointer-events:auto}.autopilot-banner button{padding:3px 10px;font-size:11px;border-color:#ffcf5d99;background:linear-gradient(#3a3320,#161109);color:#ffe9b0}.map-bearing{display:inline-block;color:#8ff3ef;font-size:14px;line-height:1}.map-list-main{display:flex;flex-direction:column;gap:2px}.map-list-main strong{color:#f4ecd8;font-size:13px}.map-list-main span{color:#9fb4bd;font-size:11px}.map-empty{color:#9fb4bd;font-size:12px}.map-foot{color:#7d909a;font-size:11px;text-align:center}.settings-body{display:flex;flex-direction:column;gap:14px}.settings-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 12px;color:#d9e7ed;font-size:13px}.settings-row input[type=range]{grid-column:1 / -1;width:100%}.settings-row em{color:#ffcf5d;font-style:normal;font-size:12px}.settings-row.toggle{grid-template-columns:1fr auto}.settings-row.compact{grid-template-columns:minmax(92px,1fr) minmax(110px,140px);margin-top:6px}.settings-keybinds{display:grid;gap:4px;padding-top:4px;border-top:1px solid rgba(114,146,166,.2)}.settings-section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#ffcf5d;font-size:12px;text-transform:uppercase}.settings-section-title button{min-height:28px;padding:0 8px;font-size:11px}.micro-menu button.active{border-color:#ffcf5dd9;background:linear-gradient(#3a3320,#161109)}@media(max-width:720px){.map-body,.settings-row.compact{grid-template-columns:1fr}}
