@font-face{font-family:Manrope;src:url('./assets/fonts/manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{color-scheme:dark}body.compact{--panel:#0d1818f7;--line:#b9e4d92b;--text:#e4f0eb;--muted:#91aaa5;--accent:#88eac8;font-family:Manrope,'Noto Sans KR',system-ui,sans-serif;background:#060d0e;color:var(--text)}
.compact button,.compact input,.compact select{font-family:inherit}.compact button{transition:background .16s,border-color .16s,transform .16s}.compact button:focus-visible{outline:2px solid #9bf4d4;outline-offset:3px}.compact button:disabled{cursor:default}
.compact .topbar{background:linear-gradient(#071211f5,#0a1815a0);border-bottom:1px solid #c0ffdd15}.compact .resource strong{font-family:Manrope,system-ui;font-weight:500}.compact .resource small{color:#a3b9b2}.compact .top-actions svg{stroke:#d8e9e2}.compact #focus-mother{background:#0d292580;color:#8fe4c7}.compact #flight-state{color:#deeee6}.status-light{background:#83eac1;box-shadow:0 0 9px #80eac766}.compact #flight-distance{color:#91b2a6}.compact .brand img{width:28px}.compact .brand{font-family:Manrope}
.compact #compact-controls{background:linear-gradient(transparent,#091615ef 12%,#091212 70%);padding:0 12px env(safe-area-inset-bottom)}.compact #main-nav{height:54px;grid-template-columns:repeat(4,1fr);border-top:1px solid #b8decc2b}.compact #main-nav button{color:#9ab3a8;border-radius:0;font-weight:500;font-size:11px}.compact #main-nav button.active{background:#84ebc410;color:#9bf6d6}.compact #main-nav svg{stroke:currentColor;width:19px;height:19px}.compact #main-nav button[data-group=command] svg{fill:none;stroke-width:1.3}
.compact .roster-heading{font-size:9px;padding-top:8px;color:#b6ccc2}.compact .roster-heading>span{font-size:8px;color:#8ba79b}.compact .home-mother{height:59px;min-height:59px;background:linear-gradient(120deg,#1b3837ee,#0e2223e0);border:1px solid #8dbeb445;border-radius:3px;margin:4px 0 0}.compact .mother-emblem{width:38px;height:38px;border-radius:0;background:transparent;border:0}.mother-emblem img{width:34px;height:34px}.compact .mother-caption b{font-size:12px;letter-spacing:.2px}.compact .mother-caption small{font:8px Manrope;letter-spacing:1.6px;color:#99ccbd}.compact .mother-caption>span{font-size:9px}.compact .mother-integrity b{font:500 20px Manrope}.compact .mother-hp-track>i{background:#8be0c0}.compact #quick-ships .fleet-card{height:91px;min-height:91px;min-width:96px;width:96px;flex-basis:96px;border-radius:3px;background:#112323e8!important;padding:7px 8px 8px;border-color:#94beaa30}.compact #quick-ships .fleet-card.selected{background:#204137ec!important}.compact #quick-ships .fleet-card>svg{height:28px;margin:0 0 2px}.compact #quick-ships .card-class b{font-size:10px}.compact #quick-ships .card-name{font-size:9px}.compact #quick-ships .card-name span{font-size:8px}.compact #quick-ships{padding:5px 0 6px}.compact #flight-actions button{min-height:40px;border-radius:3px;background:#142d28}.compact #flight-actions #salvage-button{background:#1b4337;border-color:#69c7a362}.compact #flight-actions #depart{background:#232d2b;border-color:#d9d8c43b}.compact #flight-actions #salvage-button b{font-size:12px}.compact #flight-actions #salvage-button small{font-size:8px}
#nomad-hud{position:absolute;top:116px;left:16px;right:16px;display:grid;grid-template-columns:1.18fr 1fr;gap:10px;pointer-events:auto}#nomad-hud button{background:transparent;border:0;padding:0;text-align:left;min-height:62px;color:#e7f2e9}#nomad-hud button:last-child{border-left:1px solid #b9dcc42c;padding-left:15px}#nomad-hud small{display:block;font-size:8px;letter-spacing:1.8px;color:#a6c0b4}#nomad-hud strong{display:block;font:500 clamp(22px,6vw,29px)/1.4 Manrope;letter-spacing:-1px}#nomad-hud strong em{font-size:10px;font-style:normal;color:#9dbbaf;letter-spacing:0}#nomad-hud button>span{display:block;font-size:7px;letter-spacing:.2px;color:#8da69c}#nomad-energy strong{color:#a5f0ce;font-size:24px}
.compact #radar-primary{top:193px;right:14px;width:82px;padding:7px 8px;border-radius:3px;background:#112b2688;border-color:#8be5bd4f;gap:7px}.compact #radar-primary b{font-size:10px}.compact #radar-primary small{font-size:7px}.compact .radar-disc{width:23px;height:23px;min-width:23px}.compact #camera-reset{background:#142e24b0;border-color:#8bbaaa44}.compact #emergency-shield{background:#203f3399;border-color:#83c7a755}.compact #live-notice{top:185px;left:14px;right:106px;font-size:10px;padding:7px 10px}.compact #bonus-chip{top:242px;right:12px;font-size:9px;max-width:160px;background:#22392acc;border-color:#a8c77750}
#pulse-console{position:relative;padding:7px 0 0;border-bottom:1px solid #bcd8c222}#story-chip{background:transparent;border:0;border-top:1px solid #aed4b92b;width:100%;display:flex;align-items:center;justify-content:space-between;min-height:27px;padding:5px 2px;color:#b2c6bc;font-size:9px}#story-chip b{font-weight:500;color:#9bddc0;font-size:9px}.pulse-row{display:flex;gap:12px;padding:4px 0 9px;align-items:center}.pulse-readout{flex:1;min-width:0;padding-left:2px}.pulse-readout>small{font:8px Manrope,system-ui;letter-spacing:1.2px;color:#a5c4b6}.pulse-readout>span{font:9px Manrope;color:#8da89a}.pulse-track{height:3px;background:#d3efdf14;margin:7px 0 4px}.pulse-track i{display:block;height:100%;background:#8de6bd;transition:width .2s}#pulse-fire{position:relative;display:flex;gap:10px;align-items:center;justify-content:center;min-width:156px;min-height:53px;padding:8px 15px;background:#a4f0ce;color:#0b2117;border:1px solid #c5f7e1;border-radius:3px;box-shadow:0 0 20px #81f2c01a;user-select:none}#pulse-label{font-weight:800;font-size:13px;text-align:left}#pulse-label small{display:block;font-size:7px;font-weight:600;letter-spacing:.4px;margin-top:3px}.pulse-star{font-size:29px;line-height:1}#pulse-fire:active{transform:scale(.96);background:#d5ffe8}#pulse-pop{position:absolute;right:20px;top:0;opacity:0;font:700 18px Manrope;color:#c2ffe2;font-style:normal;pointer-events:none}#pulse-fire.fired #pulse-pop{animation:pulse-pop .5s ease-out}@keyframes pulse-pop{0%{opacity:1;transform:translateY(-10px)}100%{opacity:0;transform:translateY(-55px)}}
.compact #drawer{background:#0b1515f8;border:1px solid #9ec5b737;border-radius:12px 12px 0 0;bottom:calc(54px + env(safe-area-inset-bottom));max-height:calc(100dvh - 115px);height:76dvh;box-shadow:0 -20px 80px #0009}.compact .sheet-header{border-bottom-color:#b8d9c623}.compact .sheet-header h2{font-weight:500;letter-spacing:-.7px;color:#e2f0e7}.compact #sheet-eyebrow{color:#8db1a1;letter-spacing:2px;font:8px Manrope}.compact #sheet-sections button{border-radius:2px;color:#a9bdb2}.compact #sheet-sections button.active{background:#1b3f32;color:#b1f5cf;border-color:#75b59455}.compact #sheet-sections{border-bottom:1px solid #b9d6c61a}.compact #sheet-close{background:transparent;border:1px solid #b5ccbd33;border-radius:50%;color:#b9d6c7}.compact .ship-card,.compact .tech-card,.compact .upgrade-card,.compact .logistic-card,.compact .supply-pack{background:#112321;border-color:#a1c3b22c;border-radius:4px}.compact .ship-card button,.compact .tech-card button,.compact .upgrade-card button{background:#234635;color:#c7ebd5;border-color:#95d2b044}.compact .small-callout{background:#19372a80;border-color:#8cbea137}.compact .tutorial{top:192px;left:14px;right:106px;width:auto;background:#102821e8;border-color:#7bc29d55;border-radius:4px;padding:10px 12px}.compact .tutorial h2{font-size:13px;line-height:1.45}.compact .tutorial p{font-size:10px;line-height:1.55}.compact .tutorial #tutorial-action{min-height:34px;font-size:10px;background:#28543d;border-color:#9dd1aa44;border-radius:2px}.compact .tutorial-heading small{font-size:7px}.compact .tutorial-heading b{font-size:8px;margin-left:4px}.compact .tutorial-heading #tutorial-details{font-size:8px}.compact .tutorial-heading button{height:25px;width:25px}.compact #tutorial-restore{top:193px;left:14px;min-height:34px;font-size:10px;background:#133125cc;border-radius:3px}.compact.has-live-notice .tutorial,.compact.has-live-notice #tutorial-restore{top:248px}.compact.has-live-notice.tutorial-active #bonus-chip{top:292px}.compact #toasts .toast{background:#17352bef;color:#d7efdd;border:1px solid #8abea03d;border-radius:4px}.compact #toasts .toast.warning{background:#492b1fef;border-color:#ffa57277;color:#ffe5cf}
.nomad-panel{padding:0 3px 30px}.n-hero{padding:17px 0 14px;border-bottom:1px solid #c0e7d123}.n-hero>small{font:8px Manrope;letter-spacing:2px;color:#88b19d}.n-hero h3{font-size:24px;letter-spacing:-1px;font-weight:400;margin:12px 0;color:#e6f6eb;line-height:1.3}.n-hero p{color:#9eb5a9;font-size:11px;line-height:1.85;margin:0}.n-wallet{display:flex;justify-content:space-between;font:600 12px Manrope;color:#b0e6c7;padding:14px 0;border-bottom:1px solid #b0d1be26}.n-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.n-stats>span{color:#9db7aa;font-size:9px;border-right:1px solid #b8d9c51c;padding:4px 5px}.n-stats>span:last-child{border:0}.n-stats b{display:block;color:#e2f5e6;font:500 20px Manrope;margin-top:4px}.n-mission{background:#152a22;padding:14px;border:1px solid #84b6953d;border-radius:3px;margin:10px 0 17px}.n-mission>small{display:block;font:8px Manrope;letter-spacing:1.5px;color:#95c1a2}.n-mission>b{display:block;font-size:14px;font-weight:500;margin:8px 0}.n-mission p{font-size:10px;line-height:1.7;color:#b0c7b8;margin:0 0 12px}.n-meter{height:2px;background:#afd1bd22}.n-meter i{display:block;height:100%;background:#95e7b4}.n-mission footer{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:9px}.n-mission footer>span{font:9px Manrope;color:#99b8a6}.nomad-panel button{border:1px solid #92c8a94d;background:#193d2b;color:#c5ebd0;border-radius:3px;min-height:36px;padding:7px 10px;font-size:10px}.nomad-panel button:disabled{opacity:.4}.nomad-panel button.active{color:#0b2315;background:#b4ecc7;border-color:#b4ecc7}.nomad-panel .n-primary{background:#a9eac3;color:#0b2819;border-color:#c2f7d9;font-weight:700}.nomad-panel button small{display:block;font:8px Manrope;margin-top:4px}.n-wide{width:100%;min-height:49px!important}.n-toolbar{display:flex;justify-content:space-between;align-items:center;margin:20px 0 8px}.n-toolbar>b{font-size:12px;font-weight:500}.n-toolbar>div{display:flex;gap:4px}.n-toolbar button{font:10px Manrope;min-height:30px;padding:6px 10px}.facility-card{display:flex;gap:10px;align-items:center;border-bottom:1px solid #bddbc324;padding:16px 0}.facility-index{width:29px;flex-shrink:0;font:8px Manrope;color:#8aaa96;align-self:stretch}.facility-index>span{display:block;font-size:27px;color:#a0d3af;margin-top:6px}.facility-info{flex:1;min-width:0}.nomad-panel h4{margin:0 0 5px;font-size:12px;font-weight:500;color:#e1f2e5}.nomad-panel h4>small{font:9px Manrope;color:#8ea79a;margin-left:4px}.facility-info p,.module-card p,.crew-card p{font:10px/1.7 Manrope,system-ui;color:#b3c9b9;margin:0}.facility-info>small{font-size:8px;color:#7d9d8a;line-height:1.7}.nomad-panel .facility-buy{min-width:69px;padding:7px;font:500 13px Manrope}.facility-card.locked .facility-info{opacity:.5}.nomad-panel .n-link{display:block;background:transparent;border:0;padding:4px 0 0;min-height:24px;text-align:left;color:#9cd2ab;font-size:8px}.n-note{font-size:9px;color:#829e8f;line-height:1.8;margin:12px 0 18px}.n-empty{padding:30px 18px;border:1px dashed #90b79b55;color:#9cbaa7;font-size:11px;line-height:1.8;text-align:center}.recruit-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:20px 0 8px}.recruit-banner small{font:8px Manrope;letter-spacing:1.5px;color:#97c2a6}.recruit-banner b{display:block;font-size:15px;margin-top:6px;font-weight:500}.recruit-banner p{font:10px Manrope;margin:6px 0;color:#91ad9c}.recruit-banner button{min-width:96px;min-height:51px}.n-buff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#9ac4a62a;border:1px solid #9ac4a62a;margin:18px 0}.n-buff-grid>span{background:#102018;padding:10px 8px;font-size:8px;color:#98b69f}.n-buff-grid b{display:block;font:500 14px Manrope;color:#c4efd0;margin-top:5px}.n-select{display:block;font-size:10px;color:#9ec2ab;margin:16px 0}.n-select select{display:block;width:100%;margin-top:8px;background:#14251b;color:#dcf1e2;border:1px solid #a5cdb137;border-radius:2px;padding:7px 10px;font-size:11px!important}.station-board{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:14px 0}.station-board>div{border:1px solid #95bf9e2c;padding:10px 8px;min-width:0}.station-board small{font-size:8px;color:#83a18c}.station-board b{display:block;font-size:11px;margin:7px 0;font-weight:500}.station-board span{font-size:7px;color:#8daf97}.crew-card{display:grid;grid-template-columns:42px 1fr;column-gap:10px;padding:16px 0;border-bottom:1px solid #a0c5a62b;--grade:#99b6a2}.grade-C{--grade:#9fb3ad}.grade-B{--grade:#8bcbbc}.grade-A{--grade:#a1a0e9}.grade-S{--grade:#f2ce87}.crew-portrait{height:52px;position:relative;background:linear-gradient(135deg,#28392f,#0d1913);border:1px solid var(--grade);overflow:hidden}.crew-portrait i{display:block;width:18px;height:22px;border-radius:45% 45% 40% 40%;background:var(--grade);margin:8px auto;opacity:.75}.crew-portrait i:after{content:'';position:absolute;bottom:-17px;left:0;width:40px;height:36px;border-radius:50%;background:var(--grade);opacity:.65}.crew-portrait span{position:absolute;bottom:2px;right:3px;color:#edfff0;font:800 11px Manrope;z-index:1}.crew-details{align-self:center}.crew-details>small{font-size:8px;color:#819c89}.n-card-actions{display:flex;flex-wrap:wrap;gap:5px;grid-column:2/-1;margin-top:9px}.n-card-actions button{min-height:31px;font-size:9px;padding:5px 8px}.crew-card.injured{background:linear-gradient(90deg,#712a1c44,transparent);padding-left:7px}.crew-card.injured .crew-details>small{color:#ffa681}.ark-diagram{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:12px 42px;padding:20px 0;margin-top:8px}.ark-spine{position:absolute;top:15px;bottom:15px;left:50%;width:1px;background:#97c5a84a}.ark-spine img{position:absolute;width:32px;left:-16px;top:40%;background:#0c1811}.part-slot{border:1px solid #85b09a3d;background:#10261c;padding:10px;min-width:0}.part-slot[class*='grade-']{border-top:2px solid var(--grade)}.part-slot small{font-size:8px;color:#8fb49d}.part-slot b{display:block;margin:8px 0;font:500 12px Manrope;color:var(--grade,#acc7b5)}.part-slot span{font-size:8px;color:#a5c8b0}.module-card{display:grid;grid-template-columns:36px 1fr;gap:9px 10px;align-items:center;padding:16px 0;border-bottom:1px solid #aacbad2c}.grade-badge{display:grid;place-items:center;border:1px solid var(--grade);color:var(--grade);width:34px;height:39px;font:500 19px Manrope;clip-path:polygon(0 0,75% 0,100% 20%,100% 100%,0 100%)}.module-card>div>small{font-size:8px;color:#8bab96}.module-card .n-card-actions{margin:0}.story-entry{border-left:1px solid #9fc3a43c;padding:4px 0 18px 18px;margin:20px 0}.story-entry>small{font:8px Manrope;letter-spacing:1.2px;color:#87ac92}.story-entry h4{font-size:19px;font-weight:400;margin:12px 0;letter-spacing:-.5px}.story-entry p{font-size:11px;color:#b1c7b8;line-height:1.9}.story-entry.future{opacity:.4}.story-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px}.story-choices button{min-height:65px}.story-choices button.active:disabled{opacity:1}.story-choices button small{line-height:1.7}.talent-tree{border-left:1px solid #9bc3a848;margin:25px 0 0 7px;padding-left:17px}.talent-tree article{padding:0 0 25px}.talent-tree article>small{font:8px Manrope;letter-spacing:2px;color:#89aa92}.talent-tree h4{margin-top:10px;font-size:16px}.talent-tree p{color:#a7c5ae;font-size:10px}.talent-nodes{display:flex;gap:5px;margin:16px 0}.talent-nodes i{width:17px;height:17px;border:1px solid #9dcba54c;transform:rotate(45deg);margin-right:3px}.talent-nodes i.on{background:#9fe0b3;border-color:#b8f4c7}
#asteroid-alert{position:absolute;top:185px;left:14px;right:106px;padding:9px 12px;background:#482a1bef;border:1px solid #e9a87588;border-left:3px solid #f5bb80;border-radius:3px;text-align:left;pointer-events:auto;color:#ffe2be;z-index:14;display:grid;grid-template-columns:1fr auto;gap:3px 8px}#asteroid-alert[hidden]{display:none}#asteroid-alert>span{font-size:8px;letter-spacing:.2px}#asteroid-alert>b{grid-row:1/3;grid-column:2;font:500 27px Manrope}#asteroid-alert b small{font-size:9px;margin-left:2px}#asteroid-alert>small{font-size:8px;line-height:1.6}#asteroid-alert.critical{border-color:#ff754f;background:#60251ded;animation:asteroid-warn 1s infinite alternate}@keyframes asteroid-warn{to{box-shadow:0 0 26px #ff5d3e66}}.asteroid-active .pulse-track i{background:#ffa36b}.compact.asteroid-active .tutorial,.compact.asteroid-active #tutorial-restore{top:265px}.compact.asteroid-active #live-notice{top:265px}.compact.asteroid-active #bonus-chip{display:none}.compact #hit-alert{z-index:16;background:#7e271df2;color:#ffddc2;top:calc(180px + env(safe-area-inset-top));border-color:#ff996a}.compact.asteroid-active #hit-alert{top:255px}
.compact .main-menu{margin:6vh 22px 70px;width:calc(100% - 44px);position:relative;z-index:3}.compact .main-menu h1{font-family:Manrope,sans-serif;font-size:clamp(61px,17vw,88px);font-weight:300;letter-spacing:-5px;line-height:.99;margin:37px 0 23px;color:#edfff2;text-shadow:none}.compact .main-menu h1>span{display:block;font-weight:300;color:#e8fff1}.title-star{font-size:.65em;color:#99e6bc;vertical-align:top;margin-left:12px;line-height:1.1}.compact .main-menu h1 em{font:10px/1.5 system-ui;letter-spacing:5px;color:#a4c1ad;margin-top:24px;display:block}.compact .menu-kicker{font:8px Manrope;letter-spacing:2.7px;color:#a1bcaa}.compact .menu-kicker i{background:#9ff6c4;box-shadow:0 0 14px #80ffae88}.compact .menu-description{font-size:11px;line-height:1.9;color:#a5c1ae}.compact .main-menu-actions{width:100%;margin-top:28px}.compact .main-menu-actions button{border-color:#aad0b333;border-radius:0;background:transparent;padding:14px 0;min-height:45px;color:#b7d7c1;font-size:12px}.compact .main-menu-actions button span{color:#8faa98;font-size:9px}.compact .main-menu-actions #menu-play,.compact .main-menu-actions #menu-continue{border:1px solid #8edaa472;padding:14px 16px;background:#9bddb71c;color:#d6f9e1}.compact .menu-idle-note{border-color:#b3d3bb26;margin-top:20px;padding-top:16px}.compact .menu-idle-note b{font-size:11px;color:#b9d5c1;font-weight:400}.compact .menu-idle-note p{font-size:9px;color:#789f87}.compact .menu-save{color:#8aa891}.compact .menu-ship-label{display:none!important}.compact .shell-shade{background:linear-gradient(90deg,#06100eea,#071812ab 65%,#10432b33),linear-gradient(0deg,#07110fee,transparent 70%)}.compact #game-shell:after{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#a4d8b20b 1px,transparent 1px),linear-gradient(90deg,#a4d8b20b 1px,transparent 1px);background-size:100% 115px,25% 100%}.compact .shell-footer{font:7px Manrope;letter-spacing:1.5px;color:#779681;padding:0 22px}.compact .brand-intro h1{font-family:Manrope;font-weight:300;font-size:35px;letter-spacing:-1px}.compact .brand-intro p{font-size:9px;letter-spacing:1px;color:#a7c9b1}.intro-orbit{border:0!important;background:none!important;animation:none!important}.intro-orbit img{display:block;width:100%;height:100%;object-fit:contain}.compact .brand-intro{color:#dcf3e4}.compact .experience-dialog{background:#0f221b;border-color:#8fba9a55;border-radius:6px}.compact .experience-dialog p{color:#a9c6b2}.compact .experience-dialog button{border-radius:3px}.compact .tactical-map{background:#091713f5}.compact .map-chart{border-color:#94bfa340}.compact .map-legend{color:#9ec5aa}
@media(max-height:740px){#nomad-hud{top:108px}#nomad-hud strong{font-size:23px}#nomad-hud button{min-height:56px}.compact #radar-primary{top:176px}.compact .tutorial,.compact #tutorial-restore{top:176px}.compact .tutorial p{display:none}.compact .tutorial h2{font-size:12px;margin:6px 0}.compact .tutorial .tutorial-reward,.compact .tutorial .tutorial-track{display:none}.compact #quick-ships .fleet-card{height:79px;min-height:79px}.compact #quick-ships .fleet-card>svg{height:22px}.compact .home-mother{height:51px;min-height:51px}.compact .mother-caption>span{display:none}.compact #flight-actions button{min-height:35px}.compact #main-nav{height:48px}.compact #drawer{bottom:48px}.compact .roster-heading{padding-top:4px}.pulse-row{padding-bottom:5px}#pulse-fire{min-height:45px}#story-chip{min-height:22px}.compact .main-menu{margin-top:4vh}.compact .main-menu h1{font-size:61px;margin:22px 0 17px}.compact .main-menu-actions{margin-top:16px}.compact .main-menu-actions button{min-height:40px;padding:10px 0}.compact .menu-idle-note{margin-top:12px}.compact .main-menu-actions #menu-play,.compact .main-menu-actions #menu-continue{padding:11px 14px}#asteroid-alert{top:175px}.compact #hit-alert{top:175px}}
@media(prefers-reduced-motion:reduce){#pulse-fire.fired #pulse-pop,#asteroid-alert.critical{animation:none}}
.compact #main-nav{background:#0a1713}.compact #main-nav button{background:transparent}.compact #main-nav button.active{background:#91d9ac16}.compact #main-nav button.active:before{background:#a7e5b8}.compact .n-card-actions button{min-height:34px}
/* Living fleet / singularity expansion */
#singularity-focus{position:absolute;right:14px;top:252px;pointer-events:auto;display:grid;gap:4px;background:#0c2429bd;border:1px solid #91e5d943;color:#baeddf;padding:8px 10px;border-radius:4px;font:10px Manrope}#singularity-focus small{font-size:8px;color:#87b9ad}.compact #flight-actions #explore-button{background:#344c42;color:#d6f5df;display:grid;gap:2px}.compact #explore-button small{font-size:8px;color:#9dc8ac}.compact #quick-ships .fleet-card{min-width:105px;width:105px;flex-basis:105px}.compact #quick-ships .fleet-card>svg{height:33px;width:84px}.compact #quick-ships .card-class small{display:none}.compact #unit-command-open{padding:1px 5px;min-height:22px;border:0;background:transparent;color:#b0e1c7;font-size:9px}
.crew-portrait{background-repeat:no-repeat!important;border:1px solid #9dc7b44d!important;border-radius:5px!important;width:66px!important;height:76px!important;min-width:66px;position:relative;overflow:hidden}.crew-portrait>i{display:none}.crew-portrait>span{position:absolute;bottom:3px;left:3px;right:auto;top:auto;background:#0c231ddd;padding:2px 5px;color:#e1faed;font-size:10px}.crew-portrait.small{width:43px!important;height:43px!important;min-width:43px}.station-board{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.station-board .station-tile{position:relative;padding:0 0 9px;overflow:hidden;text-align:left;background:#112322;border:1px solid #6d988e52;min-height:156px;display:flex;flex-direction:column;align-items:flex-start;gap:3px}.station-tile.selected{outline:1px solid #adf5d2;background:#1c3c30!important}.station-art{height:70px;width:100%;background-image:url('./assets/station-interiors.png');background-size:300% 200%;background-repeat:no-repeat;border-bottom:1px solid #b9e9dc33}.station-tile>small,.station-tile>b,.station-tile>span{margin:0 7px}.station-tile>small{font-size:9px;color:#abd4c3;padding-top:4px}.station-tile>b{font-size:10px;font-weight:600}.station-tile>span{font-size:8px;color:#91b6a4}.station-tile>.crew-portrait{position:absolute;right:4px;top:48px;box-shadow:0 2px 8px #0008}.station-vacant{position:absolute;right:4px;top:50px;color:#90bbaa!important;border:1px dashed #8daf9c6b;width:29px;height:29px;display:grid;place-items:center;background:#10241bdc}.assigned-ships{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.assigned-ships>div{display:flex;gap:8px;align-items:center;background:#122820;padding:7px}.assigned-ships b,.assigned-ships small{display:block;font-size:10px}.assigned-ships small{color:#9ec4af;font-size:9px;margin-top:4px}.explore-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.explore-options button{min-height:94px!important;background:radial-gradient(ellipse at top,#3c6250,#132d25);font-size:13px!important}.explore-options small{display:block;font-size:9px;margin-top:12px;color:#a6ccb6}
.upgrade-flash{position:fixed;pointer-events:none;z-index:99999;border:1px solid #f2ffdf;border-radius:5px;background:#cbffd788;box-shadow:0 0 28px #a7ffd1;animation:upgrade-flash .6s ease-out forwards}.upgrade-flash i{position:absolute;left:50%;top:50%;height:2px;width:6px;background:#d5fff2;box-shadow:0 0 7px #c8ffe5;transform:rotate(var(--a)) translateX(10px);animation:upgrade-spark .6s ease-out forwards}@keyframes upgrade-flash{0%{opacity:1;transform:scale(.98)}45%{opacity:.6}100%{opacity:0;transform:scale(1.12)}}@keyframes upgrade-spark{to{transform:rotate(var(--a)) translateX(65px);opacity:0}}
@media(max-height:740px){#singularity-focus{top:231px;font-size:9px;padding:6px 8px}.compact #quick-ships .fleet-card>svg{height:26px}.station-art{height:62px}.station-board .station-tile{min-height:146px}}@media(prefers-reduced-motion:reduce){.upgrade-flash{animation-duration:.2s}.upgrade-flash i{display:none}}

.compact #bonus-chip{top:310px;max-width:160px}.compact #salvage-button,.compact #salvage-button b{color:#d1efdb!important}.compact #salvage-button small{color:#94c3ab!important}@media(max-height:740px){.compact #bonus-chip{top:282px}}
/* Returning commander's accumulated rewards and visible hull-production link. */
#nomad-energy.output-reduced span{color:#ffba82}
#ark-production-status{display:block;width:100%;padding:6px 10px;margin:0 0 5px;border:1px solid #e49b5e55;border-radius:8px;background:#36291fe6;color:#ffd4a6;text-align:center;font-size:10px;line-height:1.5;cursor:pointer}
#ark-production-status[hidden]{display:none}
.offline-rewards{width:min(400px,calc(100vw - 28px));max-height:calc(100dvh - 32px);box-sizing:border-box;overflow:auto;padding:25px 23px 20px;text-align:center;border:1px solid #75e8cb77;border-radius:23px;background:radial-gradient(ellipse at 50% 0,#19493d 0,transparent 55%),#0c1518;color:#edf9f4;box-shadow:0 25px 100px #000b}
.offline-rewards::backdrop{background:#02080de0;backdrop-filter:blur(9px)}
.offline-rewards h2{margin:14px 0 8px;font-size:clamp(22px,6vw,28px);line-height:1.35;letter-spacing:-.8px}
.offline-rewards>small{color:#9bd6c3;letter-spacing:2px;font-size:10px}
.offline-orbit{height:64px;width:64px;margin:0 auto 16px;border:1px solid #97f4cc77;border-radius:50%;display:grid;place-items:center;color:#c6ffe2;font-size:38px;box-shadow:0 0 40px #76ffb82b,inset 0 0 20px #76ffb817;animation:reward-arrival .65s ease-out}
.offline-time{font-size:11px!important;color:#a1bcb3!important}.offline-time b{color:#e2f9f0}
.offline-energy{padding:20px 5px 18px;margin:14px 0 0;border-top:1px solid #d1ffe51e}.offline-energy span{display:block;font-size:10px;letter-spacing:1px;color:#b4d3c8}.offline-energy strong{display:block;font-size:clamp(30px,9vw,45px);line-height:1.4;color:#c2ff94;letter-spacing:-1px;font-variant-numeric:tabular-nums;text-shadow:0 0 26px #a4ff5b40}
.offline-resources{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.offline-resources>div{border-radius:9px;background:#ffffff07;padding:12px 3px}.offline-resources small{display:block;font-size:10px;color:#9fb3b3}.offline-resources b{display:block;font-size:17px;margin-top:5px}
.offline-condition{text-align:left;border:1px solid #75e8cb22;border-radius:12px;padding:13px;margin:16px 0}.offline-condition.damaged{border-color:#ffb37355}.offline-condition>b{display:flex;justify-content:space-between;gap:8px;font-size:11px}.offline-condition>b span{color:#a9e2cb}.offline-condition.damaged>b span{color:#ffc196}.offline-condition p{font-size:11px!important;line-height:1.6;color:#b2c6c0!important;margin:8px 0!important}.offline-condition>small{font-size:10px;color:#a2b7ad}.offline-hull{height:4px;border-radius:3px;background:#ffffff15;margin-top:10px;overflow:hidden}.offline-hull i{display:block;height:100%;background:#8de3be}.damaged .offline-hull i{background:#edac76}
.offline-rewards .primary,.offline-rewards .wide-button{width:100%;padding:13px 8px;min-height:44px;border-radius:9px;margin:4px 0;font-size:12px}.offline-rewards .primary{background:#c5f7ad;color:#173522;border:0;font-weight:800}.offline-footnote{font-size:9px!important;color:#88a199!important;line-height:1.6;margin:11px 0 0!important}
@keyframes reward-arrival{from{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.offline-orbit{animation:none}}
.crew-card{grid-template-columns:66px minmax(0,1fr);column-gap:12px}.crew-details{min-width:0}.crew-details h4{overflow-wrap:anywhere}.crew-card .n-card-actions{grid-column:2}
/* Module-specific technical silhouettes. */
.module-pictogram{width:52px;height:52px;color:#b6ead7;flex-shrink:0;overflow:visible}.module-pictogram path{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.pictogram-orbit{fill:#97d5ba08;stroke:currentColor;stroke-opacity:.16;stroke-width:.8}.part-slot .module-pictogram{width:46px;height:46px;margin:0 auto 7px;display:block}.part-slot{min-height:133px}.module-token{position:relative;display:grid;place-items:center;width:54px;height:63px}.module-token .grade-badge{position:absolute;right:-2px;bottom:0;font-size:10px;width:20px;height:21px;min-width:0;display:grid;place-items:center;background:#0c211e}.module-card{grid-template-columns:54px minmax(0,1fr)!important;column-gap:12px}.module-card .n-card-actions{grid-column:2}.grade-S .module-pictogram{color:#f7d798}.grade-A .module-pictogram{color:#cbb6ff}.grade-B .module-pictogram{color:#9ccfff}
.danger-link{margin-top:24px!important;color:#f5b6a4!important;border-color:#ce715455!important}.reset-dialog{max-width:min(400px,calc(100vw - 28px));border:1px solid #c8806766}.reset-dialog h2{font-size:23px;line-height:1.4}.reset-dialog p{font-size:12px;line-height:1.8}.reset-ack{display:flex;gap:10px;align-items:flex-start;line-height:1.7;padding:14px 0;font-size:12px}.reset-ack input{flex-shrink:0;margin-top:5px}.danger-confirm{width:100%;padding:14px 10px;background:#783e31;color:#fff0e7;border:1px solid #e3a48c;margin:8px 0}.danger-confirm:disabled{opacity:.3}.reset-dialog::backdrop{background:#02080de0}
/* Keep action guidance readable while a bottom sheet is open. */
.compact .tutorial.over-sheet{top:75px!important;bottom:auto!important;left:12px!important;right:12px!important;width:auto!important;max-height:215px;overflow:auto;z-index:31}.compact .tutorial.over-sheet h2{font-size:13px;margin:5px 0}.compact .tutorial.over-sheet p{font-size:10px;margin:4px 0;line-height:1.5}.compact .tutorial.over-sheet .tutorial-reward{display:none}.compact .tutorial.over-sheet #tutorial-action{padding:6px}

.compact .tutorial-heading #tutorial-details{min-width:38px;white-space:nowrap;padding:0 5px;flex-shrink:0}
