:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#e2e5d9;background:#101410;font-synthesis:none;--accent:#c5d88f;--muted:#8c9584;--border:#ffffff0e;--panel:#1a2019;--meter:#a7bd78}*{box-sizing:border-box}body{margin:0}button,a,select,input{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.43}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button{transition:background .16s,border-color .16s,opacity .16s}button:hover:not(:disabled){filter:brightness(1.12)}button svg{flex-shrink:0}a{color:inherit;text-decoration:none}svg{vertical-align:middle}#app{max-width:1800px;margin:auto}.topbar{height:90px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:20px;background:#171d17}.brand{display:flex;align-items:center;gap:13px;font-size:27px;font-weight:850;letter-spacing:3px;line-height:1}.brand-mark{color:var(--accent);border:1px solid #8b9b6355;width:46px;height:46px;display:grid;place-items:center;background:#c5d88f08;border-radius:3px}.brand-light{font-weight:350;color:#b6c29f}.brand small{display:block;font-size:8px;letter-spacing:2.4px;color:#7e8b71;margin-top:9px}.top-meta{font-family:Consolas,monospace;color:#7e8b74;font-size:10px;letter-spacing:1.7px;display:flex;align-items:center;gap:10px}.slash{color:#46533c;margin:0 6px}.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px #c5d88f33;flex-shrink:0}.top-controls{display:flex;gap:7px}.icon-btn{border:1px solid transparent;background:transparent;width:35px;height:35px;display:inline-flex;align-items:center;justify-content:center;color:#919d82;border-radius:3px}.icon-btn:hover{background:#c5d88f0b;border-color:#c5d88f22}.resources{display:grid;grid-template-columns:repeat(6,1fr);padding:21px 31px;background:#1c221b;gap:0;border-bottom:1px solid var(--border)}.resource{--resource:#c5d88f;display:flex;align-items:center;gap:13px;padding:0 25px;border-right:1px solid #ffffff0b;position:relative}.resource:first-child{padding-left:5px}.resource:last-child{border:0;padding-right:0}.resource-icon{color:var(--resource);width:35px;height:38px;background:#ffffff04;display:grid;place-items:center;border:1px solid #ffffff09;border-radius:3px}.resource-label{font-size:8px;letter-spacing:1.6px;color:#8f9984;display:block;margin-bottom:5px;font-weight:650}.resource strong{font-family:Consolas,monospace;font-size:23px;font-weight:500;color:#d5dac9;white-space:nowrap}.resource em{font-style:normal;color:#7b896d;font-size:14px}.resource>small{position:absolute;right:20px;bottom:2px;font-size:7px;color:#626f59;letter-spacing:1px;display:none}.game-layout{display:grid;grid-template-columns:76px minmax(0,1fr) 320px;min-height:720px}.rail{background:#171d16;border-right:1px solid var(--border);display:flex;flex-direction:column;padding-top:24px;align-items:center;gap:9px}.rail-btn{width:61px;height:62px;background:transparent;border:1px solid transparent;color:#7c8a6c;border-radius:3px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;position:relative}.rail-btn span{font-size:8px}.rail-btn.active{color:var(--accent);background:#c5d88f0a;border-color:#c5d88f16}.rail-btn.active:before{content:"";position:absolute;left:-8px;top:14px;width:2px;height:32px;background:var(--accent)}.rail-bottom{margin-top:auto;margin-bottom:22px;color:#49563f;font-family:Consolas,monospace;font-size:19px}.world-column{padding:27px 26px 25px;min-width:0;background:radial-gradient(ellipse at 50% 10%,#27302122,transparent 65%)}.scene-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:10px}.eyebrow{font-size:8px;letter-spacing:1.65px;text-transform:uppercase;color:#839373;font-weight:650}.scene-heading h1{font-weight:400;font-size:27px;letter-spacing:-.8px;margin:7px 0 0;color:#d9dfcd}.day-pill{border:1px solid #48533c;padding:9px 12px;font-family:Consolas,monospace;font-size:10px;white-space:nowrap;color:#c5d299;display:flex;align-items:center;gap:8px}.day-pill span{font-size:8px;color:#7e8d6c;border-left:1px solid #ffffff15;padding-left:9px}.world{position:relative;border:1px solid #ffffff13;background:#111a12;overflow:hidden;aspect-ratio:1120/760;min-height:360px;max-height:690px}.world canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}.world canvas:active{cursor:grabbing}.scene-tag{position:absolute;left:18px;top:15px;display:flex;align-items:center;gap:7px;font-family:Consolas,monospace;font-size:8px;letter-spacing:1.2px;color:#a6b592;background:#17251ccc;padding:7px 9px;border:1px solid #708b6422;pointer-events:none}.view-controls{position:absolute;top:13px;right:13px;display:flex;background:#18231ce6;border:1px solid #82957022}.view-controls button{background:none;border:none;border-right:1px solid #81926b22;color:#b8c4a6;width:30px;height:29px;font-size:20px}.view-controls button:last-child{border:0}.scene-coordinate{position:absolute;bottom:12px;left:16px;font-family:Consolas,monospace;font-size:7px;line-height:1.8;color:#7b8b69;letter-spacing:1px;pointer-events:none}.scene-coordinate span{color:#5b6a4d}#pause-overlay{position:absolute;inset:0;background:#0e171277;place-items:center;letter-spacing:4px;font-size:14px;color:#d9e4c1;pointer-events:none}#pause-overlay:not([hidden]){display:grid}.room-index{display:grid;grid-template-columns:repeat(12,1fr);gap:4px;margin-top:12px}.room-chip{display:flex;flex-direction:column;align-items:center;gap:5px;background:#1b2419;border:1px solid #ffffff08;color:#6f805e;padding:7px 0;font-family:Consolas,monospace;font-size:7px;min-width:0}.room-chip.selected{border-color:#9daf6866;color:var(--accent);background:#c5d88f08}.simulation-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0 16px;font-family:Consolas,monospace;font-size:9px;color:#a1b083}.status-dot{width:5px;height:5px;display:inline-block;margin-right:7px;border-radius:50%;background:#a5c373}.status-dot.off{background:#948262}.status-dot.danger{background:#d68166;box-shadow:0 0 9px #ce7356}.status-label{color:#55634a;display:block;padding-left:13px;margin-top:4px;font-size:8px}.playback{display:flex;align-items:center;gap:3px}.speed{background:#222d1e;border:1px solid #ffffff0c;color:#b3c18f;font-family:Consolas,monospace;font-size:11px;height:29px;min-width:32px}.saved{font-size:8px;color:#667859;margin-left:14px;display:flex;gap:5px;align-items:center}.mission-strip{display:flex;align-items:center;gap:16px;padding:17px 18px;background:#1e281b;border:1px solid #697c4429;border-left:2px solid #a6bb76}.mission-icon{width:40px;height:42px;display:grid;place-items:center;color:#b4c48c;background:#c5d88f08}.mission-strip strong{display:block;font-size:13px;font-weight:500;margin-top:5px;color:#c7d2b5}.mission-strip p{font-size:10px;color:#7d8d6b;margin:5px 0 0}.mission-strip button{margin-left:auto}.management{background:#1b211a;border-left:1px solid var(--border);padding:28px 23px;overflow:auto;max-height:calc(100vh - 210px);min-height:650px}.panel-heading{margin-bottom:23px}.panel-heading h2{font-size:23px;font-weight:400;line-height:1.25;letter-spacing:-.5px;margin:10px 0 12px;color:#dbe2cd}.panel-heading p{color:#859378;font-size:11px;line-height:1.75;margin:0}.build-list{display:flex;flex-direction:column;gap:8px}.build-card{display:flex;align-items:center;gap:11px;text-align:left;padding:11px;background:#242d21;border:1px solid #ffffff09;width:100%;min-height:67px}.build-card:hover:not(:disabled){border-color:#c5d88f55;background:#2c3827}.room-symbol{--room:#a9bc83;background:color-mix(in srgb,var(--room) 9%,transparent);color:var(--room);width:39px;height:39px;display:inline-grid;place-items:center;border:1px solid color-mix(in srgb,var(--room) 20%,transparent);flex-shrink:0}.build-card strong{font-size:11px;font-weight:550;display:block;color:#d4dbc8}.build-card small{font-size:9px;color:#829071;line-height:1.4;display:block;margin-top:5px}.cost{font-family:Consolas,monospace;font-size:13px;color:#bccb95;margin-left:auto;text-align:right;flex-shrink:0}.cost small{font-size:6px;letter-spacing:1px}.locked{background:#1b2119}.fine{font-size:9px;color:#79866c;line-height:1.7;margin:15px 0}.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:39px;padding:10px 11px;border:1px solid #75845c35;background:#293325;color:#adbb93;font-size:10px;font-weight:550;border-radius:2px}.btn.primary{background:#c5d88f;color:#27311e;border-color:#c5d88f}.btn.primary span{font-size:8px;margin-left:auto;color:#4c5d32}.button-row{display:flex;gap:7px;margin-top:10px}.button-row .btn{padding:8px 5px;font-size:9px}.divider{border-top:1px solid #ffffff0a;margin:21px 0}.stats-row{display:flex;justify-content:space-between;font-size:10px;color:#8c9a7c;margin:14px 0 9px}.stats-row strong{color:#b7c799;font-weight:500;font-family:Consolas,monospace}.meter{height:3px;background:#394530;overflow:hidden;margin:10px 0}.meter i{display:block;height:100%;background:var(--meter);transition:width .3s}.room-summary{display:flex;align-items:center;gap:12px;padding:18px 12px;background:#252e22;border:1px solid #ffffff0a;font-size:8px;color:#a5b58b;letter-spacing:.5px}.room-summary .room-symbol{width:53px;height:53px}.room-summary strong{display:block;font-size:11px;margin-top:9px;font-weight:500;color:#d0dbc1;letter-spacing:0}.field-label{font-size:8px;letter-spacing:1.2px;color:#a3b48b;display:flex;justify-content:space-between;margin-bottom:10px}.field-label span{color:#647756;letter-spacing:0;text-transform:uppercase;font-size:7px}select{width:100%;background:#273322;border:1px solid #61754a50;color:#becba9;padding:11px 9px;font-size:10px;border-radius:2px}option{background:#263120}.clear-illustration{height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:repeating-linear-gradient(45deg,#3b42282b 0,#3b42282b 5px,transparent 5px,transparent 15px);color:#7d8b62;border:1px solid #ffffff0b;margin-bottom:20px}.clear-illustration span{font-size:9px;letter-spacing:3px}.max-tier{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;color:#b2c987;font-size:11px;background:#c5d88f07;border:1px solid #c5d88f17}.survivor{padding:14px 0;border-bottom:1px solid #ffffff09}.survivor-header{display:flex;gap:10px;align-items:center}.portrait{height:37px;width:32px;display:grid;place-items:center;color:var(--portrait);border:1px solid color-mix(in srgb,var(--portrait) 30%,transparent);background:color-mix(in srgb,var(--portrait) 10%,transparent);font-family:Georgia,serif;font-size:20px}.survivor h3{font-size:12px;font-weight:500;margin:0 0 5px}.survivor small{font-size:8px;color:#879777}.health{margin-left:auto;color:#a6bb7d;font-family:Consolas,monospace;font-size:11px}.crew-details{display:flex;justify-content:space-between;color:#788e65;font-size:8px;margin:10px 0 12px}.survivor .btn{font-size:8px;min-height:30px;padding:7px}.empty-state{border:1px solid #ffffff0c;background:#222b1f;padding:25px 18px;text-align:center;color:#9bad80}.empty-state h3{font-size:14px;font-weight:400}.empty-state p{font-size:10px;line-height:1.8;color:#7d906b}.team-choice{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}.team-choice label{display:flex;align-items:center;gap:6px;padding:8px;background:#263120;border:1px solid #ffffff0a;font-size:10px;cursor:pointer;flex:1 1 30%}.team-choice small{display:block;font-size:7px;color:#799063;margin-top:3px}.team-choice input{accent-color:var(--accent);width:12px;height:12px;margin:0}.location{border:1px solid #ffffff0c;margin:13px 0;background:#232c20}.location-art{height:78px;position:relative;display:flex;align-items:center;justify-content:center;color:#aab783;background:linear-gradient(160deg,#364632,#1e2a20);overflow:hidden}.location-art:before,.location-art:after{content:"";position:absolute;bottom:0;background:#142019;width:38px;height:45px;left:24px;box-shadow:45px 12px #19271a,145px 3px #17251a,177px -13px #203020}.location-art:after{left:130px;height:30px;width:11px}.location-art svg{position:relative;z-index:1}.location-art span{position:absolute;left:12px;top:11px;font:7px Consolas,monospace;letter-spacing:1px;color:#90a173}.location-clinic{background:linear-gradient(160deg,#3b4841,#1b2923)}.location-yard{background:linear-gradient(160deg,#514932,#292819)}.location-content{padding:14px}.location h3{font-size:13px;font-weight:500;margin:8px 0}.location p{font-size:9px;color:#829674;line-height:1.6}.location small{font-size:8px;color:#b6c68e;display:block;margin:10px 0}.location .btn{font-size:9px;min-height:32px}.expedition-live{padding:28px 15px;background:#253320;text-align:center;color:#a5be82;border:1px solid #78965233}.expedition-live>.eyebrow{display:block;margin:20px 0 10px}.expedition-live h3{font-size:17px;font-weight:400}.countdown{font:32px Consolas,monospace;color:#c9d99e;display:block;margin:20px}.expedition-live p{font-size:10px;color:#8da778}.milestone{display:flex;align-items:flex-start;gap:13px;padding:18px 0;border-bottom:1px solid #ffffff0a}.milestone-icon{width:28px;height:28px;display:grid;place-items:center;border:1px solid #6b815145;color:#70875c;flex-shrink:0}.milestone.completed .milestone-icon{color:#c5d88f;background:#c5d88f09}.milestone h3{font-size:12px;font-weight:500;line-height:1.5;margin:6px 0;color:#c2cead}.milestone p{font-size:9px;color:#7c9269;line-height:1.6}.milestone small{font-size:8px;color:#94aa71}.cash-balance{display:flex;gap:12px;align-items:center;padding:18px 14px;border:1px solid #a5b97422;background:#baca7808;color:#c2d68b;margin-bottom:20px}.cash-balance strong{font:26px Consolas,monospace}.cash-balance span{font-size:8px;color:#a0b27b;letter-spacing:1px;margin-left:auto}.cosmetic{padding:12px;margin:12px 0;background:#252d20;border:1px solid #ffffff0c}.lighting-preview{height:59px;display:flex;gap:12px;justify-content:center;align-items:flex-start;padding-top:8px;background:#151f17;overflow:hidden}.lighting-preview i{display:block;width:48px;height:3px;background:var(--light);box-shadow:0 5px 27px 8px color-mix(in srgb,var(--light) 30%,transparent)}.cosmetic h3{font-size:12px;font-weight:500;color:#c5d3b0}.cosmetic p{font-size:9px;color:#819570;line-height:1.6}.event{padding:15px 0;border-bottom:1px solid #ffffff0b}.event span{font:8px Consolas,monospace;color:#73895e}.event p{font-size:11px;color:#a2b28c;line-height:1.7;margin:8px 0}.event.good p{color:#becd99}.event.warning p{color:#d0a278}footer{display:flex;justify-content:space-between;padding:19px 30px;border-top:1px solid var(--border);background:#151b14;font-size:8px;color:#637554;letter-spacing:1px;gap:20px}footer>span{display:flex;align-items:center;gap:8px}footer div{display:flex;gap:18px}footer button{border:0;background:none;color:#718263;font-size:9px;padding:0}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);z-index:20;background:#c6d795;color:#26311f;box-shadow:0 8px 40px #0007;padding:13px 19px;font-size:12px;max-width:90vw;border:1px solid #d9e5b1}.toast.error{background:#d6b58e;color:#392e20}dialog{max-width:560px;width:calc(100% - 30px);border:1px solid #536443;background:#202b1d;color:#d0dcbd;padding:27px;box-shadow:0 15px 100px #0008}dialog::backdrop{background:#070d0bcc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog-title{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #ffffff10;padding-bottom:14px;margin-bottom:20px}.dialog-title h2{font-size:23px;font-weight:400;margin:0}dialog p,dialog li{font-size:12px;color:#9eaf89;line-height:1.9}dialog li{margin:12px 0}dialog strong{color:#d0deb8}.settings-actions{display:flex;flex-direction:column;gap:12px}.tutorial-card{padding:16px;border:1px solid #81985444;background:#2a3822;margin-bottom:22px}.tutorial-card h3{font-size:13px;font-weight:500;color:#d6e4b3;margin:7px 0}.tutorial-card p{font-size:10px;line-height:1.7;color:#9aad85}.tutorial-card .btn{min-height:30px;font-size:9px}.tutorial-card>small{font-size:8px;color:#899e6d;letter-spacing:1px}@media(min-width:1500px){.world-column{padding:30px 36px}.management{width:340px}.game-layout{grid-template-columns:82px minmax(0,1fr) 340px}.resource>small{display:block}.world{max-height:770px}}@media(max-width:1150px){.resource{padding:0 12px;gap:8px}.resource-icon{width:27px;border:0;background:none}.resource strong{font-size:20px}.resources{padding:18px}.game-layout{grid-template-columns:62px minmax(0,1fr) 285px}.rail-btn{width:51px}.management{padding:24px 18px}.world-column{padding:25px 18px}.saved{display:none}.world{min-height:380px}.topbar{padding:0 22px}.top-meta{font-size:8px}.scene-heading h1{font-size:25px}.room-chip span{display:none}}@media(max-width:850px){.top-meta{display:none}.topbar{height:76px;padding:0 18px}.brand{font-size:23px}.brand-mark{width:39px;height:39px}.brand small{font-size:7px}.resources{padding:15px 14px;grid-template-columns:repeat(6,1fr)}.resource{display:block;text-align:center;padding:0 4px}.resource-icon{display:none}.resource strong{font-size:18px}.resource em{font-size:10px}.resource-label{font-size:7px;letter-spacing:1px}.game-layout{grid-template-columns:1fr;min-height:0}.rail{flex-direction:row;justify-content:space-around;padding:9px 10px;gap:3px;border-bottom:1px solid var(--border);border-right:0;order:0}.rail-btn{height:45px;width:65px;gap:4px}.rail-btn svg{width:18px;height:18px}.rail-btn span{font-size:8px}.rail-btn.active:before{left:12px;top:auto;bottom:-10px;width:40px;height:2px}.rail-bottom{display:none}.world-column{padding:20px 16px;order:1}.scene-heading{margin-bottom:16px}.scene-heading h1{font-size:24px}.world{min-height:0;max-height:none;aspect-ratio:1120/760}.management{order:2;border-left:0;border-top:1px solid var(--border);padding:24px 20px;min-height:0;max-height:none}.panel-heading{margin-bottom:20px}.panel-heading h2{font-size:23px}.build-list{display:grid;grid-template-columns:1fr 1fr}.build-card{padding:12px}.build-card strong{font-size:11px}.build-card small{font-size:9px}.panel-heading p{max-width:500px}.room-index{gap:3px}.room-chip{padding:7px 0}.room-chip span{display:block;font-size:6px}.mission-strip{padding:14px}.mission-strip p{font-size:9px}.scene-coordinate{font-size:6px}.scene-tag{font-size:6px;top:10px;left:10px}.view-controls{top:8px;right:8px}.view-controls button{width:27px;height:26px}.saved{display:flex}.panel-heading .eyebrow{font-size:8px}.location-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.location{margin:0}.location-content{padding:12px}.survivor-header small{font-size:10px}.survivor .btn{width:auto;padding:8px 12px}.team-choice label{flex:1}.cash-balance{max-width:360px}.cosmetic{display:inline-block;width:calc(33.333% - 10px);vertical-align:top;margin:5px}.event-log{max-height:440px;overflow:auto}.panel-heading h2{max-width:500px}footer{padding:17px 19px}}@media(max-width:480px){.resources{padding:13px 9px}.resource strong{font-size:16px}.resource em{font-size:9px}.resource-label{font-size:6px;letter-spacing:.8px}.top-controls{gap:0}.top-controls .icon-btn{width:30px}.topbar{gap:6px}.brand{font-size:21px;gap:9px}.brand small{letter-spacing:1.5px}.scene-heading h1{font-size:22px}.day-pill{font-size:8px;padding:8px}.day-pill span{display:none}.scene-heading .eyebrow{font-size:7px}.rail-btn{width:50px}.rail-btn span{font-size:7px}.world-column{padding:19px 12px}.room-chip span{display:none}.room-chip svg{width:12px;height:12px}.simulation-controls{font-size:8px}.saved,.scene-coordinate{display:none}.scene-tag{font-size:5px;padding:5px}.view-controls button{height:23px;width:24px}.build-list{grid-template-columns:1fr}.build-card{min-height:65px}.location-list{grid-template-columns:1fr}.location{display:grid;grid-template-columns:75px 1fr}.location-art{height:100%;min-height:170px}.location-art:before{left:5px}.location-content p{font-size:10px}.cosmetic{display:block;width:100%;margin:12px 0}.team-choice label{flex:1 1 28%}.management{padding:25px 18px}.mission-strip{gap:10px}.mission-strip strong{font-size:12px}.mission-icon{width:32px;flex-shrink:0}footer>span{font-size:6px;letter-spacing:.5px}footer div{gap:11px}footer button{font-size:8px}footer{gap:10px;padding:15px 12px}}.dismantle{margin-top:19px;border-color:#ad977330;color:#a8977b;background:transparent;font-size:8px}.perimeter-strip{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 0 0;color:#879a6f;font-size:8px;letter-spacing:1px}.perimeter-strip>span{line-height:1.6}.perimeter-strip small{display:block;font-size:8px;color:#596e48;letter-spacing:0;padding-left:20px;margin-top:3px}.perimeter-strip .btn{width:auto;min-height:32px;padding:8px 12px;font-size:9px;white-space:nowrap}@media(max-width:480px){.perimeter-strip{gap:8px}.perimeter-strip small{display:none}.perimeter-strip .btn{font-size:8px;padding:8px}.perimeter-strip>span{font-size:7px;letter-spacing:.5px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}:root{font-family:Segoe UI,Arial,sans-serif;color:#e4e6e7;background:#0c0f13;--accent:#e8ad53;--muted:#9ba3ab;--border:#8ea0b01a;--panel:#1d232b;--meter:#71a5c0}body{background:radial-gradient(ellipse at 50% 0,#273441,#0c1015 75%);color:#e4e6e7}#app{background:#12171d;box-shadow:0 0 80px #0005}.topbar{background:linear-gradient(180deg,#252d37,#181e26);border-bottom:1px solid #687d9133;box-shadow:inset 0 1px #f2f5fa0b,0 3px 15px #0003}.brand{font-family:Bahnschrift,Arial Narrow,Segoe UI,sans-serif;font-weight:800;letter-spacing:3px;color:#f0f0ed;text-shadow:0 2px 1px #0007}.brand-light{color:#d4d9de;font-weight:400}.brand-mark{color:#efb25b;background:linear-gradient(135deg,#353a40,#1d252e);border-color:#83909d66;box-shadow:inset 0 1px #ffffff15,0 2px 5px #0004}.brand small{color:#a4abb3}.top-meta{color:#949faa}.slash{color:#5d6b77}.live-dot{background:#e3ad59;box-shadow:0 0 8px #e7ad5544}.icon-btn{color:#a9b4bf}.icon-btn:hover{background:#a3b3c313;border-color:#a3b3c32b}.top-controls .icon-btn{background:#11171d55;border-color:#73859922;box-shadow:inset 0 1px #ffffff05}.resources{background:linear-gradient(180deg,#1e2630,#181f28);border-bottom:1px solid #6c7b8d30;box-shadow:inset 0 1px #ffffff06}.resource{border-color:#8e9bab1c}.resource-icon{background:#0e151c5e;border-color:#60758b30;border-radius:4px;box-shadow:inset 0 1px 6px #0002}.resource-label{color:#98a5b1;font-size:9px}.resource strong{color:#f0f0ed;font-weight:600;text-shadow:0 1px 2px #0007}.resource em{color:#8f9aa6}.resource>small{color:#72808e}.rail{background:linear-gradient(90deg,#1b232d,#171e27);border-color:#8193a51a;box-shadow:inset -1px 0 #ffffff04}.rail-btn{color:#8e9dad}.rail-btn.active{background:linear-gradient(135deg,#3c3427,#292720);color:#efb866;border-color:#daa75335;box-shadow:inset 0 1px #ffffff0b,0 3px 7px #0002}.rail-btn.active:before{background:#edb263}.rail-bottom{color:#536577}.world-column{background:radial-gradient(ellipse at 50% 20%,#35445322,transparent 65%),#10161d}.eyebrow{color:#a1abb5;font-size:9px;letter-spacing:1.5px}.scene-heading h1{font-family:Bahnschrift,Arial Narrow,Segoe UI,sans-serif;color:#e5e9ed;font-weight:650;font-size:25px;letter-spacing:2px}.day-pill{background:linear-gradient(135deg,#303944,#222a33);border-color:#8391a347;color:#ead7b1;box-shadow:inset 0 1px #ffffff0a}.day-pill span{color:#aab4bc;border-color:#8fa0b32d}.world{background:#17202a;border-color:#8395a755;box-shadow:0 6px 25px #0005,inset 0 0 0 3px #171d25;outline:3px solid #090d1266;outline-offset:1px}.scene-tag{color:#e3e9ee;background:#17212dda;border-color:#8091a644;box-shadow:0 2px 5px #0003}.view-controls{background:#19232edb;border-color:#8495a851}.view-controls button{color:#dbe2e8;border-color:#8696a937}.scene-coordinate{color:#b0b6bc;text-shadow:0 1px 3px #000}.scene-coordinate span{color:#8c959e}#pause-overlay{background:#11192277;color:#eee5d2;text-shadow:0 2px 7px #000}.room-chip{color:#8297aa;background:linear-gradient(180deg,#25303c,#1a232e);border-color:#7e94a02d;box-shadow:inset 0 1px #ffffff06}.room-chip.selected{color:#f2bb70;border-color:#e3ac5966;background:linear-gradient(180deg,#423827,#28251f);box-shadow:inset 0 1px #efc47a17}.simulation-controls{color:#b5c0c9}.status-label{color:#7a8b9b}.status-dot{background:#79b49b}.status-dot.off{background:#b5956e}.status-dot.danger{background:#e27868;box-shadow:0 0 9px #ce7356}.speed{background:linear-gradient(180deg,#37424d,#222c36);border-color:#8ba0b636;color:#e7bc7e;box-shadow:inset 0 1px #ffffff0d}.saved{color:#899cae}.mission-strip{background:linear-gradient(110deg,#2d3032,#1d252d);border-color:#b198632d;border-left-color:#e2ab57;box-shadow:inset 0 1px #ffffff04}.mission-icon{color:#e4b66b;background:#d4a1540d}.mission-strip .eyebrow{color:#ba9c6f}.mission-strip strong{color:#eee4d4;font-weight:600}.mission-strip p{color:#a2adb7}.management{background:linear-gradient(120deg,#222a34,#1a212a);border-color:#a1afc021;box-shadow:inset 1px 0 #ffffff04;scrollbar-color:#536272 #1a212a}.panel-heading h2{color:#ecedef;font-family:Bahnschrift,Arial Narrow,Segoe UI,sans-serif;font-weight:600;font-size:23px;letter-spacing:.2px}.panel-heading p{color:#a5b0ba;font-size:12px;line-height:1.65}.build-card{background:linear-gradient(135deg,#313b46,#232c36);border-color:#8c9bab28;box-shadow:inset 0 1px #ffffff08,0 2px 6px #0002;min-height:70px;border-radius:3px}.build-card:hover:not(:disabled){border-color:#e0b56a80;background:linear-gradient(135deg,#3b4550,#2b343d)}.build-card strong{color:#e8ecf0;font-size:12px;font-weight:600}.build-card small{color:#a4b1bd;font-size:10px}.build-card:disabled{opacity:.58}.room-symbol{background:color-mix(in srgb,var(--room) 10%,#171e27);border-color:color-mix(in srgb,var(--room) 30%,transparent);border-radius:3px;box-shadow:inset 0 1px #ffffff09}.cost{color:#e7bc7d}.cost small{color:#a2a7ad}.locked{background:linear-gradient(135deg,#232b34,#1c242e)}.fine{color:#93a1ae;font-size:10px}.btn{color:#d1dbe3;background:linear-gradient(180deg,#3a4652,#283440);border-color:#879aaf40;box-shadow:inset 0 1px #f7fbff10,0 2px 4px #0002;border-radius:3px;font-size:11px}.btn.primary{background:linear-gradient(180deg,#e6b66e,#c79045);border-color:#eec187;color:#231d15;box-shadow:inset 0 1px #fff2d777,0 2px 5px #0004;font-weight:750}.btn.primary span{color:#554025;font-size:9px}.btn:disabled{opacity:.45;filter:saturate(.35)}.divider{border-color:#8695a220}.stats-row{color:#a0aebc;font-size:11px}.stats-row strong{color:#e2e5e7}.meter{background:#52617344;height:4px;border-radius:2px}.meter i{background:linear-gradient(90deg,#6392ac,#9bc5d7);box-shadow:0 0 6px #78a7bc22}.room-summary{background:linear-gradient(125deg,#303b46,#222d38);border-color:#91a2b329;color:#abbac7}.room-summary strong{color:#e8e4dd;font-size:12px}.field-label{color:#c3ced8;font-size:9px}.field-label span{color:#91a0ae}select{background:#172330;color:#e2e7ec;border-color:#8b9eaf4d;font-size:11px;box-shadow:inset 0 2px 5px #0003}option{background:#202c39}.clear-illustration{color:#b4a185;background:repeating-linear-gradient(45deg,#caa56c08 0,#caa56c08 5px,transparent 5px,transparent 15px),#1c2631;border-color:#82919f2a}.max-tier{color:#c3d4de;background:#98b5c710;border-color:#98b5c729}.survivor{border-color:#869aac20}.portrait{color:var(--portrait);background:color-mix(in srgb,var(--portrait) 15%,#18222c);border-color:color-mix(in srgb,var(--portrait) 50%,transparent);box-shadow:inset 0 1px #ffffff0b}.survivor h3{color:#ecedf0;font-size:13px;font-weight:600}.survivor small{color:#a1b0bc}.health{color:#8cbfb1}.crew-details{color:#9eacb8}.empty-state{color:#a8b5c1;background:#26323f;border-color:#93a2b828}.empty-state p{color:#a1b0bc}.team-choice label{background:#2b3744;border-color:#90a2b42a}.team-choice small{color:#a4b4c0}.team-choice input{accent-color:#dda55a}.location{background:#26323f;border-color:#90a1b22c}.location-art{background:linear-gradient(160deg,#566777,#273442);color:#d5dce1}.location-art:before,.location-art:after{background:#17232d;box-shadow:45px 12px #20303c,145px 3px #1c2835,177px -13px #2b3846}.location-art span{color:#bdc7d0}.location-clinic{background:linear-gradient(160deg,#627783,#303e49)}.location-yard{background:linear-gradient(160deg,#675b4b,#353a40)}.location h3{color:#e7ebee;font-weight:600}.location p{color:#a4b2be}.location small{color:#d8b883}.expedition-live{background:linear-gradient(130deg,#344350,#253341);border-color:#869eb64a;color:#c6d2dc}.countdown{color:#f0c382}.expedition-live p{color:#a5b5c3}.milestone{border-color:#92a3b022}.milestone-icon{color:#94a6b8;border-color:#99aabe45;background:#172431}.milestone.completed .milestone-icon{color:#e9b96c;background:#d5a15410}.milestone h3{color:#e0e5e9;font-weight:600}.milestone p{color:#a3b1bd}.milestone small{color:#d4af78}.cash-balance{border-color:#bd945642;background:linear-gradient(120deg,#40372b,#28323c);color:#ebbd74}.cash-balance span{color:#ccb087}.cosmetic{background:#2a3440;border-color:#92a2b02a}.cosmetic h3{color:#e1e7ec}.cosmetic p{color:#a2b1be}.lighting-preview{background:#15212c}.event{border-color:#93a4b020}.event span{color:#94a5b5}.event p{color:#c0cad3}.event.good p{color:#abc6d0}.event.warning p{color:#e2b180}footer{background:#141b23;border-color:#8293a024;color:#7f91a2}footer button{color:#98a8b7}.toast{background:#e0b16c;color:#272019;border-color:#edc991}.toast.error{background:#dcb395;color:#352319}dialog{background:linear-gradient(140deg,#303b47,#1e2a36);color:#e4e9ed;border-color:#92a1b05c;box-shadow:inset 0 1px #ffffff10,0 15px 100px #0009}dialog::backdrop{background:#050a11cc}.dialog-title{border-color:#9ba8b12a}.dialog-title h2{font-weight:600}dialog p,dialog li{color:#b6c2cd}dialog strong{color:#f0e1c9}.tutorial-card{background:linear-gradient(125deg,#3a342b,#282e35);border-color:#b8975b4d;border-left:3px solid #d5a258;box-shadow:inset 0 1px #ffe6b508}.tutorial-card h3{color:#eedbc0;font-weight:600;font-size:14px}.tutorial-card p{color:#b9bec2;font-size:11px}.tutorial-card>small{color:#c0a57d}.tutorial-card .btn{background:linear-gradient(180deg,#4b4943,#343941);border-color:#b4a58b35;color:#e8d8c0}.dismantle{background:#15222b44;border-color:#b9987440;color:#c7aa88}.perimeter-strip{color:#a2b2c0}.perimeter-strip small{color:#8195a8}.perimeter-strip .btn{color:#d8e2eb}.game-time{font-weight:600;color:#e5b87d;font-size:11px;letter-spacing:.5px}.phase-label{min-width:35px}.day-pill{gap:7px}.area-pages{display:flex;gap:8px;align-items:center;margin-top:15px;padding:10px;background:#1c2732;border:1px solid #8597aa30}.area-pages .btn{width:auto;min-height:35px;padding:9px 12px;font-size:10px}.area-pages .btn:first-child svg{transform:rotate(180deg)}.area-pages .primary{margin-left:auto}.area-picker{display:flex;align-items:center;gap:7px;color:#b6c4d0;font-size:8px;letter-spacing:1px}.area-picker select{width:80px;padding:8px;font-size:10px}.area-pages .primary span{white-space:nowrap}.scene-coordinate{bottom:3px;font-size:6px}@media(max-width:600px){.area-pages{flex-wrap:wrap;gap:6px;padding:8px}.area-pages .btn{font-size:8px;padding:8px;flex:1}.area-picker{font-size:7px;gap:4px}.area-picker select{width:69px;padding:7px}.area-pages .primary{flex-basis:100%;justify-content:center}.area-pages .primary span{margin-left:7px}.scene-coordinate{display:none}}@media(max-width:850px){.rail{border-color:#8293a020}.resource-label{font-size:7px}.resource strong{font-size:18px}.management{border-color:#8293a02b}.build-card strong{font-size:12px}.build-card small{font-size:10px}.scene-heading h1{font-size:22px}}@media(max-width:480px){.resource-label{font-size:6px}.resource strong{font-size:16px}.scene-heading h1{font-size:19px;letter-spacing:1px}.brand{font-size:21px}.scene-heading .eyebrow{font-size:7px}.perimeter-strip>span{font-size:7px}.day-pill{gap:5px;padding:7px}.day-pill .phase-label{display:inline;font-size:6px;min-width:28px;padding-left:5px}.game-time{font-size:9px}}.account-note{color:var(--muted)}#account-form input:not([type=checkbox]),#dialog input[readonly]{display:block;width:100%;padding:12px;margin:8px 0 16px;background:#111820;border:1px solid #46525c;color:#edf0f0;border-radius:3px;font:inherit}#account-form label:has(input[type=checkbox]){display:flex;gap:10px;align-items:center;margin:16px 0}#account-error{color:#ed9b80}#dialog input[readonly]{font-family:monospace;font-size:14px}#saved{max-width:240px;text-align:right}@media(max-width:600px){.top-controls{gap:2px}.top-controls .icon-btn{width:31px;padding:5px}#saved{max-width:150px;font-size:10px}}.hire-panel{padding:18px;background:#19232d;border:1px solid #485562;border-top:2px solid #d4aa65;margin:0 0 22px}.hire-panel h3{margin-top:0}.hire-panel .btn{margin-top:12px;width:100%}.chapter-card{padding:20px;background:linear-gradient(135deg,#29333c,#18222d);border:1px solid #48535b;border-left:3px solid #d4aa65;margin-bottom:18px}.chapter-card h3{font-size:23px;line-height:1.15;margin:12px 0}.chapter-card p,.story-memory p{color:#bac3ca;line-height:1.65;font-size:13px}.chapter-card small{color:#d4aa65}.story-task{padding:20px;background:#17212a;border:1px solid #45515c}.story-task h3{font-size:20px}.story-task p{font-size:13px;line-height:1.65}.story-task .btn{width:100%;margin-top:10px}.story-rewards{color:#d9b879;font-size:12px;line-height:1.6;margin:16px 0}.story-memory{border-left:2px solid #5b7180;padding:0 0 0 14px;margin:20px 0}.story-memory strong{font-size:13px}.chapter-list{margin:18px 0}.chapter-list>div{display:grid;grid-template-columns:28px 1fr;gap:4px 10px;padding:12px 0;border-bottom:1px solid #34414c}.chapter-list span{grid-row:span 2;color:#a78b60}.chapter-list strong{font-size:12px;color:#b1bbc2}.chapter-list small{font-size:10px;color:#7f909c}.chapter-list .current strong{color:#e8bf7e}.story-intro p{line-height:1.8;color:#c0c9d0}.story-intro p:first-of-type{font-size:18px;color:#e7ded0}.story-intro .btn{width:100%;margin-top:12px}.tier-status{padding:14px;background:#202b34;border:1px solid #414e58}.tier-status strong{font-size:13px;color:#d8b67d}.survivor-header>div{min-width:0;flex:1}.survivor-header small{white-space:normal;overflow-wrap:anywhere;line-height:1.5;display:block}.survivor-header .health{flex-shrink:0}.team-choice span{min-width:0}.team-choice small{white-space:normal;overflow-wrap:anywhere;line-height:1.5}.city-map{height:260px;position:relative;overflow:hidden;border:1px solid #52606c;background:linear-gradient(#0e1a26c9,#14212be8),url(/art/surface-realistic-v2.webp) center top/cover;margin:18px 0 10px}.city-map>svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#c6a16688;stroke-width:2;stroke-dasharray:5 4}.route-node{position:absolute;transform:translate(-50%,-50%);width:82px;min-height:49px;background:#182631ee;border:1px solid #70818d;padding:5px 3px;color:#e1e7eb;z-index:1}.route-node span{display:block;color:#d5b77d;font-size:14px;height:17px}.route-node strong{display:block;font-size:9px;line-height:1.35}.route-node.selected{border:2px solid #e6b86e;background:#354039;box-shadow:0 0 15px #d9a95d33}.route-node.locked{color:#94a0a9;border-style:dashed}.route-node.visited span{color:#9fcab3}.shelter-pin{position:absolute;left:8%;bottom:8%;font-size:8px;letter-spacing:1px;color:#dfbf84;display:flex;align-items:center;gap:5px}.city-summary{font-size:10px;color:#a9b8c4;line-height:1.6;margin-bottom:20px}.route-details{padding:18px;background:#1c2934;border:1px solid #445462}.route-details h3{font-size:20px}.route-details p,.rescue-card p{font-size:12px;line-height:1.7;color:#bcc8d0}.route-details>small{font-size:11px;color:#d9bc86;display:block;line-height:1.7;margin-bottom:20px}.route-details .btn,.rescue-card .btn{width:100%;margin-top:10px}.route-lock{padding:12px;background:#443527;border:1px solid #937349}.team-choice .unavailable{opacity:.5}.rescue-card{padding:18px;border:1px solid #899b74;border-left:3px solid #c8b17c;background:#28312d;margin:18px 0}.rescue-card h3{margin-bottom:5px}.rescue-card small{color:#d5ba8c}.rescued-list p{display:flex;gap:6px;align-items:center;color:#a9c4b7;font-size:11px}.care-warning{padding:15px;border:1px solid #bc7e5a;background:#39291fe8;margin-bottom:14px}.care-warning[hidden],.game-over[hidden]{display:none}.care-warning strong{font-size:12px;color:#f0b18c;letter-spacing:.8px}.care-warning p{font-size:12px;line-height:1.6;color:#e0c6b6}.care-warning>div{display:flex;gap:8px}.care-warning .btn{padding:8px;font-size:11px}.game-over{position:fixed;inset:0;z-index:1000;background:#050a10ed;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto}.game-over-card{width:min(100%,540px);padding:32px;background:#202b36;border:1px solid #985e42;border-top:3px solid #bd7853;box-shadow:0 20px 80px #0009}.game-over-card h2{font-size:32px;line-height:1.1;color:#ead5c8}.game-over-card p{font-size:14px;line-height:1.7;color:#c3c8cc}.game-over-card .btn{width:100%;margin-top:12px}.game-over-card #end-reason{color:#ebb28c;font-weight:600}.lost-person{opacity:.55}.lost-person .health{color:#cd8a74}@media(max-width:600px){.game-over-card{padding:22px}.game-over-card h2{font-size:26px}.city-map{height:280px}}.android-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 30px;background:linear-gradient(100deg,#28323b,#1a232d);border-bottom:1px solid #b3935c55}.android-banner strong{font-size:11px;letter-spacing:1.4px;color:#e7c58a}.android-banner small{display:block;font-size:11px;color:#9fb0bd;margin-top:4px}.android-banner .btn{width:auto;min-height:44px}@media(max-width:600px){.android-banner{padding:12px;flex-wrap:wrap}.android-banner .btn{width:100%}}.repair-entry{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #3b4650}.repair-entry p{margin:6px 0;color:#aab9c5}.repair-entry .btn{white-space:nowrap}.money-page-open .game-layout,.money-page-open #game-over,.money-page-open footer,.money-page-open #earning-status{display:none!important}.money-page{max-width:1180px;margin:0 auto;padding:38px 28px 70px;color:#dce5ed}.money-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.money-heading h1{font-size:32px;letter-spacing:.01em;margin:8px 0}.money-heading p,.money-page p{line-height:1.7;color:#aabac8}.money-tabs{display:flex;gap:12px;border-bottom:1px solid #35434f;padding-bottom:20px;margin-bottom:24px}.money-body{background:#1b2630;border:1px solid #35434f;border-radius:12px;padding:28px}.money-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0 28px}.money-stats article{padding:24px 18px;background:#131e27;border:1px solid #344653;border-radius:10px}.money-stats span{font-size:10px;letter-spacing:.12em;color:#aab8c5}.money-stats strong{display:block;font-size:26px;color:#edc278;margin:14px 0}.money-stats small{font-size:11px;color:#aab8c5;line-height:1.6;display:block}.money-progress{padding:20px;border:1px solid #344653;border-radius:10px;margin:18px 0}.money-progress>div{display:flex;justify-content:space-between;align-items:center;gap:16px}.money-progress h3{margin:0 0 12px}.money-progress progress{width:100%;height:12px;accent-color:#dbad62}.money-progress p{margin-bottom:0;font-size:12px}.money-note{padding:14px 18px;border-left:3px solid #dbae66;background:#263039}.money-page form{max-width:600px;display:grid;gap:12px}.money-page input,.money-page select{width:100%;margin-top:8px;padding:13px;background:#131e27;color:#e7edf1;border:1px solid #455562;border-radius:5px}.money-page .settings-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.money-page .settings-actions .btn{flex:0 1 auto}.money-page .repair-entry{padding:20px 0}.money-page .btn{min-height:44px}@media(max-width:800px){.money-stats{grid-template-columns:repeat(2,1fr)}.money-page{padding:22px 14px}.money-body{padding:18px}.money-heading{align-items:flex-start}.money-heading h1{font-size:26px}}@media(max-width:440px){.money-stats{grid-template-columns:1fr}.money-heading{flex-direction:column}}.money-page-open #resources{display:none}.money-heading>div{flex:1}.money-heading>.btn,.money-tabs>.btn,.money-page .settings-actions>.btn,.money-body>.btn{width:auto;flex:0 0 auto}.money-heading>.btn{min-width:150px}.money-tabs{justify-content:flex-start}.earn-simple{text-align:center;padding:28px 16px;background:#131e27;border:1px solid #354653;border-radius:10px}.earn-simple>span{font-size:14px;color:#bac7d1}.earn-simple>strong{display:block;font-size:46px;line-height:1.2;color:#ecc17a;margin:14px 0}.earn-simple p{font-size:17px;margin:10px 0}.earn-simple small{color:#9fb0be;font-size:12px;line-height:1.6}.earn-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0 16px}.earn-summary>div{display:flex;justify-content:space-between;gap:12px;padding:16px;background:#131e27;border-radius:6px;flex-wrap:wrap}.earn-summary span{color:#b4c1cc;font-size:13px}.earn-summary strong{font-size:16px}.earn-bar{width:100%;height:10px;accent-color:#dbae66}.earn-rule{text-align:center;font-size:13px}.money-page:has(.earn-simple){max-width:930px}.money-page:has(.earn-simple) .money-tabs{display:none}@media(max-width:600px){.earn-summary{grid-template-columns:1fr}.earn-simple>strong{font-size:36px}.earn-simple p{font-size:14px}}.mobile-body{margin:0;background:#090e14;overflow:hidden;overscroll-behavior:none}.mobile-game{--gold:#e7b86b;--hud:56px;--dock:58px;position:fixed;inset:0;max-width:none;margin:0;border:0;overflow:hidden;background:#0c131c;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}.mobile-game .topbar,.mobile-game footer,.mobile-game .rail,.mobile-game .scene-heading,.mobile-game .mission-strip,.mobile-game .perimeter-strip,.mobile-game .scene-coordinate{display:none}.mobile-game .resources{position:absolute;inset:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) auto env(safe-area-inset-left,0px);height:var(--hud);padding:4px 12px;gap:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));background:linear-gradient(#26313d,#131c26);border-bottom:1px solid #d7ad6244;z-index:5}.mobile-game .resource{display:flex;align-items:center;text-align:left;padding:0 9px;gap:7px;min-width:0;border-right:1px solid #8293a022}.mobile-game .resource-icon{display:flex;align-items:center;justify-content:center;width:27px;height:32px;border:none;background:none;flex-shrink:0}.mobile-game .resource-icon svg{width:21px}.mobile-game .resource-label{font-size:8px;letter-spacing:1px}.mobile-game .resource strong{font-size:19px;line-height:1.15}.mobile-game .resource strong em{font-size:11px}.mobile-game .resource small{display:none}.mobile-game .game-layout{display:block;padding:0;position:absolute;inset:calc(var(--hud) + env(safe-area-inset-top,0px)) 0 calc(var(--dock) + env(safe-area-inset-bottom,0px));overflow:hidden}.mobile-game .world-column{padding:0;width:100%;height:100%;position:relative;min-width:0;overflow:hidden}.mobile-game .world{position:absolute;inset:0;border:0;margin:0;width:100%;height:100%;aspect-ratio:auto;box-shadow:none}.mobile-game canvas{width:100%;height:100%;touch-action:none}.mobile-game .scene-tag{top:9px;left:12px;font-size:7px;padding:7px 10px;background:#101925ba}.mobile-game .view-controls{top:8px;right:10px}.mobile-game .view-controls button{min-width:48px;height:48px;background:#192632dc;border:1px solid #8195aa44}.mobile-game #pause-overlay{pointer-events:none;background:#07101a55;font-size:12px;letter-spacing:3px}.mobile-game #room-index{position:absolute;bottom:8px;left:12px;margin:0;padding:0;border:0;background:none;width:auto;z-index:3}.mobile-game .area-pages{margin:0;padding:4px;gap:4px;background:#111c28ed;border:1px solid #7182924d;border-radius:5px}.mobile-game .area-pages .btn{min-height:48px;padding:8px;font-size:10px;min-width:48px}.mobile-game .area-picker{font-size:8px}.mobile-game .area-picker select{height:48px;min-width:76px}.mobile-game .simulation-controls{position:absolute;right:12px;bottom:8px;margin:0;padding:0;background:#111c28e8;border:1px solid #7182924d;border-radius:5px;min-height:56px}.mobile-game .simulation-controls #shelter-status{display:none}.mobile-game .playback{gap:3px;padding:3px}.mobile-game .playback button{min-width:48px;height:48px}.mobile-game #saved{font-size:8px;max-width:90px;padding:0 8px}.mobile-game .care-warning{position:absolute;top:64px;left:12px;max-width:310px;padding:10px;z-index:4;border-radius:5px;background:#3d2517ef;box-shadow:0 5px 20px #0006}.mobile-game .care-warning strong{font-size:10px}.mobile-game .care-warning p{font-size:10px;margin:5px 0}.mobile-game .care-warning .btn{min-height:48px;font-size:10px}.mobile-nav{position:absolute;bottom:env(safe-area-inset-bottom,0px);left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);height:var(--dock);display:flex;justify-content:center;gap:10px;background:linear-gradient(#202c38,#111923);border-top:1px solid #8496a345;z-index:11}.mobile-nav button{min-width:90px;min-height:48px;border:0;border-top:2px solid transparent;background:none;display:flex;gap:7px;align-items:center;justify-content:center;color:#8fa1b3;font-size:11px;font-weight:600}.mobile-nav button[aria-pressed=true]{border-top-color:var(--gold);color:#f1c684;background:linear-gradient(#d8a85419,transparent)}.mobile-nav svg{flex-shrink:0}.mobile-game .management{display:none;position:absolute;right:0;top:0;bottom:0;width:min(440px,55vw);padding:22px;background:linear-gradient(135deg,#24313e,#141f2b);border:1px solid #889db44d;border-top:2px solid #cda15f;z-index:9;overflow:auto;box-shadow:-20px 0 70px #0008;overscroll-behavior:contain}.mobile-game.sheet-open .management{display:block}.mobile-sheet-grip{width:32px;height:3px;border-radius:9px;background:#8a9aaa66;margin:0 0 18px}.mobile-game .management #panel{padding:0}.mobile-game .management h2{font-size:25px}.mobile-game .management h3{font-size:19px}.mobile-game .management p{font-size:12px}.mobile-game .btn,.mobile-game select,.mobile-game .build-card{min-height:48px}.mobile-game .build-list{display:grid;grid-template-columns:1fr;gap:8px}.mobile-game .build-card{padding:12px}.mobile-game .tutorial-card{display:none}.mobile-game .team-choice label{min-height:54px;align-items:center}.mobile-game input[type=checkbox]{width:22px;height:22px;flex-shrink:0;accent-color:var(--gold)}.mobile-game .survivor-header small{font-size:11px}.mobile-scrim{position:absolute;inset:var(--hud) 0 var(--dock);background:#030a1255;z-index:8}.mobile-sheet-close{position:absolute;right:calc(min(440px,55vw) + 9px);top:calc(var(--hud) + 10px + env(safe-area-inset-top,0px));width:48px;height:48px;display:grid;place-items:center;background:#1b2b38;border:1px solid #71869a66;color:#e8c68a;border-radius:4px;z-index:10}.mobile-more{position:absolute;right:10px;bottom:calc(var(--dock) + 8px + env(safe-area-inset-bottom,0px));width:min(380px,70vw);max-height:calc(100% - var(--hud) - var(--dock) - 20px);overflow:auto;background:linear-gradient(135deg,#263541,#13202c);border:1px solid #8d785044;border-top:2px solid var(--gold);padding:22px;z-index:10;box-shadow:0 10px 50px #0009}.mobile-more h2{margin:7px 0 15px}.mobile-more button{min-height:48px;width:100%;display:flex;gap:14px;align-items:center;background:none;border:0;border-bottom:1px solid #74899b25;color:#c5d2dc;text-align:left}.mobile-more small{font-size:8px;letter-spacing:2px;display:block;color:#7790a5;margin-top:14px}.mobile-quality{display:block;margin-top:15px;font-size:12px}.mobile-quality select{display:block;width:100%;margin-top:5px}.mobile-game dialog{max-width:min(600px,92vw);max-height:88dvh;overflow:auto;background:linear-gradient(135deg,#24313e,#131f2a);border:1px solid #8c79544d;border-top:2px solid #d4aa65;padding:24px;color:#d5dce1}.mobile-game .dialog-title .icon-btn{min-width:48px;min-height:48px}.mobile-game #dialog input{min-height:48px}.mobile-game .settings-actions{display:flex;flex-wrap:wrap;gap:8px}.mobile-game .toast{bottom:calc(var(--dock) + 70px);z-index:1200;font-size:12px}.mobile-game .game-over{-webkit-backdrop-filter:none;backdrop-filter:none}.mobile-game .game-over-card{max-height:90dvh;overflow:auto;padding:22px}.mobile-game .game-over-card h2{font-size:26px}.mobile-game .game-over-card p{font-size:12px}.rotate-hint,.mobile-scrim[hidden],.mobile-sheet-close[hidden],.mobile-more[hidden]{display:none}@media(max-height:440px)and (orientation:landscape){.mobile-game{--hud:48px;--dock:52px}.mobile-game .resources{padding:2px 8px}.mobile-game .resource strong{font-size:16px}.mobile-game .resource-label{font-size:7px}.mobile-game .scene-tag{display:none}.mobile-game .care-warning{top:8px;max-width:280px}.mobile-game .care-warning p{display:none}.mobile-game .care-warning>div{margin-top:5px}.mobile-game .management{padding:16px}.mobile-game .game-over-card h2{margin:10px 0}.mobile-game .game-over-card p{margin:7px 0}}@media(orientation:portrait){.mobile-game .rotate-hint{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at top,#253a48,#0a111a 75%);z-index:100;text-align:center;padding:30px}.rotate-hint h2{color:#e5c58e;font-size:24px}.rotate-hint p{color:#92a8b8}.rotate-hint button{min-height:48px;min-width:160px;margin-top:10px;color:#d9e3ea;border:1px solid #637b8d;background:#20313f}.mobile-game dialog{z-index:200}}.mobile-status{position:absolute;left:12px;top:calc(var(--hud) + 10px + env(safe-area-inset-top,0px));z-index:4;padding:8px 12px;border:1px solid #8195aa33;background:#101d2de6;color:#a8b9c8;font-size:9px;letter-spacing:.8px;pointer-events:none}.mobile-status.urgent{background:#5b2c1de8;border-color:#e48c5e;color:#ffd0ac}.mobile-game .care-warning{top:45px}.android-download{color:#edbf79!important}.android-apk-link{display:flex;justify-content:center;margin:18px 0}.mobile-game .game-layout,.mobile-game .world,.mobile-game .management{min-height:0;max-height:none}.mobile-game .world{max-width:none}
