
:root{font-family:'DM Sans',Inter,system-ui,sans-serif;color:#d8e8e8;background:#0b1521;font-synthesis:none;font-size:13px}*{box-sizing:border-box}body{margin:0;background:#091421}button{font:inherit;color:inherit;cursor:pointer;transition:background .17s,border-color .17s,transform .14s}button:disabled{opacity:.37;cursor:not-allowed}button:not(:disabled):active{transform:scale(.975)}h1,h2,h3,p{margin-top:0}h2,h3,.brand,button,.metric b{font-family:'Space Grotesk',system-ui,sans-serif}p{line-height:1.45}small{font-size:10px;color:#78979d}.app-shell{min-height:100vh;display:flex;flex-direction:column;overflow:hidden}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:12px 21px;border-bottom:1px solid #243845;background:#0f2030;gap:14px}.brand{display:flex;gap:11px;align-items:center;min-width:206px}.brandmark{width:42px;height:42px;display:grid;place-items:center;color:#071f27;font-size:26px;background:linear-gradient(135deg,#81f7bf,#27a99f);border-radius:12px;box-shadow:0 0 25px #2ce6ad30}.brand b{display:block;font-size:22px;letter-spacing:-1px}.brand b span{color:#75eeb5}.brand small{display:block;letter-spacing:2px;font-size:8px;color:#7eafb1}.top-metrics{display:flex;gap:28px;align-items:center;justify-content:center;flex:1}.top-metrics>div{min-width:86px}.top-metrics small{display:block;letter-spacing:1px;color:#73959c;margin-bottom:4px}.top-metrics strong{font:700 19px 'Space Grotesk',sans-serif;color:#edf8f5}.top-metrics strong.accent{color:#6aecb5}.iconbtn{border:1px solid #345060;background:#1c3544;border-radius:9px;padding:9px 13px}.workspace{flex:1;display:grid;grid-template-columns:minmax(260px,285px) minmax(320px,1fr) minmax(300px,345px);min-height:0;height:calc(100vh - 132px)}.panel{background:#0e1d2b;min-height:0;overflow:hidden;border-right:1px solid #263c49}.right-panel{border-left:1px solid #263c49;border-right:0}.panel-heading{display:flex;justify-content:space-between;align-items:center;padding:20px 18px 12px}.panel-heading h2{font-size:20px;letter-spacing:-.5px;margin:3px 0 0}.eyebrow,.micro{letter-spacing:1.8px;color:#76c9bc;font-size:9px;font-weight:800}.minbtn{border:1px solid #395461;background:#18303f;width:28px;height:28px;border-radius:6px;font-size:16px}.left-scroll,.right-scroll{overflow:auto;height:calc(100% - 76px);scrollbar-width:thin;scrollbar-color:#355564 #122734;padding:0 13px 14px}.right-scroll{height:calc(100% - 133px)}.resource-section{background:#142b39;border:1px solid #254854;border-radius:11px;padding:13px;margin-bottom:12px}.resource-section h3,.subhead{font-size:12px;margin:2px 0 10px;color:#aec9cb;text-transform:uppercase;letter-spacing:1px}.resource{margin:0 0 9px}.resource-label{display:flex;justify-content:space-between;gap:8px;color:#b2cbce;font-size:11px;margin-bottom:5px}.resource-label b{color:#f2f9f4;font-size:11px}.bar{height:5px;border-radius:8px;overflow:hidden;background:#243d46}.bar span{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#249f8f,#a1f5ae);transition:width .25s}.bar.full span{background:#db9b53}.supply-buttons{display:flex;gap:6px;margin-top:14px}.supply-buttons button{flex:1;border:1px solid #3f7775;background:#214648;border-radius:6px;font-size:10px;padding:8px 3px}.supply-buttons b{color:#9ef4ae}.facility{margin:9px 0;padding:11px;background:#172b3a;border:1px solid #294452;border-radius:10px}.facility.locked{opacity:.6}.facility header{display:flex;align-items:center;gap:9px}.facility header div{flex:1}.facility header strong{font-size:11px}.facility header small{display:block;margin-top:3px}.facility-icon{font-size:24px}.facility header button{border:1px solid #325565;border-radius:7px;padding:5px 9px;background:#1d3445}.facility p{font-size:10px;color:#91acb2;margin:8px 0}.actions{display:flex;gap:5px;flex-wrap:wrap}.actions button,.footerbar button,.view-buttons button,.tabs button{border:1px solid #38616e;background:#1b3946;border-radius:6px;padding:7px 8px;font-size:10px;font-weight:700}.actions .build{color:#8becc5;background:#1b4747}.center-stage{min-height:0;min-width:0;display:flex;flex-direction:column;background:#101e2d;position:relative}.viewport-wrap{position:relative;flex:1;min-height:290px;overflow:hidden;background:radial-gradient(circle at 50% 35%,#254954,#0d1929 77%)}#farm-view{position:absolute;inset:0;touch-action:none}#farm-view canvas{width:100%;height:100%;display:block;touch-action:none}.viewport-hud{pointer-events:none;position:absolute;top:16px;left:18px;right:16px;display:flex;justify-content:space-between;align-items:center;gap:10px;color:#8aadb2;font-size:10px}.live-led{background:#0f352fbf;border:1px solid #2d7b69;color:#79f0ad;border-radius:7px;padding:7px 10px;font-weight:800;letter-spacing:1.2px}.view-buttons{position:absolute;bottom:18px;right:16px;display:flex;gap:5px}.view-buttons button{background:#0f283bcc;backdrop-filter:blur(4px);padding:9px 10px}.scene-footer{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:8px;background:#0e2130;border-top:1px solid #2c5360;padding:15px 18px}.metric{min-width:0;border-right:1px solid #34505a;padding-right:10px}.metric:last-child{border:0}.metric small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0}.metric b{display:block;font-size:12px;color:#d9f4e9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric .bar{margin-top:5px}.bottom-feed{height:108px;background:#0c1a27;padding:12px 18px;overflow:hidden}.feed-header{color:#7cabb1;font-size:10px;font-weight:800;letter-spacing:1.6px;margin-bottom:6px}.blink{color:#76efab}.feed-entry{font-size:10px;color:#839fa7;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-entry.warning{color:#f0ba7d}.feed-entry.achievement,.feed-entry.research{color:#76edc2}.tabs{display:flex;gap:4px;flex-wrap:wrap;padding:0 13px 15px;border-bottom:1px solid #29434d}.tabs button{font-size:10px;color:#8caeb3;padding:8px 9px}.tabs button.selected{color:#a6f6cf;border-color:#41a68e;background:#1c4c4b}.section-note{padding:14px 3px;font-size:11px;color:#88aab0;line-height:1.55}.upgrade-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;background:#172d3a;border:1px solid #2e4854;border-radius:9px;margin:0 0 7px;min-height:84px}.upgrade-row>div{flex:1;min-width:0}.item-title{font:700 12px 'Space Grotesk',sans-serif;color:#d7eee6}.item-title small{float:right;background:#244b4d;color:#98d6b7;border-radius:3px;padding:2px 4px;font-size:8px}.upgrade-row p{color:#8faeb0;font-size:10px;line-height:1.5;margin:5px 0}.upgrade-row .bar{width:100%;margin:7px 0 5px}.upgrade-row button,.primary{background:#1d524d;border:1px solid #36a68f;border-radius:7px;font-size:10px;font-weight:800;color:#b4ffe0;padding:9px;min-width:76px}.upgrade-row button:disabled{background:#294049;border-color:#3c5760}.upgrade-row.complete{border-color:#2a6657}.prestige-card{background:linear-gradient(155deg,#2b4c4b,#182b3a);border:1px solid #487768;border-radius:12px;padding:14px;margin-bottom:19px}.prestige-card h3{margin:8px 0;color:#c5f9d3;font-size:19px}.prestige-card p{font-size:11px;color:#abc4bf;margin:10px 0}.wide{width:100%}.achievement-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin:12px 0}.achievement{border:1px solid #2b4552;padding:9px;border-radius:7px;font-size:10px;color:#718d91}.achievement.earned{border-color:#449d7c;background:#173d39;color:#a5efc6}.footerbar{min-height:60px;padding:9px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid #2e4555;background:#132535}.footer-left,.footer-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.footerbar button{padding:8px 10px}.footerbar button.danger{color:#f3a6a0;border-color:#80504d}.simulation-status{font-weight:800;color:#7deaba;font-size:10px;margin:0 8px}.toast-area{position:fixed;z-index:21;bottom:80px;left:50%;transform:translateX(-50%);display:grid;gap:7px;pointer-events:none}.toast{min-width:190px;text-align:center;border:1px solid #447669;border-radius:8px;background:#20493eeb;box-shadow:0 6px 25px #0006;color:#d5f5e3;font-size:12px;padding:10px 14px}.toast.warning{border-color:#ac844e;background:#62492e}.toast.error{border-color:#ac5b52;background:#64342d}.modal-backdrop{position:fixed;inset:0;z-index:31;background:#020b15c7;display:grid;place-items:center;padding:20px}.modal{background:#152a3b;border:1px solid #417567;box-shadow:0 20px 75px #0009;border-radius:18px;max-width:440px;width:100%;padding:24px}.modal h2{font-size:24px;margin:10px 0}.modal p{color:#a7c3c6;font-size:12px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.dialog-actions button{border:1px solid #3e6870;padding:12px 16px;border-radius:8px;background:#264555}.dialog-actions .primary{background:#24765d}.offline-metrics{display:grid;gap:9px;padding:12px 0}.offline-metrics span{display:flex;justify-content:space-between;font-size:12px;border-bottom:1px solid #274852;padding-bottom:7px}.offline-metrics b{color:#86e8b5}.tutorial-float{z-index:11;position:fixed;bottom:84px;left:310px;background:#173d42f5;width:340px;border:1px solid #379a79;box-shadow:0 10px 30px #07142099;border-radius:12px;padding:17px}.tutorial-float>button{float:right;border:0;background:transparent;font-size:20px}.tutorial-float h3{font-size:20px;margin:8px 0}.tutorial-float p{font-size:12px;color:#bdd5ca}.tutorial-steps{font-weight:800;color:#83e9ba;letter-spacing:.7px;font-size:11px}
@media(max-width:1270px){.workspace{grid-template-columns:245px minmax(310px,1fr) 280px}.top-metrics{gap:12px}.top-metrics strong{font-size:16px}.brand{min-width:155px}.brand b{font-size:19px}.tutorial-float{left:250px}}@media(max-width:990px){.workspace{grid-template-columns:minmax(230px,30%) 1fr;height:auto;min-height:calc(100vh - 132px)}.right-panel{grid-column:1/-1;height:340px;border-top:1px solid #365765}.right-scroll{height:calc(100% - 138px)}.top-metrics>div:nth-child(3),.top-metrics>div:nth-child(5){display:none}.topbar{padding:9px 12px}.center-stage{min-height:610px}.tutorial-float{left:30%;bottom:70px}}@media(max-width:650px){.topbar{height:auto;min-height:66px}.brand{min-width:125px;gap:7px}.brandmark{width:35px;height:35px}.brand b{font-size:17px}.brand small{font-size:7px;letter-spacing:1px}.top-metrics{gap:8px;justify-content:space-around}.top-metrics strong{font-size:14px}.top-metrics small{font-size:7px}.top-metrics>div:nth-child(4){display:none}.workspace{display:flex;flex-direction:column;height:auto}.center-stage{order:1;min-height:540px}.viewport-wrap{min-height:360px}.viewport-hud #camera-hint{display:none}.scene-footer{grid-template-columns:repeat(2,1fr);padding:8px;gap:5px}.scene-footer .metric:last-child{display:none}.bottom-feed{height:69px;padding:9px}.bottom-feed .feed-entry:nth-last-child(-n+2){display:none}.left-panel{order:2;max-height:520px;border-top:1px solid #35535e}.right-panel{order:3;max-height:540px;min-height:360px}.left-panel.collapsed,.right-panel.collapsed{max-height:59px;min-height:59px}.panel.collapsed .left-scroll,.panel.collapsed .right-scroll,.panel.collapsed .tabs{display:none}.footerbar{order:4;position:sticky;bottom:0;z-index:9;gap:6px;justify-content:center;padding:6px}.footer-left,.footer-actions{justify-content:center}.footerbar button{padding:7px 7px;font-size:9px}.simulation-status{display:none}.tutorial-float{bottom:96px;left:4%;width:92%;padding:12px}.tutorial-float h3{font-size:17px}.view-buttons{right:8px;bottom:8px}.view-buttons button{padding:7px 8px}.top-metrics>div:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.emergency-button{width:100%;margin-top:9px;border:1px solid #51765d;background:#24463e;padding:8px;color:#b9ecca;border-radius:7px;font-size:10px}.emergency-button:disabled{opacity:.35}
