.app-shell{color-scheme:dark;--bg:#0e1721;--panel:#131f2b;--panel2:#192834;--edge:#30414b;--gold:#e5b874;--gold2:#f6dba4;--text:#ecf1ee;--muted:#81939e;--green:#8bcdb0;--red:#c56f71;--radius:10px;--shadow:0 14px 40px #0007}.app-shell,.app-shell *{box-sizing:border-box}body:has(> #emberhold-app){margin:0;width:100%;height:100%;background:#0e1721}.app-shell{font:13px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--text)}.app-shell button,.app-shell select{font:inherit}.app-shell button{cursor:pointer;border:1px solid #45555b;background:#263745;color:#dce7e6;border-radius:6px;padding:9px 12px;transition:background .16s,border-color .16s,transform .16s;font-weight:700;letter-spacing:.25px}.app-shell button:hover:not(:disabled){background:#364c5a;border-color:#c39e6d}.app-shell button:active:not(:disabled){transform:scale(.975)}.app-shell button:disabled{opacity:.38;cursor:not-allowed}.app-shell button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.app-shell a{color:#f1c781}.app-shell{height:100dvh;min-height:460px;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(circle at 60% 30%,#1a2a37,var(--bg) 60%)}.topbar{height:75px;min-height:75px;display:flex;align-items:center;gap:20px;padding:0 19px;background:linear-gradient(100deg,#132331,#101a25);border-bottom:1px solid #374752;z-index:5}.brand{display:flex;align-items:center;gap:11px;min-width:285px}.crest{width:43px;height:45px;border:1px solid #b99660;display:grid;place-items:center;color:var(--gold2);background:linear-gradient(140deg,#374352,#1e2a36);clip-path:polygon(8% 0,92% 0,100% 60%,50% 100%,0 60%);font-size:25px}.brand-name{font-size:21px;font-weight:900;letter-spacing:2.4px;color:#f8dfad;white-space:nowrap}.brand-sub{display:block;font-size:8px;letter-spacing:3.5px;color:#a8aeac;margin-top:-4px}.brand-caption{font-size:9px;letter-spacing:1.6px;color:#6c8190;margin-top:6px}.top-metrics{display:flex;gap:18px;flex:1;align-items:center;justify-content:space-between;min-width:0}.gold-chip{display:flex;gap:9px;align-items:center;white-space:nowrap}.coin{font-size:33px;color:var(--gold);text-shadow:0 0 18px #b6793b88}.gold-chip strong{font-size:21px;color:var(--gold2);display:block;line-height:1.2}.top-metrics small{font-size:9px;letter-spacing:1.4px;color:var(--muted);display:block}.income-chip strong{font-size:16px;display:block}.green{color:var(--green)}.top-resources{display:flex;gap:7px}.top-resources>div{font-size:13px;background:#0d1a24;border:1px solid #30404a;padding:8px 9px;border-radius:6px;white-space:nowrap}.top-resources span{color:var(--gold)}.rank-chip{font-size:12px;color:var(--gold);border-left:1px solid #43525a;padding-left:15px;font-weight:800;white-space:nowrap}.icon-button{font-size:22px;width:43px;height:43px;padding:3px}.workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(265px,304px) minmax(0,1fr) minmax(330px,365px);position:relative}.panel{display:flex;flex-direction:column;background:#15212d;min-height:0;z-index:2}.left-panel{border-right:1px solid #344650}.right-panel{border-left:1px solid #344650}.panel-top{padding:19px 17px 14px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #31414e;background:radial-gradient(ellipse at 80% 0,#29354155,transparent 65%)}.panel-top h2{font-family:Georgia,'Times New Roman',serif;font-size:21px;font-weight:500;line-height:1.12;margin:4px 0 0}.eyebrow,.overline,.tiny-heading,.modal-kicker{font-size:9px;color:#a8afac;letter-spacing:2px;font-weight:800}.accent{color:var(--gold)}.panel-collapse{font-size:16px;border:0;padding:5px 8px;color:#80939b}.panel-scroll{overflow:auto;overscroll-behavior:contain;scrollbar-color:#45545b #14202a;scrollbar-width:thin}.left-body{padding:12px}.resource-strip{background:#0f1b24;border:1px solid #2d3e49;border-radius:8px;padding:9px 12px}.resource-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;column-gap:6px;padding:4px 0}.res-icon{font-size:14px}.res-name{font-size:11px;color:#c8d2d3}.resource-row strong{font-size:11px;font-variant-numeric:tabular-nums}.muted{color:var(--muted);font-weight:400}.tiny-progress{grid-column:2/4;height:3px;background:#34424c;border-radius:8px;overflow:hidden;margin-top:3px}.tiny-progress i{height:100%;display:block;border-radius:8px}.panel-section-heading{margin:15px 2px 9px;display:flex;justify-content:space-between;font-size:9px;font-weight:800;color:#caaf85;letter-spacing:1px}.panel-section-heading span{letter-spacing:.2px;color:#879aa1}.facility-card{padding:10px;border:1px solid #364752;background:linear-gradient(130deg,#1b2b37,#16232f);border-radius:8px;margin-bottom:9px;transition:border .2s,background .2s;cursor:pointer}.facility-card:hover,.facility-card.selected{border-color:#c49b5a;background:linear-gradient(130deg,#2a3540,#1d2c38)}.facility-card.unbuilt{opacity:.78}.facility-upper{display:flex;align-items:center;gap:8px}.facility-icon{background:#324450;width:32px;height:33px;display:grid;place-items:center;color:#f0c487;border-radius:5px;font-size:19px}.facility-info{flex:1;min-width:0}.facility-info b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.facility-info small{font-size:9px;color:#93a5a7;letter-spacing:.5px}.rate{font-size:10px;color:var(--green)}.facility-recipe{margin:7px 0 9px;color:#9cb0b5;font-size:10px}.facility-recipe span{color:#efc381;padding:0 3px}.facility-actions{display:flex;gap:6px}.facility-actions button{flex:1;padding:7px 4px;font-size:10px}.facility-actions button:first-child,.inspector-buttons button:first-child{background:linear-gradient(110deg,#b07f46,#d6a864);color:#15212b;border-color:#d4a765}.facility-actions button:first-child:hover:not(:disabled),.big-gold:hover:not(:disabled){background:#f1c77d}.facility-actions .focus-button{flex:0 0 30px;font-size:13px}.scene-section{min-width:0;min-height:0;display:flex;flex-direction:column;background:#101b26;padding:15px 14px 12px;position:relative}.scene-heading{display:flex;justify-content:space-between;align-items:flex-end;padding:0 4px 12px}.scene-title{font-family:Georgia,'Times New Roman',serif;font-size:24px;margin-top:2px}.scene-title span{font:800 10px/1.2 ui-sans-serif,system-ui;color:var(--green);letter-spacing:1px;margin-left:13px}.scene-wrap{position:relative;flex:1;min-height:260px;border:1px solid #40505a;background:#203b43;overflow:hidden;border-radius:10px;box-shadow:inset 0 0 80px #0008,0 13px 45px #0005}#worldCanvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#worldCanvas:active{cursor:grabbing}.scene-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#101f2870,transparent 20%,transparent 70%,#15202d78)}.world-labels{pointer-events:none;position:absolute;inset:0}.world-label{pointer-events:auto;position:absolute;transform:translate(-50%,-50%);padding:4px 7px;background:#132634cc;color:#f5deb1;border:1px solid #a38a62b8;border-radius:4px;backdrop-filter:blur(3px);font-size:9px;letter-spacing:1px;white-space:nowrap}.world-label.active{background:#bc904d;border-color:#ffdb91;color:#1b2730}.world-label.locked{color:#91a1a6;border-color:#63707899;background:#152027a8}.world-label[hidden]{display:none}.scene-overlay{position:absolute;pointer-events:none;z-index:1}.scene-overlay button{pointer-events:auto}.top-left{top:14px;left:14px;background:#0d1d26b8;border:1px solid #a0b2a14d;border-radius:4px;padding:6px 9px;font-size:9px;letter-spacing:1.4px;color:#b7d5c6}.live-dot{display:inline-block;background:#7cebb8;width:6px;height:6px;border-radius:50%;box-shadow:0 0 7px #7cebb8;margin-right:5px}.dim{color:#789399}.scene-controls{right:12px;top:13px;display:flex;gap:4px}.scene-controls button{font-size:10px;padding:7px 9px;background:#10222bcb;border-color:#54636c}.bottom-left{bottom:13px;left:14px;font-size:9px;letter-spacing:1px;color:#c2d0cb;text-shadow:0 2px 2px #000}.inspector{display:flex;align-items:center;gap:12px;padding:13px 15px;margin-top:11px;border:1px solid #344652;background:linear-gradient(115deg,#24343c,#172531);border-radius:8px;min-height:99px}.inspector-icon{font-size:27px;color:#e6bd81;background:#4b463c;width:46px;height:49px;flex:none;display:grid;place-items:center;border:1px solid #b38b57;border-radius:7px}.inspector-details{flex:1;min-width:0}.inspector-details>small{font-size:9px;letter-spacing:1px;color:#91a5ab}.inspector h3{font:500 19px Georgia,serif;margin:2px 0 5px;color:#f1e3cf}.inspector h3 span{font:600 11px system-ui}.inspector-stats{display:flex;flex-wrap:wrap;gap:10px;color:#a9c3c2;font-size:10px}.inspector-formula{font-size:10px;color:#8ea2ac}.inspector-buttons{display:flex;flex-direction:column;gap:5px}.inspector-buttons button{font-size:10px;white-space:nowrap}.tabs{display:flex;gap:2px;overflow-x:auto;padding:9px 9px 0;border-bottom:1px solid #30424a}.tabs button{padding:9px 8px 11px;border:0;background:none;color:#9aacb1;border-bottom:2px solid transparent;font-size:9px;letter-spacing:.4px;border-radius:0;white-space:nowrap}.tabs button.selected{color:#f8d49a;border-bottom-color:var(--gold)}.right-content{padding:12px}.tab-intro{border-left:2px solid #ca9558;background:#22303a;padding:11px;color:#b4c3c6;font-size:11px;line-height:1.6;margin:0 0 12px}.item-card{border:1px solid #30434b;background:#1b2a34;border-radius:7px;margin-bottom:9px;padding:12px}.item-card.done{border-color:#467662;background:#1c322e}.item-card.muted-card{opacity:.52}.item-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.item-head b{font-size:12px}.item-head .level{font-size:10px;color:#c5ab89;white-space:nowrap}.item-head .success{color:#9cdac0;white-space:nowrap;font-size:10px}.item-card p{font-size:11px;color:#91a5ac;line-height:1.55;margin:6px 0 11px}.item-actions{display:flex;justify-content:space-between;gap:8px;align-items:center}.item-actions small{font-size:10px;color:#b3a18b}.item-actions>div{display:flex;gap:5px}.item-actions button{padding:6px 10px;font-size:10px}.item-actions button:not(:disabled){border-color:#a98554;color:#f4d5a3}.group-title{font-size:11px;letter-spacing:1px;color:#e6c58c;margin:18px 2px 12px}.progress-track{height:5px;background:#374750;border-radius:7px;overflow:hidden;margin:12px 0 7px}.progress-track div{height:100%;background:linear-gradient(90deg,#bf8d5b,#f6cf81)}.item-card>small{color:#9caeb2;font-size:10px}.achievements{display:grid;grid-template-columns:1fr 1fr;gap:7px}.achievement{display:flex;gap:7px;align-items:flex-start;background:#14222b;border:1px solid #30414c;padding:8px;border-radius:6px;opacity:.63}.achievement.unlocked{opacity:1;border-color:#aa8d5a}.achievement>span{color:#e4b973;font-size:19px}.achievement b{font-size:10px;display:block}.achievement small{display:block;color:#91a4ac;font-size:9px}.district-steps{margin:12px 0 18px}.district{display:flex;gap:11px;align-items:flex-start;border-left:2px solid #40545c;margin-left:14px;padding:4px 0 21px 12px}.district>span{display:grid;place-items:center;margin-left:-28px;background:#334854;border:2px solid #536874;border-radius:50%;width:27px;height:27px;flex:none;color:#e4c58e}.district.done>span{background:#3d7866;border-color:#99d7b4;color:#d0f5e1}.district b{display:block}.district small{display:block;color:#8fa6ae;margin-top:4px}.expansion-spot,.prestige-panel{padding:16px;background:linear-gradient(140deg,#27323a,#1d2c37);border:1px solid #ad8b5a;border-radius:8px;margin-bottom:15px}.expansion-spot h3,.prestige-panel h3{font:500 22px Georgia,serif;color:#f4d6a2;margin:6px 0}.expansion-spot p,.prestige-panel p{color:#a8bbc0;font-size:12px;line-height:1.65}.big-gold{display:block;background:linear-gradient(110deg,#bb8c50,#e4b974);border-color:#f1d29a;color:#172631;font-weight:900;width:100%;padding:11px}.expansion-spot>small{display:block;color:#acc0c0;margin-top:8px}.complete-banner{text-align:center;color:#9ee0b9;border:1px solid #4e7767;padding:12px;border-radius:7px;margin:10px 0}.prestige-panel{border-color:#766e9f;background:linear-gradient(130deg,#2b2c42,#202535)}.prestige-metrics{display:grid;gap:7px}.prestige-metrics>span{display:flex;justify-content:space-between;font-size:11px;color:#c6cad6}.prestige-metrics b{color:#ecd4a9}.fine-print{font-size:10px!important}.prestige-button{width:100%;background:#5d4b82;border-color:#ae9bd4}.bottom-bar{display:flex;align-items:center;gap:15px;min-height:69px;background:#101d29;border-top:1px solid #364956;padding:10px 17px;z-index:5}.footer-objective{display:flex;flex-direction:column;min-width:230px}.footer-objective b{font-size:11px;color:#f0d2a0}.footer-objective small{font-size:10px;color:#96aab0}.event-ticker{flex:1;display:flex;gap:10px;min-width:0;color:#b5c4c6;font-size:11px}.event-ticker>span:last-child{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.event-led{white-space:nowrap;color:var(--gold);font-size:9px;font-weight:800;letter-spacing:1px}.speed-controls{display:flex;align-items:center;gap:5px}.speed-controls button{padding:7px 9px;font-size:10px}.speed-controls .active{border-color:var(--gold);color:#eec58c}.mobile-toggle{display:none}.toast-root{position:fixed;top:84px;right:18px;z-index:100;display:grid;gap:8px;pointer-events:none;width:min(340px,calc(100vw - 30px))}.toast{background:#2a3e48;border-left:3px solid #e3ba81;border-radius:5px;box-shadow:var(--shadow);padding:12px;color:#e7eeeb;animation:toast-in .25s}.toast.success{border-left-color:#6dc89b}.toast.warning,.toast.error{border-left-color:#dd9c6c}@keyframes toast-in{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.game-dialog{background:linear-gradient(135deg,#223542,#12232f);color:#edf1ee;border:1px solid #aa8a62;border-radius:12px;padding:27px;width:min(510px,calc(100vw - 30px));max-height:90dvh;overflow:auto;box-shadow:0 30px 120px #000b}.game-dialog::backdrop{background:#05111ddb;backdrop-filter:blur(5px)}.game-dialog h2{font:500 31px Georgia,serif;color:#f3d8ad;margin:8px 0 13px}.game-dialog p{color:#b3c2c5;line-height:1.7}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #3a4c59}.setting-row select{background:#1d2f3c;color:#f4e6c9;border:1px solid #607481;padding:9px}.modal-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.modal-actions button{flex:1;white-space:nowrap}.danger{color:#ffc6c3;border-color:#914d50;background:#533338}.small-note{color:#95a9af;font-size:10px;margin-top:17px}.tutorial-steps{display:grid;gap:9px;margin:13px 0 22px}.tutorial-steps p{background:#1b2c38;padding:13px;margin:0;border-left:2px solid #bf945a}.tutorial-steps b{color:#f6d49f}.report-stat strong{font:600 31px Georgia,serif;color:#ecd39a;display:block}.report-stat small{color:#aab9be}.offline-items{display:grid;grid-template-columns:1fr 1fr;gap:8px}.offline-items>div{background:#1d303b;border:1px solid #3b4c53;padding:10px;border-radius:5px;font-size:11px}.offline-items b{display:block;color:#9cdabb}.game-dialog #closeReportBtn{margin-top:20px;width:100%;background:#b78a51;color:#132331;border-color:#ebc88b}
@media(max-width:1320px){.workspace{grid-template-columns:265px minmax(0,1fr) 330px}.top-resources{gap:3px}.brand{min-width:260px}.scene-controls{flex-wrap:wrap;max-width:220px;justify-content:end}.inspector-stats{gap:5px}.inspector-buttons button{font-size:9px;padding:9px}}
@media(max-width:1060px){.brand{min-width:210px}.brand-name{font-size:18px}.top-resources>div:nth-child(n+3){display:none}.workspace{grid-template-columns:236px minmax(0,1fr) 300px}.panel-top{padding:15px 12px}.right-content,.left-body{padding:9px}.inspector-buttons button{white-space:normal}.inspector-icon{display:none}.scene-section{padding:12px 8px}.scene-title{font-size:21px}.inspector-formula{display:none}}
@media(max-width:850px){.app-shell{min-height:100dvh}.topbar{height:62px;min-height:62px;padding:0 12px;gap:9px}.brand{min-width:0}.brand .crest{width:32px;height:35px;font-size:19px}.brand-name{font-size:16px;letter-spacing:1.3px}.brand-sub{font-size:6px;letter-spacing:1.4px}.brand-caption{display:none}.top-metrics{justify-content:flex-end;gap:11px}.income-chip,.rank-chip,.top-resources{display:none}.gold-chip strong{font-size:15px}.coin{font-size:21px}.icon-button{width:35px;height:35px}.workspace{display:flex;flex-direction:column;min-height:0}.scene-section{flex:1;min-height:0;padding:8px}.scene-heading{padding:0 3px 8px}.scene-title{font-size:20px}.scene-wrap{min-height:180px}.inspector{min-height:88px;padding:8px;margin-top:8px}.inspector h3{font-size:17px}.inspector-stats span:nth-child(3){display:none}.inspector-buttons{gap:4px}.inspector-buttons button{max-width:124px;padding:7px;font-size:9px}.panel{position:absolute;top:0;bottom:0;z-index:10;width:min(370px,92vw);box-shadow:var(--shadow);transition:transform .2s ease}.left-panel{left:0;transform:translateX(-105%)}.right-panel{right:0;transform:translateX(105%)}.left-panel.mobile-show,.right-panel.mobile-show{transform:translateX(0)}.panel-collapse{display:block}.left-panel.mobile-show .panel-collapse,.right-panel.mobile-show .panel-collapse{transform:rotate(90deg)}.bottom-bar{min-height:65px;padding:8px;gap:7px;flex-wrap:wrap}.footer-objective{min-width:130px;flex:1}.event-ticker{display:none}.speed-controls{gap:4px}.speed-controls button{padding:6px}.mobile-toggle{display:flex;gap:5px;width:100%}.mobile-toggle button{flex:1;font-size:10px;padding:7px 6px;background:#263848;color:#edc18c}.scene-controls{top:9px;right:8px}.top-left{top:10px;left:9px;font-size:8px}.world-label{font-size:8px;padding:3px 4px}}
@media(max-width:420px){.brand-sub{display:none}.brand-name{font-size:14px}.gold-chip small{font-size:7px}.scene-title{font-size:17px}.scene-title span{font-size:8px;margin-left:3px}.scene-overlay.bottom-left{font-size:7px}.scene-controls{top:35px}.scene-controls button{padding:5px}.inspector{gap:7px}.inspector-details>small{font-size:7px}.inspector h3{font-size:14px}.inspector-stats{font-size:9px}.inspector-formula{display:none}.inspector-icon{display:none}.inspector-buttons button:last-child{display:none}.top-left .dim{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

.inspector-toggles{display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin-top:6px}.inspector-toggles>span{font-size:9px;color:#d5bc96;letter-spacing:.2px}.inspector-toggles button{padding:3px 6px;font-size:9px}.inspector-toggles button.active{background:#b58c52;border-color:#e3c183;color:#182631}
