:root{color-scheme:dark;font-family:Inter,Segoe UI,Arial,sans-serif;background:#081621;color:#ecfbff}*{box-sizing:border-box}body{margin:0;min-width:1180px;min-height:100vh;overflow:hidden;background:linear-gradient(135deg,rgba(65,234,212,.08),transparent 38%),linear-gradient(225deg,rgba(255,93,115,.08),transparent 36%),#081621}button,select,input{font:inherit}button{border:1px solid rgba(125,249,255,.34);border-radius:7px;background:#112c3aeb;color:#ecfbff;min-height:34px;padding:7px 11px;cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .12s ease}button:hover{border-color:#41ead4;background:#1c4a5bf5}button:active{transform:translateY(1px)}button.active{border-color:#ffd166;color:#fff1c2}button.danger{border-color:#ff5d736b;color:#ffd3da}button:disabled{cursor:not-allowed;opacity:.58}select,input{border:1px solid rgba(125,249,255,.34);border-radius:7px;background:#102b38;color:#ecfbff;min-height:34px;padding:6px 9px}#app{display:grid;grid-template-columns:minmax(720px,1fr) 430px;gap:14px;width:100vw;height:100vh;padding:14px}#game-root{min-width:0;min-height:0;border:1px solid rgba(125,249,255,.18);border-radius:8px;overflow:hidden;background:#081621}#ui-root{height:calc(100vh - 28px);overflow-y:auto;padding-right:4px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.topbar h1{margin:0;font-size:25px;line-height:1.05;letter-spacing:0}.edition-badge{display:inline-flex;vertical-align:middle;margin-left:7px;padding:3px 7px;border:1px solid rgba(255,209,102,.45);border-radius:6px;color:#fff0bd;background:#4c3711b8;font-size:11px;line-height:1}.topbar p{margin:5px 0 0;color:#8ed9e6;font-size:13px}.language{display:grid;gap:5px;color:#8ed9e6;font-size:12px}.top-actions{display:flex;align-items:end;gap:8px}.help-button{min-height:30px;align-self:end;padding:5px 9px;font-size:12px;color:#d9fbff}.purchase-link{display:inline-flex;align-items:center;justify-content:center;min-height:30px;align-self:end;padding:5px 10px;border:1px solid rgba(255,209,102,.5);border-radius:7px;color:#081621;background:#ffd166;font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap}.purchase-link.disabled{color:#ffe7a3;background:#4c3711b8;opacity:.72}.brand-start{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin-bottom:10px}.brand-start label{display:grid;gap:5px}.brand-start{margin:0}.stats,.district-details,.settlement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:10px}.stat{min-height:54px;padding:9px;border:1px solid rgba(125,249,255,.17);border-radius:7px;background:#0d1f2bc7}.stat span{display:block;color:#8fbac4;font-size:11px;white-space:nowrap}.stat strong{display:block;margin-top:4px;color:#f5fdff;font-size:17px;overflow-wrap:anywhere}.controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:9px}.controls button{min-width:0;min-height:32px;padding:6px 7px;font-size:12px;line-height:1.1;white-space:nowrap}.progress{height:8px;border-radius:999px;background:#7df9ff1f;overflow:hidden;margin-bottom:10px}.progress span{display:block;height:100%;background:linear-gradient(90deg,#41ead4,#ffd166)}.map-ticker{margin:0 0 10px;padding:8px 10px;border:1px solid rgba(255,209,102,.32);border-radius:7px;background:#3a2b11d1;color:#fff2bf;font-size:12px;font-weight:800}.demo-callout{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 0 10px;padding:8px 10px;border:1px solid rgba(255,209,102,.28);border-radius:7px;background:#3a2b1194;color:#ffe7a3;font-size:12px;line-height:1.35}.panel{margin-bottom:10px;padding:10px;border:1px solid rgba(125,249,255,.18);border-radius:8px;background:#091823d6}.panel h2{margin:0 0 9px;font-size:15px;color:#d9fbff;letter-spacing:0}.panel.compact{padding-bottom:8px}.store-list{display:grid;gap:8px}.store-card{border:1px solid rgba(125,249,255,.16);border-radius:7px;padding:9px;background:#0f2530cc}.store-card.positive{border-color:#41ead45c}.store-card.negative{border-color:#ff5d736b}.store-card header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.store-card header strong{font-size:13px}.store-card header span{color:#8ed9e6;font-size:12px}.store-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.store-metrics .stat{min-height:45px;padding:7px}.store-metrics .stat strong{font-size:14px}.flow-line{position:relative;height:22px;margin-top:8px;border-radius:6px;background:#7df9ff1a;overflow:hidden}.flow-line span{position:relative;z-index:1;display:block;padding:4px 7px;color:#c8eef5;font-size:11px}.flow-line b{position:absolute;inset:0 auto 0 0;display:block;background:linear-gradient(90deg,#41ead499,#ffd16680)}.wide{width:100%;margin-top:9px}.market-row,.price-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:44px;border-top:1px solid rgba(125,249,255,.11)}.market-row{grid-template-columns:minmax(0,1fr) 96px}.market-row.selected{background:#41ead414}.market-row:first-of-type,.price-row:first-of-type{border-top:0}.text-button{min-height:0;padding:0;border:0;background:transparent;color:#dffcff;text-align:left;font-weight:700}.text-button:hover{background:transparent;color:#41ead4}.text-button small,.recipe-anchor small{display:block;margin-top:3px;color:#91bac3;font-size:11px;font-weight:500}.demand-chip{color:#cdeff6;font-weight:800}.demand-chip.up{color:#9cffcb}.demand-chip.down{color:#ff96a6}.demand-chip.flat{color:#ffd166}.market-row strong,.price-row span{display:block;font-size:13px}.recipe-anchor{position:relative;cursor:help}.recipe-anchor em{position:absolute;left:0;bottom:calc(100% + 8px);z-index:20;display:none;width:260px;padding:8px 10px;border:1px solid rgba(255,209,102,.45);border-radius:7px;background:#081621;color:#ecfbff;font-style:normal;font-size:12px;line-height:1.35;box-shadow:0 12px 34px #0000006b}.recipe-anchor:hover em{display:block}.market-row span{display:block;margin-top:3px;color:#91bac3;font-size:12px}.price-row div{display:inline-grid;grid-template-columns:32px 92px 32px;align-items:center;gap:5px;text-align:center}.price-input{width:92px;min-height:30px;padding:4px 5px;text-align:right;font-weight:800;font-size:13px}.price-input::placeholder{font-size:11px;font-weight:600;color:#7fa8b3}.chart{margin-top:10px;border:1px solid rgba(125,249,255,.14);border-radius:7px;padding:8px;background:#07131cb8}.chart header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px;color:#bcecf4;font-size:12px}.chart svg{display:block;width:100%;height:150px}.chart text{fill:#8fbac4;font-size:10px}.price-row button{min-height:30px;padding:4px}.inventory,.achievements{display:flex;flex-wrap:wrap;gap:7px}.inventory-list{display:grid;gap:7px}.inventory-row{display:grid;grid-template-columns:minmax(0,1fr) 96px;align-items:center;gap:8px;border:1px solid rgba(125,249,255,.14);border-radius:7px;padding:7px 8px;background:#14313ebd;color:#bcecf4;font-size:12px}.inventory-row.selected{border-color:#41ead46b;background:#41ead417}.qty-field{display:grid;grid-template-columns:1fr;gap:3px;color:#8fbac4;font-size:10px}.qty-field input{width:100%;min-height:28px;padding:4px 7px;text-align:right}.batch-table{margin-top:9px;border:1px solid rgba(125,249,255,.14);border-radius:7px;background:#07131cb8;overflow:hidden}.batch-table header{display:flex;justify-content:space-between;gap:8px;padding:8px 9px;color:#bcecf4;font-size:12px}.batch-table table{width:100%;border-collapse:collapse;font-size:11px}.batch-table th,.batch-table td{padding:6px 7px;border-top:1px solid rgba(125,249,255,.1);color:#c9eef5;text-align:left}.batch-table th{color:#8fbac4;font-weight:600}.inventory span,.achievements span{border:1px solid rgba(125,249,255,.14);border-radius:7px;padding:7px 8px;background:#14313ebd;color:#bcecf4;font-size:12px}.achievements .unlocked{border-color:#41ead473;color:#d8fff9}.logs{list-style:none;padding:0;margin:0;display:grid;gap:6px}.logs li{color:#b7d8df;font-size:12px;line-height:1.35}.logs b{color:#ffd166;margin-right:5px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#030a10b8;z-index:5}.modal-card{width:min(520px,calc(100vw - 40px));padding:22px;border:1px solid rgba(125,249,255,.45);border-radius:8px;background:#0d1f2b;box-shadow:0 24px 70px #00000070}.modal-card header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.modal-card header h2{margin:0}.help-modal{width:min(760px,calc(100vw - 40px));max-height:min(760px,calc(100vh - 40px));overflow:hidden}.leaderboard-modal{width:min(640px,calc(100vw - 40px))}.leaderboard-modal header p{margin:5px 0 0;font-size:13px}.leaderboard-table{width:100%;border-collapse:collapse;overflow:hidden;border:1px solid rgba(125,249,255,.16);border-radius:7px;font-size:13px}.leaderboard-table th,.leaderboard-table td{padding:9px 10px;border-top:1px solid rgba(125,249,255,.12);text-align:left}.leaderboard-table th{border-top:0;color:#8fbac4;font-size:11px;text-transform:uppercase}.leaderboard-table td{color:#ecfbff}.leaderboard-table td:first-child,.leaderboard-table td:last-child{color:#ffd166;font-weight:800}.leaderboard-status{margin:12px 0 0;padding:8px 10px;border:1px solid rgba(125,249,255,.18);border-radius:7px;background:#07131cb8;font-size:12px}.leaderboard-status.submitted{border-color:#41ead461;color:#9cffcb}.leaderboard-status.failed{border-color:#ff5d7361;color:#ffb0bc}.leaderboard-status.submitting,.leaderboard-status.demo{border-color:#ffd16657;color:#ffe7a3}.help-doc{max-height:calc(100vh - 150px);overflow-y:auto;padding-right:8px}.help-doc section{padding:12px 0;border-top:1px solid rgba(125,249,255,.14)}.help-doc section:first-child{border-top:0;padding-top:0}.help-doc h3{margin:0 0 8px;color:#d9fbff;font-size:15px}.help-doc p{margin:0 0 8px;color:#b9dce4;font-size:13px}.help-doc dl{display:grid;grid-template-columns:130px minmax(0,1fr);gap:8px 12px;margin:0}.help-doc dt{color:#ffd166;font-size:12px;font-weight:800}.help-doc dd{margin:0;color:#c9eef5;font-size:12px;line-height:1.45}.modal-card h2{margin:0 0 8px;font-size:24px}.modal-card p{margin:0 0 14px;color:#b9dce4;line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}@media(max-width:1180px){body{min-width:0;overflow:auto}#app{grid-template-columns:1fr;width:100%;height:auto;min-height:100vh}#game-root{min-height:min(68vh,740px)}#game-root canvas{display:block;max-width:100%}#ui-root{height:auto;overflow:visible;padding-right:0}}@media(max-width:760px){#app{padding:8px;gap:8px}#game-root{min-height:430px}.topbar,.store-card header,.chart header,.batch-table header,.modal-card header,.modal-actions{align-items:stretch;flex-direction:column}.top-actions{align-items:end;flex-direction:row;justify-content:flex-start}.demo-callout{grid-template-columns:1fr}.help-doc dl{grid-template-columns:1fr;gap:3px}.brand-start,.market-row,.inventory-row{grid-template-columns:1fr}.stats,.store-metrics,.district-details,.settlement-grid,.controls{grid-template-columns:repeat(2,minmax(0,1fr))}.controls button{font-size:11px}.price-row{grid-template-columns:1fr;gap:7px;padding:8px 0}.price-row div{justify-self:start}}
