.sg-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;background:#02040acc;padding:.6rem}.sg-window{width:min(720px,100%);max-height:100%;overflow:auto;background:var(--panel, #0c1220);border:2px solid var(--accent);border-radius:18px;box-shadow:0 18px 50px #000c;display:flex;flex-direction:column}.sg-head{display:flex;align-items:center;gap:.6rem;padding:.55rem .8rem;border-bottom:1px solid var(--line)}.sg-head h2{margin:0;font-size:1.15rem;flex:1}.sg-goal{margin:0;padding:.4rem .8rem;font-size:.95rem;color:var(--muted)}.sg-body{padding:.6rem .8rem .9rem}.sg-center{display:grid;place-items:center;gap:.8rem;padding:1rem;text-align:center}.sg-time{height:8px;border-radius:99px;background:#ffffff1a;overflow:hidden;margin-bottom:.5rem}.sg-time span{display:block;height:100%;transition:width .1s linear}.sg-row{display:flex;gap:.5rem;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:.5rem}.sg-chip{background:#ffffff12;border:1px solid var(--line);border-radius:99px;padding:.15rem .6rem;font-weight:700}.sg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:.45rem}.sg-tile{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.5rem .3rem;border-radius:14px;border:2px solid var(--line);background:#ffffff0d;color:inherit;cursor:pointer;touch-action:manipulation;min-height:64px}.sg-tile:active{transform:scale(.96)}.sg-tile.ok{border-color:var(--good);background:#46d39a22}.sg-tile.bad{border-color:var(--bad);background:#ff5d7322}.sg-big{font-size:2rem;line-height:1}.shake{animation:sg-shake .3s;border-color:var(--bad)!important}@keyframes sg-shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media(prefers-reduced-motion:reduce){.shake{animation:none}}.sg-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem}.sg-choice{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.6rem;border-radius:14px;border:2px solid var(--line);background:#ffffff0d;color:inherit;cursor:pointer}.sg-choice:disabled{opacity:.45;cursor:not-allowed}.sg-stars{font-size:2.4rem;letter-spacing:.2rem}.sg-fact{background:#0b1a2e;border:1px solid #38bdf855;border-radius:12px;padding:.6rem .8rem;text-align:left;font-size:.92rem}.sg-fact a{color:#7dd3fc;font-size:.8rem}.sg-recipe{display:flex;justify-content:center;gap:.5rem;margin:.3rem 0}.sg-recipe-step{font-size:2.1rem;padding:.2rem .4rem;border-radius:12px;border:2px dashed var(--line);opacity:.6}.sg-recipe-step.next{opacity:1;border-color:var(--warn);border-style:solid}.sg-recipe-step.done{opacity:1;border-color:var(--good);border-style:solid;background:#46d39a22}.sg-pot{text-align:center;font-size:2.6rem;margin:.2rem 0 .5rem}.sg-steam{font-size:1.1rem;vertical-align:top}:root{--bg: #05060a;--bg-2: #0b0e17;--panel: #101524;--panel-2: #182036;--line: #2a3759;--text: #f8fafc;--muted: #94a3b8;--accent: #38bdf8;--accent-2: #7dd3fc;--good: #46d39a;--warn: #ffd166;--bad: #ff5d73;--info: #7fb8ff;--radius: 12px;--font: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);line-height:1.45}body{background:radial-gradient(1200px 600px at 80% -10%,#0d1b38 0%,transparent 60%),radial-gradient(900px 500px at -10% 110%,#091326 0%,transparent 60%),#030408;min-height:100vh}h1,h2,h3,h4{margin:0 0 .5rem;line-height:1.2}h3{font-size:1rem;letter-spacing:.02em}a{color:var(--accent-2)}button{font:inherit;color:inherit}input,select{font:inherit;color:var(--text);background:var(--bg-2);border:1px solid var(--line);border-radius:8px;padding:.45rem .6rem;min-width:0}:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:.875rem}.tiny{font-size:.75rem}.center{text-align:center}.up,.good{color:var(--good)}.down,.bad{color:var(--bad)}.warn{color:var(--warn)}.danger{color:var(--bad)}.info{color:var(--info)}.row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-content:space-between}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;color:var(--accent-2);margin:0;display:flex;gap:.4rem;align-items:center}.btn{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:.55rem .9rem;cursor:pointer;transition:background .15s,border-color .15s}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#1a0b05;font-weight:700}.btn.primary:hover:not(:disabled){background:var(--accent-2)}.btn.ghost{background:transparent}.btn.small{padding:.3rem .6rem;font-size:.85rem}.btn.big{width:100%;padding:.8rem 1rem;font-size:1rem;margin-top:.5rem}.chip{border:1px solid var(--line);background:var(--bg-2);border-radius:999px;padding:.25rem .7rem;cursor:pointer;font-size:.85rem}.chip.on{background:var(--accent);border-color:var(--accent);color:#1a0b05;font-weight:700}.chip.big{padding:.5rem .9rem;font-size:.95rem}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;flex-wrap:wrap}.segmented button{background:transparent;border:0;padding:.45rem .8rem;cursor:pointer}.segmented button.on{background:var(--accent);color:#1a0b05;font-weight:700}.badge{display:inline-block;font-size:.68rem;font-weight:700;padding:.1rem .45rem;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);letter-spacing:.03em}.badge.bad{background:#4a1820;border-color:var(--bad);color:#ffd0d6}.badge.good{background:#143d2c;border-color:var(--good)}.badge.info{background:#172a44;border-color:var(--info)}.badge.alert{background:#4a3a10;border-color:var(--warn);color:#fff1c7}.panel{background:linear-gradient(180deg,var(--panel) 0%,var(--bg-2) 100%);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;display:flex;flex-direction:column;gap:.6rem}.panel.narrow{max-width:760px;margin:0 auto;width:100%}.field{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.check{display:flex;gap:.5rem;align-items:center;font-size:.9rem;cursor:pointer}.check input{width:1.1rem;height:1.1rem;padding:0;flex:none;accent-color:var(--accent)}.meter{height:8px;background:#120a08;border-radius:99px;overflow:hidden;border:1px solid #00000055}.meter-fill{height:100%;border-radius:99px;transition:width .4s ease}.meter-fill.good{background:var(--good)}.meter-fill.warn{background:var(--warn)}.meter-fill.bad{background:var(--bad)}.menu{max-width:900px;min-height:100vh;margin:0 auto;padding:1.5rem 1rem 3rem;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem}.hero{text-align:center;padding:.5rem 0}.hero h1{font-size:clamp(2.4rem,7vw,4rem);letter-spacing:-.02em;background:linear-gradient(90deg,#ffb37f,#ff5d2a);-webkit-background-clip:text;background-clip:text;color:transparent;margin:.3rem 0 0}.tagline{font-size:1.2rem;color:var(--accent-2);margin:0 0 .5rem}.pitch{max-width:640px;margin:0 auto;color:var(--muted)}.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;width:100%}.card-carousel{width:100%;max-width:520px;display:flex;flex-direction:column;align-items:center;gap:.9rem}.carousel-tabs{display:flex;gap:.35rem;width:100%;justify-content:center;flex-wrap:wrap}.carousel-tab{background:var(--bg-2);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:.35rem .8rem;font-size:.82rem;cursor:pointer;transition:all .2s ease}.carousel-tab:hover{color:var(--text);border-color:var(--muted)}.carousel-tab.on{background:var(--accent);color:#1a0b05;border-color:var(--accent);font-weight:700}.carousel-card{width:100%;min-height:330px;box-shadow:0 16px 48px #000000b3;animation:cardFadeIn .22s ease-out}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.carousel-nav{display:flex;justify-content:space-between;align-items:center;width:100%;padding-top:1rem;border-top:1px solid var(--line);margin-top:auto;gap:.5rem}.carousel-dots{display:flex;gap:.45rem;align-items:center}.carousel-dot{width:9px;height:9px;border-radius:50%;background:var(--line);border:none;cursor:pointer;padding:0;transition:all .2s ease}.carousel-dot.on{background:var(--accent);transform:scale(1.3)}.game{display:flex;flex-direction:column;min-height:100vh}.topbar{display:flex;align-items:center;gap:1rem;padding:.6rem 1rem;border-bottom:1px solid var(--line);background:#0f0807cc;position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-wrap:wrap}.brand{font-weight:800;letter-spacing:.02em}.topbar-info{display:flex;gap:1rem;align-items:baseline;flex:1;flex-wrap:wrap}.sol{font-family:var(--mono);font-weight:800;font-size:1.15rem;color:var(--accent-2)}.tip{margin:.75rem 1rem 0;padding:.6rem .9rem;border-left:4px solid var(--info);background:#13203a;border-radius:8px;font-size:.92rem}.layout{display:grid;grid-template-columns:minmax(250px,1fr) minmax(340px,1.6fr) minmax(280px,1.1fr);gap:1rem;padding:1rem;align-items:start}.col{display:flex;flex-direction:column;gap:1rem;min-width:0}@media(max-width:1100px){.layout{grid-template-columns:1fr 1fr}.col.wide{grid-column:1 / -1;order:-1}}@media(max-width:700px){.layout{grid-template-columns:1fr;padding:.75rem}.topbar{gap:.3rem .8rem}.topbar-info{gap:.2rem .8rem;order:3;flex-basis:100%}.brand{flex:1}}@media(orientation:portrait)and (max-width:700px){.rescue-help:before{content:"📱 Rotate your phone to see better.";flex-basis:100%;color:var(--warn)}}.resource{display:flex;flex-direction:column;gap:.3rem}.resource-head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.resource-head.as-button{background:none;border:0;padding:0;cursor:pointer;text-align:left;width:100%}.resource-head strong{font-family:var(--mono)}.flow-list{list-style:none;margin:.2rem 0 0;padding:.5rem .6rem;background:#0f0807;border-radius:8px;font-size:.82rem;display:flex;flex-direction:column;gap:.3rem}.why{display:block;color:var(--muted);font-size:.75rem}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}@media(max-width:480px){.module-grid{grid-template-columns:repeat(2,1fr)}}.module{background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:.6rem;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"icon name int" "meter meter meter" "badges badges badges";gap:.3rem .45rem;align-items:center;cursor:pointer;text-align:left}.module:hover{border-color:var(--accent)}.module.selected{border-color:var(--good);box-shadow:0 0 0 1px var(--good) inset}.module.leak{border-color:var(--bad)}.module.sealed{opacity:.75;background:repeating-linear-gradient(45deg,#1d1210,#1d1210 8px,#241714 8px,#241714 16px)}.module-icon{grid-area:icon;font-size:1.2rem}.module-name{grid-area:name;font-size:.85rem;font-weight:600}.module-int{grid-area:int;font-family:var(--mono);font-size:.85rem}.module .meter{grid-area:meter}.badges{grid-area:badges;display:flex;gap:.25rem;flex-wrap:wrap;min-height:0}.crew-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.crew{background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:.55rem .7rem;display:flex;flex-direction:column;gap:.25rem}.crew.dead{opacity:.55}.crew-head{display:flex;justify-content:space-between;gap:.5rem}.crew-name{font-weight:700}.status{font-size:.75rem;font-weight:700;padding:.1rem .5rem;border-radius:99px}.status.healthy{background:#143d2c;color:var(--good)}.status.injured{background:#4a3a10;color:var(--warn)}.status.critical{background:#4a1820;color:var(--bad)}.status.dead{background:#2a2a2a;color:#aaa}.rad{display:grid;grid-template-columns:3.5rem 1fr;align-items:center;gap:.4rem}.event{border-color:#6a3a2a}.event-head{display:flex;gap:.8rem;align-items:center}.event-icon{font-size:2.2rem}.options{display:flex;flex-direction:column;gap:.5rem}.option-main{width:100%;text-align:left;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:.65rem .8rem;display:flex;flex-direction:column;gap:.2rem}button.option-main{cursor:pointer}button.option-main:hover:not(:disabled){border-color:var(--accent)}.option-main:disabled{opacity:.5;cursor:not-allowed}.option.chosen .option-main{border-color:var(--good);background:#12291f;opacity:1}.option-main span{font-size:.85rem;color:var(--muted)}.tags{display:flex;gap:.3rem;flex-wrap:wrap}.vote-row{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.3rem}.fact{background:#13203a;border:1px solid #2c4670;border-radius:10px;padding:.55rem .75rem;font-size:.88rem}.fact summary{cursor:pointer;font-weight:600}.fact p{margin:.4rem 0}.trapped{border-top:1px dashed var(--line);padding-top:.6rem}.trapped h4{color:var(--warn);font-size:.9rem}.systems{display:flex;flex-direction:column;gap:.55rem}.system{display:flex;flex-direction:column;gap:.25rem}.system-label{display:flex;justify-content:space-between;gap:.4rem;font-size:.9rem}.stepper{display:grid;grid-template-columns:2.4rem 1fr 2.4rem;gap:.4rem;align-items:center}.stepper .btn{padding:.3rem 0;font-size:1.1rem;font-weight:700}.pips{display:flex;gap:4px}.pip{flex:1;height:14px;border-radius:4px;background:#120a08;border:1px solid var(--line)}.pip.on{background:var(--accent);border-color:var(--accent)}.errors{margin:0;padding-left:1.1rem;color:var(--warn);font-size:.85rem}.advisors{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.advisors li{background:var(--bg-2);border-radius:8px;padding:.45rem .6rem;border:1px solid var(--line)}.advisors p{margin:.15rem 0 0;font-size:.86rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b0;display:grid;place-items:center;z-index:50;padding:1rem}.modal{background:var(--panel);border:1px solid var(--line);border-radius:16px;width:min(560px,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.75rem;outline:none}.modal.wide{width:min(760px,100%)}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.modal-header h2{margin:0;font-size:1.2rem}.report{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem;font-size:.92rem}.report li{padding:.35rem .6rem;border-radius:8px;background:var(--bg-2);border-left:4px solid var(--line);color:var(--text)}.report li.good{border-left-color:var(--good)}.report li.bad{border-left-color:var(--bad)}.report li.alert{border-left-color:var(--warn);background:#2c2410}.report li.info{border-left-color:var(--info)}.fact.open p{margin:.35rem 0}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:.5rem}.stats div{background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:.6rem;text-align:center;display:flex;flex-direction:column}.stats strong{font-size:1.5rem;font-family:var(--mono);color:var(--accent-2)}.stats span{font-size:.75rem;color:var(--muted)}.rescuers{display:flex;gap:.4rem;flex-wrap:wrap}.risk{border-radius:10px;padding:.6rem .8rem;border:1px solid var(--line);display:flex;flex-direction:column;gap:.25rem}.risk ul{margin:0;padding-left:1rem;color:var(--muted)}.risk.low{border-color:var(--good);background:#12291f}.risk.medium{border-color:var(--warn);background:#2c2410}.risk.high{border-color:var(--accent);background:#3a1d10}.risk.critical{border-color:var(--bad);background:#3a1018}.mission-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#030408;z-index:40;display:flex;align-items:center;justify-content:center;padding:.5rem}.rescue{width:min(1100px,100%);display:flex;flex-direction:column;gap:.5rem}.rescue-stage{width:100%;aspect-ratio:16 / 9;max-height:calc(100vh - 170px);background:#05060a;border-radius:12px;overflow:hidden;position:relative;border:1px solid var(--line)}.rescue-stage canvas{display:block}.rescue-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;margin:0;color:var(--muted)}.rescue-help{display:flex;justify-content:space-between;gap:.5rem;align-items:center;font-size:.85rem;color:var(--muted);flex-wrap:wrap}kbd{font-family:var(--mono);background:var(--panel-2);border:1px solid var(--line);border-radius:4px;padding:0 .3rem;font-size:.8rem}.touch-controls{display:none;justify-content:space-between;gap:.5rem;user-select:none;-webkit-user-select:none;touch-action:none}.touch-controls>div{display:flex;gap:.5rem}.touch{min-width:72px;min-height:64px;border-radius:14px;border:1px solid var(--line);background:var(--panel-2);font-weight:800;font-size:1.1rem;touch-action:none}.touch.primary{background:var(--accent);color:#1a0b05;min-width:110px}@media(pointer:coarse),(max-width:800px){.touch-controls{display:flex}}.table{width:100%;border-collapse:collapse;font-size:.9rem}.table th,.table td{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--line)}.table th{color:var(--muted);font-weight:600;font-size:.8rem}@media(max-width:560px){.table th:nth-child(7),.table td:nth-child(7){display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.play{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:#030408}.topbar2{display:flex;align-items:center;gap:.35rem;padding:.35rem .6rem;background:#060811;border-bottom:1px solid var(--line);flex-wrap:wrap}.topbar2 .spacer{flex:1}.icon-btn{background:transparent;border:1px solid var(--line);border-radius:8px;padding:.2rem .55rem;cursor:pointer;font-size:1rem}.pill{display:inline-flex;align-items:center;gap:.35rem;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:.2rem .65rem;font-size:.95rem}.pill b{font-family:var(--mono)}.pill small{color:var(--muted);font-family:var(--mono)}.pill.low{border-color:var(--bad);background:#3a1018;animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:.55}}.bar{display:inline-block;width:46px;height:6px;background:#000;border-radius:99px;overflow:hidden;vertical-align:middle}.bar>span{display:block;height:100%;border-radius:99px;transition:width .3s}.speed2{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.speed2 button{background:transparent;border:0;padding:.3rem .6rem;cursor:pointer;font-size:.75rem;letter-spacing:-2px}.speed2 button.on{background:var(--accent);color:#1a0b05;font-weight:800}.stage-wrap{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.base-stage{height:100%;max-width:100%;aspect-ratio:16 / 9;position:relative;overflow:hidden}.base-stage canvas{display:block;cursor:pointer;touch-action:none}.base-stage.placing{box-shadow:inset 0 0 0 3px var(--good)}.banner{position:absolute;top:.6rem;left:50%;transform:translate(-50%);display:flex;gap:.6rem;pointer-events:none;z-index:3}.banner-item{font-size:1.6rem;padding:.2rem .9rem;border-radius:14px;background:#000c;border:2px solid var(--line)}.banner-item b{font-family:var(--mono)}.banner-item.alert{border-color:var(--warn);animation:blink .8s steps(2) infinite}.banner-item.danger{border-color:var(--bad);background:#3a1018dd}.banner-item.warn{border-color:#c9a27a}.banner-item.info{border-color:var(--info)}.tutorial{position:absolute;bottom:.6rem;left:50%;transform:translate(-50%);background:#12291fee;border:2px solid var(--good);border-radius:999px;padding:.35rem 1rem;font-size:1rem;z-index:3;pointer-events:none;white-space:nowrap}.tut-icon{font-size:1.3rem}.toasts{position:absolute;top:.6rem;right:.6rem;display:flex;flex-direction:column;gap:.3rem;align-items:flex-end;pointer-events:none;z-index:3;max-width:45%}.toast2{background:#000c;border-left:4px solid var(--line);border-radius:8px;padding:.25rem .6rem;font-size:.85rem;animation:fadein .25s}.toast2.good{border-left-color:var(--good)}.toast2.bad{border-left-color:var(--bad)}.toast2.alert{border-left-color:var(--warn)}.toast2.info{border-left-color:var(--info)}@keyframes fadein{0%{opacity:0;transform:translateY(-4px)}}.paused-chip{position:absolute;left:.6rem;top:.6rem;z-index:3;font-size:1.4rem;background:#000c;border:2px solid var(--accent);border-radius:12px;padding:.2rem .7rem;cursor:pointer}.bottombar{display:flex;gap:.5rem;padding:.4rem .6rem;background:#060811;border-top:1px solid var(--line);align-items:stretch}.crewbar{display:flex;gap:.45rem;flex:1;overflow-x:auto}.crew-card{display:flex;gap:.5rem;align-items:center;background:var(--panel);border:2px solid var(--line);border-radius:12px;padding:.3rem .55rem;cursor:pointer;text-align:left;min-width:190px}.crew-card.on{border-color:var(--accent-2);box-shadow:0 0 0 2px #ffb37f55}.crew-card.urgent{border-color:var(--bad);animation:blink .8s steps(2) infinite}.crew-card.dead{opacity:.45;cursor:default}.avatar{width:38px;height:38px;border-radius:50%;border:3px solid;display:grid;place-items:center;font-size:1.2rem;background:#eef1f5;flex:none}.crew-info{display:flex;flex-direction:column;gap:2px;min-width:0}.crew-name2{font-weight:700;font-size:.9rem;display:flex;gap:.3rem;align-items:center}.need{font-size:1.05rem}.bars{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:2px 4px;align-items:center;font-size:.7rem}.bars .bar{width:40px;height:5px}.keys{font-size:.65rem;color:var(--muted);font-family:var(--mono)}.build2{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}.build-group{display:flex;gap:.3rem;align-items:center;background:#1a100d;border:1px solid var(--line);border-radius:14px;padding:.2rem .35rem}.group-icon{font-size:1.1rem;opacity:.7;padding:0 .15rem}.build-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:var(--panel);border:2px solid var(--line);border-radius:12px;padding:.2rem .45rem;cursor:pointer;min-width:50px}.build-btn .big-icon{font-size:1.5rem}.build-btn small{font-family:var(--mono);font-size:.7rem}.build-btn.on{border-color:var(--good);background:#12291f}.build-btn:disabled{opacity:.4;cursor:not-allowed}.intro-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000b;display:grid;place-items:center;z-index:60;cursor:pointer;padding:1rem}.intro-card{background:var(--panel);border:2px solid var(--accent);border-radius:20px;padding:1.6rem 2rem;text-align:center;max-width:520px;display:flex;flex-direction:column;gap:.7rem}.intro-icons{font-size:2.6rem;letter-spacing:.15em}.intro-card p{font-size:1.2rem;margin:0}.dots{display:flex;gap:6px;justify-content:center}.dots span{width:9px;height:9px;border-radius:50%;background:var(--line)}.dots span.on{background:var(--accent)}.big-stats{font-size:1.4rem;text-align:center;font-family:var(--mono)}@media(max-width:900px){.play{height:auto;min-height:100vh;overflow:visible}.base-stage{width:100%;height:auto}.bottombar{flex-direction:column}.crewbar{display:grid;grid-template-columns:1fr 1fr}.crew-card{min-width:0}.build2{justify-content:center}.tutorial{position:static;transform:none;margin:.4rem auto;white-space:normal;text-align:center}.stage-wrap{flex-direction:column}.pill{font-size:.8rem;padding:.15rem .45rem}.pill .bar{display:none}}@media(orientation:portrait)and (max-width:700px){.stage-wrap:before{content:"📱↻ Rotate your phone to play better";color:var(--warn);font-size:.85rem;padding:.3rem}}.build-menu{position:relative}.build-main{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:#2a1a12;border:2px solid var(--accent);border-radius:14px;padding:.3rem .8rem;cursor:pointer;min-width:84px;height:100%}.build-main.on{background:var(--accent);color:#1a0b05}.build-main small{font-family:var(--mono);font-size:.7rem}.build-panel{position:absolute;right:0;bottom:calc(100% + 8px);width:min(560px,92vw);max-height:70vh;overflow-y:auto;background:var(--panel);border:2px solid var(--accent);border-radius:16px;padding:.6rem;display:flex;flex-direction:column;gap:.35rem;z-index:40;box-shadow:0 12px 40px #000c}.build-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:.35rem;align-items:stretch}.build-need{font-weight:700;font-size:.85rem;display:flex;align-items:center}.build-item{display:flex;gap:.45rem;align-items:center;text-align:left;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:.3rem .5rem;cursor:pointer}.build-item:hover:not(:disabled){border-color:var(--good)}.build-item:disabled{opacity:.4;cursor:not-allowed}.build-text{display:flex;flex-direction:column;flex:1;line-height:1.2}.build-text b{font-size:.85rem}.build-text small{font-size:.7rem}.build-cost{font-family:var(--mono);font-size:.75rem}.placing{position:absolute;top:3.6rem;left:50%;transform:translate(-50%);background:#12291fee;border:2px solid var(--good);border-radius:12px;padding:.35rem .9rem;z-index:4;font-size:.95rem;white-space:nowrap}.robotbar{display:flex;gap:.3rem;align-items:stretch;flex-wrap:wrap;max-width:300px}.robot-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:var(--panel);border:2px solid var(--line);border-radius:10px;padding:.15rem .35rem;cursor:pointer;font-size:1.1rem;min-width:44px}.robot-chip small{font-size:.75rem}.robot-chip .bar{width:30px;height:4px}.robot-chip.on{border-color:#7fdbff;box-shadow:0 0 0 2px #7fdbff55}.robot-chip.idle{border-style:dashed}.idle-btn.has{border-color:var(--warn);animation:blink 1.2s steps(2) infinite}.idle-btn b{font-family:var(--mono);font-size:.85rem}@media(max-width:900px){.build-row{grid-template-columns:1fr}.robotbar{max-width:none;justify-content:center}.placing{white-space:normal;top:auto;bottom:3rem}}.inst-logos{display:flex;gap:1rem;justify-content:center;align-items:center;margin-bottom:.6rem;flex-wrap:wrap}.inst-logo{height:64px;width:auto;background:#fff;padding:6px 10px;border-radius:10px;box-shadow:0 4px 16px #000a}.bg-logos{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;overflow:hidden}.bg-logo-row{position:absolute;right:14px;bottom:12px;display:flex;gap:8px}.bg-logo{height:40px;opacity:.35;background:#fff;padding:4px 8px;border-radius:8px}.menu-bg-logos{position:fixed}.menu{position:relative;z-index:2}.main-start-panel{gap:.9rem;padding:1.25rem;box-shadow:0 16px 48px #0009}.crew-names-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.5rem;margin-top:.25rem}.crew-name-box{display:flex;flex-direction:column;gap:.25rem;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:.45rem .55rem}.start-actions{display:flex;flex-direction:column;gap:.5rem}.quick-join-row{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;background:var(--bg-2);border:1px dashed var(--line);border-radius:10px;padding:.5rem .75rem;font-size:.88rem}.extra-bar{border-top:1px solid var(--line);padding-top:.5rem}.adv-details{border-top:1px solid var(--line);padding-top:.5rem;font-size:.88rem}.adv-details summary{cursor:pointer;color:var(--muted);font-weight:600}.adv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.75rem;margin-top:.6rem}.pill.as-btn{cursor:pointer;font:inherit;color:inherit}.pill.as-btn:hover{border-color:var(--accent)}.rescue-pill{border-color:#38bdf8;background:#0c192e}.online-pill{border-color:var(--good);background:#0d261d}.zoom-box{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--line);border-radius:8px;padding:1px;background:var(--bg-2)}.zoom-box .icon-btn{border:0;padding:.15rem .4rem;font-size:.82rem}.zoom-pct{font-family:var(--mono);min-width:46px}.icon-btn.on{background:var(--accent);color:#04101c;border-color:var(--accent);font-weight:700}.rules-btn{font-size:.85rem;font-weight:600}.priority-hud{position:absolute;top:.5rem;left:.6rem;z-index:3;display:inline-flex;align-items:center;gap:.5rem;background:#070b14ee;border:1.5px solid var(--line);border-radius:999px;padding:.25rem .75rem;font-size:.86rem;max-width:min(560px,60vw);pointer-events:none}.priority-hud.danger{border-color:var(--bad);background:#2c0b14ee}.priority-hud.alert{border-color:var(--warn)}.priority-hud.good{border-color:var(--good)}.prio-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage-dots{display:inline-flex;gap:4px;margin-left:.25rem}.sdot{width:7px;height:7px;border-radius:50%;background:#26324d}.sdot.done{background:var(--good)}.sdot.now{background:var(--warn);box-shadow:0 0 6px var(--warn)}.crewbar-wrap{display:flex;gap:.4rem;flex:1;align-items:stretch;min-width:0}.role-shape{font-size:.85rem}.role-tag{font-weight:500;font-size:.7rem;color:var(--muted)}.synergy-pill{background:#143d2c;border:1px solid var(--good);color:#a7f3d0;border-radius:99px;padding:0 .35rem;font-size:.68rem;font-weight:700}.crew-actions-row{display:flex;align-items:center;justify-content:space-between;gap:.35rem;margin-top:1px}.skill-btn{background:var(--bg-2);border:1px solid var(--line);border-radius:6px;padding:.1rem .4rem;font-size:.68rem;cursor:pointer;white-space:nowrap}.skill-btn.ready{background:#132a4a;border-color:var(--accent);color:#e0f2fe;font-weight:700}.skill-btn.ready:hover{background:var(--accent);color:#05101c}.skill-btn:disabled{opacity:.5;cursor:not-allowed}.ping-bar{display:flex;flex-direction:column;justify-content:center;gap:2px}.ping-btn{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:.1rem .35rem;cursor:pointer;font-size:.9rem;line-height:1.1}.ping-btn:hover{border-color:var(--accent)}.intro-header{display:flex;justify-content:space-between;align-items:center}.intro-nav{display:flex;justify-content:space-between;gap:.6rem;margin-top:.4rem}.dot-btn{width:12px;height:12px;border-radius:50%;border:0;background:var(--line);cursor:pointer;padding:0}.dot-btn.on{background:var(--accent);transform:scale(1.2)}.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.5rem}.tech-card{display:flex;gap:.5rem;align-items:center;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:.5rem;opacity:.55}.tech-card.unlocked{opacity:1;border-color:var(--good);background:#0f2920}.eq-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.45rem;max-height:42vh;overflow-y:auto}.eq-item{background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:.45rem .6rem;display:flex;flex-direction:column;gap:.2rem}.eq-item.found{border-color:#38bdf8;background:#0b192e}.eq-item.locked{opacity:.5}.eq-formula{font-family:var(--mono);font-weight:800;color:#7dd3fc;font-size:.95rem}.eq-desc{display:flex;flex-direction:column;font-size:.78rem}.eq-desc span{color:var(--muted)}.online-box{display:flex;flex-direction:column;gap:.75rem}.room-card{background:var(--bg-2);border:2px solid var(--accent);border-radius:12px;padding:.85rem;display:flex;flex-direction:column;gap:.5rem}.room-code{font-family:var(--mono);font-size:2rem;font-weight:900;letter-spacing:.18em;color:var(--warn)}.peer-list{margin:0;padding-left:1.2rem;display:flex;flex-direction:column;gap:.25rem}.break-banner{position:absolute;bottom:3.5rem;left:50%;transform:translate(-50%);z-index:10;background:#0f243cee;border:2px solid var(--accent);border-radius:14px;padding:.6rem 1rem;display:flex;gap:.8rem;align-items:center;flex-wrap:wrap;font-size:.9rem}.hi-vis{--line: #60a5fa;--muted: #e2e8f0;font-size:106%}.hi-vis .pill,.hi-vis .crew-card,.hi-vis .panel,.hi-vis .btn{border-width:2px}.hi-vis .bar{height:8px}.hi-vis .priority-hud{font-size:.98rem;border-width:2px}.minimap{position:absolute;left:.6rem;bottom:.6rem;z-index:3;display:flex;align-items:flex-end;gap:.3rem;background:#070b14dd;border:1.5px solid var(--line);border-radius:12px;padding:.3rem}.minimap canvas{display:block;width:min(250px,34vw);height:auto;cursor:crosshair;touch-action:none}.minimap .icon-btn:disabled{opacity:.4;cursor:default}.lang-switch{display:inline-flex;gap:2px;border:1px solid var(--line);border-radius:8px;padding:2px;background:var(--bg-2)}.lang-switch button{display:inline-flex;align-items:center;gap:4px;background:transparent;border:0;border-radius:6px;padding:.15rem .4rem;cursor:pointer;color:inherit;font-size:.78rem;font-weight:700;opacity:.55}.lang-switch button svg{border-radius:2px;box-shadow:0 0 0 1px #0006}.lang-switch button.on{opacity:1;background:var(--accent);color:#04101c}.lang-switch.floating{position:fixed;top:.6rem;right:.6rem;z-index:50}.simple-start{width:min(440px,100%);margin:0 auto;display:flex;flex-direction:column;gap:.7rem}.simple-start input{font-size:1.1rem;padding:.55rem .7rem}.simple-start .btn.big{width:100%}.more-options{display:flex;flex-direction:column;gap:.5rem;margin-top:.6rem}.room-code-inline{font-family:var(--mono);font-weight:800;letter-spacing:.12em;font-size:1.15rem;color:var(--accent)}.invite-panel{position:absolute;top:3rem;left:.6rem;z-index:5;width:min(360px,90%);background:#070b14f2;border:2px solid var(--accent);border-radius:14px;padding:.6rem .75rem;display:flex;flex-direction:column;gap:.45rem;box-shadow:0 10px 30px #000a}.invite-panel .row{justify-content:space-between;align-items:center}.invite-link{display:block;font-size:.8rem;word-break:break-all;background:#0b1220;border:1px solid var(--line);border-radius:8px;padding:.35rem .5rem;-webkit-user-select:all;user-select:all}.invite-panel .peer-list{margin:0;padding-left:1rem;font-size:.9rem}.crew-card.locked{opacity:.6;cursor:not-allowed}.mission-banner{position:absolute;top:3rem;left:50%;transform:translate(-50%);z-index:4;background:#1b1430ee;border:2px solid #b18cff;border-radius:999px;padding:.35rem 1rem;font-weight:700;white-space:nowrap;pointer-events:none}.base-stage .bg-logo-row{top:.6rem;bottom:auto;right:.6rem}.base-stage .bg-logo{height:34px;opacity:.5}.play .toasts{top:3.4rem}.top-menu{position:relative}.top-menu-panel{position:absolute;right:0;top:calc(100% + 6px);z-index:50;display:flex;flex-direction:column;gap:.4rem;align-items:stretch;background:var(--panel);border:2px solid var(--accent);border-radius:12px;padding:.5rem;min-width:210px;box-shadow:0 10px 30px #000c}.top-menu-panel .icon-btn{text-align:left}.fullscreen-btn{font-size:1.15rem}.rescue-pill .bar{width:46px}@media(max-width:900px){.topbar2{gap:.25rem;padding:.25rem .4rem;flex-wrap:nowrap;overflow-x:auto}.topbar2 .pill .bar{display:none}.topbar2 .pill{padding:.1rem .4rem;font-size:.85rem}}.fs-floating{position:fixed;top:.6rem;left:.6rem;z-index:50}@media(max-height:520px)and (orientation:landscape){.play{height:100vh;height:100dvh;min-height:0;overflow:hidden}.stage-wrap{flex-direction:row;flex:1;min-height:0}.base-stage{height:100%;width:auto}.bottombar{flex-direction:row;padding:.2rem .4rem;gap:.3rem}.crewbar{display:flex;overflow-x:auto}.crew-card{min-width:150px;padding:.15rem .4rem;gap:.3rem}.crew-card .avatar{width:28px;height:28px;font-size:.95rem}.crew-card .bars,.crew-card .crew-actions-row .keys,.ping-bar{display:none}.robotbar{max-width:140px;flex-wrap:nowrap;overflow-x:auto}.tutorial{display:none}.minimap canvas{width:150px}.base-stage .bg-logo-row{display:none}.priority-hud{font-size:.75rem;max-width:55vw}.toasts{display:none}.sg-overlay{align-items:start;padding:.25rem}.sg-window{max-height:calc(100dvh - .5rem)}.sg-head{padding:.25rem .6rem;position:sticky;top:0;background:var(--panel, #0c1220);z-index:1}.sg-head h2{font-size:1rem}.sg-goal{padding:.2rem .6rem;font-size:.85rem}.sg-body{padding:.3rem .6rem .5rem}.sg-stars{font-size:1.6rem}}
