@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#0b1014;--panel:#11181bd9;--line:#ffffff16;--muted:#8c9699;--text:#eeeae3;--accent:#efa97c;--mint:#a9c5b1;--water:#8cdbda;--alloy:#ffae72;--power:#e7d18d;--data:#c6b3ff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans','Segoe UI',sans-serif;font-size:13px;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible{outline:2px solid var(--water);outline-offset:4px}button{transition:background .2s,color .2s,border-color .2s,transform .2s}button:hover:not(:disabled){filter:brightness(1.14)}a{color:inherit;text-decoration:none}b,strong{font-weight:600}#scene{position:fixed;inset:0}#scene canvas{width:100%;height:100%;display:block;touch-action:none}.vignette{pointer-events:none;position:fixed;inset:0;background:linear-gradient(90deg,#0a1014b3 0,transparent 33%,transparent 65%,#0a101480 100%),linear-gradient(0deg,#0b1014 0,transparent 28%,transparent 75%,#0b1014a6)}.topbar{height:80px;display:flex;align-items:center;justify-content:space-between;position:relative;margin:0 34px;border-bottom:1px solid var(--line);z-index:3;gap:18px}.brand{display:flex;align-items:center;gap:10px;font-size:25px;letter-spacing:5px;font-weight:700}.brand svg{width:32px;height:32px;stroke:var(--accent);fill:none;stroke-width:1.4}.brand-slash{font-weight:400;color:#515b5f;font-size:23px;letter-spacing:0;margin:0 3px}.brand small{font-size:9px;letter-spacing:1.4px;color:var(--muted);font-weight:500;max-width:70px;line-height:1.5}.topbar nav{display:flex;gap:24px;height:100%}.topbar nav button{font-size:9px;letter-spacing:1px;position:relative;color:#637075;padding:0 4px;white-space:nowrap}.topbar nav button span{font-size:10px;color:#9ca4a7;letter-spacing:1.5px;margin-left:7px}.topbar nav button.active span{color:var(--text)}.topbar nav button.active:after{content:'';height:2px;background:var(--accent);position:absolute;bottom:-1px;left:0;right:0}.top-right{display:flex;gap:13px;align-items:center}.demo{font-size:9px;letter-spacing:1.1px;border:1px solid #b7cfb32b;color:#b7cfb3;padding:7px 9px;white-space:nowrap}.demo i,.status-dot,.live-dot:before,.bottom-status i,.bar-title i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#a9c5b1;box-shadow:0 0 10px #9bcd9660;margin-right:6px}.icon-btn{font-size:16px;width:28px;height:28px;border:1px solid var(--line);color:var(--muted);border-radius:50%}.icon-btn:hover{background:#ffffff15;color:white}.resources{position:relative;z-index:3;margin:0 34px;height:61px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:1px}.sol{display:flex;align-items:center;gap:8px}.sol b{color:var(--accent);font-variant-numeric:tabular-nums}.resource-divider{height:14px;width:1px;background:var(--line);margin:0 8px}.weather{color:var(--muted);font-size:9px}.resource-items{display:flex;gap:27px;align-items:center}.resource-items>span{display:flex;align-items:center;gap:7px}.resource-items i{font-size:19px;font-style:normal}.resource-items b{font-size:13px;min-width:24px;font-variant-numeric:tabular-nums}.resource-items small{color:var(--muted);font-size:8px}.water{color:var(--water)}.alloy{color:var(--alloy)}.power{color:var(--power)}.data{color:var(--data)}.wallet{display:flex;gap:8px;align-items:center;font-size:12px}.wallet>span{color:var(--mint)}.wallet small{font-size:8px;letter-spacing:1px;color:var(--muted)}#game-ui{position:relative;height:calc(100dvh - 177px);padding:30px 34px 0;display:grid;grid-template-columns:255px 1fr 275px;grid-template-rows:1fr 160px;column-gap:24px;pointer-events:none}#game-ui button,#game-ui a,.left-panel,.right-panel,.colonies-bar{pointer-events:auto}.left-panel{padding-top:13px;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#ffffff20 transparent}.eyebrow,.panel-label,.bar-title{font-size:9px;font-weight:500;letter-spacing:1.6px;color:var(--muted)}.left-panel .eyebrow{color:var(--accent)}.intro-title{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:500;font-size:57px;line-height:.98;letter-spacing:-.5px;margin:15px 0 19px}.intro-title em{font-style:normal;color:var(--accent)}.intro-copy{font-size:12px;line-height:1.85;color:#9da5a6;max-width:235px;margin-bottom:23px}.primary,.secondary{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:11px;padding:14px 16px;border-radius:3px;letter-spacing:.2px;min-height:43px}.primary{background:var(--mint);color:#16251d;font-weight:700}.primary:hover{background:#c6ddc9}.secondary{border:1px solid #ffffff25;background:#11191d85}.secondary:hover{background:#ffffff12}.wide{width:100%}.primary span,.secondary span{font-size:17px}.text-action{font-size:10px;color:var(--muted);padding:13px 0}.text-action:hover{color:var(--accent)}.section-divider{height:1px;background:var(--line);margin:23px 0 19px}.mini-stat{display:flex;justify-content:space-between;align-items:center;margin:12px 0;color:var(--muted);font-size:10px}.mini-stat b{color:var(--text)}.step-list{display:grid;gap:13px;margin-top:14px}.step{display:flex;gap:10px;align-items:center;color:#a1a8a8;font-size:10px}.step>i{display:flex;align-items:center;justify-content:center;width:21px;height:21px;border:1px solid #ffffff26;border-radius:50%;font-size:9px;font-style:normal;color:#b8bcb7}.step.done>i{background:#a9c5b11c;border-color:#a9c5b175;color:#c4d8be}.step.done{color:#c3d2bf}.world-center{position:relative;pointer-events:none;min-width:0}.coordinate{text-align:center;font-size:8px;color:#727c7e;letter-spacing:2px;margin-top:1px}#scene-caption{position:absolute;bottom:69px;text-align:center;width:100%;text-shadow:0 2px 20px #000}#scene-caption h2{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-size:28px;font-weight:500;letter-spacing:12px;padding-left:12px;margin:9px 0}#scene-caption p{font-size:8px;letter-spacing:1.8px;color:#adb0aa}#scene-caption p span{margin:0 10px}.caption-line{display:block;margin:auto;width:1px;height:25px;background:linear-gradient(transparent,#beafa1)}#orbit-tools{position:absolute;bottom:20px;display:flex;align-items:center;justify-content:center;gap:6px;width:100%;pointer-events:auto}#orbit-tools .tool{width:26px;height:26px;border:1px solid var(--line);border-radius:3px;background:#11181bb3;color:#999}.tool.active{color:var(--accent)!important}#orbit-tools>span{font-size:7px;letter-spacing:1px;margin-left:8px;color:var(--muted);white-space:nowrap}#orbit-tools i{margin:0 5px;font-style:normal}.right-panel{overflow:auto;scrollbar-width:none}.panel-label{display:flex;justify-content:space-between;align-items:center;margin:0 0 12px}.live-dot{font-size:8px;color:#afc4a9;letter-spacing:1px}.live-dot:before{content:''}.treaty-card{border:1px solid #d8b49423;background:linear-gradient(140deg,#262722a8,#121b1ee8);border-radius:5px;overflow:hidden;padding:0 18px 13px;backdrop-filter:blur(16px)}.treaty-art{height:84px;margin:0 -18px 11px;background:linear-gradient(0deg,transparent,#b1784612);position:relative;overflow:hidden}.treaty-art svg{width:100%;height:100%}.treaty-art>span{position:absolute;left:18px;top:13px;font-size:7px;letter-spacing:1.4px;color:#baa18a}.treaty-heading .eyebrow{font-size:7px;color:var(--accent);letter-spacing:1.2px}.treaty-heading h2{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-size:29px;font-weight:500;line-height:1.1;margin:10px 0}.treaty-heading p{font-size:10px;line-height:1.8;color:#9aa3a2;margin:0 0 17px}.progress-row{margin:11px 0}.progress-label{display:flex;justify-content:space-between;font-size:9px;margin:0 0 6px;color:#c1c5bd}.progress-label b{font-weight:400;color:#a8b1ad}.bar{height:3px;background:#ffffff12;overflow:hidden;border-radius:3px}.bar i{display:block;height:100%;background:var(--mint);transition:width .4s;width:0}.treaty-card .primary{margin-top:18px;padding:12px;font-size:10px;min-height:38px}.treaty-footer{display:flex;justify-content:space-between;margin-top:13px;font-size:7px;letter-spacing:.8px;color:#7e8a87}.treaty-footer b{color:#a8bca7;font-size:9px}.transmission{margin-top:20px;border-left:1px solid #ffffff25;padding-left:12px}.transmission .eyebrow{font-size:7px;color:#8b9c91}.transmission p{font-size:10px;line-height:1.8;color:#a5aaa4;max-width:230px}.transmission-author{font-size:7px;letter-spacing:1px;color:#65736d}.colonies-bar{grid-column:1/-1;align-self:end;padding-bottom:18px}.bar-title{display:flex;justify-content:space-between;font-size:8px;margin-bottom:12px}.bar-title>span:last-child{font-size:7px;color:#7d8d83}.bar-title i{margin:0 0 0 7px;width:4px;height:4px}#colony-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.colony-card{border:1px solid #ffffff17;border-radius:4px;background:#11191ddd;display:grid;grid-template-columns:68px 1fr 24px;align-items:center;text-align:left;gap:15px;padding:15px 17px;min-height:91px;position:relative;overflow:hidden;backdrop-filter:blur(10px)}.colony-card:hover{transform:translateY(-3px);border-color:#ffffff40}.colony-card.selected{border-color:var(--colony);background:linear-gradient(100deg,color-mix(in srgb,var(--colony) 8%,#11191d),#11191ded)}.colony-card.selected:before{content:'';position:absolute;top:0;left:0;bottom:0;width:2px;background:var(--colony)}.colony-emblem{width:57px;height:57px;border:1px solid color-mix(in srgb,var(--colony) 25%,transparent);border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(color-mix(in srgb,var(--colony) 14%,transparent),transparent);color:var(--colony)}.colony-emblem svg{width:37px;height:37px;stroke:currentColor;fill:none;stroke-width:1}.colony-card h3{font-family:'Barlow Condensed',sans-serif;font-size:24px;font-weight:500;margin:2px 0 5px}.colony-card .region{font-size:7px;letter-spacing:1.1px;color:#8e9b9d}.colony-card .spec{font-size:9px;color:var(--colony)}.colony-card .card-arrow{font-size:19px;color:var(--colony)}.colony-card .home-tag{position:absolute;right:15px;top:14px;font-size:6px;color:var(--colony);letter-spacing:1px}.bottom-status{height:36px;position:relative;margin:0 34px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:7px;letter-spacing:1px;color:#80908b;z-index:3}.bottom-status i{width:4px;height:4px}.bottom-status>span>span{margin-left:10px;color:#65706e}.bottom-status button{font-size:7px;color:#8d9791;letter-spacing:.7px;margin-left:13px}.bottom-status button:hover{color:#e8b291}#save-dot{color:#a9c5b1}.muted{color:var(--muted)}.map-marker{position:fixed;pointer-events:auto;transform:translate(-50%,-50%);z-index:2;display:flex;align-items:center;gap:8px;text-align:left;padding:7px 10px;background:#0c151bd9;border:1px solid #ffffff30;border-radius:3px;white-space:nowrap;font-size:9px;letter-spacing:1px;box-shadow:0 5px 25px #0005}.map-marker i{width:6px;height:6px;border-radius:50%;background:var(--colony);box-shadow:0 0 14px var(--colony)}.map-marker small{font-size:6px;color:#9aa9aa;display:block;margin-top:3px;letter-spacing:1px}.map-marker.selected{border-color:var(--colony)}.facility-label{position:fixed;transform:translate(-50%,-50%);z-index:2;pointer-events:auto;border:1px solid #ffffff30;background:#0c151be8;padding:8px 11px;font-size:9px;border-radius:3px;letter-spacing:.5px}.facility-label:hover{border-color:var(--accent)}.facility-label span{font-size:7px;color:var(--accent);margin-left:8px}.settlement-title{font-family:'Barlow Condensed',sans-serif;font-weight:500;font-size:48px;margin:10px 0}.production-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.production-btn{padding:13px 11px;border:1px solid var(--line);text-align:left;border-radius:3px;background:#131e23bf}.production-btn:hover{border-color:#ffffff45;background:#1c282e}.production-btn strong{display:block;font-size:11px;font-weight:500;margin-bottom:6px}.production-btn small{font-size:8px;color:#8e9d9f}.production-status{font-size:10px;color:var(--mint);min-height:36px;margin-top:11px;line-height:1.8}.mini-log{margin:10px 0 0;padding:0;list-style:none}.mini-log li{font-size:9px;line-height:1.65;color:#8d9a98;padding:7px 0;border-bottom:1px solid #ffffff0b}.mission-card{border:1px solid var(--line);border-radius:4px;background:#151f24cb;padding:15px;margin-top:12px;text-align:left;width:100%}.mission-card:hover{border-color:#a9c5b160;transform:translateX(3px)}.mission-card .mission-icon{color:var(--accent);font-size:22px}.mission-card h3{font-size:13px;font-weight:500;margin:8px 0}.mission-card p{font-size:10px;line-height:1.6;color:#94a2a3;margin:5px 0 12px}.mission-card .mission-meta{display:flex;justify-content:space-between;font-size:8px;color:var(--mint);letter-spacing:.5px}.mission-card .mission-meta span:first-child{color:#8a9695}#modal-backdrop{position:fixed;inset:0;background:#03090caa;z-index:20;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px);padding:24px}#modal-backdrop[hidden]{display:none}.modal{width:620px;max-width:100%;max-height:87dvh;overflow:auto;border:1px solid #d5c1a336;border-radius:10px;background:linear-gradient(135deg,#1c292c,#11191f 70%);box-shadow:0 30px 130px #0008;padding:35px;position:relative}.modal-close{position:absolute;right:18px;top:18px}.modal h2{font-family:'Barlow Condensed',sans-serif;font-size:40px;font-weight:500;margin:13px 0}.modal p{color:#a5b1b1;line-height:1.85;font-size:12px}.modal .eyebrow{color:var(--accent)}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.modal-box{border:1px solid #ffffff15;border-radius:4px;background:#ffffff03;padding:16px}.modal-box>span{font-size:9px;color:#99a6a6;letter-spacing:.7px}.modal-box>b{display:block;font-size:24px;font-family:'Barlow Condensed',sans-serif;font-weight:500;margin:8px 0 3px}.modal-box p{margin:0;font-size:10px}.modal-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.modal-actions>*{flex:1;white-space:nowrap}.modal-note{font-size:9px!important;color:#7d9091!important;border-top:1px solid var(--line);padding-top:15px;margin-top:20px!important}.pills{display:flex;gap:8px;margin:17px 0;flex-wrap:wrap}.pill{font-size:9px;padding:7px 10px;border:1px solid #ffffff20;border-radius:20px;color:#bdc6be}.stat-table{width:100%;border-collapse:collapse;margin-top:15px}.stat-table td{padding:11px 0;border-bottom:1px solid var(--line);font-size:11px;color:#a1b0ad}.stat-table td:last-child{text-align:right;color:#d3ddcd}.modal label{display:block;color:#9eadaa;font-size:10px;margin:14px 0 7px}.select-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.select-grid button{border:1px solid var(--line);padding:10px;border-radius:3px;font-size:10px}.select-grid button.active{border-color:var(--mint);color:var(--mint);background:#a9c5b10c}.big-number{font-family:'Barlow Condensed',sans-serif;font-size:64px;font-weight:500;letter-spacing:-1px;margin:10px 0}.big-number small{font-family:'DM Sans',sans-serif;font-size:11px;color:var(--muted);letter-spacing:0}.briefing-map{height:70px;background:linear-gradient(90deg,#40535420,#85604624);border:1px solid var(--line);border-radius:3px;display:flex;align-items:center;justify-content:space-around;color:var(--accent);font-size:10px;position:relative;margin:20px 0}.briefing-map:before{content:'';height:1px;border-top:1px dashed #cbb59655;position:absolute;left:30px;right:30px}.briefing-map span{position:relative;padding:8px;background:#172127}.reward-row{display:flex;gap:12px;margin:20px 0}.reward-row>div{flex:1;padding:18px 10px;border:1px solid #a9c5b130;background:#a9c5b10b;text-align:center;border-radius:4px}.reward-row b{font-family:'Barlow Condensed',sans-serif;font-size:28px;color:var(--mint);font-weight:500}.reward-row small{display:block;margin-top:6px;color:#9baba4;font-size:8px;letter-spacing:.6px}#toast{position:fixed;left:50%;bottom:205px;transform:translate(-50%,15px);opacity:0;transition:.25s;pointer-events:none;background:#1e302c;border:1px solid #b0d3bd50;border-radius:4px;padding:13px 22px;color:#dbe9d9;z-index:40;font-size:11px;max-width:90vw;text-align:center;box-shadow:0 10px 40px #0006}#toast.show{opacity:1;transform:translate(-50%,0)}#loading{position:fixed;inset:0;z-index:50;background:#0b1014;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:17px;transition:opacity .6s}#loading strong{font-size:10px;letter-spacing:3px;color:#c9b8a5}#loading>span{font-size:12px;color:#75817e}.loading-orbit{width:70px;height:70px;border:1px solid #efa97c33;border-top-color:#efa97c;border-radius:50%;animation:spin 1.4s linear infinite;margin-bottom:15px}.loading-orbit:after{content:'';position:absolute;background:#d99266;width:34px;height:34px;border-radius:50%;top:17px;left:17px;box-shadow:0 0 30px #d9926622}@keyframes spin{to{transform:rotate(360deg)}}#mission-hud{position:fixed;inset:160px 34px 55px;pointer-events:none;z-index:4}#mission-hud[hidden]{display:none}.mission-top h1{font-family:'Barlow Condensed',sans-serif;font-size:36px;font-weight:500;margin:8px 0;text-shadow:0 2px 20px #000}.mission-top p{font-size:11px;color:#c3c5b9;text-shadow:0 2px 5px #000}.mission-top .eyebrow{color:var(--accent)}.mission-stats{display:flex;gap:30px;position:absolute;right:0;top:10px;background:#101a20d9;border:1px solid #ffffff20;padding:17px 22px;border-radius:5px;backdrop-filter:blur(10px)}.mission-stats>div{min-width:85px}.mission-stats span{font-size:8px;letter-spacing:1px;color:#a3aaa0}.mission-stats b{display:block;font-family:'Barlow Condensed',sans-serif;font-size:25px;font-weight:500;margin:6px 0;color:#e4e5d4}#battery-fill{background:var(--mint)}#mission-tip{position:absolute;bottom:80px;text-align:center;width:100%;font-size:10px;letter-spacing:.5px;color:#d8d6c3;text-shadow:0 1px 5px #000}.mission-bottom{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-end;pointer-events:auto}.mission-bottom .secondary{background:#0c171de6}.drive-pad{text-align:center;display:none}.drive-pad button{width:43px;height:40px;border:1px solid #ffffff30;border-radius:4px;margin:2px;background:#122129c9;touch-action:none}.drive-pad button:active{background:#4e655a}.mission-bottom .secondary.active{border-color:var(--mint);color:var(--mint)}#mission-feedback{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);color:#e3f7df;text-shadow:0 2px 20px #000;font-size:15px;text-align:center}.achievement{text-align:center}.achievement .achievement-icon{font-size:45px;margin:5px 0 18px;color:#e9ba7d}.key{border:1px solid #ffffff30;border-radius:3px;padding:2px 5px;font-size:9px;color:#d9dfd5}.instruction{display:flex;gap:13px;margin:18px 0}.instruction>span{color:var(--accent);font-size:18px}.instruction p{margin:0}.instruction strong{color:#e1e2d5;font-size:12px}.instruction a{color:var(--mint);text-decoration:underline}.hidden{display:none!important}
@media(min-width:1500px){#game-ui{grid-template-columns:290px 1fr 310px;column-gap:40px;padding-top:45px;grid-template-rows:1fr 180px}.left-panel{padding-top:20px}.intro-title{font-size:72px}.intro-copy{font-size:13px;max-width:255px}.treaty-heading h2{font-size:36px}.treaty-heading p{font-size:12px}.treaty-art{height:110px}.treaty-card{padding-left:23px;padding-right:23px}.progress-row{margin:15px 0}.colony-card{min-height:110px}.colony-card h3{font-size:28px}}
@media(max-height:790px) and (min-width:1000px){.topbar{height:65px}.resources{height:51px}#game-ui{height:calc(100dvh - 152px);padding-top:20px;grid-template-rows:1fr 135px}.intro-title{font-size:47px;margin:12px 0}.intro-copy{font-size:11px;margin-bottom:15px}.section-divider{margin:17px 0}.step-list{gap:9px}.treaty-art{height:55px;margin-bottom:8px}.treaty-heading h2{font-size:25px}.treaty-heading p{margin-bottom:10px}.progress-row{margin:9px 0}.transmission{display:none}.colony-card{min-height:83px;padding:12px}.treaty-card .primary{margin-top:12px}.mission-card{padding:12px;margin-top:8px}.mission-card p{margin-bottom:8px}#mission-hud{top:135px}}
@media(max-width:1100px){.topbar,.resources,.bottom-status{margin-left:22px;margin-right:22px}.brand small,.brand-slash{display:none}.topbar nav{gap:16px}.resource-items{gap:15px}.resource-items small{display:none}#game-ui{padding-left:22px;padding-right:22px;grid-template-columns:220px 1fr 235px;column-gap:17px}.intro-title{font-size:49px}.treaty-card{padding-left:13px;padding-right:13px}.treaty-heading h2{font-size:27px}.treaty-heading .eyebrow{font-size:6px}.colony-card{grid-template-columns:42px 1fr 16px;gap:10px}.colony-emblem{width:40px;height:40px}.colony-emblem svg{width:29px;height:29px}.colony-card .home-tag{display:none}.colony-card .region{font-size:6px}.colony-card h3{font-size:22px}#orbit-tools>span{display:none}.coordinate{font-size:6px}.mission-stats{top:auto;bottom:135px;right:0}.mission-top h1{font-size:32px}}
@media(max-width:780px){body{overflow:auto;min-height:100dvh}.topbar{height:65px;flex-wrap:wrap;gap:0;align-content:center}.brand{font-size:20px;letter-spacing:3px}.brand svg{width:26px}.topbar nav{order:3;width:100%;height:37px;justify-content:center;position:absolute;top:66px;background:#0b1014ab;border-bottom:1px solid var(--line)}.topbar nav button{font-size:8px}.topbar nav button span{font-size:9px}.top-right{gap:10px}.demo{font-size:7px;padding:6px}.resources{margin-top:38px;height:55px;gap:10px}.resources .weather,.resource-divider{display:none}.resource-items{gap:13px}.resource-items>span{gap:3px}.resource-items b{font-size:11px}.resource-items i{font-size:16px}.sol{font-size:8px;gap:3px}.wallet{font-size:10px;gap:4px}.wallet small{font-size:6px;max-width:26px;line-height:1.4}.icon-btn{width:24px;height:24px;font-size:13px}#game-ui{height:auto;min-height:calc(100dvh - 194px);grid-template-columns:1fr 1fr;grid-template-rows:380px auto auto;gap:18px;padding:19px 22px 0}.world-center{grid-column:1/-1;grid-row:1;pointer-events:none}.left-panel{grid-column:1;grid-row:2;padding-top:0;overflow:visible}.right-panel{grid-column:2;grid-row:2}.coordinate{text-align:left;font-size:7px}.intro-title{font-size:42px}.intro-copy{font-size:11px}.colonies-bar{grid-column:1/-1;grid-row:3;margin-top:3px}#colony-cards{gap:8px}.colony-card{padding:12px 8px;display:block;min-height:95px}.colony-emblem{display:none}.colony-card h3{font-size:23px}.colony-card .spec{font-size:8px}.colony-card .card-arrow{display:none}.bar-title{font-size:7px}.treaty-art{height:57px}.treaty-heading h2{font-size:25px}.treaty-heading p{font-size:10px}.transmission{display:none}.treaty-heading .eyebrow{font-size:6px;letter-spacing:.7px}.panel-label{font-size:7px;letter-spacing:.8px}.live-dot{font-size:6px}.primary,.secondary{padding:12px;font-size:10px;gap:8px}.treaty-footer{font-size:6px}.bottom-status .desktop{display:none}.bottom-status{font-size:6px;height:36px}.bottom-status button{font-size:6px}.vignette{background:linear-gradient(0deg,#0b1014 20%,transparent 65%,#0b101477)}#scene-caption{bottom:35px}#scene-caption h2{font-size:24px}#orbit-tools{bottom:0}#orbit-tools>span{display:inline;font-size:6px}.caption-line{height:15px}#toast{bottom:55px;max-width:88vw;width:max-content;font-size:10px}.modal{padding:25px 20px}.modal h2{font-size:34px}.modal-grid{gap:8px}.modal-box{padding:12px}.modal-actions{flex-direction:column}.modal-actions>*{width:100%}.modal-box p{font-size:9px}.select-grid button{font-size:9px;padding:9px 4px}.mission-stats{bottom:150px;left:0;right:auto;gap:20px;padding:13px}.mission-stats>div{min-width:65px}.mission-stats b{font-size:22px}#mission-hud{inset:180px 22px 50px}.mission-top h1{font-size:30px}.mission-top p{max-width:290px;font-size:10px}.drive-pad{display:block}.mission-bottom{align-items:center;gap:7px}.mission-bottom .secondary{font-size:8px;padding:10px;max-width:95px}.mission-bottom .drive-pad{flex:1}#mission-tip{font-size:8px;bottom:120px}.production-grid{gap:6px}.production-btn{padding:10px 8px}.production-btn strong{font-size:10px}.production-btn small{font-size:7px}.mission-card{padding:12px}.mission-card p{font-size:9px}.mission-card .mission-meta{font-size:7px}.mission-card h3{font-size:12px}.map-marker{font-size:8px}.map-marker small{font-size:6px}.facility-label{font-size:8px;padding:6px}}
.bottom-status{position:fixed;bottom:0;left:34px;right:34px;margin:0;background:#0b1014b3}.vignette{background:linear-gradient(90deg,#0a1014ed 0,#0a1014b0 21%,transparent 37%,transparent 65%,#0a1014a8 83%,#0a1014dc 100%),linear-gradient(0deg,#0b1014 0,transparent 28%,transparent 75%,#0b1014a6)}
@media(max-height:790px) and (min-width:1000px){.left-panel{scrollbar-width:none}.intro-title{font-size:43px}.intro-copy{line-height:1.65}.step-list{gap:7px}.step{font-size:9px}.step>i{width:18px;height:18px}.step:first-child{display:none}.left-panel>.mini-stat{display:none}.section-divider{margin:14px 0}.text-action{padding:10px 0}}
@media(max-width:1100px){.bottom-status{left:22px;right:22px}}
@media(max-width:780px){body{padding-bottom:36px}.vignette{background:linear-gradient(0deg,#0b1014 15%,#0b1014e0 33%,transparent 65%,#0b101477)}.bottom-status{background:#0b1014ef}.left-panel{scrollbar-width:none}}
@media(max-width:780px){#game-ui{grid-template-columns:1fr;grid-template-rows:360px auto auto auto;gap:22px}.world-center{grid-column:1;grid-row:1}.left-panel{grid-column:1;grid-row:2}.right-panel{grid-column:1;grid-row:3}.colonies-bar{grid-column:1;grid-row:4}.intro-title{font-size:47px}.intro-copy{max-width:none}.left-panel .step-list{display:grid;grid-template-columns:1fr 1fr}.treaty-card{padding:0 20px 18px}.treaty-art{height:80px}.treaty-heading h2{font-size:32px}.treaty-heading .eyebrow{font-size:8px}.treaty-heading p{font-size:11px}.progress-row{margin:15px 0}.progress-label{font-size:11px}.treaty-footer{font-size:8px}.vignette{background:linear-gradient(0deg,#0b1014 10%,#0b1014d9 30%,transparent 60%,#0b1014a0)}.production-grid{grid-template-columns:1fr 1fr}.production-btn{padding:17px}.production-btn strong{font-size:12px}.production-btn small{font-size:9px}.intro-title br{display:block}.mission-card{padding:18px}.mission-card h3{font-size:15px}.mission-card p{font-size:12px}.mission-card .mission-meta{font-size:10px}}
@media(prefers-reduced-motion:reduce){button,.bar i,#toast{transition:none}.loading-orbit{animation:none}}

/* Surface construction is a dedicated play area, with controls outside the world. */
body.constructing{overflow:hidden;height:100dvh;padding-bottom:0}.constructing #game-ui{display:none!important}.constructing .vignette{background:linear-gradient(90deg,#0b1014a0,transparent 40%),linear-gradient(0deg,#0b101477,transparent 40%)}
#construction-ui[hidden]{display:none}#construction-ui{position:fixed;inset:155px 34px 48px;z-index:5;pointer-events:none;--settlement-accent:#8cdbda}#construction-ui button,#construction-ui details{pointer-events:auto}#construction-ui button{min-height:44px;touch-action:manipulation}button:focus-visible,summary:focus-visible{outline:2px solid #b6ecd2;outline-offset:3px}.construction-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.construction-top h2{font-family:'Barlow Condensed',sans-serif;font-size:44px;font-weight:500;margin:4px 0;color:var(--settlement-accent)}.construction-top h2 small{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:1.8px;margin-top:6px;color:#a7b8b7}.construction-top .eyebrow{font-size:8px}.settlement-switch{display:flex;padding:4px;border:1px solid #ffffff1c;border-radius:6px;background:#101c24d9;backdrop-filter:blur(16px);pointer-events:auto}.settlement-switch button{padding:0 16px;border-radius:3px;font-size:11px;color:#94a4a5}.settlement-switch button.active{background:#ffffff0c;color:var(--settlement-accent)}.construction-camera{position:absolute;right:0;top:120px;display:flex;flex-direction:column;gap:7px}.construction-camera button{width:44px;border:1px solid #ffffff24;border-radius:4px;background:#142129e6;font-size:21px}.construction-hint{position:absolute;bottom:26px;left:340px;right:0;text-align:center;font-size:8px;letter-spacing:1.4px;color:#b0c6c4;text-shadow:0 1px 8px #000}.build-dock{position:absolute;left:0;bottom:0;width:310px;max-height:calc(100% - 115px);background:linear-gradient(135deg,#18282df5,#101b23f5);border:1px solid #c7e4d829;border-radius:8px;box-shadow:0 20px 60px #0005;backdrop-filter:blur(16px);pointer-events:auto;display:flex;flex-direction:column}.dock-tabs{display:flex;border-bottom:1px solid #ffffff15;padding:0 12px;flex-shrink:0}.dock-tabs button{flex:1;font-size:11px;position:relative;color:#8fa8ab}.dock-tabs button.active{color:var(--settlement-accent)}.dock-tabs button.active:after{content:'';position:absolute;bottom:-1px;left:12px;right:12px;height:2px;background:var(--settlement-accent)}.dock-tabs button span{font-size:8px;margin-left:3px}.dock-content{padding:20px;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain}.dock-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.dock-heading .eyebrow{font-size:7px;color:#94afab;letter-spacing:1px}.dock-heading h3{font-family:'Barlow Condensed',sans-serif;font-size:27px;font-weight:500;margin:5px 0 0;color:#e5ebdb}.module-symbol{font-size:32px;color:var(--settlement-accent)}.dock-copy{font-size:11px;color:#a1b5b5;line-height:1.75;margin:10px 0 16px}.module-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.module-option{padding:13px 10px;text-align:left;border:1px solid #a9c5b126;border-radius:5px;background:#ffffff03;display:flex;flex-direction:column;gap:5px}.module-option:hover{background:#c3e5d80c;border-color:#b0d9cd66}.module-option>span{font-size:25px}.module-option b{font-size:11px;font-weight:500}.module-option small{font-size:8px;color:#8da3a3;line-height:1.6}.dock-footer{padding:11px 15px;border-top:1px solid #ffffff10;display:flex;justify-content:space-between;gap:7px;font-size:6px;letter-spacing:.4px;color:#809e98;flex-shrink:0}.placement-actions{display:flex;gap:8px;margin-top:12px}.placement-actions>*{flex:1;padding:12px 9px;font-size:10px;justify-content:center;white-space:nowrap}.small-action{font-size:10px;color:#bbc6bb;text-decoration:underline}.cost-line{color:#95afaa;font-size:9px;line-height:1.7;margin:10px 0}.output-strip{padding:12px;background:#a9c5b10b;border:1px solid #a9c5b120;border-radius:4px;display:flex;justify-content:space-between;align-items:center;gap:8px}.output-strip b{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:500;color:var(--settlement-accent)}.output-strip span{font-size:8px;color:#97b1ab}.plot-picker{margin-top:10px;font-size:10px;color:#9eb7af}.plot-picker summary{min-height:44px;display:flex;align-items:center;cursor:pointer}.plot-list{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.plot-list button{border:1px solid #ffffff25;border-radius:3px;background:#ffffff05}.plot-list button.active{border-color:#b5e1c7;color:#b5e1c7}.rail-live{position:absolute;bottom:75px;right:0;width:210px;padding:15px;border:1px solid #ffffff18;background:#111d24da;border-radius:6px;backdrop-filter:blur(10px)}.rail-live .eyebrow{font-size:7px;color:#9eb5ae}.rail-live>b{display:block;font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:500;color:#e2dac1;margin:9px 0 16px}.rail-stage{display:grid;grid-template-columns:1fr auto;gap:8px;margin:13px 0;font-size:10px;color:#a3b8b5}.rail-stage b{font-size:10px;font-weight:500;color:#d3dfce}.rail-blocks{grid-column:1/-1;display:flex;gap:3px;height:4px}.rail-blocks i{flex:1;border-radius:1px;transition:background .6s}.rail-live button{font-size:10px;color:#bed7c6;width:100%;text-align:left}#builder-production{font-size:9px;line-height:1.7;margin-top:13px;min-height:29px}#builder-production .bar{margin-top:8px}.constructing #toast{bottom:75px;z-index:45}button:disabled{opacity:.35;cursor:not-allowed}
@media(max-height:790px) and (min-width:780px){#construction-ui{top:132px}.construction-top h2{font-size:35px}.build-dock{max-height:calc(100% - 90px)}.dock-content{padding:15px}.dock-copy{font-size:10px;margin:8px 0 10px}.module-option{padding:10px}.module-option>span{font-size:20px}.dock-heading h3{font-size:24px}.rail-live{bottom:50px;width:185px}.construction-camera{top:100px}}
@media(max-width:1100px) and (min-width:780px){.build-dock{width:270px}.rail-live{width:165px}.construction-hint{left:270px}.construction-top h2{font-size:35px}}
@media(max-width:779px){#construction-ui{inset:158px 0 36px}.construction-top{padding:10px 14px;display:block;background:linear-gradient(#0b1014e0,transparent)}.construction-top>div:first-child{display:flex;align-items:center;justify-content:space-between}.construction-top .eyebrow{font-size:6px;max-width:100px;line-height:1.7}.construction-top h2{font-size:26px;margin:0;text-align:right}.construction-top h2 small{display:none}.settlement-switch{margin-top:8px;width:100%;padding:2px}.settlement-switch button{flex:1;min-height:36px!important;font-size:10px;padding:0 6px}.build-dock{left:8px;right:8px;bottom:6px;width:auto;max-height:262px;border-radius:10px}.dock-content{padding:12px 14px}.dock-tabs{padding:0 8px}.dock-tabs button{min-height:42px!important}.dock-heading h3{font-size:23px}.dock-heading .eyebrow{font-size:6px}.dock-copy{font-size:10px;line-height:1.6;margin:7px 0 10px}.module-option{padding:10px;position:relative;gap:3px;min-height:65px!important}.module-option>span{position:absolute;right:9px;top:8px;font-size:20px;opacity:.85}.module-option b{font-size:10px;padding-right:20px}.module-option small{font-size:8px}.module-grid{gap:6px}.dock-footer{display:none}.construction-camera{right:10px;top:108px;gap:5px}.construction-camera button{width:42px;min-height:44px}.construction-hint{left:0;right:0;bottom:279px;font-size:6px;letter-spacing:.7px}.rail-live{display:none}.output-strip{padding:8px}.output-strip b{font-size:20px}.placement-actions{margin-top:9px}.cost-line{font-size:8px;margin:7px 0}.dock-content>.text-action{min-height:44px;padding:9px 0}.constructing #toast{bottom:310px;width:calc(100% - 34px);font-size:10px;padding:10px 13px}.constructing .vignette{background:linear-gradient(0deg,#0b1014bb,transparent 50%)}.constructing .resources{background:#0b1014cc}.constructing .topbar nav button{min-height:40px}.plot-list{padding-bottom:5px}.rail-stage{margin:9px 0;font-size:9px}.build-dock .production-status{margin-bottom:0}.drive-pad button{width:48px;height:48px}.modal-close{min-width:44px;min-height:44px}.icon-btn{min-width:32px;min-height:32px}}
@media(max-width:779px) and (max-height:700px){#construction-ui{top:155px;bottom:0}.build-dock{max-height:220px;bottom:8px}.construction-hint{bottom:238px}.construction-top{padding-top:2px}.construction-camera{top:93px}.constructing .bottom-status{display:none}}
@media(max-width:950px) and (max-height:500px){#construction-ui{inset:120px 12px 10px}.construction-top{padding:0;display:flex}.construction-top>div:first-child{display:none}.settlement-switch{max-width:300px;margin:0}.build-dock{left:0;width:270px;right:auto;max-height:calc(100% - 50px);bottom:0}.construction-hint{display:none}.construction-camera{top:55px;right:0}.rail-live{display:none}.constructing .bottom-status{display:none}}

.building-list{display:grid;gap:5px}.building-list button{display:flex;justify-content:space-between;align-items:center;text-align:left;border:1px solid #ffffff18;border-radius:4px;padding:8px;font-size:10px}.building-list small{font-size:8px;color:#97b1ab}
@media(max-width:400px){.topbar,.resources{margin-left:12px;margin-right:12px}.topbar{gap:6px}.brand{font-size:18px;letter-spacing:2px}.brand svg{width:22px}.top-right{gap:4px}.demo{font-size:6px;padding:4px}.resources{gap:6px}.resource-items{gap:8px}.resource-items>span{gap:2px}.resource-items i{font-size:13px}.resource-items b{font-size:10px}.wallet{font-size:9px;gap:2px}.wallet>span{display:none}.wallet small{font-size:5px;max-width:23px}.sol{font-size:7px}.sol .status-dot{display:none}}
@media(max-width:950px) and (max-height:500px){#construction-ui{top:148px}.dock-footer{display:none}.dock-content{padding:12px}.dock-copy{font-size:10px;line-height:1.6}.construction-camera{top:35px}}

.surface-activity{position:absolute;top:88px;left:0;color:#a6c9bb;font-size:8px;letter-spacing:1px;padding:8px 11px;border:1px solid #a6c9bb25;border-radius:4px;background:#102024bd}.assembly-status{font-size:9px;color:#e4b87a;line-height:1.6;margin:10px 0}.freight-status{background:#8cdbda0a;border:1px solid #8cdbda30;border-radius:5px;padding:12px;margin:12px 0}.freight-status>span{font-size:7px;letter-spacing:1px;color:#93bdb6}.freight-status>b{display:block;font-family:'Barlow Condensed',sans-serif;font-size:25px;font-weight:500;margin:6px 0}.freight-status p{font-size:10px;color:#a8bfb9}.freight-route-options{display:grid;gap:6px}.freight-dispatch{border:1px solid #ffffff20;border-radius:4px;min-height:48px;text-align:left;padding:8px 10px;display:flex;flex-direction:column;gap:4px}.freight-dispatch b{font-size:11px;font-weight:500}.freight-dispatch small,.freight-receipts{font-size:9px;color:#9eb4ae;line-height:1.6}.freight-receipts{border-top:1px solid #ffffff15;padding-top:10px}#orbit-freight{position:fixed;top:143px;left:50%;transform:translateX(-50%);background:#12242bea;border:1px solid #a6c9bb35;border-radius:5px;padding:10px 15px;z-index:5;font-size:9px;color:#c6e0d2;max-width:calc(100% - 30px);text-align:center;pointer-events:none}#orbit-freight[hidden]{display:none}.dock-tabs{padding-left:4px;padding-right:4px}.dock-tabs button{font-size:10px}.dock-tabs button.active:after{left:8px;right:8px}@media(max-width:779px){.surface-activity{top:94px;left:14px;font-size:6px;padding:6px;letter-spacing:.3px;max-width:calc(100% - 76px)}#orbit-freight{top:170px;width:calc(100% - 30px);font-size:7px;padding:8px}.assembly-status{font-size:8px;margin:7px 0}.dock-tabs button{font-size:10px}.freight-status>b{font-size:22px}}@media(max-width:950px) and (max-height:500px){.surface-activity{display:none}}

.surface-activity{left:340px;top:75px}.freight-view-actions{display:flex;gap:12px}.freight-view-actions .text-action{font-size:10px}.freight-status{scroll-margin-top:12px}@media(max-width:1100px) and (min-width:780px){.surface-activity{left:290px}}@media(max-width:779px){.surface-activity{left:14px;top:94px}}

/* Frontier response stays within the existing touch dock. */
#operations-open{position:fixed;bottom:47px;left:50%;transform:translateX(-50%);z-index:7;min-height:44px;padding:8px 17px;border:1px solid #cfba8c66;border-radius:6px;background:#19252bed;color:#e3d5b6;font-size:10px;white-space:nowrap;touch-action:manipulation}#operations-open.urgent{color:#ffcd92;background:#382a22ed;border-color:#e3a570}.constructing #operations-open{bottom:auto;top:151px;left:50%;font-size:9px}.response-options{display:grid;gap:7px}.response-options button{display:flex;flex-direction:column;gap:5px;text-align:left;border:1px solid #ffffff22;background:#ffffff04;border-radius:5px;padding:10px;min-height:53px!important}.response-options b{font-size:11px}.response-options small{font-size:9px;color:#a7b9b5;line-height:1.5}.response-options .chosen{border-color:#e4b581;background:#e4b58115}.response-options .chosen b:after{content:' ✓';color:#b8e7cc}#incident-status{margin:13px 0;padding:12px;border:1px solid #d2a37240;background:#b77b430b;border-radius:5px}#incident-status h4{font-family:'Barlow Condensed',sans-serif;font-size:25px;font-weight:500;color:#efd8b2;margin:6px 0}#incident-status p{font-size:10px;line-height:1.65;color:#aec1ba;margin:8px 0}.incident-numbers{display:flex;justify-content:space-between;font-size:11px;color:#ecd6b2;margin:12px 0 8px}.relief-depots{display:flex;gap:6px;margin:8px 0}.relief-depots button{flex:1;border:1px solid #a8d4c83d;border-radius:4px;font-size:10px;background:#a8d4c808}#incident-start{margin:8px 0}#incident-choices[hidden],#relief-actions[hidden],#incident-start[hidden],.relief-depots button[hidden],#operations-open[hidden]{display:none}#incident-auto{font-size:10px}.dock-tabs button{min-width:44px}.constructing .construction-hint{display:none}
@media(max-height:790px) and (min-width:780px){.constructing #operations-open{top:126px}}
@media(max-width:779px){.constructing #operations-open{top:281px;left:14px;transform:none;max-width:calc(100% - 74px);font-size:8px;min-height:44px;padding:7px 10px}.response-options{gap:6px}#incident-status{padding:10px}.dock-tabs button{font-size:9px}.relief-depots button{min-height:44px}.constructing .build-dock:has(#incident-status){max-height:340px}#operations-open{font-size:9px;bottom:40px}}
@media(max-width:779px) and (max-height:700px){.constructing .build-dock:has(#incident-status){max-height:260px}.constructing #operations-open{top:266px}}
@media(max-width:950px) and (max-height:500px){.constructing #operations-open{top:156px;left:auto;right:65px;transform:none;max-width:45%}.constructing .build-dock:has(#incident-status){max-height:calc(100% - 50px)}}

#incident-orders summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:11px;color:#e6c89f;border-bottom:1px solid #ffffff18;margin-bottom:6px}#incident-orders summary:after{content:'⌄';margin-left:auto}#incident-orders[open] summary:after{content:'⌃'}#incident-orders[hidden]{display:none}@media(max-width:779px){#incident-status h4{font-size:22px}#incident-status p{margin:5px 0}#incident-status{margin:8px 0}#incident-orders summary{font-size:10px}}
