@font-face{font-family:AA Logo Sans;font-weight:900;font-display:swap;src:url(/assets/fonts/logo-noto-sans-sc-900.woff2)format("woff2");unicode-range:U+4F7F,U+5F92,U+661F,U+7A7A}@font-face{font-family:AA Logo Display;font-weight:700;font-display:swap;src:url(/assets/fonts/logo-orbitron-700.woff2)format("woff2");unicode-range:U+20,U+41,U+45,U+4C,U+4F-50,U+52-54}:root{--bg:#07080a;--panel:#111216f5;--panel-2:#1a1c21;--border:#25272d;--border-strong:#353840;--text:#e4e6ea;--text-2:#8d929b;--text-3:#5c616a;--primary:#7c88f5;--btn:#5563e8;--btn-hover:#6672f0;--on-btn:#fff;--progress:linear-gradient(90deg, #4fd1e8, #a78bfa);--secondary:#3fb6a8;--danger:#e5534b;--r-common:#9aa4b2;--r-uncommon:#4ade80;--r-rare:#4ea8ff;--r-epic:#b07cff;--r-legendary:#f2a33a;--radius:6px;--font:"Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:radial-gradient(ellipse at 50% -10%, #12131a 0%, var(--bg) 65%) fixed, var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}h2,h3{margin:0;font-weight:600}h2{font-size:18px}h3{font-size:15px}p{margin:0}button{font:inherit;color:inherit;cursor:pointer}.num{font-variant-numeric:tabular-nums}.small{font-size:12px}.text-primary{color:var(--primary)}.text-secondary{color:var(--text-2)}.text-muted{color:var(--text-3)}.text-danger{color:var(--danger)}.rarity-text-common{color:var(--r-common)}.rarity-text-uncommon{color:var(--r-uncommon)}.rarity-text-rare{color:var(--r-rare)}.rarity-text-epic{color:var(--r-epic)}.rarity-text-legendary{color:var(--r-legendary)}.rarity-border-common{border-color:color-mix(in srgb, var(--r-common) 35%, var(--border))!important}.rarity-border-uncommon{border-color:color-mix(in srgb, var(--r-uncommon) 45%, var(--border))!important}.rarity-border-rare{border-color:color-mix(in srgb, var(--r-rare) 55%, var(--border))!important}.rarity-border-epic{border-color:color-mix(in srgb, var(--r-epic) 60%, var(--border))!important}.rarity-border-legendary{border-color:var(--r-legendary)!important}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.panel-title{color:var(--text-2);margin-bottom:10px;font-size:14px;font-weight:600}.btn{border:1px solid var(--border-strong);background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:6px;height:32px;padding:0 14px;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover{background:var(--panel-2);border-color:var(--text-3)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--btn);border-color:var(--btn);color:var(--on-btn);font-weight:600}.btn-primary:hover{background:var(--btn-hover);border-color:var(--btn-hover)}.starfield{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}#root{z-index:1;position:relative}.btn-ghost{color:var(--text-2);border-color:#0000}.btn-ghost:hover{color:var(--text)}.btn:focus-visible,.side-box:focus-visible,.item-tile:focus-visible,.segmented button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.link-btn{color:var(--text-2);background:0 0;border:none;padding:0;text-decoration:underline}.link-btn:hover{color:var(--text)}.bar{background:var(--panel-2);border-radius:3px;height:6px;overflow:hidden}.bar-sm{background:var(--bg);height:3px}.bar-lg{height:8px}.bar-fill{background:var(--progress);border-radius:inherit;height:100%}.tone-secondary{background:var(--secondary)}.tone-danger{background:var(--danger)}.segmented{border:1px solid var(--border);border-radius:4px;align-items:center;display:inline-flex;overflow:hidden}.segmented-label{color:var(--text-2);padding:0 10px;font-size:12px}.segmented button{border:none;border-left:1px solid var(--border);min-width:36px;color:var(--text-2);background:0 0;padding:5px 10px}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--panel-2);color:var(--primary)}.segmented>button:first-child{border-left:none}.badge{background:color-mix(in srgb, var(--primary) 15%, transparent);color:var(--primary);border-radius:4px;padding:2px 10px;font-size:12px;display:inline-block}.app{flex-direction:column;height:100vh;display:flex;overflow:hidden}.topbar{z-index:10;background:var(--panel);border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;display:flex}.logo{flex-shrink:0;align-items:center;gap:10px;display:flex}.emblem{flex-shrink:0;display:block}.logo-words{flex-direction:column;line-height:1;display:flex}.logo-zh{font-family:"AA Logo Sans", var(--font);letter-spacing:5px;color:#fff;font-size:20px;font-weight:900}.logo-en{font-family:"AA Logo Display", var(--font);letter-spacing:3.6px;color:var(--primary);margin-top:5px;font-size:8.5px;font-weight:700}.topbar-stats{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.stat-pill{white-space:nowrap;border:1px solid var(--border);background:var(--bg);border-radius:4px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.hull-bar{width:70px}.layout{flex:1;grid-template-columns:232px minmax(0,1fr) 320px;align-items:stretch;gap:12px;min-height:0;padding:12px;display:grid}.main{flex-direction:column;gap:12px;min-width:0;min-height:0;display:flex}.main-body{flex-direction:column;flex:1;gap:14px;min-height:0;padding:2px;display:flex;overflow-y:auto}.sidebar{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:14px;min-height:0;padding:10px;display:flex;overflow-y:auto}.side-group{flex-direction:column;gap:6px;display:flex}.side-title{color:#a7adb6;margin:0 2px;font-size:12px;font-weight:500}.side-box{text-align:left;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);flex-direction:column;gap:7px;padding:9px 11px;font-weight:500;transition:border-color .15s,background .15s;display:flex}.side-box:hover{border-color:var(--border-strong)}.side-box.selected{background:var(--panel-2);border-color:var(--primary);color:var(--text)}.side-box.selected svg{color:var(--primary)}.side-skill{flex-direction:row;align-items:center;gap:8px;padding:8px 10px 8px 8px}.side-accent{border-radius:2px;flex:none;align-self:stretch;width:4px}.side-gathering .side-accent{background:#2ec4b6}.side-processing .side-accent{background:#f4a261}.side-combat .side-accent{background:#e76f51}.side-skill-icon{object-fit:cover;border-radius:4px;flex:none;width:28px;height:28px}.side-main{flex-direction:column;flex:1;gap:7px;min-width:0;display:flex}.side-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.side-name{align-items:center;gap:7px;display:inline-flex}.side-level{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.side-box.selected .side-level{color:var(--primary)}.running-dot{background:var(--secondary);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.3}}.action-status{flex-direction:column;gap:10px;display:flex}.action-status.idle{padding:18px 14px}.action-status-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.action-status-name{align-items:center;gap:8px;margin-right:auto;font-weight:600;display:inline-flex}.skill-header{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.skill-header-icon{border-radius:var(--radius);background:var(--panel-2);width:48px;height:48px;color:var(--primary);place-items:center;display:grid}.skill-header-body{flex-direction:column;flex:1;gap:6px;min-width:200px;display:flex}.skill-header-row{align-items:baseline;gap:10px;display:flex}.skill-level{color:var(--primary);font-weight:600}.card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.action-card{flex-direction:column;gap:10px;transition:border-color .15s;display:flex}.action-card:hover{border-color:var(--border-strong)}.action-card.running{box-shadow:inset 0 0 0 1px var(--primary);border-color:var(--primary)!important}.action-card.locked{opacity:.55}.action-card .btn{margin-top:auto}.action-card-head{align-items:center;gap:10px;display:flex}.action-card-icon{border-radius:var(--radius);background:var(--panel-2);flex:none;place-items:center;width:40px;height:40px;display:grid}.io-block{flex-direction:column;gap:4px;display:flex}.io-label{color:var(--text-3);font-size:11px}.stack-list{flex-direction:column;gap:3px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.stack-list li{align-items:center;gap:6px;display:flex}.stack-name{color:var(--text);margin-right:auto}.locked-note{color:var(--text-2);align-items:center;gap:6px;margin-top:auto;font-size:13px;display:flex}.ship-strip{color:var(--text-2);flex-wrap:wrap;gap:20px;font-size:13px;display:flex}.ship-strip b{color:var(--text);margin-left:4px}.ship-strip-inline{margin-top:10px}.sector{flex-direction:column;gap:10px;display:flex}.sector-title{color:var(--text-2);align-items:center;gap:10px;font-size:14px;display:flex}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.slot{flex-direction:column;gap:6px;display:flex}.slot-empty{border-style:dashed}.slot-name{align-items:center;gap:6px;font-weight:600;display:inline-flex}.crew-locked{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;display:flex}.crew-locked p{max-width:440px}.captain-card{flex-direction:column;gap:12px;display:flex}.captain-identity{align-items:flex-start;gap:14px;display:flex}.captain-identity-body{flex-direction:column;gap:4px;min-width:0;display:flex}.captain-identity .skill-header-row{flex-wrap:wrap;align-items:center}.captain-identity h2{overflow-wrap:anywhere}.captain-facts{grid-template-columns:max-content minmax(0,1fr);gap:6px 16px;margin:0;display:grid}.captain-facts dt{color:var(--text-3);font-size:12px}.captain-facts dd{align-items:center;gap:8px;margin:0;display:flex}.captain-skills{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.captain-skill{border:1px solid var(--border);background:var(--bg);color:var(--text-2);border-radius:4px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:inline-flex}.captain-skill b{color:var(--text);font-weight:600}.captain-modules{grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.captain-module{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:2px;min-width:0;padding:8px 10px;display:flex}.captain-section-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.captain-career{flex-direction:column;gap:8px;display:flex}.cargo{flex-direction:column;gap:12px;min-height:0;display:flex;overflow-y:auto}.cargo>.panel:last-child{flex:1}.item-grid{grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:6px;display:grid}.item-tile{aspect-ratio:1;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);place-items:center;display:grid;position:relative}.item-tile:hover{background:#22252b}.item-tile.selected{box-shadow:0 0 0 2px var(--primary)}.item-qty{color:var(--text);font-size:11px;position:absolute;bottom:2px;right:4px}.item-detail{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:12px;padding-top:12px;display:flex}.item-detail-name{align-items:center;gap:6px;font-weight:600;display:flex}.log{flex-direction:column;gap:4px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.account-area{align-items:center;gap:6px;padding-left:4px;display:flex}.account-name{max-width:180px;color:var(--text);align-items:center;gap:6px;display:inline-flex}.account-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.btn-sm{height:28px;padding:0 12px;font-size:13px}.icon-btn{width:32px;padding:0}@media (width<=1100px){.app{height:auto;min-height:100vh;overflow:visible}.topbar{position:sticky;top:0}.layout{grid-template-columns:232px minmax(0,1fr);align-items:start}.sidebar,.main-body,.cargo{overflow:visible}.sidebar{position:sticky;top:60px}.cargo{grid-column:1/-1;grid-template-columns:1fr 1fr;display:grid}}@media (width<=720px){.layout{grid-template-columns:minmax(0,1fr);gap:12px;padding:12px 16px}.sidebar{flex-direction:row;gap:6px;padding:6px;position:static;overflow-x:auto}.side-group{flex-direction:row;gap:6px}.side-title{display:none}.side-box{white-space:nowrap;min-width:max-content}.cargo,.captain-modules{grid-template-columns:1fr}.topbar{padding:8px 16px}.topbar-stats{flex-wrap:nowrap;gap:6px}.stat-pill{padding:4px 8px}.stat-pill .text-muted,.hull-bar,.hull-pill,.account-name svg{display:none}.topbar{flex-wrap:wrap}}.modal-backdrop{z-index:30;background:#05070ab8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.auth-card{flex-direction:column;gap:16px;width:100%;max-width:380px;padding:20px 24px 24px;display:flex}.auth-head{align-items:center;gap:8px;display:flex}.auth-tabs{flex:1;display:flex}.auth-tabs button{flex:1;padding:8px 10px}.field{color:var(--text-2);flex-direction:column;gap:6px;font-size:13px;display:flex}.field input{height:38px;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:4px;padding:0 12px;font-size:14px}.field input:focus{outline:2px solid var(--primary);outline-offset:1px;border-color:#0000}.auth-submit{height:40px}.auth-submit:disabled{opacity:.7;cursor:wait}.text-success{color:var(--secondary)}.dialog-title{align-items:center;gap:12px;display:flex}.dialog-heading{flex:1;font-size:16px}.link-btn{color:var(--text-2);background:0 0;border:none;align-self:center;padding:2px 4px;font-size:13px}.link-btn:hover{color:var(--primary);text-decoration:underline}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff;font-weight:600}.btn-danger:hover{background:color-mix(in srgb, var(--danger) 85%, #fff);border-color:#0000}.btn-danger-ghost{border-color:color-mix(in srgb, var(--danger) 45%, var(--border));color:var(--danger)}.btn-danger-ghost:hover{background:color-mix(in srgb, var(--danger) 12%, transparent);border-color:var(--danger)}.btn:disabled{opacity:.55;cursor:not-allowed}.account-card{gap:0;max-width:520px;max-height:calc(100vh - 32px);overflow-y:auto}.account-card>.auth-head{padding-bottom:12px}.account-section{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding:14px 0;display:flex}.account-section h3{color:var(--text-2);font-size:13px;font-weight:600}.account-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.account-value{overflow-wrap:anywhere;font-size:15px;font-weight:600}.account-facts{grid-template-columns:auto 1fr;gap:4px 16px;margin:0;display:grid}.account-facts dt{color:var(--text-2)}.account-facts dd{overflow-wrap:anywhere;flex-direction:column;margin:0;display:flex}.account-form{flex-direction:column;gap:10px;display:flex}.account-form .btn-row{margin-top:0}.account-inline{flex-direction:row;align-items:flex-end}.account-inline .field{flex:1;min-width:0}.account-inline .btn-sm{height:38px}.account-pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.device-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.device-row{background:var(--panel-2);border-radius:4px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.device-main{flex-direction:column;min-width:0;display:flex}.device-main small{overflow-wrap:anywhere}.device-row .badge,.device-row .btn{white-space:nowrap;flex-shrink:0}@media (width<=520px){.account-pair{grid-template-columns:1fr}.account-inline{flex-direction:column;align-items:stretch}}.notice{color:var(--text-2);background:color-mix(in srgb, var(--primary) 8%, var(--panel));border:1px solid color-mix(in srgb, var(--primary) 30%, var(--border));border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:12px;padding:8px 12px;font-size:13px;display:flex}.notice>span{flex:1;min-width:200px}.notice-danger{background:color-mix(in srgb, var(--danger) 8%, var(--panel));border-color:color-mix(in srgb, var(--danger) 40%, var(--border));color:var(--text)}.notice .text-danger,.notice .text-success{flex-basis:100%}.center-page{place-items:center;min-height:100vh;padding:24px 16px;display:grid}.center-note{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:28px 32px;display:flex}.toast{z-index:20;background:var(--panel-2);border:1px solid var(--danger);border-radius:var(--radius);max-width:calc(100vw - 32px);color:var(--text);align-items:center;gap:8px;padding:8px 8px 8px 16px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.captain-card{grid-template-columns:minmax(0,1.28fr) minmax(150px,.72fr);align-items:center;gap:20px;display:grid}.captain-portrait{background:radial-gradient(at 50% 45%,#5563e817,#0000 72%);border-radius:6px;justify-content:center;align-self:stretch;align-items:center;min-width:0;margin:0;display:flex}.captain-portrait img{object-fit:contain;object-position:center;width:100%;max-width:270px;height:390px;display:block}.captain-overview{flex-direction:column;gap:14px;min-width:0;display:flex}.ship-art{background:radial-gradient(at 50% 55%,#4fd1e80e,#0000 72%);border-radius:6px;justify-content:center;align-items:center;min-width:0;margin:18px 0 4px;display:flex;overflow:hidden}.ship-art img{object-fit:contain;object-position:center;width:100%;max-width:680px;height:350px;display:block}@media (width<=720px){.captain-card{grid-template-columns:minmax(0,1fr);gap:16px}.captain-portrait img{max-width:220px;height:330px}.ship-art{margin-top:12px}.ship-art img{height:auto;max-height:300px}}.starmap{flex-direction:column;gap:10px;display:flex}.starmap-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.starmap-legend{color:var(--text-2);flex-wrap:wrap;gap:12px;margin-left:auto;display:flex}.starmap-legend span{align-items:center;gap:4px;display:inline-flex}.sm-dot{background:currentColor;border-radius:50%;width:8px;height:8px;display:inline-block}.danger-0{color:var(--secondary)}.danger-1{color:#4ea8ff}.danger-2{color:#f2a33a}.danger-3{color:var(--danger)}.starmap-svg{border:1px solid var(--border);border-radius:var(--radius);background:#050608;width:100%;height:auto;display:block}.sm-grid{fill:none;stroke:#fff;stroke-opacity:.035;stroke-width:1px}.sm-border{stroke:var(--primary);stroke-opacity:.25;stroke-width:1.5px;stroke-dasharray:2 8}.sm-frontier-text{fill:var(--text-2);letter-spacing:.08em;font-size:14px}.sm-route{stroke:var(--text-3);stroke-opacity:.45;stroke-width:1.5px;stroke-dasharray:3 7}.sm-route.open{stroke:var(--primary);stroke-opacity:.4;stroke-dasharray:8 6}.sm-route.active{stroke-opacity:.9;stroke-width:2px}.sm-node{cursor:pointer;outline:none}.sm-hit{fill:#0000}.sm-select{fill:none;stroke:#0000;stroke-width:1.5px}.sm-node:hover .sm-select{stroke:var(--border-strong)}.sm-node.selected .sm-select,.sm-node:focus-visible .sm-select{stroke:var(--primary);fill:color-mix(in srgb, var(--primary) 8%, transparent)}.sm-node.locked>:not(text):not(.sm-select):not(.sm-hit){opacity:.45}.sm-label{fill:var(--text);paint-order:stroke;stroke:#050608;stroke-width:4px;stroke-linejoin:round;font-size:17px;font-weight:600}.sm-node.locked .sm-label{fill:var(--text-2)}.sm-sub{fill:currentColor;paint-order:stroke;stroke:#050608;stroke-width:4px;stroke-linejoin:round;font-size:13.5px}.sm-here{fill:var(--primary);paint-order:stroke;stroke:#050608;stroke-width:4px;font-size:13.5px;font-weight:600}.sm-orbit{fill:none;stroke:var(--primary);stroke-opacity:.5;stroke-dasharray:2 5}.sm-pulse{fill:none;stroke:var(--primary);stroke-width:1.5px;transform-box:fill-box;transform-origin:50%;animation:2.6s ease-out infinite sm-pulse}@keyframes sm-pulse{0%{opacity:.7;transform:scale(.4)}to{opacity:0;transform:scale(1.35)}}.sm-station{fill:var(--panel-2);stroke:var(--primary);stroke-width:2px}.sm-station-core{fill:#4fd1e8}.sm-rock{fill:#8d929b}.sm-rock-gold{fill:#f2c14e}.sm-rock-diamond{fill:#9be7ff}.sm-ring{fill:none;stroke:#d8cfb8;stroke-opacity:.55;stroke-width:3px}.sm-ice{fill:#bfe6ff;fill-opacity:.85}.sm-wreck{fill:#5c616a;stroke:#8d929b;stroke-width:.8px}.sm-planet-a{fill:#3fb6a8}.sm-planet-b{fill:#c08457}.sm-planet-c{fill:#6b7cf0}.sm-deep-ring{fill:none;stroke:#a78bfa;stroke-opacity:.35}.sm-rift{fill:none;stroke:#e9ddff;stroke-width:2px;stroke-linejoin:round}.sm-rift-glow{fill:none;stroke:#a78bfa;stroke-width:10px;stroke-opacity:.35;stroke-linejoin:round;filter:blur(4px)}@media (prefers-reduced-motion:reduce){.sm-pulse{opacity:0;animation:none}}.sm-detail{flex-direction:column;gap:10px;display:flex}.sm-detail-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sm-detail-head h2{align-items:center;gap:6px;margin-right:4px;display:inline-flex}.sm-badge{background:color-mix(in srgb, currentColor 14%, transparent)}.sm-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 20px;display:grid}.sm-fact{flex-direction:column;gap:6px;min-width:0;display:flex}.starmap-scroll{border-radius:var(--radius);overflow-x:auto}@media (width<=720px){.sm-facts{grid-template-columns:1fr 1fr}.starmap-legend{margin-left:0}.starmap-svg{width:680px;max-width:none}}.battle-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.battle-head h2{align-items:center;gap:8px;display:inline-flex}.battle-tabs button{align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.battle{background:#0c0d11b8;flex-direction:column;gap:14px;display:flex}.battle-arena{grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr);min-height:380px;display:grid}.battle-divider{background:var(--border)}.battle-side{justify-content:center;align-items:center;padding:20px 12px;display:flex}.combatant{background:var(--panel-2);border:1px solid var(--border-strong);border-radius:var(--radius);flex-direction:column;gap:4px;width:210px;padding:8px;display:flex}.combatant-name{text-align:center;text-overflow:ellipsis;white-space:nowrap;padding:2px 0 4px;font-size:13px;font-weight:600;overflow:hidden}.combatant-stats{text-align:center;color:var(--text-2)}.combatant-art{background:radial-gradient(at 50% 55%,#4fd1e814,#0000 70%);border-radius:4px;justify-content:center;align-items:center;height:130px;margin:4px 0;display:flex}.combatant-art img{object-fit:contain;width:100%;height:100%}.enemy-art{color:var(--danger);background:radial-gradient(at 50% 55%,#e5534b1a,#0000 70%)}.combatant-caption{text-align:center;color:var(--text-3);font-size:11px}.gauge{background:var(--bg);border-radius:3px;height:18px;position:relative;overflow:hidden}.gauge-fill{position:absolute;inset:0 auto 0 0}.gauge-text{text-align:center;font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 1px 2px #0009;font-size:11.5px;line-height:18px;display:block;position:relative}.gauge-hull .gauge-fill{background:var(--secondary)}.gauge-attack,.gauge-counter{height:8px}.gauge-attack .gauge-fill{background:#8b7cf6}.gauge-counter .gauge-fill{background:color-mix(in srgb, var(--danger) 75%, #000)}.gauge.idle{opacity:.5}.battle-empty{text-align:center;flex-direction:column;align-items:center;gap:12px;max-width:240px;display:flex}.battle-footer{border-top:1px solid var(--border);grid-template-columns:auto auto 1fr;align-items:end;gap:24px;padding-top:12px;display:grid}.battle-slot-group{flex-direction:column;gap:6px;display:flex}.battle-slots{gap:6px;display:flex}.battle-slot{background:var(--panel-2);border:1px solid var(--border-strong);border-radius:4px;place-items:center;width:44px;height:44px;padding:0;display:grid;position:relative}.battle-slot:disabled{opacity:.45;cursor:default}.battle-slot.locked{color:var(--text-3);border-style:dashed}.battle-slot-qty{color:var(--text);font-size:10.5px;position:absolute;bottom:1px;right:3px}.battle-flee{justify-content:flex-end;align-items:center;gap:12px;display:flex}.battle-log{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding-top:10px;display:flex}@media (width<=720px){.battle-arena{grid-template-columns:minmax(0,1fr);min-height:0}.battle-divider{height:1px}.battle-footer{grid-template-columns:1fr 1fr}.battle-flee{grid-column:1/-1}}.starmap-scene{flex-direction:column;flex:1 0 620px;gap:10px;min-width:0;display:flex}.starmap-scene-head{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.starmap-scene-frame{border:1px solid var(--border);border-radius:var(--radius);background:#13252d;flex:1 1 0;width:100%;min-height:520px;display:block}@media (width<=1100px){.starmap-scene{flex:none}.starmap-scene-frame{flex:none;height:clamp(520px,72svh,820px)}}@media (width<=720px){.starmap-scene{padding:8px}.starmap-scene-head h2{font-size:16px}}
