@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{--ink:#09271d;--muted:#71837c;--line:#e2eae6;--paper:#f7faf8;--lime:#c7f43c;--orange:#f37c48;--white:#fff;--shadow:0 16px 40px #09271d0b}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}.app-shell{display:flex;min-height:100vh}.sidebar{width:250px;background:var(--ink);color:#fff;padding:30px 18px 22px;display:flex;flex-direction:column}.brand{font:700 23px 'Space Grotesk';display:flex;align-items:center;gap:9px;padding:0 14px 42px}.brand-mark{color:var(--lime);font-size:28px}.brand small{font:600 9px 'DM Sans';color:var(--lime);border:1px solid #c7f43c66;padding:3px 5px;border-radius:5px;margin-left:auto}nav{display:grid;gap:7px}.nav-item{background:none;border:0;color:#9cadA5;text-align:left;padding:13px 15px;border-radius:10px;font:600 14px 'DM Sans';cursor:pointer;display:flex;gap:13px;align-items:center}.nav-item:first-letter{font-size:19px}.nav-item.active,.nav-item:hover{color:var(--ink);background:var(--lime)}.sidebar-note{margin-top:auto;border-top:1px solid #ffffff18;padding:20px 10px 0;display:flex;gap:10px;align-items:flex-start;color:#d7e1dc;font-size:12px}.sidebar-note small{display:block;color:#8da098;margin-top:4px}.status-dot{width:8px;height:8px;background:#9de01c;border-radius:50%;margin-top:4px}.main-content{flex:1;padding:30px 4.5%;max-width:1600px;margin:auto}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{font-size:10px;letter-spacing:1.4px;color:var(--muted);font-weight:700;margin:0 0 7px}.topbar h1{font:700 clamp(25px,3vw,36px) 'Space Grotesk';margin:0;letter-spacing:-1px}.top-actions{display:flex;gap:12px;align-items:center}.location-pill{background:#fff;border:1px solid var(--line);padding:10px 14px;border-radius:10px;font-size:13px;font-weight:600}.icon-btn{width:40px;height:40px;border:1px solid var(--line);background:#fff;border-radius:10px;color:var(--ink);font-size:20px;cursor:pointer}.avatar{width:40px;height:40px;border-radius:12px;background:var(--lime);display:grid;place-items:center;font-weight:700}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px 21px;box-shadow:var(--shadow)}.stat-label{display:block;color:var(--muted);font-size:12px;margin-bottom:9px}.stat-card strong{font:700 23px 'Space Grotesk';display:block}.stat-meta{font-size:11px;color:var(--muted);display:block;margin-top:8px}.positive{color:#4b9b5d}.accent-card{background:var(--lime);border-color:var(--lime)}.accent-card .stat-label{color:#4f6a17}.progress{height:5px;background:#8eaf25;border-radius:10px;display:block;margin-top:13px}.progress i{display:block;height:100%;background:var(--ink);border-radius:10px;width:15%}.hero-card{background:var(--ink);border-radius:17px;color:#fff;padding:33px 38px;display:flex;justify-content:space-between;overflow:hidden;position:relative}.hero-card h2{font:700 31px 'Space Grotesk';margin:7px 0 8px;letter-spacing:-1px}.hero-card p{color:#aec0b7;margin:0 0 23px}.tag{font-size:10px;letter-spacing:1.3px;color:var(--lime);font-weight:700}.primary-btn,.secondary-btn{border:0;border-radius:8px;padding:12px 16px;font-weight:700;cursor:pointer}.primary-btn{background:var(--lime);color:var(--ink)}.primary-btn span{margin-left:16px}.secondary-btn{background:#edf3ef;color:var(--ink)}.route-art{min-width:300px;display:flex;align-items:center;gap:15px;justify-content:center;color:var(--lime);font:700 12px 'Space Grotesk';position:relative}.route-line{height:2px;width:140px;background:#557064;display:flex;justify-content:space-around}.route-line i{width:7px;height:7px;background:var(--lime);border-radius:50%;margin-top:-2px}.route-art b{position:absolute;font-size:25px;top:18px;left:47%}.content-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;margin-top:20px}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:23px;box-shadow:var(--shadow)}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:19px}.panel-heading h2,.panel-heading h3{margin:0;font:700 21px 'Space Grotesk'}.subtle{font-size:12px;color:var(--muted)}.city-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.city-card{border:1px solid var(--line);border-radius:10px;padding:14px;cursor:pointer;transition:.2s}.city-card:hover{border-color:var(--ink);transform:translateY(-2px)}.city-card .city-top{display:flex;justify-content:space-between}.city-card strong{font-size:15px}.city-card small{display:block;color:var(--muted);margin-top:5px}.city-icon{background:#eff6d0;border-radius:8px;padding:7px}.city-price{color:#4d9b59;font-size:12px;margin-top:14px}.opportunity{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.opportunity:last-child{border:0}.opportunity strong{font-size:14px}.opportunity small{display:block;color:var(--muted);margin-top:4px}.profit{color:#e76c38;font-weight:700;font-size:13px}.hidden{display:none}.market-heading{align-items:flex-end}.market-controls{display:flex;gap:8px}select{border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff;color:var(--ink);font:500 13px 'DM Sans'}.market-table{border-top:1px solid var(--line)}.market-row{display:grid;grid-template-columns:1.5fr .8fr .8fr 1fr;align-items:center;padding:16px 4px;border-bottom:1px solid var(--line);gap:10px}.market-row.head{font-size:10px;color:var(--muted);font-weight:700;letter-spacing:1px}.product-name strong{display:block}.product-name small{display:block;color:var(--muted);margin-top:4px}.price{font-weight:700}.trend.up{color:#4d9b59}.trend.down{color:#e76c38}.trade-actions{display:flex;justify-content:flex-end;gap:7px}.trade-actions button{border:1px solid var(--line);background:#f6faf7;border-radius:6px;padding:7px 10px;cursor:pointer;font-weight:700;color:var(--ink)}.trade-actions button:hover{background:var(--lime)}.route-list{display:grid;gap:12px}.route-card{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:10px;padding:17px}.route-card h3{margin:0 0 5px;font-size:15px}.route-card p{margin:0;color:var(--muted);font-size:12px}.route-cost{font-weight:700;color:#df7040}.toast{position:fixed;right:25px;bottom:25px;background:var(--ink);color:#fff;padding:13px 17px;border-radius:8px;opacity:0;transform:translateY(10px);transition:.25s;pointer-events:none;font-size:13px}.toast.show{opacity:1;transform:none}@media(max-width:900px){.sidebar{width:70px;padding:25px 10px}.brand{padding:0 7px 40px}.brand span:not(.brand-mark),.brand small,.nav-item span,.sidebar-note{display:none}.nav-item{justify-content:center;padding:14px 8px}.main-content{padding:25px 18px}.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.route-art{min-width:200px}}@media(max-width:600px){.topbar{align-items:flex-start}.topbar h1{font-size:24px}.location-pill{display:none}.stats-grid{grid-template-columns:1fr 1fr}.hero-card{padding:25px 22px}.hero-card h2{font-size:25px}.route-art{display:none}.city-list{grid-template-columns:1fr}.market-heading{display:block}.market-controls{margin-top:15px}.market-row{grid-template-columns:1.3fr .8fr 1fr}.market-row>div:nth-child(3){display:none}.trade-actions button{padding:6px}.panel{padding:17px}}
 .text-btn{border:0;background:none;color:#4d9b59;font-weight:700;cursor:pointer}.price-panel{min-height:240px}.price-chart{display:flex;align-items:end;gap:20px;height:145px;border-bottom:1px solid var(--line);padding:0 10px}.chart-item{height:100%;flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:6px;font-size:11px;color:var(--muted)}.chart-item b{font-size:11px;color:var(--ink)}.chart-bar{height:100px;width:30px;display:flex;align-items:end;background:#f0f5f1;border-radius:6px 6px 0 0}.chart-bar i{display:block;width:100%;background:var(--lime);border-radius:6px 6px 0 0}.mission-list{display:grid;gap:10px}.mission{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px}.mission.done{background:#f1f8db;border-color:#d5e99a}.mission-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#eff3ef;font-weight:700}.mission.done .mission-icon{background:var(--lime)}.mission strong{display:block;font-size:14px}.mission small{display:block;color:var(--muted);margin-top:4px}.mission b{margin-left:auto;font-size:12px;color:#e27440;white-space:nowrap}.mission.done b{color:#4d9b59}.trade-actions{align-items:center}.qty{width:45px;border:1px solid var(--line);border-radius:6px;padding:7px 4px;text-align:center}.trade-map{height:330px;border-radius:12px;background:linear-gradient(135deg,#e6f0eb,#d8e8df);position:relative;overflow:hidden;margin-bottom:15px}.trade-map:before{content:'';position:absolute;inset:0;opacity:.35;background-image:linear-gradient(30deg,#b3d0c0 12%,transparent 12.5%,transparent 87%,#b3d0c0 87.5%,#b3d0c0),linear-gradient(150deg,#b3d0c0 12%,transparent 12.5%,transparent 87%,#b3d0c0 87.5%,#b3d0c0);background-size:48px 84px}.map-title{position:absolute;top:18px;left:20px;font:700 18px 'Space Grotesk';z-index:2}.map-title small{display:block;color:var(--muted);font:500 11px 'DM Sans';margin-top:4px}.map-nodes{position:absolute;inset:0}.map-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);border:0;background:transparent;color:var(--ink);cursor:pointer;font-size:11px;font-weight:700}.map-node i{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff;border:2px solid #b8d3c2;font-style:normal;box-shadow:0 3px 8px #09271d20}.map-node span{display:block;margin-top:4px;white-space:nowrap}.map-node.selected i{background:var(--lime);border-color:var(--ink)}.route-go{border:0;background:#eef6d2;border-radius:7px;padding:9px;cursor:pointer}.modal{position:fixed;inset:0;background:#09271d88;display:grid;place-items:center;z-index:10}.modal-card{background:#fff;border-radius:15px;padding:28px;width:min(390px,calc(100% - 30px));position:relative;box-shadow:0 20px 60px #09271d44}.modal-card h2{font:700 25px 'Space Grotesk';margin:0 0 8px}.modal-card label{display:block;margin:20px 0;font-size:12px;font-weight:700}.modal-card input{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid var(--line);border-radius:8px;font:inherit}.modal-close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:25px;color:var(--muted);cursor:pointer}
 .modal.hidden{display:none}
 .bank-symbol{width:52px;height:52px;border-radius:14px;background:var(--lime);display:grid;place-items:center;font:700 25px 'Space Grotesk'}.bank-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.bank-balance,.reserve-card,.capacity-card{border:1px solid var(--line);border-radius:12px;padding:20px}.bank-balance{background:var(--ink);color:#fff}.bank-balance span,.reserve-card span,.capacity-card span{font-size:12px;color:var(--muted);display:block}.bank-balance span{color:#a7bbb1}.bank-balance strong,.reserve-card strong{display:block;font:700 28px 'Space Grotesk';margin:9px 0}.bank-balance small,.reserve-card small{font-size:11px;color:var(--muted)}.bank-balance small{color:#a7bbb1}.bank-actions{display:flex;align-items:end;gap:9px;padding:20px 0}.bank-actions label{font-size:12px;font-weight:700}.bank-actions input{display:block;width:150px;margin-top:6px;padding:11px;border:1px solid var(--line);border-radius:8px;font:inherit}.capacity-card{display:flex;align-items:center;justify-content:space-between;background:#f8fbf8}.capacity-card strong{display:block;margin-top:6px;font:700 20px 'Space Grotesk'}@media(max-width:600px){.bank-grid{grid-template-columns:1fr}.bank-actions{flex-wrap:wrap}.bank-actions input{width:100%}.capacity-card{display:block}.capacity-card button{margin-top:14px}}
 .world-svg{width:100%;height:100%;display:block;background:#dcece4}.continent{fill:#bad7c2;stroke:#a1c1aa;stroke-width:2}.small-continent{fill:#c4dfca}.route-line-svg{stroke:#668b78;stroke-width:1.5;stroke-dasharray:6 6;opacity:.7}.svg-city{cursor:pointer}.svg-city circle{fill:#fff;stroke:#1d6a4b;stroke-width:3}.svg-city text{font:700 13px 'DM Sans';fill:#09271d;pointer-events:none}.svg-city .country-label{font:500 10px 'DM Sans';fill:#5c796c}.svg-city.selected circle{fill:var(--lime);stroke:#09271d;stroke-width:4}.capacity-options{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:12px}.capacity-option{border:1px solid var(--line);background:#fff;border-radius:10px;padding:13px 10px;text-align:left;cursor:pointer;color:var(--ink)}.capacity-option:hover,.capacity-option.active{border-color:var(--ink);background:#f0f8d5}.capacity-option strong,.capacity-option span,.capacity-option small{display:block}.capacity-option strong{font:700 16px 'Space Grotesk'}.capacity-option span{font-weight:700;color:#e27440;margin-top:6px;font-size:12px}.capacity-option small{color:var(--muted);font-size:10px;margin-top:5px}@media(max-width:900px){.capacity-options{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.capacity-options{grid-template-columns:repeat(2,1fr)}.svg-city text{font-size:11px}.svg-city .country-label{font-size:8px}}
 .unit-purchase{display:flex;align-items:end;gap:10px;margin:16px 0}.unit-purchase label{font-size:12px;font-weight:700}.unit-purchase input{display:block;width:170px;margin-top:6px;padding:11px;border:1px solid var(--line);border-radius:8px;font:inherit}.building-list,.recipe-list{display:grid;gap:10px}.building-card,.recipe-card{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:11px;padding:14px}.building-icon{width:42px;height:42px;border-radius:10px;background:#eff6d0;display:grid;place-items:center;font-size:22px}.building-info,.recipe-main{flex:1}.building-info strong,.recipe-main strong{display:block;font-size:14px}.building-info small,.recipe-main small{display:block;color:var(--muted);margin:4px 0}.building-info span,.recipe-flow{font-size:11px;color:#4d9b59}.building-buy{display:flex;gap:7px;align-items:center}.building-buy input{width:52px;padding:8px;border:1px solid var(--line);border-radius:6px}.production-divider{height:1px;background:var(--line);margin:28px 0}.recipe-card{padding:12px}.recipe-card.ready{border-color:#b9d967;background:#fbfdf2}.stage-number{width:28px;height:28px;border-radius:50%;background:#edf3ef;display:grid;place-items:center;font-weight:700;font-size:12px}.recipe-card.ready .stage-number{background:var(--lime)}.recipe-meta{text-align:right;display:grid;gap:7px;justify-items:end}.recipe-meta small{color:var(--muted);font-size:10px}.recipe-meta button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:600px){.unit-purchase{display:block}.unit-purchase button{margin-top:10px}.building-card,.recipe-card{align-items:flex-start}.building-buy{display:block}.building-buy input{margin-bottom:6px}.recipe-meta{min-width:80px}}
 .market-event{margin:5px 0 0;color:#e27440;font-size:12px;font-weight:600}.company-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.company-summary>div{border:1px solid var(--line);border-radius:10px;padding:16px;background:#f8fbf8}.company-summary span{display:block;color:var(--muted);font-size:11px}.company-summary strong{display:block;font:700 24px 'Space Grotesk';margin-top:7px}.building-card .building-info span{font-size:11px}.recipe-card .recipe-meta button{white-space:nowrap}@media(max-width:600px){.company-summary{grid-template-columns:1fr}.market-event{max-width:280px}}
 .company-upgrade{margin-top:16px}
 .finance-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.finance-summary>div{padding:14px;border:1px solid var(--line);border-radius:10px}.finance-summary span{display:block;color:var(--muted);font-size:11px}.finance-summary strong{display:block;font:700 18px 'Space Grotesk';margin-top:7px}.company-class{padding:11px 13px;background:#f1f8db;border-radius:8px;color:#4d6d23;font-weight:700;font-size:12px}.leaderboard{display:grid;gap:8px}.leader-row{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:9px}.leader-row>strong{font:700 16px 'Space Grotesk';color:var(--muted)}.leader-row b{display:block;font-size:13px}.leader-row small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.leader-row>span{font-weight:700;font-size:12px;color:#4d9b59}.leader-self{background:#f0f8d5;border-color:#b9d967}.mission-reward{margin-left:auto;border:0;background:#eef6d2;border-radius:7px;padding:8px 10px;color:#4d6d23;font-weight:700;white-space:nowrap;cursor:pointer;font-size:11px}.mission-reward:disabled{background:transparent;color:var(--muted);cursor:default}@media(max-width:900px){.finance-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.finance-summary{grid-template-columns:1fr 1fr}.leader-row{grid-template-columns:28px 1fr}.leader-row>span{grid-column:2}.finance-summary strong{font-size:16px}}
 .shipment-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.shipment-card{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:10px;padding:13px}.shipment-card strong{display:block;font-size:13px}.shipment-card small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.party-meter{text-align:right}.party-meter b,.party-meter span{display:block}.party-meter b{font-size:12px}.party-meter span{color:#4d9b59;font-size:11px;margin-top:4px}@media(max-width:600px){.shipment-stats{grid-template-columns:1fr}}
 .login-screen{min-height:100vh;background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden}.login-left,.login-right{position:relative;z-index:2;padding:48px 6vw}.login-left{display:flex;flex-direction:column;justify-content:space-between;min-height:100vh}.login-brand{font:700 24px 'Space Grotesk';display:flex;align-items:center;gap:9px}.login-brand small{font:600 9px 'DM Sans';color:var(--lime);border:1px solid #c7f43c66;padding:3px 5px;border-radius:5px;margin-left:4px}.login-copy{max-width:550px;margin-top:10vh}.login-copy h1{font:700 clamp(44px,6vw,78px) 'Space Grotesk';line-height:.98;letter-spacing:-3px;margin:14px 0 23px}.login-copy h1 em{color:var(--lime);font-style:normal}.login-copy>p:last-child{max-width:420px;color:#a9bbb3;font-size:16px;line-height:1.6}.login-perks{display:flex;gap:34px}.login-perks strong,.login-perks span{display:block}.login-perks strong{font:700 27px 'Space Grotesk';color:var(--lime)}.login-perks span{font-size:11px;color:#a9bbb3;margin-top:5px;max-width:100px}.login-right{display:flex;flex-direction:column;justify-content:center;max-width:580px}.login-card{background:#fff;color:var(--ink);border-radius:17px;padding:34px;max-width:430px;box-shadow:0 20px 60px #0003}.login-card h2{font:700 29px 'Space Grotesk';margin:6px 0}.login-card label{display:block;font-size:12px;font-weight:700;margin:24px 0}.login-card input{display:block;width:100%;margin-top:8px;padding:14px;border:1px solid var(--line);border-radius:9px;font:inherit;outline:none}.login-card input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #c7f43c55}.login-btn{width:100%;font-size:14px;padding:14px}.login-note{display:block;color:var(--muted);font-size:11px;margin-top:17px}.login-leaderboard{max-width:430px;margin-top:25px}.login-section-title{display:flex;justify-content:space-between;align-items:center;color:var(--lime);font-size:10px;font-weight:700;letter-spacing:1.2px;margin-bottom:10px}.login-section-title small{color:#91a59c;font-size:10px;font-weight:500;letter-spacing:0}.login-leader{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #ffffff1c}.login-leader>b{color:#91a59c}.login-leader strong,.login-leader small{display:block}.login-leader strong{font-size:13px}.login-leader small{font-size:10px;color:#91a59c;margin-top:3px}.login-leader span{font-size:11px;font-weight:700;color:var(--lime)}.login-map{position:absolute;inset:0;z-index:1;opacity:.23;pointer-events:none}.login-map svg{position:absolute;width:75%;height:90%;right:-2%;top:5%}.login-map svg path:first-child{fill:#87b39a;stroke:#a9d4b6;stroke-width:2}.login-map-route{fill:none;stroke:var(--lime);stroke-width:2;stroke-dasharray:8 8}.login-map-points circle{fill:var(--lime);stroke:#fff;stroke-width:2}.map-caption{position:absolute;right:7%;bottom:7%;font-size:11px;color:#cfe5d9;letter-spacing:.5px}.hidden{display:none!important}@media(max-width:900px){.login-screen{grid-template-columns:1fr}.login-left{min-height:auto;padding-bottom:20px}.login-copy{margin-top:10vh}.login-perks{margin-top:45px}.login-right{padding-top:25px;padding-bottom:45px}.login-map svg{width:100%;right:-25%;opacity:.55}}@media(max-width:600px){.login-left,.login-right{padding:28px 22px}.login-copy h1{font-size:48px;letter-spacing:-2px}.login-perks{gap:15px}.login-perks strong{font-size:20px}.login-card{padding:25px}.login-map{opacity:.13}}
 .login-error{display:none;color:#c95843;font-size:12px;margin:12px 0 0}.login-error.show{display:block}

/* Responsive layout refinements: keep the entry view stable after adding the city selector. */
.brand{white-space:nowrap;flex-wrap:nowrap}.brand>span:not(.brand-mark){white-space:nowrap;flex:0 0 auto}.brand small{flex:0 0 auto}
.login-screen{min-height:100svh;overflow-x:hidden;overflow-y:auto}.login-left,.login-right{min-width:0}.login-right{justify-content:flex-start;padding-top:clamp(28px,7vh,72px);padding-bottom:48px}.login-card,.login-leaderboard{width:100%}
@media(min-width:901px) and (max-height:760px){.login-left,.login-right{padding-top:28px;padding-bottom:28px}.login-copy{margin-top:4vh}.login-copy h1{font-size:clamp(40px,5vw,62px);margin-bottom:15px}.login-perks{margin-top:24px}.login-card{padding:27px}.login-card label{margin:17px 0}.login-leaderboard{margin-top:16px}}
@media(max-width:600px){.login-screen{display:block}.login-left,.login-right{padding:24px 20px}.login-copy{margin-top:7vh}.login-copy h1{font-size:clamp(42px,12vw,54px)}.login-perks{margin-top:30px}.login-right{padding-top:10px;padding-bottom:36px}.login-card{padding:22px}.login-card label{margin:17px 0}.brand{padding-left:8px;padding-right:8px}.brand-mark{font-size:25px}.brand>span:not(.brand-mark){font-size:21px}}
.bank-selector{display:flex;align-items:end;gap:18px;padding:15px 0 9px;border-bottom:1px solid var(--line)}.bank-selector label,.loan-actions{font-size:12px;font-weight:700}.bank-selector select{display:block;margin-top:6px;min-width:240px}.bank-advantage{margin:0;color:#4d9b59;font-size:12px}.bank-offers{display:grid;gap:8px;margin:16px 0}.bank-offer{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:10px;padding:12px 14px}.bank-offer.active{border-color:var(--lime);background:#f8fce9}.bank-offer strong,.bank-offer small{display:block}.bank-offer small{color:var(--muted);font-size:11px;margin-top:4px}.bank-offer>span{font-size:11px;font-weight:700;color:#4d9b59}.bank-rate{margin-left:auto;font-size:12px;color:var(--muted)}.bank-rate strong{color:#4d9b59}.loan-panel{display:flex;justify-content:space-between;align-items:end;gap:18px;border-top:1px solid var(--line);padding-top:20px;margin-top:10px}.loan-panel h3{margin:0;font:700 18px 'Space Grotesk'}.loan-actions{display:flex;align-items:end;gap:8px}.loan-actions input{width:130px;padding:11px;border:1px solid var(--line);border-radius:8px;font:inherit}.loan-actions button{white-space:nowrap}@media(max-width:700px){.bank-selector,.loan-panel{display:block}.bank-selector select{width:100%}.bank-advantage{margin-top:10px}.bank-offer{display:block}.bank-offer>span{display:block;margin-top:8px}.bank-rate{display:block;margin:10px 0 0}.loan-actions{display:flex;flex-wrap:wrap;margin-top:14px}.loan-actions input{width:100%}}
 .shipment-form{display:grid;grid-template-columns:1.3fr 1.3fr .6fr auto;align-items:end;gap:10px;margin-bottom:16px}.shipment-form label,.company-customize label{font-size:11px;font-weight:700}.shipment-form select,.shipment-form input,.company-customize input,.company-customize select{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit}.demand{display:block;color:#4d9b59;font-size:10px;font-weight:500;margin-top:4px}.queue-card{background:#fbfdf2;border-color:#d9e9aa}.empty-state{border:1px dashed var(--line);border-radius:9px;padding:18px;text-align:center;color:var(--muted);font-size:12px}.company-customize{display:grid;grid-template-columns:1fr 120px auto;align-items:end;gap:10px;margin:16px 0}.company-customize input,.company-customize select{margin-top:6px}.shipment-card,.recipe-card,.building-card,.stat-card{transition:transform .2s,box-shadow .2s}.shipment-card:hover,.recipe-card:hover,.building-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #09271d0d}@media(max-width:900px){.shipment-form{grid-template-columns:1fr 1fr}.shipment-form button{grid-column:1/-1}.company-customize{grid-template-columns:1fr 100px}}@media(max-width:600px){.shipment-form{grid-template-columns:1fr}.shipment-form button{grid-column:auto}.company-customize{grid-template-columns:1fr}}
 .level-progress{margin:18px 0}.level-progress>div{display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.level-progress b{color:var(--ink)}.level-progress>i{display:block;height:7px;background:var(--lime);border-radius:8px;margin-top:8px;width:0;transition:width .3s}.unlock-list{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.unlock-item{border:1px solid var(--line);border-radius:9px;padding:10px;background:#f7faf8}.unlock-item b,.unlock-item span,.unlock-item small{display:block}.unlock-item b{font-size:10px;color:var(--muted)}.unlock-item span{font-weight:700;font-size:12px;margin-top:4px}.unlock-item small{color:var(--muted);font-size:10px;margin-top:4px}.unlock-item.unlocked{background:#f0f8d5;border-color:#b9d967}.unlock-item.unlocked b{color:#4d9b59}.feature-lock{padding:12px;background:#fff4d9;border-radius:8px;color:#936b20;font-size:12px;margin-bottom:12px}.ecommerce-form{display:grid;grid-template-columns:1.3fr .7fr 1fr auto;gap:10px;align-items:end}.ecommerce-form label{font-size:11px;font-weight:700}.ecommerce-form input,.ecommerce-form select{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit}.disabled-feature{opacity:.55;pointer-events:none}@media(max-width:900px){.unlock-list{grid-template-columns:repeat(2,1fr)}.ecommerce-form{grid-template-columns:1fr 1fr}.ecommerce-form button{grid-column:1/-1}}@media(max-width:600px){.unlock-list{grid-template-columns:1fr}.ecommerce-form{grid-template-columns:1fr}.ecommerce-form button{grid-column:auto}}
 .warehouse-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.warehouse-card{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:11px;padding:16px}.warehouse-card.current{background:#f0f8d5;border-color:#b9d967}.warehouse-card strong,.warehouse-card small,.warehouse-card span{display:block}.warehouse-card strong{font:700 16px 'Space Grotesk'}.warehouse-card small{font-size:11px;color:var(--muted);margin-top:5px}.warehouse-card span{font-size:10px;color:#4d9b59;margin-top:5px}.warehouse-buy{display:flex;gap:7px;align-items:center}.warehouse-buy input{width:55px;padding:8px;border:1px solid var(--line);border-radius:6px}.warehouse-buy button{white-space:nowrap}@media(max-width:700px){.warehouse-list{grid-template-columns:1fr}.warehouse-card{align-items:flex-start}.warehouse-buy{display:block}.warehouse-buy input{margin-bottom:6px}}
/* Tema seçenekleri */
body[data-theme="dark"]{
  --ink:#e8f4ed;--muted:#9bb1a6;--line:#30463c;--paper:#0d1b16;--white:#172820;--shadow:0 16px 40px #0006;
  background:var(--paper);color:var(--ink)
}
body[data-theme="dark"] .panel,
body[data-theme="dark"] .stat-card,
body[data-theme="dark"] .login-card,
body[data-theme="dark"] .location-pill,
body[data-theme="dark"] .icon-btn,
body[data-theme="dark"] select,
body[data-theme="dark"] input,
body[data-theme="dark"] textarea{background:#172820;color:var(--ink);border-color:var(--line)}
body[data-theme="dark"] .secondary-btn,
body[data-theme="dark"] .trade-actions button{background:#233a30;color:var(--ink)}
body[data-theme="dark"] .login-trade-countries{background:linear-gradient(135deg,#18372a,#214b37);border-color:#3b7052}
body[data-theme="dark"] .login-leaderboard-top{background:linear-gradient(135deg,#3b4220,#555d25);border-color:#7b8737}
body[data-theme="dark"] .login-trade-countries .login-section-title,
body[data-theme="dark"] .login-leaderboard-top .login-section-title{color:#d5f58b}
body[data-theme="dark"] .login-trade-countries .login-section-title small,
body[data-theme="dark"] .login-leaderboard-top .login-section-title small,
body[data-theme="dark"] .login-country small,
body[data-theme="dark"] .login-leader small{color:#b8cdbf}
body[data-theme="dark"] .login-country strong,
body[data-theme="dark"] .login-leader strong{color:#f1fff5}
body[data-theme="dark"] .login-country,
body[data-theme="dark"] .login-leader{border-bottom-color:#ffffff26}
body[data-theme="dark"] .modal-card{background:#172820;color:var(--ink)}
body[data-theme="dark"] .login-screen,
body[data-theme="dark"] .sidebar,
body[data-theme="dark"] .hero-card{background:#06140e;color:#e8f4ed}
body[data-theme="dark"] .hero-card p{color:#b8cdbf}
body[data-theme="dark"]{
  --ink:#edf7f0;--muted:#b0c1b8;--line:#385347;--paper:#0b1511;--white:#17271f;--lime:#d7ef6d;--orange:#ff9a6b;
}
body[data-theme="dark"] .panel,
body[data-theme="dark"] .stat-card,
body[data-theme="dark"] .route-card,
body[data-theme="dark"] .building-card,
body[data-theme="dark"] .recipe-card,
body[data-theme="dark"] .city-card,
body[data-theme="dark"] .stock-card,
body[data-theme="dark"] .warehouse-card,
body[data-theme="dark"] .opportunity,
body[data-theme="dark"] .bank-balance,
body[data-theme="dark"] .reserve-card,
body[data-theme="dark"] .loan-panel,
body[data-theme="dark"] .ipo-panel{background:#17271f;border-color:#385347;color:#edf7f0}
body[data-theme="dark"] .city-card:hover{border-color:#d7ef6d}
body[data-theme="dark"] .city-icon{background:#31513e;color:#e8f6a0;border:1px solid #638666}
body[data-theme="dark"] .city-price,
body[data-theme="dark"] .stock-price,
body[data-theme="dark"] .positive,
body[data-theme="dark"] .trend.up{color:#bce875}
body[data-theme="dark"] .profit,
body[data-theme="dark"] .trend.down,
body[data-theme="dark"] .route-cost{color:#ffad82}
body[data-theme="dark"] .primary-btn,
body[data-theme="dark"] .avatar{background:#d7ef6d;color:#0a1710}
body[data-theme="dark"] .secondary-btn,
body[data-theme="dark"] .trade-actions button,
body[data-theme="dark"] .opportunity-btn{background:#2a4437;color:#edf7f0;border-color:#527260}
body[data-theme="dark"] .secondary-btn:hover,
body[data-theme="dark"] .trade-actions button:hover,
body[data-theme="dark"] .opportunity-btn:hover:not(:disabled){background:#3b5d49;color:#fff}
body[data-theme="dark"] .nav-item.active,
body[data-theme="dark"] .nav-item:hover{background:#d7ef6d;color:#0a1710}
body[data-theme="dark"] .nav-item{color:#b9c9c0}
body[data-theme="dark"] .eyebrow{color:#a8c0b3}
body[data-theme="dark"] .subtle,
body[data-theme="dark"] .stat-label,
body[data-theme="dark"] .stat-meta,
body[data-theme="dark"] .product-name small,
body[data-theme="dark"] .city-card small{color:#b0c1b8}
body[data-theme="dark"] input::placeholder{color:#8fa79a}
body[data-theme="dark"] .bank-symbol,
body[data-theme="dark"] .company-logo,
body[data-theme="dark"] .brand-mark{color:#d7ef6d}
body[data-theme="dark"] .chart-bar,
body[data-theme="dark"] .mission-icon,
body[data-theme="dark"] .stage-number,
body[data-theme="dark"] .building-icon,
body[data-theme="dark"] .capacity-card,
body[data-theme="dark"] .company-summary>div,
body[data-theme="dark"] .unlock-item,
body[data-theme="dark"] .bank-offer.active,
body[data-theme="dark"] .capacity-option,
body[data-theme="dark"] .support-card{background:#20372c;color:#edf7f0}
body[data-theme="dark"] .mission.done,
body[data-theme="dark"] .recipe-card.ready,
body[data-theme="dark"] .warehouse-card.current,
body[data-theme="dark"] .leader-self,
body[data-theme="dark"] .unlock-item.unlocked{background:#304b2f;border-color:#6e8c42;color:#edf7f0}
body[data-theme="dark"] .feature-lock{background:#3e3520;color:#f2d98c}
body[data-theme="dark"] .company-class{background:#304b2f;color:#d7ef6d}
body[data-theme="dark"] .mission-reward,
body[data-theme="dark"] .route-go{background:#2a4437;color:#d7ef6d}
body[data-theme="dark"] .shipment-form select,
body[data-theme="dark"] .shipment-form input,
body[data-theme="dark"] .company-customize input,
body[data-theme="dark"] .company-customize select,
body[data-theme="dark"] .ecommerce-form input,
body[data-theme="dark"] .ecommerce-form select,
body[data-theme="dark"] .bank-actions input,
body[data-theme="dark"] .loan-actions input,
body[data-theme="dark"] .building-buy input,
body[data-theme="dark"] .warehouse-buy input,
body[data-theme="dark"] .qty{background:#17271f;color:#edf7f0;border-color:#527260}
body[data-theme="dark"] .trade-map{background:linear-gradient(135deg,#18372a,#10251c)}
body[data-theme="dark"] .world-svg{background:#132a20}
body[data-theme="dark"] .continent{fill:#28513d;stroke:#47775c}
body[data-theme="dark"] .small-continent{fill:#326148}
body[data-theme="dark"] .svg-city circle,
body[data-theme="dark"] .map-node i{background:#20372c;border-color:#8fb66e;color:#edf7f0}
body[data-theme="dark"] .svg-city text,
body[data-theme="dark"] .map-node{fill:#edf7f0;color:#edf7f0}
body[data-theme="dark"] .trade-map{
  background:linear-gradient(135deg,#06140e 0%,#0d2a1d 55%,#123b29 100%);
  border:1px solid #2d6046
}
body[data-theme="dark"] .trade-map:before{
  background-image:linear-gradient(30deg,#2b6247 12%,transparent 12.5%,transparent 87%,#2b6247 87.5%,#2b6247),linear-gradient(150deg,#2b6247 12%,transparent 12.5%,transparent 87%,#2b6247 87.5%,#2b6247)
}
body[data-theme="dark"] .world-svg{background:#0b2117}
body[data-theme="dark"] .continent{fill:#1d4a32;stroke:#4e8a5d}
body[data-theme="dark"] .small-continent{fill:#28613f}
body[data-theme="dark"] .route-line-svg{stroke:#8fbf69}

body[data-theme="colorblind"] .trade-map{
  background:linear-gradient(135deg,#17233d 0%,#263b61 58%,#40537b 100%);
  border:1px solid #f2c14e
}
body[data-theme="colorblind"] .trade-map:before{
  background-image:linear-gradient(30deg,#536b91 12%,transparent 12.5%,transparent 87%,#536b91 87.5%,#536b91),linear-gradient(150deg,#536b91 12%,transparent 12.5%,transparent 87%,#536b91 87.5%,#536b91)
}
body[data-theme="colorblind"] .world-svg{background:#dbe5f0}
body[data-theme="colorblind"] .continent{fill:#b8c9df;stroke:#536b91}
body[data-theme="colorblind"] .small-continent{fill:#cbd8e8}
body[data-theme="colorblind"] .route-line-svg{stroke:#8a5a00}
body[data-theme="colorblind"] .svg-city circle,
body[data-theme="colorblind"] .map-node i{background:#f2c14e;border-color:#17233d;color:#17233d}
body[data-theme="colorblind"] .svg-city.selected circle,
body[data-theme="colorblind"] .map-node.selected i{background:#17233d;border-color:#f2c14e;color:#fff}
body[data-theme="colorblind"] .svg-city text,
body[data-theme="colorblind"] .map-node{fill:#17233d;color:#17233d}

.city-metrics span{
  background:#dff58b;
  border:1px solid #b9d967;
  color:#17351f;
}
.city-metrics b{color:#17351f}
body[data-theme="dark"] .city-metrics span{background:#b8d84a;border-color:#d7ef6d;color:#0a1710}
body[data-theme="dark"] .city-metrics b{color:#0a1710}
body[data-theme="colorblind"] .city-metrics span{background:#f2c14e;border-color:#b98112;color:#17233d}
body[data-theme="colorblind"] .city-metrics b{color:#17233d}
body[data-theme="dark"] .accent-card,
body[data-theme="dark"] .mission.done,
body[data-theme="dark"] .recipe-card.ready,
body[data-theme="dark"] .warehouse-card.current,
body[data-theme="dark"] .leader-self,
body[data-theme="dark"] .unlock-item.unlocked,
body[data-theme="dark"] .bank-offer.active,
body[data-theme="dark"] .capacity-option.active,
body[data-theme="dark"] .capacity-option:hover,
body[data-theme="dark"] .support-card.highlighted{
  background:#b8d84a;
  border-color:#d7ef6d;
  color:#0a1710;
}
body[data-theme="dark"] .accent-card .stat-label,
body[data-theme="dark"] .mission.done strong,
body[data-theme="dark"] .recipe-card.ready strong,
body[data-theme="dark"] .warehouse-card.current strong,
body[data-theme="dark"] .leader-self b,
body[data-theme="dark"] .unlock-item.unlocked span,
body[data-theme="dark"] .bank-offer.active strong,
body[data-theme="dark"] .capacity-option.active strong{color:#0a1710}
body[data-theme="dark"] .mission.done small,
body[data-theme="dark"] .mission.done b,
body[data-theme="dark"] .recipe-card.ready small,
body[data-theme="dark"] .warehouse-card.current small,
body[data-theme="dark"] .warehouse-card.current span,
body[data-theme="dark"] .unlock-item.unlocked small,
body[data-theme="dark"] .bank-offer.active>span{color:#17351f}
body[data-theme="dark"] .bank-balance{
  background:#06140e;
  color:#edf7f0;
  border-color:#3f7655;
}
body[data-theme="dark"] .bank-balance span,
body[data-theme="dark"] .bank-balance small{color:#b8cdbf}
body[data-theme="dark"] .bank-balance strong{color:#d7ef6d}
body[data-theme="dark"] .bank-symbol{background:#b8d84a;color:#0a1710}
body[data-theme="dark"] .bank-advantage,
body[data-theme="dark"] .bank-rate strong,
body[data-theme="dark"] .bank-offer>span{color:#b8e875}
body[data-theme="dark"] .bank-offer.active>span{color:#17351f}
body[data-theme="dark"] .bank-offer.active small,
body[data-theme="dark"] .bank-offer.active .subtle{color:#29482b}
body[data-theme="dark"] .bank-panel .panel-heading h2,
body[data-theme="dark"] .bank-panel .panel-heading h3,
body[data-theme="dark"] .bank-panel label,
body[data-theme="dark"] .bank-panel strong{color:#edf7f0}
body[data-theme="dark"] .bank-panel .bank-offer.active strong,
body[data-theme="dark"] .bank-panel .bank-offer.active label{color:#0a1710}
body[data-theme="dark"] .nav-item.active{font-weight:800;text-shadow:none}
body[data-theme="dark"] .stock-summary>div{
  background:#b8d84a;
  border-color:#d7ef6d;
  color:#0a1710;
}
body[data-theme="dark"] .stock-summary span,
body[data-theme="dark"] .stock-summary small,
body[data-theme="dark"] .stock-summary strong{color:#0a1710}

body[data-theme="colorblind"]{
  --ink:#17233d;--muted:#53627a;--line:#c8d2e2;--paper:#f5f8fc;--white:#fff;--lime:#f2c14e;--orange:#c2413d;--shadow:0 16px 40px #17233d18;
  background:var(--paper);color:var(--ink)
}
body[data-theme="colorblind"] .primary-btn,
body[data-theme="colorblind"] .avatar{background:#f2c14e;color:#17233d}
body[data-theme="colorblind"] .positive,
body[data-theme="colorblind"] .trend.up,
body[data-theme="colorblind"] .login-country>span,
body[data-theme="colorblind"] .login-leader span{color:#146c94}
body[data-theme="colorblind"] .profit,
body[data-theme="colorblind"] .trend.down{color:#c2413d}
body[data-theme="colorblind"] .panel,
body[data-theme="colorblind"] .stat-card,
body[data-theme="colorblind"] .location-pill,
body[data-theme="colorblind"] .icon-btn,
body[data-theme="colorblind"] select,
body[data-theme="colorblind"] input,
body[data-theme="colorblind"] textarea{border-color:var(--line)}
body[data-theme="colorblind"] .login-trade-countries{background:#e8f3f8;border-color:#8ebbd0}
body[data-theme="colorblind"] .login-leaderboard-top{background:#fff5d6;border-color:#dfc477}
body[data-theme="colorblind"] .login-trade-countries .login-section-title{color:#146c94}
body[data-theme="colorblind"] .login-leaderboard-top .login-section-title{color:#8a5a00}
body[data-theme="colorblind"] .login-country,
body[data-theme="colorblind"] .login-leader{border-bottom-color:#c8d2e2}

.theme-control{display:flex;align-items:center;gap:6px;background:var(--white);border:1px solid var(--line);border-radius:10px;padding:0 8px;color:var(--muted)}
.theme-control span{font-size:15px}
.theme-control select{border:0;background:transparent;padding:9px 2px;color:var(--ink);font-size:11px;outline:none}
@media(max-width:600px){.theme-control{flex:1;min-width:0}.theme-control select{width:100%;font-size:10px}.theme-control span{display:none}}
