@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:ital,opsz,wght@0,9..144,600;1,9..144,600&display=swap";:root{color:#19322b;font-synthesis:none;text-rendering:optimizelegibility;--forest-950:#0e3028;--forest-900:#153e33;--forest-800:#205345;--forest-700:#2e6b58;--sage-200:#c7d8b7;--sage-100:#e6ecdc;--cream:#f8f5ec;--paper:#fffdf7;--gold:#d99f37;--ink:#19322b;--muted:#6c766f;--error:#a94037;--surface-soft:#f1f4ed;--surface-raised:#fff;--border:#d9ded4;--shadow:#19413217;background:#f6f2e8;font-family:DM Sans,system-ui,sans-serif}:root[data-theme=dark]{color:#e5efe9;--forest-950:#edf8f1;--forest-900:#dcefe4;--forest-800:#79b99d;--forest-700:#70bd9b;--sage-200:#355c4d;--sage-100:#223b32;--cream:#101d19;--paper:#182722;--gold:#e4b75e;--ink:#e5efe9;--muted:#9fb1a8;--error:#ff9286;--surface-soft:#1d3029;--surface-raised:#21352d;--border:#334c42;--shadow:#0000004d;background:#101d19}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[dir=rtl] body{text-align:right}[dir=rtl] .brand__mark,[dir=rtl] .resource-svg,[dir=rtl] .button-spinner{direction:ltr}.resource-svg{--resource-bg:#274f42;--resource-fill:#91c8ae;--resource-line:#e6f6ee;--resource-rim:#fff3;vertical-align:-.42em;flex:none;width:1.65em;height:1.65em;display:inline-block;overflow:visible}.resource-svg.resource-png{object-fit:cover;border-radius:50%;overflow:hidden;box-shadow:0 1px 3px #122d2438}.ship-icon{object-fit:cover;vertical-align:-.55em;border-radius:50%;flex:none;width:1.9em;height:1.9em;display:inline-block;box-shadow:0 1px 3px #122d2438}.ship-card__icon .ship-icon{border-radius:12px;width:48px;height:48px}.route-ship__heading .ship-icon,.route-editor__assigned-ships article .ship-icon{border-radius:9px;width:34px;height:34px}.route-map__ship-entry{align-items:center;gap:.3rem;margin-right:.6rem;display:inline-flex}.renamable-title{flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0;display:flex}.renamable-title>h1,.renamable-title>h2,.renamable-title>h3,.renamable-title>strong{overflow-wrap:anywhere;min-width:0}.rename-control__open{color:#3f6559;cursor:pointer;background:#fff;border:1px solid #d6e3da;border-radius:50%;flex:none;place-items:center;width:1.65rem;height:1.65rem;padding:0;font-size:.78rem;line-height:1;display:grid}.rename-control__open:hover:not(:disabled){background:#edf4ef}.rename-control__open:disabled{opacity:.45;cursor:not-allowed}.rename-control{flex-wrap:wrap;align-items:center;gap:.4rem;width:100%;display:flex}.rename-control input{min-width:0;font:inherit;border:1px solid #cfdfd4;border-radius:8px;flex:9rem;padding:.35rem .5rem;font-size:.85rem}.rename-control button{padding:.35rem .6rem;font-size:.78rem}.rename-control small{color:#8c3e36;flex:100%;font-size:.72rem}.resource-svg__backdrop{fill:var(--resource-bg)}.resource-svg__rim{fill:none;stroke:var(--resource-rim);stroke-width:.7px}.resource-svg path,.resource-svg ellipse{fill:none;stroke:var(--resource-line);stroke-width:1.05px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.resource-svg .resource-svg__fill,.resource-svg>circle:not(.resource-svg__backdrop):not(.resource-svg__rim),.resource-svg g.resource-svg__fill{fill:var(--resource-fill);stroke:var(--resource-line)}.resource-svg .resource-svg__detail{fill:var(--resource-line);stroke:var(--resource-line)}.resource-svg--gold{--resource-bg:#5b4212;--resource-fill:#eebc43;--resource-line:#fff0a8;--resource-rim:#c99327}.resource-svg--wood{--resource-bg:#493426;--resource-fill:#a87345;--resource-line:#f1d1a3;--resource-rim:#865f3e}.resource-svg--planks{--resource-bg:#604733;--resource-fill:#c79159;--resource-line:#ffe0ad;--resource-rim:#9a7049}.resource-svg--stone{--resource-bg:#41484c;--resource-fill:#899296;--resource-line:#edf1f2;--resource-rim:#687277}.resource-svg--fish{--resource-bg:#25526a;--resource-fill:#67abc4;--resource-line:#dcf6ff;--resource-rim:#4b89a5}.resource-svg--cereals{--resource-bg:#5a4719;--resource-fill:#d9ac3c;--resource-line:#ffeb9d;--resource-rim:#a98227}.resource-svg--wheat{--resource-bg:#5b4616;--resource-fill:#dfb541;--resource-line:#fff0a6;--resource-rim:#a8862e}.resource-svg--corn{--resource-bg:#40511a;--resource-fill:#e6c83f;--resource-line:#fff7a8;--resource-rim:#82902c}.resource-svg--barley{--resource-bg:#554a22;--resource-fill:#c7ad57;--resource-line:#fff0b8;--resource-rim:#8d793a}.resource-svg--apples{--resource-bg:#4f2d21;--resource-fill:#c95545;--resource-line:#ffe2bd;--resource-rim:#994536}.resource-svg--strawberries{--resource-bg:#572331;--resource-fill:#d85268;--resource-line:#ffe1e7;--resource-rim:#a43d52}.resource-svg--raspberries{--resource-bg:#51213f;--resource-fill:#b84478;--resource-line:#ffe0ef;--resource-rim:#8f3867}.resource-svg--peaches{--resource-bg:#653729;--resource-fill:#e58a63;--resource-line:#ffe2ca;--resource-rim:#b76046}.resource-svg--potatoes{--resource-bg:#54402a;--resource-fill:#ad8551;--resource-line:#f6ddb5;--resource-rim:#80613c}.resource-svg--carrots{--resource-bg:#57341f;--resource-fill:#df7b38;--resource-line:#ffe2b1;--resource-rim:#a95a2d}.resource-svg--sand{--resource-bg:#594a2d;--resource-fill:#d3b66e;--resource-line:#fff1c2;--resource-rim:#927b4d}.resource-svg--glass{--resource-bg:#244f59;--resource-fill:#70b7bf;--resource-line:#e2fbff;--resource-rim:#4d8992}.resource-svg--eggs{--resource-bg:#544b37;--resource-fill:#ede0bd;--resource-line:#fff9e8;--resource-rim:#8e7b58}.resource-svg--flour{--resource-bg:#514936;--resource-fill:#d9c99e;--resource-line:#fff7dd;--resource-rim:#87785a}.resource-svg--bread{--resource-bg:#5a3821;--resource-fill:#c98545;--resource-line:#ffe1af;--resource-rim:#986034}.resource-svg--cider{--resource-bg:#5b351c;--resource-fill:#c57d2f;--resource-line:#ffe6aa;--resource-rim:#995d28}.resource-svg--wine{--resource-bg:#4d253b;--resource-fill:#983f66;--resource-line:#ffe0ed;--resource-rim:#773650}.resource-svg--beer{--resource-bg:#594315;--resource-fill:#d5a52f;--resource-line:#fff0a5;--resource-rim:#9e7624}.resource-svg--sugar{--resource-bg:#365263;--resource-fill:#d6e8ed;--resource-line:#fff;--resource-rim:#6d91a1}.resource-svg--apple-jam{--resource-bg:#54241f;--resource-fill:#b94538;--resource-line:#ffe0bb;--resource-rim:#923b30}.resource-svg--grape-jam{--resource-bg:#422650;--resource-fill:#814d9d;--resource-line:#efdcff;--resource-rim:#6c4082}.resource-svg--strawberry-jam{--resource-bg:#591f30;--resource-fill:#c33e59;--resource-line:#ffe0e7;--resource-rim:#993048}.resource-svg--raspberry-jam{--resource-bg:#4f1d3b;--resource-fill:#a9366c;--resource-line:#ffdeed;--resource-rim:#842b5b}.resource-svg--peach-jam{--resource-bg:#613122;--resource-fill:#d87553;--resource-line:#ffe1c7;--resource-rim:#a4513b}.resource-svg--jam-making{--resource-bg:#4b2b4f;--resource-fill:#a2589e;--resource-line:#fce1ff;--resource-rim:#7e447b}.resource-svg--salted-fish{--resource-bg:#2b5060;--resource-fill:#78aebc;--resource-line:#e5f9ff;--resource-rim:#568491}.resource-svg--bricks{--resource-bg:#603126;--resource-fill:#bd6048;--resource-line:#ffd4bf;--resource-rim:#994b39}.resource-svg--iron-ingots{--resource-bg:#394247;--resource-fill:#84949a;--resource-line:#edf5f7;--resource-rim:#65767c}.resource-svg--tools{--resource-bg:#3e4648;--resource-fill:#89999b;--resource-line:#eff9f7;--resource-rim:#68797a}.resource-svg--mechanical-parts{--resource-bg:#35474c;--resource-fill:#6e8e94;--resource-line:#e5f6f8;--resource-rim:#55747a}.resource-svg--rations{--resource-bg:#4d492c;--resource-fill:#a79d5d;--resource-line:#fff2bd;--resource-rim:#7c7545}.resource-svg--advanced-materials{--resource-bg:#344d51;--resource-fill:#6f9da3;--resource-line:#e5fbff;--resource-rim:#527b82}.resource-svg--electricity{--resource-bg:#5b4914;--resource-fill:#f0c83d;--resource-line:#fff7b0;--resource-rim:#a98c28}.resource-svg--factory-power{--resource-bg:#4b482e;--resource-fill:#9e9361;--resource-line:#fff2b2;--resource-rim:#7c7448}.resource-svg--powered-factory{--resource-bg:#31503d;--resource-fill:#68a178;--resource-line:#e6f8d9;--resource-rim:#4f805e}.resource-svg--housing-power{--resource-bg:#315442;--resource-fill:#75a985;--resource-line:#ebf9df;--resource-rim:#568665}.resource-svg--wood-power-generation{--resource-bg:#3f4c2d;--resource-fill:#789053;--resource-line:#f1e4ad;--resource-rim:#647a43}.resource-svg--coal-power-generation{--resource-bg:#34383b;--resource-fill:#697276;--resource-line:#f4e8a5;--resource-rim:#5d6367}.resource-svg--oil-power-generation{--resource-bg:#303249;--resource-fill:#59618c;--resource-line:#fff0a6;--resource-rim:#4a5078}.resource-svg--clay{--resource-bg:#603327;--resource-fill:#c66f50;--resource-line:#ffd0b7;--resource-rim:#a6513a}.resource-svg--wool{--resource-bg:#4b4262;--resource-fill:#b8a8d1;--resource-line:#f2eaff;--resource-rim:#83749d}.resource-svg--copper{--resource-bg:#5c3020;--resource-fill:#cf7042;--resource-line:#ffd0ac;--resource-rim:#a94f2b}.resource-svg--salt{--resource-bg:#284e63;--resource-fill:#75bad4;--resource-line:#dff8ff;--resource-rim:#4d8ba7}.resource-svg--hops{--resource-bg:#334d20;--resource-fill:#78a846;--resource-line:#e4f6b3;--resource-rim:#5f8537}.resource-svg--flax{--resource-bg:#33496a;--resource-fill:#7398d1;--resource-line:#e3edff;--resource-rim:#5779aa}.resource-svg--iron{--resource-bg:#343e43;--resource-fill:#788b92;--resource-line:#e6f0f2;--resource-rim:#607279}.resource-svg--medicinal-herbs{--resource-bg:#214d3a;--resource-fill:#5dae7e;--resource-line:#d8f7e5;--resource-rim:#3e8963}.resource-svg--grapes{--resource-bg:#49305c;--resource-fill:#9764b8;--resource-line:#f0dcff;--resource-rim:#764992}.resource-svg--cotton{--resource-bg:#3a5261;--resource-fill:#dcebf0;--resource-line:#fff;--resource-rim:#7295a6}.resource-svg--coal{--resource-bg:#282c31;--resource-fill:#4b5158;--resource-line:#cbd2d8;--resource-rim:#5e666f}.resource-svg--spices{--resource-bg:#5b2d25;--resource-fill:#cb6548;--resource-line:#ffd0ae;--resource-rim:#9e4935}.resource-svg--sugar-cane{--resource-bg:#31512c;--resource-fill:#7fb15a;--resource-line:#e7f8b9;--resource-rim:#5e8d47}.resource-svg--silk{--resource-bg:#5a344d;--resource-fill:#ce7fa8;--resource-line:#ffe1f0;--resource-rim:#9e5d81}.resource-svg--quartz{--resource-bg:#35465f;--resource-fill:#86b8d7;--resource-line:#e4f7ff;--resource-rim:#668cac}.resource-svg--saltpeter{--resource-bg:#285154;--resource-fill:#62aca9;--resource-line:#dbffff;--resource-rim:#4b898b}.resource-svg--rubber{--resource-bg:#4e2931;--resource-fill:#a94f61;--resource-line:#ffd6dc;--resource-rim:#843e4e}.resource-svg--cocoa{--resource-bg:#4b3024;--resource-fill:#a96442;--resource-line:#f7d2af;--resource-rim:#805039}.resource-svg--oil{--resource-bg:#292b40;--resource-fill:#4f567e;--resource-line:#dce0ff;--resource-rim:#454a6b}:root[data-theme=dark] .resource-svg{filter:saturate(1.08)brightness(1.08)}.locked-resource-intro{color:#6d7d75;margin:0 0 .6rem;font-size:.78rem}.locked-resource-list{gap:.5rem;display:grid}.locked-resource{background:#f6f7f1;border:1px dashed #cdd8c8;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:.65rem;padding:.6rem .7rem;display:grid}.locked-resource>div{flex-direction:column;min-width:0;display:flex}.locked-resource strong{color:#3f514a;font-size:.86rem}.locked-resource small{color:#7a8a83;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.locked-resource>b{color:#6d571c;white-space:nowrap;background:#fff6d9;border-radius:999px;padding:.3rem .55rem;font-size:.68rem;font-weight:700}.locked-resource .resource-svg{filter:grayscale(.55);opacity:.8}.capital-card{color:#f7f1dc;background:linear-gradient(120deg,#183f48,#256477);border:1px solid #ffffff29;border-radius:18px;justify-content:space-between;align-items:center;gap:2rem;margin:0 0 2rem;padding:1.4rem 1.6rem;display:flex;box-shadow:0 14px 36px #1137422e}.capital-card>div:first-child{align-items:center;gap:1rem;display:flex}.capital-card h2{margin:.15rem 0;font-family:Georgia,serif}.capital-card small{color:#bfdae0}.capital-card__icon{color:#183f48;background:#e8b752;border-radius:50%;place-items:center;width:58px;height:58px;font-size:1.7rem;display:grid}.capital-card__stocks{flex-wrap:wrap;justify-content:flex-end;gap:.55rem;display:flex}.capital-card__stocks span,.capital-card__stocks em{background:#ffffff1a;border-radius:10px;padding:.55rem .8rem;font-style:normal}.capital-card__stocks i{color:#efc768;margin-right:.3rem;font-style:normal}.capital-card__open{color:#183f48;cursor:pointer;background:#f0c767;border:0;border-radius:9px;flex:none;padding:.68rem .85rem;font-weight:800}.island-card__title small{color:#7a8a83;margin-top:.25rem;font-size:.72rem;display:block}.capital-resource-strip{color:#dceced;background:#163d48;border-top:1px solid #ffffff1a;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.7rem 1.25rem;display:flex}.capital-resource-strip strong{color:#f0c767}.capital-resource-strip span{background:#ffffff14;border-radius:7px;padding:.25rem .55rem;font-size:.85rem}.capital-page{width:min(1240px,100% - 3rem);margin:0 auto;padding:2.5rem 0 5rem}.capital-hero{color:#f7f4e9;background:radial-gradient(circle at 78% 15%,#efc56840,#0000 27%),linear-gradient(135deg,#173e38,#245e53);border-radius:22px;justify-content:space-between;align-items:center;gap:2rem;padding:2rem;display:flex;box-shadow:0 18px 42px #143a302e}.capital-hero h1{margin:.2rem 0 .35rem;font:700 clamp(2rem,4vw,3.35rem)/1.05 Fraunces,Georgia,serif}.capital-hero p{color:#d2e2da;max-width:650px;margin:.25rem 0}.capital-population-meter{background:#ffffff1a;border:1px solid #ffffff29;border-radius:16px;min-width:230px;padding:1rem 1.15rem;display:grid}.capital-population-meter span,.capital-population-meter small{color:#d7e6df}.capital-population-meter strong{color:#f4cb70;margin:.1rem 0;font:700 2.3rem/1 Fraunces,Georgia,serif}.capital-population-meter progress{accent-color:#e7b957;width:100%;height:8px;margin-top:.75rem}.capital-summary-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin:1.25rem 0;display:grid}.capital-summary-grid article{background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 8px 22px var(--shadow);border-radius:14px;align-items:center;gap:.85rem;padding:1rem 1.1rem;display:flex}.capital-summary-grid article div{gap:.08rem;display:grid}.capital-summary-grid small,.capital-summary-grid span{color:var(--muted);font-size:.75rem}.capital-summary-grid strong{color:var(--forest-800)}.capital-summary-grid article.is-missing{border-color:#d8a293}.capital-summary-grid article.is-missing strong{color:#a4543f}.capital-summary-icon{background:var(--sage-100);border-radius:11px;flex:none;place-items:center;width:42px;height:42px;display:grid;font-size:1.3rem!important}.capital-limit-alert,.capital-success,.capital-empty{border-radius:12px;margin:1rem 0;padding:1rem 1.15rem}.capital-limit-alert{color:#77571d;background:#fff5d9;border:1px solid #ead28f}.capital-limit-alert ul{margin:.45rem 0 0;padding-left:1.2rem}.capital-limit-alert li+li{margin-top:.25rem}.capital-success{color:#216344;background:#e5f4e9;border:1px solid #b6d8c0}.capital-empty{color:var(--muted);background:var(--surface-soft);border:1px dashed var(--border)}.capital-resources-section,.capital-needs-section,.capital-buildings-section,.capital-catalog-section{background:var(--paper);border:1px solid var(--border);box-shadow:0 10px 28px var(--shadow);border-radius:18px;margin-top:1.5rem;padding:1.4rem}.capital-section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.capital-section-heading h2{color:var(--forest-900);margin:.15rem 0 0;font:700 1.5rem Fraunces,Georgia,serif}.capital-section-heading>p{max-width:520px;color:var(--muted);text-align:right;margin:0;font-size:.82rem}.capital-resource-groups{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.capital-resource-groups>article{background:var(--surface-soft);border:1px solid var(--border);border-radius:13px;padding:1rem}.capital-resource-groups h3{color:var(--forest-800);margin:0}.capital-resource-groups small{color:var(--muted)}.capital-resource-groups article>div:last-child{flex-wrap:wrap;gap:.55rem;margin-top:.85rem;display:flex}.capital-resource-groups article>div:last-child span{background:var(--surface-raised);border:1px solid var(--border);border-radius:9px;align-items:center;gap:.35rem;padding:.45rem .65rem;font-size:.8rem;display:flex}.capital-resource-groups em{color:var(--muted);font-size:.8rem}.capital-needs-grid{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}.capital-needs-grid article{border:1px solid var(--border);border-radius:12px;align-items:center;gap:.7rem;padding:.85rem;display:flex}.capital-needs-grid article>.capital-need-icon{flex:none;width:58px;height:58px}.capital-needs-grid h3{margin:0;font-size:.92rem}.capital-needs-grid strong,.capital-needs-grid small{display:block}.capital-needs-grid small{color:var(--muted);font-size:.68rem}.capital-needs-grid .is-satisfied{background:#edf8f0;border-color:#9ccbad}.capital-needs-grid .is-missing{background:#fff0ec;border-color:#e1ad9e}.capital-needs-grid .is-future{opacity:.72}.capital-need-icon{--need-outline:#27483d;--need-halo:#e7f0e9;--need-medallion:#f8fbf8;filter:drop-shadow(0 3px 3px #1f3e321f);display:block;overflow:visible}.capital-need-icon path,.capital-need-icon circle{stroke:var(--need-outline);stroke-width:1.65px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.capital-need-icon__halo{fill:var(--need-halo);stroke:none!important}.capital-need-icon__medallion{fill:var(--need-medallion);stroke:#27483d26!important;stroke-width:1px!important}.capital-need-icon .need-detail{fill:none;stroke:var(--need-outline);stroke-width:1.1px;opacity:.65}.capital-need-icon--religion{--need-halo:#f4ead0;--need-medallion:#fffaf0}.capital-need-icon .need-religion-rays{fill:none;stroke:#c2933a}.capital-need-icon .need-religion-building{fill:#f0dfb8}.capital-need-icon .need-religion-roof{fill:#76938a}.capital-need-icon .need-religion-door{fill:#795641}.capital-need-icon .need-religion-cross{fill:none;stroke:#aa7928;stroke-width:2.2px}.capital-need-icon--police{--need-halo:#dceaf6;--need-medallion:#f5f9fd}.capital-need-icon .need-police-rays{fill:none;stroke:#6a91b2}.capital-need-icon .need-police-shield{fill:#477ba4;stroke:#294e6d}.capital-need-icon .need-police-badge{fill:#f5f7f2;stroke:#294e6d;stroke-width:1.2px}.capital-need-icon .need-police-star{fill:#f1c75b;stroke:#9a7421;stroke-width:.8px}.capital-need-icon--fire-safety{--need-halo:#fae2d7;--need-medallion:#fff8f3}.capital-need-icon .need-fire-shield{fill:#bd6554;stroke:#743d35}.capital-need-icon .need-fire-flame{fill:#f39a45;stroke:#923e2e}.capital-need-icon .need-fire-core{fill:#ffe188;stroke:#b86132;stroke-width:1px}.capital-need-icon .need-fire-spark{fill:none;stroke:#d16b43}.capital-need-icon--health{--need-halo:#dff0e9;--need-medallion:#f6fbf9}.capital-need-icon .need-health-pulse{fill:none;stroke:#4b9886;stroke-width:2px}.capital-need-icon .need-health-heart{fill:#e26d69;stroke:#8c3e43}.capital-need-icon .need-health-cross{fill:#fff7ed;stroke:none}.capital-need-icon .need-health-shine{fill:none;stroke:#70aa9a}.capital-need-icon--education{--need-halo:#e6e2f6;--need-medallion:#f8f6ff}.capital-need-icon .need-education-rays{fill:none;stroke:#8a7fb5}.capital-need-icon .need-education-book{fill:#f6f3ea;stroke:#6f6494}.capital-need-icon .need-education-spine{fill:none;stroke:#6f6494;stroke-width:1.6px}.capital-need-icon .need-education-cap{fill:#5d5289;stroke:#3d3560}.capital-need-icon .need-education-tassel{fill:none;stroke:#e0b352;stroke-width:2px}.capital-need-icon .need-generic{fill:#dbe8df}.capital-need-icon .need-generic-mark{fill:none;stroke-width:2px}.capital-housing-status{gap:.55rem;margin-top:.75rem;display:grid}.capital-housing-status article{background:var(--surface-raised);border:1px solid var(--border);border-radius:10px;gap:.6rem;padding:.75rem .9rem;display:grid}.capital-housing-status__title{align-items:center;gap:.6rem;display:flex}.capital-housing-status__title .capital-building-icon{flex:none;width:46px;height:46px}.capital-housing-status h5{color:var(--forest-800);margin:0;font-size:.9rem}.capital-housing-status small{color:var(--muted);font-size:.72rem}.capital-housing-status__lines{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.capital-housing-status__lines>div{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.capital-housing-status__lines>div>span{background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;align-items:center;gap:.3rem;padding:.28rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.capital-housing-status__lines>div>span.capital-housing-status__label{width:100%;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;padding:0;font-size:.66rem;font-weight:750}.capital-housing-status__lines .capital-need-icon{width:22px;height:22px}.capital-housing-status__lines b{color:var(--forest-700);font-weight:750}.capital-housing-status__lines em{color:var(--muted);font-size:.66rem;font-style:normal;font-weight:600}.capital-housing-status__lines .is-satisfied{background:#edf8f0;border-color:#9ccbad}.capital-housing-status__lines .is-missing{background:#fff0ec;border-color:#e1ad9e}.capital-district-population{text-align:right;gap:.1rem;display:grid}.capital-district-population strong{color:var(--forest-700);white-space:nowrap}.capital-district-population small{color:var(--muted);font-size:.72rem}.capital-district-satisfaction{background:var(--surface-raised);border:1px solid var(--border);border-radius:12px;gap:.6rem;padding:.9rem 1rem;display:grid}.capital-district-satisfaction h4{color:var(--forest-900);margin:0;font-size:.95rem}.capital-district-consumption{gap:.4rem;margin-top:.4rem;display:grid}.capital-district-consumption h5{color:var(--forest-800);margin:0;font-size:.85rem}.capital-district-consumption table{border-collapse:collapse;width:100%;font-size:.74rem}.capital-district-consumption th{color:var(--muted);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:.35rem .5rem;font-size:.64rem}.capital-district-consumption tbody th{border-top:1px solid var(--border);color:var(--forest-800);letter-spacing:normal;text-transform:none;align-items:center;gap:.35rem;font-size:.74rem;display:flex}.capital-district-consumption td{border-top:1px solid var(--border);color:var(--muted);padding:.35rem .5rem}.capital-district-consumption tr.is-missing th,.capital-district-consumption tr.is-missing td{color:#a4543f}.capital-district-consumption>small{color:var(--muted);font-size:.68rem}.capital-buildings-grid,.capital-catalog-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.85rem;display:grid}.capital-buildings-grid>article,.capital-catalog-grid>article{background:var(--surface-raised);border:1px solid var(--border);border-radius:13px;flex-direction:column;padding:1rem;display:flex}.capital-building-title{align-items:center;gap:.65rem;display:flex}.capital-building-title>.capital-building-icon{width:62px;height:62px}.capital-building-count{color:var(--forest-800);background:var(--surface-soft);border:1px solid var(--border);white-space:nowrap;border-radius:999px;margin-left:auto;padding:.3rem .55rem;font-size:.78rem}.capital-building-title h3,.capital-catalog-grid h3{color:var(--forest-800);margin:.1rem 0}.capital-building-title small,.capital-buildings-grid article>p,.capital-catalog-grid article>p{color:var(--muted);font-size:.78rem}.capital-upgrade{border-top:1px solid var(--border);gap:.4rem;margin-top:auto;padding-top:.75rem;display:grid}.capital-upgrade>p,.capital-catalog-cost{flex-wrap:wrap;gap:.5rem;margin:.15rem 0;display:flex}.capital-upgrade>p span,.capital-catalog-cost span{align-items:center;gap:.25rem;font-size:.75rem;display:inline-flex}.capital-upgrade>p>small{width:100%;color:var(--muted);font-weight:700}.capital-upgrade-quantity{color:var(--muted);justify-content:space-between;align-items:center;gap:.75rem;font-size:.78rem;font-weight:700;display:flex}.capital-upgrade-quantity input{width:4.5rem;color:var(--forest-900);background:var(--surface-raised);border:1px solid var(--border);border-radius:7px;padding:.35rem .5rem}.capital-buildings-grid button,.capital-catalog-grid button{color:#fff;background:var(--forest-700);cursor:pointer;border:0;border-radius:8px;margin-top:auto;padding:.65rem .75rem;font-weight:750}.capital-buildings-grid button:disabled,.capital-catalog-grid button:disabled{cursor:not-allowed;opacity:.5}.capital-max-level{width:max-content;color:var(--muted);background:var(--surface-soft);border-radius:999px;margin-top:auto;padding:.3rem .55rem;font-size:.68rem}.capital-catalog-grid>article{gap:.5rem}.capital-catalog-icon{width:82px;height:82px;margin:-.15rem 0 .1rem}.capital-catalog-grid>article>p{min-height:2.3em;margin:.15rem 0}.capital-building-detail{color:var(--muted);margin:.15rem 0;font-size:.72rem}.capital-districts-section{background:var(--paper);border:1px solid var(--border);box-shadow:0 10px 28px var(--shadow);border-radius:18px;margin-top:1.5rem;padding:1.4rem}.capital-district{background:var(--surface-soft);border:1px solid var(--border);border-radius:15px;gap:.9rem;margin-top:1rem;padding:1.1rem;display:grid}.capital-district>header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.capital-district>header h3{color:var(--forest-800);margin:0}.capital-district>header small{color:var(--muted);font-size:.78rem}.capital-district>header strong{color:var(--forest-700);white-space:nowrap}.capital-district-needs{flex-wrap:wrap;gap:.5rem;display:flex}.capital-district-needs span{background:var(--surface-raised);border:1px solid var(--border);border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}.capital-district-needs .capital-need-icon{width:26px;height:26px}.capital-district-needs .is-satisfied{color:var(--forest-700)}.capital-district-needs .is-missing{color:#a4543f;border-color:#d8a293}.capital-buildings-grid>article.is-unfunded{background:var(--surface-soft);border-color:#d8a293}.capital-district-new{background:var(--surface-raised);border:1px dashed var(--border);border-radius:15px;justify-content:space-between;align-items:center;gap:1.2rem;margin-top:1rem;padding:1.1rem;display:flex}.capital-district-new h3{color:var(--forest-800);margin:0 0 .25rem}.capital-district-new p{color:var(--muted);margin:0 0 .4rem;font-size:.8rem}.capital-district-new button{color:#fff;background:var(--forest-700);cursor:pointer;white-space:nowrap;border:0;border-radius:8px;padding:.65rem .9rem;font-weight:750}.capital-district-new button:disabled{cursor:not-allowed;opacity:.5}.capital-building-icon{--icon-outline:#24483d;--icon-sky:#eaf2df;--icon-ground:#a8c77f;filter:drop-shadow(0 4px 4px #1f3e3221);flex:none;width:64px;height:64px;display:block;overflow:visible}.capital-building-icon path,.capital-building-icon circle{stroke:var(--icon-outline);stroke-width:1.55px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.capital-building-icon__sky{fill:var(--icon-sky);stroke:#fff!important;stroke-width:2px!important}.capital-building-icon__ground{fill:var(--icon-ground);stroke:none!important}.capital-building-icon .icon-shadow{fill:#2741362b;stroke:none}.capital-building-icon .icon-detail{fill:none;stroke:var(--icon-outline);stroke-width:1.15px;opacity:.72}.capital-summary-building-icon{filter:none;width:48px;height:48px;margin:-3px}.capital-building-icon--worker-hut{--icon-sky:#edf3df;--icon-ground:#9fc278}.capital-building-icon .hut-wall{fill:#e8bd78}.capital-building-icon .hut-side{fill:#c79155}.capital-building-icon .hut-roof{fill:#c86d48}.capital-building-icon .hut-roof-line{fill:none;stroke:#f2b274}.capital-building-icon .hut-chimney{fill:#8d543e}.capital-building-icon .hut-door{fill:#78513b}.capital-building-icon .hut-handle{fill:#f4d37e;stroke:none}.capital-building-icon .hut-window{fill:#bde2dc}.capital-building-icon .hut-grass{fill:none;stroke:#4f7c4d}.capital-building-icon--church{--icon-sky:#e8f1ef;--icon-ground:#91bea2}.capital-building-icon .church-body,.capital-building-icon .church-tower{fill:#f2e5c7}.capital-building-icon .church-apse{fill:#dccda9}.capital-building-icon .church-roof{fill:#527f79}.capital-building-icon .church-spire{fill:#d1a953}.capital-building-icon .church-cross{fill:none;stroke:#9a6d22;stroke-width:2px}.capital-building-icon .church-door{fill:#76523d}.capital-building-icon .church-window{fill:#83b9bd}.capital-building-icon--police-station{--icon-sky:#e7eff9;--icon-ground:#8eb69e}.capital-building-icon .police-body{fill:#dce7ed}.capital-building-icon .police-side{fill:#b7cbd7}.capital-building-icon .police-roof{fill:#315f86}.capital-building-icon .police-trim{fill:#6b95b5}.capital-building-icon .police-door{fill:#294d6a}.capital-building-icon .police-window{fill:#91c4d8}.capital-building-icon .police-sign{fill:#f4f7f5}.capital-building-icon .police-shield{fill:#3e77a2;stroke-width:1px}.capital-building-icon .police-star{fill:#f5cf63;stroke:none}.capital-building-icon--fire-station{--icon-sky:#fff0e5;--icon-ground:#9cbd86}.capital-building-icon .fire-body{fill:#d8795f}.capital-building-icon .fire-side{fill:#b85e4d}.capital-building-icon .fire-roof{fill:#81463d}.capital-building-icon .fire-trim{fill:#f0be75}.capital-building-icon .fire-garage{fill:#f3e3cf}.capital-building-icon .fire-garage-line{fill:none;stroke:#b86050}.capital-building-icon .fire-door{fill:#754941}.capital-building-icon .fire-sign{fill:#fff4dc}.capital-building-icon .fire-flame{fill:#ef7142;stroke:#9b3e2a;stroke-width:1px}.capital-building-icon--hospital{--icon-sky:#e9f5f1;--icon-ground:#8fbea2}.capital-building-icon .hospital-wing{fill:#dcebe7}.capital-building-icon .hospital-body{fill:#f4f2e9}.capital-building-icon .hospital-roof{fill:#4e8e86}.capital-building-icon .hospital-cross-bg{fill:#fff}.capital-building-icon .hospital-cross{fill:#d95752;stroke:none}.capital-building-icon .hospital-window{fill:#85bcc0}.capital-building-icon .hospital-door{fill:#4f7e7b}.capital-building-icon--school{--icon-sky:#eeecf8;--icon-ground:#9db08f}.capital-building-icon .school-body{fill:#f3efe2}.capital-building-icon .school-wing{fill:#ddd6ee}.capital-building-icon .school-roof{fill:#6f6494}.capital-building-icon .school-belfry{fill:#f3efe2;stroke:#6f6494;stroke-width:1px}.capital-building-icon .school-bell{fill:#e0b352}.capital-building-icon .school-door{fill:#7b5c46}.capital-building-icon .school-window{fill:#9bb8d8}.capital-building-icon .school-clock{fill:#fff8ea;stroke:#6f6494;stroke-width:1px}.capital-building-icon .generic-building{fill:#d9dfd5}.capital-building-icon .generic-roof{fill:#6c8e7d}.capital-building-icon .generic-door{fill:#52695e}@media (width<=1100px){.capital-summary-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.capital-needs-grid{grid-template-columns:repeat(2,1fr)}.capital-summary-grid{grid-template-columns:1fr}.capital-district-new{flex-direction:column;align-items:flex-start}}@media (width<=680px){.capital-page{width:min(100% - 1.25rem,1240px);padding-top:1rem}.capital-hero,.capital-section-heading{flex-direction:column;align-items:flex-start}.capital-population-meter{box-sizing:border-box;width:100%}.capital-resource-groups,.capital-needs-grid{grid-template-columns:1fr}.capital-section-heading>p{text-align:left}.capital-housing-status__lines{grid-template-columns:1fr}.capital-district>header{flex-direction:column;align-items:flex-start}.capital-district-population{text-align:left}.capital-district-consumption{overflow-x:auto}}.fleet-page{width:min(1240px,100% - 3rem);margin:0 auto;padding:2.5rem 0 5rem}.fleet-section{background:#fffdf7;border:1px solid #dce5dc;border-radius:18px;margin-top:2rem;padding:1.5rem;box-shadow:0 10px 30px #27463a14}.ship-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.ship-card{background:#fff;border:1px solid #dce5dc;border-radius:14px;grid-template-columns:auto 1fr;gap:.8rem;padding:1.15rem;display:grid;position:relative;overflow:hidden}.ship-card__icon{background:#dceff0;border-radius:12px;grid-row:1/3;place-items:center;width:48px;height:48px;font-size:1.5rem;display:grid}.ship-card h3{color:#244c40;margin:.25rem 0 .1rem}.ship-card p{color:#6d7d75;margin:0;font-size:.84rem}.ship-card>small{color:#6d7d75;grid-column:1/-1}.ship-card dl{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:.4rem;margin:.4rem 0;display:grid}.ship-card dl div{text-align:center;background:#f2f6f1;border-radius:8px;padding:.45rem}.ship-card dt{color:#78877f;text-transform:uppercase;font-size:.68rem}.ship-card dd{color:#244c40;margin:.15rem 0 0;font-weight:700}.ship-card button{color:#fff;background:#236a59;border:0;border-radius:9px;grid-column:1/-1;padding:.7rem;font-weight:700}.ship-card button:disabled{background:#a9b5ae}.ship-card .ship-card__detach{color:#8c3e36;cursor:pointer;background:#fff;border:1px solid #ddbbb7}.ship-card .ship-card__detach:disabled{opacity:.55}.ship-status{color:#25634e;text-transform:uppercase;background:#dbf0e5;border-radius:999px;padding:.2rem .45rem;font-size:.67rem;font-weight:800;display:inline-block}.ship-status--in_transit{color:#275d76;background:#dceef7}.cargo-pill{color:#795a15;background:#fff3d6;border-radius:999px;grid-column:1/-1;width:max-content;padding:.3rem .55rem;font-size:.75rem}.ship-price{text-align:center;background:#fff6d9;border-radius:9px;grid-column:1/-1;padding:.55rem .7rem;color:#6d571c!important}.ship-price strong{color:#7f5b08}.ship-upkeep{color:#6d7d75;text-align:center;grid-column:1/-1;margin:.35rem 0 0;font-size:.76rem}.ship-card__unfunded{color:#8c3e36;background:#fbeeec;border:1px solid #e3c4c0;border-radius:8px;grid-column:1/-1;padding:.45rem .6rem;font-size:.74rem}.route-form{grid-template-columns:repeat(3,1fr);align-items:end;gap:.85rem;display:grid}.route-form label{color:#617269;flex-direction:column;gap:.3rem;font-size:.75rem;font-weight:700;display:flex}.route-form input,.route-form select{box-sizing:border-box;color:#244c40;background:#fff;border:1px solid #cdd9d1;border-radius:8px;width:100%;padding:.68rem .7rem}.route-form button{color:#fff;background:#236a59;border:0;border-radius:8px;padding:.72rem 1rem;font-weight:750}.route-distance{color:#4e7468;margin:0;font-size:.8rem}.route-list{gap:1.15rem;margin-top:1rem;display:grid}.route-primary-action,.route-card__actions button,.route-editor button{color:#fff;cursor:pointer;background:#236a59;border:0;border-radius:8px;padding:.68rem .9rem;font-weight:700}.route-primary-action:disabled,.route-card__actions button:disabled,.route-editor button:disabled{cursor:not-allowed;opacity:.48}.route-list>.route-card{background:#fff;border:1px solid #d7e4dc;border-radius:15px;overflow:hidden}.route-card__header{background:#f4f8f4;border-bottom:1px solid #dce7df;align-items:center;gap:.8rem;padding:1rem 1.15rem;display:flex}.route-card__identity{flex:1;align-items:center;gap:.75rem;min-width:220px;display:flex}.route-card__identity>span{color:#21614f;background:#dcece3;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;font-size:1.2rem;display:grid}.route-card__identity>div{flex-direction:column;min-width:0;display:flex}.route-card__identity strong{color:#244c40;font-size:1.04rem}.route-card__identity small{color:#72837a;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.route-card__header>b{color:#287257;text-transform:uppercase;font-size:.75rem}.route-card__actions{flex:none;gap:.45rem;display:flex}.route-card__actions button:last-child{color:#285b4e;background:#fff;border:1px solid #b9cfc4}.route-card__actions .route-delete{color:#8c3e36;background:#fff;border:1px solid #ddbbb7}.route-ship-assignment{background:#edf5f0;border-bottom:1px solid #dce7df;justify-content:flex-end;align-items:end;gap:.8rem;padding:.8rem 1.15rem;display:flex}.route-ship-assignment label{color:#547066;flex-direction:column;gap:.3rem;min-width:300px;font-size:.72rem;font-weight:750;display:flex}.route-ship-assignment select{color:#244c40;background:#fff;border:1px solid #bfd1c6;border-radius:8px;padding:.6rem .7rem}.route-ship-assignment>div{gap:.45rem;display:flex}.route-ship-assignment button{color:#fff;cursor:pointer;background:#236a59;border:0;border-radius:8px;padding:.62rem .8rem;font-weight:700}.route-ship-assignment button.secondary{color:#355f53;background:#fff;border:1px solid #bfd1c6}.route-ship-assignment button:disabled{cursor:not-allowed;opacity:.5}.route-card__header .route-paused{color:#8a6124}.route-map{color:#255c65;background:radial-gradient(circle at 25% 25%,#fffc,#0000 32%),linear-gradient(145deg,#e5f2ef,#d7ecec);padding:.65rem 1rem .35rem;position:relative}.route-map svg{width:100%;height:auto;max-height:260px;display:block}.route-map__line{fill:none;stroke:#4d8d82;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.route-map marker path{fill:#4d8d82}.route-map__stop circle{fill:#fffdf7;stroke:#2e735e;stroke-width:3px}.route-map__stop-number{fill:#245746;font-size:13px;font-weight:800}.route-map__label{fill:#244c40;paint-order:stroke;stroke:#e1f0ed;stroke-width:5px;stroke-linejoin:round;font-size:13px;font-weight:700}.route-map__ship circle{fill:#f4c85e;stroke:#8f6a16;stroke-width:2px}.route-map__ship text{font-size:18px}.route-map>p{color:#3e6966;align-items:center;gap:.35rem;margin:-.1rem 0 .25rem;font-size:.75rem;display:flex}.route-card__details{grid-template-columns:minmax(0,1.25fr) minmax(280px,.8fr);gap:1.2rem;padding:1.15rem;display:grid}.route-card__details h3{color:#244c40;justify-content:space-between;align-items:center;margin:0 0 .75rem;font-family:DM Sans,sans-serif;font-size:.9rem;display:flex}.route-card__details h3>span{color:#2e6253;background:#e4eee8;border-radius:999px;place-items:center;min-width:24px;height:24px;font-size:.72rem;display:grid}.route-operations>div{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.65rem;display:grid}.route-operations article{background:#f5f8f4;border:1px solid #e0e9e2;border-radius:10px;padding:.75rem}.route-operations article>header{border-bottom:1px solid #dfe8e1;align-items:center;gap:.5rem;padding-bottom:.55rem;display:flex}.route-operations article>header span{color:#fff;background:#2d715e;border-radius:50%;place-items:center;width:25px;height:25px;font-size:.72rem;font-weight:800;display:grid}.route-operations article>header strong{color:#31584c;font-size:.82rem}.route-operations ul{gap:.4rem;margin:.6rem 0 0;padding:0;list-style:none;display:grid}.route-operations li{color:#48675e;justify-content:space-between;align-items:center;gap:.5rem;font-size:.76rem;display:flex}.transfer-action{letter-spacing:.02em;text-transform:uppercase;border-radius:999px;padding:.18rem .42rem;font-size:.65rem}.transfer-action--load{color:#26624e;background:#dcefe5}.transfer-action--unload{color:#805921;background:#f8e8c7}.route-operations .route-operations__empty{color:#7b8781;justify-content:flex-start;font-style:italic}.route-ships{min-width:0}.route-ships>article{background:#f8f5eb;border:1px solid #e7dfca;border-radius:10px;gap:.55rem;padding:.8rem;display:grid}.route-ships>article+article{margin-top:.6rem}.route-ship__heading{align-items:center;gap:.55rem;display:flex}.route-ship__heading>span{color:#285e67;background:#dceff0;border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.route-ship__heading>div{flex-direction:column;flex:1;min-width:0;display:flex}.route-ship__heading strong{color:#2d4e45;font-size:.85rem}.route-ship__heading small{color:#728078;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.route-ship__heading .ship-status{text-overflow:ellipsis;white-space:nowrap;max-width:145px;overflow:hidden}.route-ship__capacity{color:#67766f;justify-content:space-between;gap:.6rem;font-size:.7rem;display:flex}.route-ship__capacity strong{color:#365a4f}.route-ship__bar{background:#e1dfd3;border-radius:999px;height:6px;overflow:hidden}.route-ship__bar span{border-radius:inherit;background:#d29a34;height:100%;display:block}.route-ship__cargo{flex-wrap:wrap;gap:.35rem;display:flex}.route-ship__cargo span{color:#6b5724;background:#fff3d6;border-radius:6px;padding:.22rem .4rem;font-size:.68rem}.route-ship__cargo em{color:#7b817b;font-size:.72rem}.route-hint{color:#74837c;margin:1rem 0 0;font-size:.82rem}.route-editor__identity{grid-template-columns:2fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.route-editor label{color:#617269;flex-direction:column;gap:.35rem;font-size:.75rem;font-weight:700;display:flex}.route-editor input,.route-editor select{box-sizing:border-box;color:#244c40;background:#fff;border:1px solid #cdd9d1;border-radius:8px;width:100%;padding:.65rem .7rem}.route-editor__preview{background:#f7faf7;border:1px solid #cfe0d7;border-radius:14px;margin:1rem 0;overflow:hidden}.route-editor__preview>header{border-bottom:1px solid #dce7df;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.route-editor__preview>header p{margin:0 0 .15rem}.route-editor__preview>header h3{color:#244c40;margin:0;font-family:DM Sans,sans-serif}.route-editor__preview>header small{color:#687c72;font-weight:700}.route-editor__assigned-ships{background:#f7faf7;border:1px solid #d6e3da;border-radius:12px;margin:1rem 0;padding:1rem}.route-editor__assigned-ships>div:first-child{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.route-editor__assigned-ships h3{color:#31584c;margin:0;font-family:DM Sans,sans-serif;font-size:.95rem}.route-editor__assigned-ships p{color:#6d7d75;margin:.2rem 0;font-size:.76rem}.route-editor__assigned-ships>div:last-child{gap:.5rem;margin-top:.75rem;display:grid}.route-editor__assigned-ships article{background:#fff;border:1px solid #e0e9e2;border-radius:9px;grid-template-columns:auto 1fr auto;align-items:center;gap:.65rem;padding:.65rem .75rem;display:grid}.route-editor__assigned-ships article>span{font-size:1.2rem}.route-editor__assigned-ships article>div{flex-direction:column;min-width:0;display:flex}.route-editor__assigned-ships article strong{color:#31584c;font-size:.84rem}.route-editor__assigned-ships article small{color:#718078;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.route-editor__assigned-ships .route-detach{color:#8c3e36;background:#fff;border:1px solid #ddbbb7;padding:.5rem .7rem}.route-stops{gap:.8rem;display:grid}.route-stop{background:#f7faf7;border:1px solid #d6e3da;border-radius:12px;padding:1rem}.route-stop>header{grid-template-columns:auto minmax(220px,1fr) auto;align-items:end;gap:.8rem;display:grid}.route-stop>header>span{color:#fff;background:#2d715e;border-radius:50%;place-items:center;width:36px;height:36px;font-weight:800;display:grid}.route-stop .route-remove{color:#8c3e36;background:#fff;border:1px solid #ddbbb7}.route-stop__resources{color:#617269;background:#edf4ef;border-radius:8px;align-items:flex-start;gap:.75rem;margin:.75rem 0 0 44px;padding:.55rem .65rem;font-size:.72rem;display:flex}.route-stop__resources>strong{color:#3f6559;flex:none;padding-top:.15rem}.route-stop__resources>div{flex-wrap:wrap;gap:.35rem;display:flex}.route-stop__resources span{color:#4e675f;background:#fff;border:1px solid #d9e5dd;border-radius:999px;align-items:center;gap:.25rem;padding:.16rem .38rem;display:inline-flex}.route-stop__resources .resource-svg{width:16px;height:16px}.route-stop__resources em{color:#7b8781}.route-transfers{gap:.45rem;margin:1rem 0 0 44px;display:grid}.route-transfer{grid-template-columns:1fr 1fr .75fr auto;gap:.45rem;display:grid}.route-transfer--all{grid-template-columns:1fr 2fr auto;align-items:center}.resource-select{min-width:0;position:relative}.resource-select__trigger{box-sizing:border-box;color:#244c40;cursor:pointer;width:100%;font:inherit;text-align:left;background:#fff;border:1px solid #cdd9d1;border-radius:8px;align-items:center;gap:.45rem;padding:.55rem .6rem;font-size:.86rem;display:flex}.resource-select__trigger:disabled{opacity:.55;cursor:not-allowed}.resource-select__trigger>span:first-of-type{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.resource-select__chevron{color:#7a8a83;flex:none;font-size:.8rem;line-height:1}.resource-select__menu{z-index:20;background:#fff;border:1px solid #cdd9d1;border-radius:10px;min-width:100%;max-height:16rem;padding:.25rem;display:grid;position:absolute;top:calc(100% + .3rem);left:0;overflow-y:auto;box-shadow:0 12px 30px #20534529}.resource-select__menu button{color:#244c40;cursor:pointer;width:100%;font:inherit;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:.5rem;padding:.45rem .5rem;font-size:.84rem;display:flex}.resource-select__menu button:hover,.resource-select__menu button:focus-visible{background:#eef4ee;outline:none}.resource-select__menu button.is-selected{color:#1f5646;background:#e3efe6;font-weight:700}.route-transfer-actions{flex-wrap:wrap;gap:.45rem;display:flex}.route-transfer>button{color:#8c3e36;background:#fff;border:1px solid #ddbbb7;padding:.45rem .7rem;font-size:1.1rem}.route-editor .route-add-transfer{color:#2c6556;background:#e6f0ea;justify-self:start;padding:.48rem .7rem}.route-editor .route-add-stop{color:#2c6556;background:#e6f0ea;margin-top:.8rem}.route-cargo-warning{color:#7c541b;background:#fff2d8;border-left:4px solid #dcaa4d;border-radius:6px;padding:.75rem .9rem;font-size:.82rem}.route-editor__actions{justify-content:flex-end;gap:.6rem;margin-top:1rem;display:flex}.route-editor__actions .secondary{color:#355f53;background:#edf3ef}.check-label{align-items:center;padding-bottom:.65rem;flex-direction:row!important}.check-label input{width:auto}@media (width<=800px){.capital-card{flex-direction:column;align-items:flex-start}.capital-card__stocks{justify-content:flex-start}.route-form,.route-editor__identity{grid-template-columns:1fr}.route-stop>header{grid-template-columns:auto 1fr}.route-stop .route-remove{grid-column:1/-1}.route-transfers{margin-left:0}.route-stop__resources{flex-direction:column;gap:.4rem;margin-left:0}.route-transfer{grid-template-columns:1fr 1fr}.route-editor__preview>header,.route-editor__assigned-ships>div:first-child{flex-direction:column;align-items:flex-start}.route-editor__assigned-ships article{grid-template-columns:auto 1fr}.route-editor__assigned-ships article button{grid-column:1/-1}.route-card__header{flex-wrap:wrap;align-items:flex-start}.route-card__header>b{margin-top:.65rem}.route-card__actions{width:100%}.route-card__actions button{flex:1}.route-ship-assignment{flex-direction:column;align-items:stretch}.route-ship-assignment label{min-width:0}.route-ship-assignment>div button{flex:1}.route-card__details{grid-template-columns:1fr}.route-map{padding-inline:.35rem}}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--ink);background:var(--cream);margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #d99f3773}.auth-shell{grid-template-columns:minmax(480px,1.08fr) minmax(480px,.92fr);min-height:100vh;display:grid}.auth-story{color:#f9f6e9;background:radial-gradient(circle at 78% 12%,#ffe9a221,#0000 25%),linear-gradient(146deg,#1e5849 0%,#153e33 62%,#102f28 100%);min-height:100vh;display:flex;position:relative;overflow:hidden}.auth-story:before{content:"";opacity:.09;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");position:absolute;inset:0}.auth-story__content{z-index:2;width:min(660px,82%);margin:0 auto;padding:clamp(38px,6vh,74px) 0 360px;position:relative}.brand{color:inherit;letter-spacing:-.04em;align-items:center;gap:12px;font-family:Fraunces,Georgia,serif;font-size:1.65rem;font-weight:600;display:inline-flex}.brand__mark{fill:none;stroke:#e6b453;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;width:42px;height:42px}.brand--compact{color:var(--forest-900);font-size:1.35rem}.brand--compact .brand__mark{width:34px;height:34px}.eyebrow{color:#d9a847;letter-spacing:.18em;text-transform:uppercase;margin:0 0 12px;font-size:.72rem;font-weight:700}.auth-story__content>.eyebrow{margin-top:clamp(60px,9vh,110px)}.auth-story h1{letter-spacing:-.055em;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(3.7rem,6vw,6rem);font-weight:600;line-height:.96}.auth-story h1 em{color:#d8c98f;font-weight:inherit}.story-copy{color:#f9f6e9ba;max-width:540px;margin:28px 0 36px;font-size:1.03rem;line-height:1.72}.story-features{gap:clamp(20px,3vw,42px);margin:0;padding:0;list-style:none;display:flex}.story-features li{color:#f9f6e999;align-items:center;gap:11px;font-size:.76rem;line-height:1.4;display:flex}.story-features svg{fill:none;stroke:#d6a746;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;flex:none;width:31px;height:31px}.story-features strong{color:#f9f6e9;font-size:.83rem;font-weight:600;display:block}.island-art{z-index:1;height:360px;position:absolute;bottom:25px;left:0;right:-2%}.island-art>svg{width:min(760px,98%);height:100%;position:absolute;bottom:0;right:0}.sun{background:radial-gradient(circle,#f2cd7c33,#f2cd7c05 65%);border:1px solid #e9c26e33;border-radius:50%;width:71px;height:71px;position:absolute;top:23px;right:19%;box-shadow:0 0 50px #e8c36f1f}.cloud{background:#ffffff1f;width:90px;height:1px;position:absolute}.cloud:before,.cloud:after{content:"";border:1px solid #ffffff1f;border-bottom:0;border-radius:30px 30px 0 0;width:28px;height:9px;position:absolute;bottom:0}.cloud:before{left:18px}.cloud:after{width:37px;height:15px;left:43px}.cloud--one{top:105px;left:13%}.cloud--two{top:72px;right:36%;transform:scale(.75)}.sea-line{fill:none;stroke:#cae1cc47;stroke-linecap:round;stroke-width:2px}.sea-line--two{stroke:#cae1cc29}.island-shadow{fill:#0d2c26;opacity:.65}.island-grass{fill:#669064;stroke:#9caf76;stroke-width:1.2px}.island-earth{fill:#7a5a3d}.field--one{fill:#c3a358}.field--two{fill:#a17d3f}.field-lines{fill:none;stroke:#ffeba84d;stroke-width:1.2px}.farmhouse{fill:#e8d49d;stroke:#433d2c;stroke-linejoin:round;stroke-width:1.2px}.farmhouse .roof{fill:#a9563b}.farmhouse .door{fill:#79563d}.farmhouse .window{fill:#d6b453}.farmhouse .chimney{fill:#6d4632}.tree{fill:#315d3d;stroke:#243e2d;stroke-width:2px}.tree path{stroke:#543d2c;stroke-width:5px}.path{fill:none;stroke:#d3ba7f;stroke-linecap:round;stroke-width:8px}.auth-story__quote{z-index:2;color:#f6f1dd8c;width:max-content;max-width:90%;margin:0;font-family:Fraunces,Georgia,serif;font-size:.82rem;font-style:italic;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.auth-panel{background:linear-gradient(#fffdf7b8, #fffdf7b8), radial-gradient(circle at 70% 30%, #fff 0, transparent 45%), var(--cream);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:48px clamp(36px,6vw,100px) 20px;display:flex}.auth-card{width:min(100%,470px);margin:auto 0}.auth-card__mobile-brand{margin-bottom:28px;display:none}.auth-tabs{background:#ecebe5;border:1px solid #deddd4;border-radius:12px;grid-template-columns:1fr 1fr;padding:4px;display:grid}.auth-tabs button{color:#747a74;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:11px 14px;font-size:.86rem;font-weight:600;transition:all .16s}.auth-tabs button.is-active{color:var(--forest-900);background:var(--paper);box-shadow:0 2px 8px #1f3c2f1a}.auth-card__heading{margin:clamp(32px,5vh,48px) 0 27px}.auth-card__heading h2{color:var(--forest-950);letter-spacing:-.045em;margin:0 0 9px;font-family:Fraunces,Georgia,serif;font-size:clamp(2rem,3.2vw,2.55rem);font-weight:600;line-height:1.1}.auth-card__heading>p:last-child{color:var(--muted);margin:0;font-size:.91rem}.auth-form{gap:18px;display:grid}.form-field{gap:7px;display:grid}.form-field label{color:#33443e;font-size:.78rem;font-weight:700}.form-field input{width:100%;height:49px;color:var(--ink);background:#ffffffbf;border:1px solid #d5d7cf;border-radius:10px;padding:0 15px;font-size:.9rem;transition:border-color .14s,box-shadow .14s;box-shadow:0 1px 2px #143a3008}.form-field input::placeholder{color:#a3a7a2}.form-field input:hover{border-color:#b6bdb4}.form-field input:focus{border-color:var(--forest-700);outline:0;box-shadow:0 0 0 3px #2e6b581c}.form-field input[aria-invalid=true]{border-color:#c36a62}.password-input{position:relative}.password-input input{padding-right:49px}.password-toggle{color:#77817a;cursor:pointer;background:0 0;border:0;width:34px;height:34px;padding:7px;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.password-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px}.field-help,.field-error{font-size:.73rem}.field-help{color:#858d87}.field-error{color:var(--error)}.terms-check{color:#717a74;cursor:pointer;align-items:flex-start;gap:10px;font-size:.75rem;line-height:1.55;display:flex}.terms-check input{width:16px;height:16px;accent-color:var(--forest-700);flex:none;margin:2px 0 0}.terms-check a{color:var(--forest-700);font-weight:600}.primary-button{color:#fffdf5;cursor:pointer;background:linear-gradient(135deg,#205946,#153e33);border:0;border-radius:10px;justify-content:center;align-items:center;gap:13px;height:51px;margin-top:4px;font-size:.88rem;font-weight:700;transition:transform .14s,box-shadow .14s,opacity .14s;display:flex;box-shadow:0 9px 20px #19463729}.primary-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 24px #19463738}.primary-button:disabled{cursor:wait;opacity:.72}.button-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:19px;height:19px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-alternative{color:#818983;text-align:center;margin:23px 0 0;font-size:.78rem}.auth-alternative button{color:var(--forest-700);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.form-message{border-radius:8px;margin:-12px 0 18px;padding:11px 13px;font-size:.78rem;line-height:1.45}.form-message--error{color:#84362f;background:#f9e6e2}.form-message--success{color:#285d47;background:#e3efe7}.auth-panel__footer{color:#a2a6a1;margin:auto 0 0;font-size:.66rem}.loading-screen{min-height:100vh;color:var(--forest-900);background:var(--cream);place-content:center;display:grid}.loading-dots{justify-content:center;gap:6px;margin-top:24px;display:flex}.loading-dots span{background:var(--gold);border-radius:50%;width:6px;height:6px;animation:.9s ease-in-out infinite alternate pulse}.loading-dots span:nth-child(2){animation-delay:.15s}.loading-dots span:nth-child(3){animation-delay:.3s}@keyframes pulse{to{opacity:.3;transform:translateY(-4px)}}.player-shell{background:radial-gradient(circle at 80% 0, #b3cda359, transparent 32%), var(--cream);min-height:100vh;padding:0 6vw 80px}.player-header{border-bottom:1px solid #dedfd6;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;min-height:86px;display:grid}.play-time-meter{box-sizing:border-box;border:1px solid var(--border);background:var(--surface-raised);border-radius:8px;align-items:center;gap:6px;width:100%;padding:4px 8px;display:flex}.play-time-meter>span{color:var(--forest-700);font-size:.92rem}.play-time-meter>div{flex:1;gap:1px;min-width:0;display:grid}.play-time-meter small{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;font-size:.55rem}.play-time-meter strong{color:var(--forest-800);white-space:nowrap;font-size:.76rem}.play-time-meter progress{width:100%;height:3px}.play-time-meter.is-warning{background:#fdf6e4;border-color:#d9c089}.play-time-meter.is-warning strong{color:#8a6d24}.play-time-meter.is-exhausted{background:#fff0ec;border-color:#d8a293}.play-time-meter.is-exhausted strong{color:#a4543f}.player-header__navigation{scrollbar-width:thin;align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.player-header__account{background:#ffffff80;border:1px solid #dde0d6;border-radius:12px;gap:6px;width:210px;padding:8px 10px;display:grid}.account-identity{align-items:center;gap:10px;min-width:0;display:flex}.avatar{color:#fff;background:var(--forest-700);border-radius:50%;flex:none;place-content:center;width:34px;height:34px;font-weight:700;display:grid}.player-header__account .account-copy{min-width:0;display:grid}.player-header__account .account-copy>*{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.player-header__account strong{font-size:.82rem}.player-header__account small{color:var(--muted);font-size:.68rem}.player-header__navigation button,.player-header__navigation a,.player-header__account button{color:var(--forest-800);cursor:pointer;background:#ffffff8c;border:1px solid #cfd4ca;border-radius:8px;margin-left:12px;padding:9px 14px;font-size:.74rem;font-weight:600;text-decoration:none}.player-header__account button{width:100%;margin-left:0;padding:7px 12px}.brand-button{background:0 0;border:0;padding:0}.brand-button:not(:disabled){cursor:pointer}.player-header__navigation .worlds-link{background:0 0;border-color:#0000;flex:none;margin-right:7px}.player-header__navigation .worlds-link.is-current{color:var(--forest-950);background:var(--sage-100);border-color:var(--sage-200);cursor:default}.worlds-link--admin{color:#805d1e!important;background:#fff6d9!important;border-color:#ead8a8!important}.world-selection{width:min(100%,1180px);margin:0 auto;padding:clamp(64px,9vh,105px) 0 30px}.world-selection__heading{max-width:760px}.world-selection__heading h1{color:var(--forest-950);letter-spacing:-.055em;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(2.8rem,5.2vw,5rem);font-weight:600;line-height:.98}.world-selection__heading>p:last-child{max-width:610px;color:var(--muted);margin:22px 0 0;line-height:1.65}.world-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:48px;display:grid}.world-tile{background:var(--paper);border:1px solid #d9ddd2;border-radius:18px;transition:border-color .18s,box-shadow .18s,transform .18s;overflow:hidden;box-shadow:0 17px 45px #19413212}.world-tile:hover{border-color:#b9c7b7;transform:translateY(-3px);box-shadow:0 22px 55px #1941321c}.world-tile.is-joined{border-color:#d99f37a6;box-shadow:0 18px 45px #ae791d1a}.world-tile__landscape{background:linear-gradient(#8eb9b1 0%,#b8d5c7 48%,#4f8a7f 49%,#27665f 100%);height:178px;position:relative;overflow:hidden}.world-tile--2 .world-tile__landscape{background:linear-gradient(#aabfc3 0%,#dce0d6 48%,#648993 49%,#315e67 100%)}.world-tile--3 .world-tile__landscape{filter:saturate(.72);background:linear-gradient(#b9d1c3 0%,#eedcad 48%,#4b9a91 49%,#286e6b 100%)}.world-tile__landscape:after{content:"";background:#ffffff54;height:1px;position:absolute;bottom:26px;left:0;right:0;box-shadow:0 9px #ffffff26,0 18px #ffffff1a}.world-sun{background:#eed18b;border-radius:50%;width:42px;height:42px;position:absolute;top:24px;right:35px;box-shadow:0 0 32px #ffe69c8c}.world-island{z-index:1;background:#658c55;border-radius:55% 44% 50% 48%;position:absolute;transform:rotate(-4deg)skew(-10deg);box-shadow:inset 0 -9px #72583a,0 9px 14px #0f393440}.world-island:before,.world-island:after{content:"";background:#315e3a;border-radius:50%;position:absolute;box-shadow:10px 3px #315e3a,5px -7px #416f45}.world-island:before{width:12px;height:19px;top:10px;left:26%}.world-island:after{width:9px;height:14px;top:17px;right:23%}.world-island--front{width:72%;height:59px;bottom:31px;right:9%}.world-island--back{opacity:.58;width:42%;height:31px;bottom:61px;left:-5%;transform:scale(.7)}.world-tile__body{padding:25px 25px 23px}.world-tile__status{color:#748078;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:7px;font-size:.67rem;font-weight:700;display:flex}.live-dot,.soon-dot{border-radius:50%;width:7px;height:7px}.live-dot{background:#4da36d;box-shadow:0 0 0 4px #4da36d1f}.soon-dot{background:#bd9c60;box-shadow:0 0 0 4px #bd9c601f}.world-tile h2{color:var(--forest-950);letter-spacing:-.035em;margin:14px 0 8px;font-family:Fraunces,Georgia,serif;font-size:1.7rem;font-weight:600}.world-tile__body>p{min-height:58px;color:var(--muted);margin:0;font-size:.79rem;line-height:1.55}.world-tile dl{border-top:1px solid #ecece5;border-bottom:1px solid #ecece5;grid-template-columns:repeat(3,1fr);gap:8px;margin:21px 0;padding:16px 0;display:grid}.world-tile dl div{gap:4px;display:grid}.world-tile dt{color:#939b95;text-transform:uppercase;font-size:.61rem}.world-tile dd{color:#344b42;margin:0;font-size:.75rem;font-weight:700}.world-tile button,.tutorial-cta{color:#fffdf6;background:var(--forest-800);cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:45px;font-size:.77rem;font-weight:700;display:flex}.world-tile button:disabled{color:#929890;cursor:default;background:#e7e8e2}.world-tile button .button-spinner{width:16px;height:16px}.world-list-loading,.world-empty{color:var(--muted);background:#fffdf7cc;border:1px solid #dfe1d7;border-radius:14px;margin-top:45px;padding:28px}.world-list-loading{align-items:center;gap:12px;display:flex}.world-list-loading .button-spinner{border-color:#20534533;border-top-color:var(--forest-700)}.world-empty p{margin-bottom:0}.world-action-error{color:var(--error);margin:25px 0 -25px}.archipelago,.archipelago-loading{width:min(100%,1440px);margin:0 auto}.archipelago{padding:44px 0 70px}.archipelago-loading{min-height:55vh;color:var(--muted);justify-content:center;align-items:center;gap:12px;display:flex}.archipelago-loading .button-spinner{border-color:#20534533;border-top-color:var(--forest-700)}.archipelago__heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:32px;display:flex}.archipelago__heading h1{color:var(--forest-950);letter-spacing:-.055em;margin:6px 0 8px;font-family:Fraunces,Georgia,serif;font-size:clamp(2.8rem,6vw,5rem);font-weight:600;line-height:.95}.archipelago__heading p:last-child{color:var(--muted);margin:0}.archipelago-wallet{background:#fffdf7;border:1px solid #d8ddd1;border-radius:12px;grid-template-columns:auto auto;min-width:150px;padding:14px 18px;display:grid;box-shadow:0 8px 25px #2053450f}.archipelago-wallet>span{color:var(--gold);grid-row:1/3;align-self:center;margin-right:10px;font-size:1.35rem}.archipelago-wallet strong{color:var(--forest-950);font-size:1.05rem}.archipelago-wallet small{color:var(--muted);font-size:.58rem}.archipelago-wallet--alert{background:#fbeeec;border-color:#e3c4c0}.archipelago-wallet--alert>span,.archipelago-wallet--alert strong{color:#8c3e36}.archipelago-error{color:var(--error);background:#fff2ef;border-radius:9px;margin:-12px 0 22px;padding:11px 14px}.owned-islands{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.island-card{background:#fffdf8;border:1px solid #d5dbcf;border-radius:17px;overflow:hidden;box-shadow:0 14px 38px #1c3d3114}.island-card__preview{background:linear-gradient(#91c9c2 0 58%,#4d918a 59%);height:150px;position:relative;overflow:hidden}.island-card__preview:after{content:"";opacity:.35;border-top:2px solid #fff;border-radius:50%;height:50px;position:absolute;bottom:-28px;left:-10%;right:-10%}.island-card__sun{background:#f2d587;border-radius:50%;width:34px;height:34px;position:absolute;top:20px;right:28px;box-shadow:0 0 0 10px #f2d58726}.island-card__land{background:#6f9762;border:9px solid #dfce9b;border-radius:45% 55% 48% 52%;height:72px;position:absolute;bottom:14px;left:12%;right:15%;transform:rotate(-3deg);box-shadow:inset 0 -9px #50784e}.island-card__trees{z-index:2;color:#24543e;letter-spacing:-6px;font-size:1.35rem;position:absolute;bottom:55px;right:28%}.island-card--2 .island-card__preview{background:linear-gradient(#b1c9cd 0 58%,#668f99 59%)}.island-card--3 .island-card__preview{background:linear-gradient(#d4bd93 0 58%,#648e86 59%)}.island-card--4 .island-card__preview{background:linear-gradient(#b9b5c7 0 58%,#5d7984 59%)}.island-card__body{padding:20px}.island-card__title{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.island-card__title span,.island-offer__kind{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;font-size:.56rem;font-weight:800}.island-card__title h2{color:var(--forest-950);margin:3px 0 0;font-family:Fraunces,Georgia,serif;font-size:1.35rem}.island-card__title>b{color:#567166;background:#edf2e9;border-radius:50%;place-content:center;width:30px;height:30px;font-size:.62rem;display:grid}.island-card__stats{grid-template-columns:1fr 1fr;gap:12px;margin:18px 0;display:grid}.island-card__stats>div{background:#f3f5ed;border-radius:9px;align-content:start;gap:5px;padding:10px;display:grid}.island-card__stats small{color:#8d9690;text-transform:uppercase;margin-bottom:2px;font-size:.52rem;font-weight:700}.island-card__stats span{color:#3f514a;align-items:center;gap:4px;font-size:.59rem;display:flex}.island-card__stats i{color:var(--gold);font-style:normal}.island-card__stats em{color:#98a099;margin-left:auto;font-size:.48rem;font-style:normal}.island-card__routes{gap:5px;margin:-6px 0 14px;display:grid}.island-card__routes>small{color:#8d9690;text-transform:uppercase;font-size:.52rem;font-weight:700}.island-card__routes>div{flex-wrap:wrap;gap:4px;display:flex}.island-route-pill{color:#2f5b49;background:#eef6f0;border:1px solid #cfe0d3;border-radius:999px;align-items:center;gap:4px;max-width:100%;padding:2px 7px;font-size:.55rem;display:inline-flex}.island-route-pill>span{color:var(--forest-700);font-size:.58rem}.island-route-pill>b{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.island-route-pill.is-idle{color:#8a7f5c;background:#f7f4e8;border-color:#ddd7c4}.island-route-pill.is-idle>span{color:#a3925f}.island-card__routes-empty{color:#a4543f;font-size:.55rem;font-style:normal}.island-card__body>button,.island-offer button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#205946,#153e33);border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:39px;font-size:.66rem;font-weight:750;display:flex}.island-card__body>button:disabled,.island-offer button:disabled{cursor:not-allowed;opacity:.48}.island-market{margin-top:55px}.island-market__heading{justify-content:space-between;align-items:end;gap:28px;margin-bottom:22px;display:flex}.island-market__heading h2{color:var(--forest-950);margin:4px 0 0;font-family:Fraunces,Georgia,serif;font-size:2rem}.island-market__actions{justify-content:flex-end;align-items:center;display:flex}.island-market__refresh-control{align-items:center;gap:8px;display:flex;position:relative}.island-market__refresh{color:#fff;cursor:pointer;background:linear-gradient(135deg,#b98b32,#7f5b1e);border:1px solid #b68a36;border-radius:10px;place-content:center;gap:3px;min-width:170px;min-height:50px;padding:8px 14px;display:grid;box-shadow:0 8px 18px #7f5b1e2e}.island-market__refresh:disabled{cursor:not-allowed;filter:saturate(.55);opacity:.58}.island-market__refresh>span{font-size:.66rem;font-weight:800}.island-market__refresh>strong{justify-content:center;align-items:center;gap:4px;font-size:.58rem;font-weight:650;display:flex}.island-market__refresh .resource-icon{color:#ffe5a0;font-size:.72rem}.island-market__help{position:relative}.island-market__help>button{width:28px;height:28px;color:var(--forest-700);background:var(--paper);cursor:help;border:1px solid #bdc7bc;border-radius:50%;place-content:center;padding:0;font-size:.72rem;font-weight:850;display:grid}.island-market__help>button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.island-market__help>p{z-index:5;color:#f8fbf8;opacity:0;pointer-events:none;visibility:hidden;background:#173e34;border-radius:9px;width:min(360px,100vw - 32px);margin:0;padding:12px 14px;font-size:.68rem;line-height:1.55;transition:opacity .15s,transform .15s,visibility .15s;position:absolute;bottom:calc(100% + 10px);right:0;transform:translateY(4px);box-shadow:0 10px 28px #1330283d}.island-market__help:hover>p,.island-market__help:focus-within>p{opacity:1;visibility:visible;transform:translateY(0)}.island-offers{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.island-offer{background:#fffdf8;border:1px solid #d8ddd2;border-radius:14px;overflow:hidden}.island-offer__visual{background:linear-gradient(145deg,#aed7cc,#4a8b84);height:95px;position:relative;overflow:hidden}.island-offer__visual span{background:#6f9a5d;border:6px solid #ddc98d;border-radius:50%;height:42px;position:absolute;bottom:14px;left:14%;right:17%;transform:rotate(-5deg)}.island-offer__visual b{color:#ffffff8c;font-size:1.2rem;position:absolute;bottom:5px;right:12px}.island-offer--2 .island-offer__visual{background:linear-gradient(145deg,#c9d0d1,#618892)}.island-offer--3 .island-offer__visual{background:linear-gradient(145deg,#e2c9a2,#6f9487)}.island-offer--4 .island-offer__visual{background:linear-gradient(145deg,#c3bdd1,#657d8c)}.island-offer--5 .island-offer__visual{background:linear-gradient(145deg,#b9d6a2,#4c8b78)}.island-offer__body{padding:15px}.island-offer h3{min-height:42px;color:var(--forest-950);margin:4px 0 12px;font-family:Fraunces,Georgia,serif;font-size:1rem;line-height:1.15}.island-offer__position{color:#73827b;min-height:38px;margin:-5px 0 12px;font-size:.68rem;line-height:1.45}.island-offer__position strong{color:#315f52}.offer-capacities{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.offer-capacities>span{background:#f1f4eb;border-radius:7px;grid-template-columns:auto 1fr;padding:7px 5px;display:grid}.offer-capacities i{color:var(--gold);grid-row:1/3;align-self:center;margin-right:4px;font-size:.62rem;font-style:normal}.offer-capacities b{font-size:.55rem}.offer-capacities small{color:var(--muted);font-size:.42rem}.offer-costs{min-height:84px;margin:13px 0 10px}.offer-costs>small{color:#8d9690;text-transform:uppercase;font-size:.5rem;font-weight:700}.offer-costs>div{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.offer-costs span{color:#5a503e;background:#f6edda;border-radius:6px;padding:5px 6px;font-size:.51rem}.game-shell{background:#edf0e6;min-height:100vh;padding:0 4vw 45px}.island-game{width:min(100%,1440px);margin:0 auto}.game-topbar{justify-content:space-between;align-items:center;gap:24px;min-height:116px;display:flex}.game-topbar__title{justify-items:start;display:grid}.island-back-button{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:7px;margin-bottom:12px;padding:7px 11px;font-size:.68rem;font-weight:750;transition:color .14s,border-color .14s,background .14s;display:inline-flex}.island-back-button:hover{border-color:var(--border);color:var(--forest-700);background:var(--surface-soft)}.island-back-button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.island-back-button span{font-size:.9rem;line-height:1;transition:transform .14s}.island-back-button:hover span{transform:translate(-2px)}[dir=rtl] .island-back-button:hover span{transform:translate(2px)}.game-topbar .eyebrow{margin-bottom:5px}.game-topbar h1{color:var(--forest-950);letter-spacing:-.045em;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(2rem,4vw,3.1rem);font-weight:600}.resource-bar{gap:9px;display:flex}.resource-bar>div{background:#fffdf7d9;border:1px solid #d8ddd1;border-radius:11px;grid-template-columns:auto auto;min-width:108px;padding:11px 15px;display:grid}.resource-bar strong{align-self:center;margin-left:8px;font-size:.9rem}.resource-bar small{color:var(--muted);grid-column:2;font-size:.61rem}.resource-icon{color:var(--gold);grid-row:1/3;align-self:center;font-size:1.25rem}.resource-icon--stock{color:var(--forest-700)}.admin-shell{background:radial-gradient(circle at 90% 0,#b7c9a547,#0000 31%),#f3f1e9;min-height:100vh;padding-bottom:70px}.admin-header{color:#f7f4e9;background:#173e34;border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:24px;min-height:82px;padding:0 max(28px,50vw - 750px);display:flex}.admin-header__brand{color:inherit;align-items:center;gap:18px;text-decoration:none;display:flex}.admin-header__brand .brand{color:#fff}.admin-header__brand>span{color:#c8d8d0;letter-spacing:.08em;text-transform:uppercase;border-left:1px solid #ffffff3d;padding-left:18px;font-size:.74rem;font-weight:700}.admin-header__account{align-items:center;gap:12px;display:flex}.admin-header__account>div{min-width:130px;display:grid}.admin-header__account strong{font-size:.78rem}.admin-header__account small{color:#b9ccc4;font-size:.63rem}.admin-header__account a,.admin-header__account button{color:#f5f1e4;cursor:pointer;background:#ffffff12;border:1px solid #fff3;border-radius:8px;padding:9px 12px;font-size:.7rem;font-weight:650;text-decoration:none}.admin-header__account button:disabled{opacity:.55}.admin-badge{color:#4e3a13;letter-spacing:.12em;background:#e4b756;border-radius:6px;padding:5px 8px;font-size:.53rem;font-weight:900}.admin-layout{grid-template-columns:220px minmax(0,1fr);gap:46px;width:min(1500px,100% - 56px);margin:0 auto;padding-top:42px;display:grid}.admin-nav{align-content:start;gap:7px;height:max-content;display:grid;position:sticky;top:24px}.admin-nav>p{color:#91978f;letter-spacing:.15em;text-transform:uppercase;margin:0 0 10px 12px;font-size:.57rem;font-weight:800}.admin-nav a{color:#627069;border:1px solid #0000;border-radius:10px;align-items:center;gap:11px;padding:11px 13px;font-size:.76rem;font-weight:650;text-decoration:none;display:flex}.admin-nav a span{color:#577068;background:#e6e9e0;border-radius:7px;place-content:center;width:25px;height:25px;font-size:.85rem;display:grid}.admin-nav a:hover{color:#244f42;background:#ffffff8c}.admin-nav a.is-active{color:#f9f6ec;background:#285c4d;box-shadow:0 8px 22px #1f4d4029}.admin-nav a.is-active span{color:#ffe3a0;background:#ffffff1f}.admin-content{min-width:0}.admin-page{max-width:1200px}.admin-page__heading{justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:30px;display:flex}.admin-page__heading>div{max-width:720px}.admin-page__heading h1{color:#153e33;letter-spacing:-.055em;margin:5px 0 0;font-family:Fraunces,Georgia,serif;font-size:clamp(2.55rem,5vw,4.4rem);font-weight:600;line-height:.98}.admin-page__heading>p{color:#6d7771;text-align:right;max-width:420px;margin:0 0 5px;font-size:.81rem;line-height:1.65}.admin-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:24px;display:grid}.admin-summary article{background:#fffdf7c7;border:1px solid #dce0d6;border-radius:13px;align-items:center;gap:13px;padding:17px 18px;display:flex}.admin-summary article>span{color:#f7d887;background:#285c4d;border-radius:10px;flex:none;place-content:center;width:39px;height:39px;display:grid}.admin-summary article div{min-width:0;display:grid}.admin-summary strong{color:#25483d;text-overflow:ellipsis;white-space:nowrap;font-family:Fraunces,Georgia,serif;font-size:1.15rem;overflow:hidden}.admin-summary small{color:#7c847f;font-size:.62rem}.admin-section-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.admin-section-grid>a{color:inherit;background:#fffdf7;border:1px solid #d9ded4;border-radius:17px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:16px;padding:27px;text-decoration:none;transition:transform .16s,box-shadow .16s;display:grid;box-shadow:0 12px 35px #2046380f}.admin-section-grid>a:hover{transform:translateY(-2px);box-shadow:0 17px 40px #2046381a}.admin-section-card__icon{color:#725519;background:#f7e7bd;border-radius:12px;place-content:center;width:48px;height:48px;font-size:1.25rem;display:grid}.admin-section-grid h2{color:#21483c;margin:4px 0 7px;font-family:Fraunces,Georgia,serif;font-size:1.45rem}.admin-section-grid p:last-child{color:#748079;margin:0;font-size:.76rem;line-height:1.55}.admin-section-grid>a>b{color:#af8440;align-self:center;font-size:1.2rem}.admin-panel{background:#fffdf8;border:1px solid #d8ddd3;border-radius:17px;padding:25px;box-shadow:0 15px 42px #23443712}.admin-panel__heading{border-bottom:1px solid #e2e4dc;justify-content:space-between;align-items:end;gap:25px;padding-bottom:22px;display:flex}.admin-panel__heading h2{color:#244c40;margin:3px 0 0;font-family:Fraunces,Georgia,serif;font-size:1.65rem}.admin-panel__heading label{color:#65736c;gap:6px;min-width:280px;font-size:.65rem;font-weight:700;display:grid}.admin-panel select,.admin-panel input{color:#244c40;background:#fff;border:1px solid #cdd7cf;border-radius:8px;padding:10px 11px}.admin-island-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:20px 0;display:grid}.admin-island-overview>div{background:#f1f4ed;border-radius:10px;gap:4px;padding:14px;display:grid}.admin-island-overview small{color:#7b847f;font-size:.6rem}.admin-island-overview strong{color:#31584c;font-size:.82rem}.admin-actions{gap:10px;display:grid}.admin-actions article{background:#f8faf6;border:1px solid #dce4dd;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;padding:17px;display:grid}.admin-actions__icon{color:#f6d98d;background:#2d6554;border-radius:10px;place-content:center;width:39px;height:39px;font-size:1.15rem;display:grid}.admin-actions h3{color:#2c5146;margin:0 0 4px;font-size:.88rem}.admin-actions p{color:#77817c;margin:0;font-size:.68rem;line-height:1.5}.admin-actions button,.admin-ship-list button{color:#fff;cursor:pointer;background:#28624f;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-width:150px;min-height:39px;padding:9px 13px;font-size:.7rem;font-weight:750;display:flex}.admin-actions button:disabled,.admin-ship-list button:disabled{cursor:wait;opacity:.55}.admin-actions .button-spinner,.admin-ship-list .button-spinner{width:14px;height:14px}.admin-actions__danger{background:#fff9f6!important;border-color:#ead7d1!important}.admin-actions__danger .admin-actions__icon{color:#fff0e8;background:#a15345}.admin-actions__danger button{background:#a15345}.admin-feedback{border-radius:9px;margin:16px 0 0;padding:11px 13px;font-size:.72rem}.admin-feedback--success{color:#2f704c;background:#e8f3e9}.admin-feedback--error{color:#963e35;background:#fff0ed}.admin-ship-list{gap:13px;display:grid}.admin-ship-list form{background:#fffdf8;border:1px solid #d9ded5;border-radius:15px;padding:0;display:block;overflow:hidden;box-shadow:0 10px 30px #2344370e}.admin-ship-list form>header{background:#f4f6f0;border-bottom:1px solid #e1e4dc;justify-content:space-between;align-items:center;gap:20px;padding:15px 18px;display:flex}.admin-ship-list form>header>div{align-items:center;gap:9px;display:flex}.admin-ship-list form>header span{color:#fff6dd;letter-spacing:.1em;background:#95712d;border-radius:5px;padding:4px 6px;font-size:.48rem;font-weight:900}.admin-ship-list code{color:#36584e;font-size:.7rem}.admin-ship-list label{color:#637169;gap:5px;font-size:.65rem;font-weight:700;display:grid}.admin-ship-list input{box-sizing:border-box;color:#244c40;background:#fff;border:1px solid #ced8d0;border-radius:8px;width:100%;padding:9px 10px}.admin-ship-list .check-label{align-items:center;padding:0;display:flex;flex-direction:row!important}.admin-ship-list .check-label input{width:auto}.admin-ship-form__identity{grid-template-columns:1fr 2fr;gap:12px;padding:17px 18px 10px;display:grid}.admin-ship-form__stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;padding:0 18px 17px;display:grid}.admin-ship-list form>footer{border-top:1px solid #e5e6df;justify-content:space-between;align-items:center;gap:15px;padding:13px 18px;display:flex}.admin-ship-list form>footer small{color:#858b86;font-size:.62rem}.admin-loading,.admin-error{color:#67756e;justify-content:center;align-items:center;gap:10px;min-height:45vh;display:flex}.admin-error{color:#8d4339;background:#fff7f4;border:1px solid #ead5cf;border-radius:15px;flex-direction:column;padding:30px}.admin-error p{margin:0}.admin-access-denied{text-align:center;background:#f6f2e8;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:30px;display:flex}.admin-access-denied>span{color:#a34439;letter-spacing:.12em;text-transform:uppercase;margin-top:40px;font-size:.65rem;font-weight:850}.admin-access-denied h1{color:#173e33;max-width:720px;margin:12px 0;font-family:Fraunces,Georgia,serif;font-size:clamp(2.3rem,6vw,4rem);line-height:1}.admin-access-denied p{color:#6c766f}.admin-access-denied>a{color:#fff;background:#2e6b58;border-radius:9px;margin-top:18px;padding:11px 16px;font-size:.76rem;font-weight:700;text-decoration:none}.admin-success{color:#256b49;background:#eef8f1;border:1px solid #bfdcc9;border-radius:11px;margin:0 0 14px;padding:11px 14px;font-size:.8rem}.maintenance-screen{text-align:center;min-height:100vh;color:var(--ink);background:var(--surface-soft);flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex}.maintenance-screen__badge{color:#a3762f;letter-spacing:.12em;text-transform:uppercase;margin-top:40px;font-size:.65rem;font-weight:850}.maintenance-screen h1{max-width:720px;color:var(--forest-900);margin:12px 0;font-family:Fraunces,Georgia,serif;font-size:clamp(2rem,5vw,3.4rem);line-height:1.05}.maintenance-screen p{max-width:560px;color:var(--muted)}.maintenance-screen>a{color:#fff;background:#2e6b58;border-radius:9px;margin-top:18px;padding:11px 16px;font-size:.76rem;font-weight:700;text-decoration:none}.admin-service{flex-direction:column;gap:1rem;max-width:620px;display:flex}.admin-service__state{border:1px solid var(--border);background:var(--surface-raised);border-radius:12px;align-items:baseline;gap:.75rem;margin:0;padding:.85rem 1rem;display:flex}.admin-service__state b{font-size:1rem}.admin-service__state.is-open b{color:#256b49}.admin-service__state.is-closed b{color:#a3452f}.admin-service__state small{color:var(--muted);font-size:.72rem}.admin-service label{color:var(--muted);flex-direction:column;gap:.35rem;font-size:.76rem;font-weight:650;display:flex}.admin-service textarea{border:1px solid var(--border);color:var(--ink);background:var(--surface-raised);font:inherit;resize:vertical;border-radius:10px;padding:.6rem .7rem;font-size:.82rem}.admin-service__actions{gap:.6rem;display:flex}.admin-service__forced,.admin-service__fallback{border-radius:10px;margin:0;padding:.7rem .85rem;font-size:.75rem;line-height:1.6}.admin-service__forced{color:#8d4339;background:#fff7f4;border:1px solid #ead5cf}.admin-service__fallback{color:var(--muted);background:var(--surface-soft);border:1px dashed var(--border)}.admin-service code{background:var(--surface-raised);border-radius:6px;padding:.1rem .35rem;font-size:.72rem;display:inline-block}.game-layout{background:var(--paper);border:1px solid #d3d9cc;border-radius:18px;grid-template-columns:minmax(0,1fr) 390px;min-height:calc(100vh - 235px);display:grid;overflow:hidden;box-shadow:0 22px 60px #1c3d311a}.island-board{background:radial-gradient(circle at 48% 45%,#82b9ad 0,#4b8d84 45%,#25645e 100%);min-height:650px;position:relative;overflow:hidden}.island-board__sea-lines{opacity:.2;background-image:repeating-radial-gradient(#0000 0 31px,#ffffff4d 32px 33px,#0000 34px 63px);position:absolute;inset:0;transform:scaleY(.42)rotate(-7deg)}.play-island{filter:drop-shadow(0 28px 25px #0e322c59);position:absolute;inset:13% 10% 11% 8%;transform:rotate(-4deg)}.play-island__shore,.play-island__grass{border-radius:43% 56% 45% 52%/49% 44% 57% 48%;position:absolute;inset:0}.play-island__shore{background:#e3d5a6;inset:-13px}.play-island__grass{background:radial-gradient(circle at 42% 40%,#87a965,#5d8758 68%,#4d764e);box-shadow:inset 0 -13px #573e2661}.play-field{z-index:2;background:repeating-linear-gradient(90deg,#b89952 0 6px,#a78648 7px 13px);border:4px double #f7e29d61;position:absolute;transform:skewY(-10deg)}.play-field--one{width:22%;height:17%;top:29%;left:31%}.play-field--two{width:23%;height:15%;top:48%;left:44%}.play-trees{z-index:3;color:#214f37;letter-spacing:-10px;text-shadow:4px 5px #173e2e;font-size:clamp(1.5rem,3vw,2.6rem);position:absolute;transform:rotate(5deg)}.play-trees--one{top:20%;right:18%}.play-trees--two{bottom:23%;left:15%}.play-mine{z-index:4;color:#f3d281;text-align:center;background:#786044;border:4px solid #60462f;border-radius:8px;place-content:center;width:74px;height:62px;font-size:1.5rem;display:grid;position:absolute;top:27%;left:18%;box-shadow:9px 9px #37392440}.play-mine small{color:#fff;background:#0f3028d1;border-radius:5px;width:max-content;padding:4px 8px;font-size:.58rem;position:absolute;bottom:-27px;left:50%;transform:translate(-50%)}.play-mine.is-focused{outline-offset:7px;outline:5px solid #f2c9678c}.play-lumberjack{z-index:4;color:#fff0b0;text-align:center;background:#a76840;border:4px solid #76523b;border-radius:7px;place-content:center;width:68px;height:57px;font-size:1.65rem;display:grid;position:absolute;top:22%;right:26%;box-shadow:8px 8px #37392438}.play-lumberjack:before{content:"";clip-path:polygon(50% 0,100% 100%,0 100%);background:#74432f;width:46px;height:22px;position:absolute;top:-14px;left:7px}.play-lumberjack small{color:#fff;background:#0f3028d1;border-radius:5px;width:max-content;padding:4px 8px;font-size:.58rem;position:absolute;bottom:-27px;left:50%;transform:translate(-50%)}.play-sawmill{z-index:4;color:#f3d991;text-align:center;background:#8c6d50;border:4px solid #695444;border-radius:7px;place-content:center;width:82px;height:60px;font-size:1.7rem;display:grid;position:absolute;box-shadow:8px 8px #37392438}.play-sawmill:before{content:"";clip-path:polygon(50% 0,100% 100%,0 100%);background:#57483e;width:58px;height:24px;position:absolute;top:-18px;left:8px}.play-sawmill small{color:#fff;background:#0f3028d1;border-radius:5px;width:max-content;padding:4px 8px;font-size:.58rem;position:absolute;bottom:-27px;left:50%;transform:translate(-50%)}.play-warehouse{z-index:4;color:#e9d6ae;text-align:center;background:repeating-linear-gradient(90deg,#7e7565 0 12px,#716959 13px 24px);border:4px solid #5e5147;border-radius:6px;place-content:center;width:88px;height:64px;font-size:1.7rem;display:grid;position:absolute;box-shadow:9px 9px #37392438}.play-warehouse:before{content:"";clip-path:polygon(7% 0,93% 0,100% 100%,0 100%);background:#514a43;width:70px;height:17px;position:absolute;top:-13px;left:5px}.play-warehouse small{color:#fff;background:#0f3028d1;border-radius:5px;width:max-content;padding:4px 8px;font-size:.58rem;position:absolute;bottom:-27px;left:50%;transform:translate(-50%)}.play-resource-building{z-index:4;color:#f3d28a;text-align:center;background:#47725b;border:4px solid #5b503f;border-radius:8px;place-content:center;width:64px;height:54px;font-size:1.4rem;display:grid;position:absolute;box-shadow:8px 8px #37392438}.play-resource-building small{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#0f3028d1;border-radius:5px;width:max-content;max-width:130px;padding:4px 8px;font-size:.58rem;position:absolute;bottom:-27px;left:50%;overflow:hidden;transform:translate(-50%)}.play-fishing-port{z-index:5;color:#f6dd9b;text-align:center;background:linear-gradient(160deg,#527d7c,#2d5758);border:4px solid #60452f;border-radius:7px;place-content:center;width:72px;height:48px;font-size:1.45rem;display:grid;position:absolute;box-shadow:8px 8px #1f3a3d40}.play-fishing-port small{color:#fff;white-space:nowrap;background:#0f3034d6;border-radius:5px;width:max-content;padding:4px 8px;font-size:.58rem;position:absolute;bottom:-27px;left:50%;transform:translate(-50%)}.play-flag{z-index:3;color:#f1d17f;text-shadow:2px 3px #31503b;font-size:2.1rem;position:absolute;top:38%;left:55%}.map-controls{border:1px solid #ffffff4d;border-radius:8px;display:grid;position:absolute;bottom:18px;right:18px;overflow:hidden}.map-controls button{color:#fff;background:#123d36bf;border:0;width:37px;height:34px}.map-controls button+button{border-top:1px solid #ffffff2e}.tutorial-panel{z-index:2;background:#fffdf8;border-left:1px solid #daddd3;padding:35px 28px;position:relative}.tutorial-panel__step{color:var(--gold);letter-spacing:.12em;text-transform:uppercase;font-size:.66rem;font-weight:700}.tutorial-panel h2{color:var(--forest-950);margin:12px 0 10px;font-family:Fraunces,Georgia,serif;font-size:1.75rem;line-height:1.1}.tutorial-panel>p{color:var(--muted);margin:0;font-size:.79rem;line-height:1.6}.starter-building{background:#f5f7ee;border:1px solid #dfe4d8;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin-top:24px;padding:14px;display:grid}.starter-building>span{color:#f0cb75;background:var(--forest-800);border-radius:8px;place-content:center;width:35px;height:35px;display:grid}.starter-building div{display:grid}.starter-building strong{font-size:.74rem}.starter-building small{color:var(--muted);font-size:.59rem}.starter-building b{color:#4b9365;font-size:.61rem}.tutorial-objective{gap:13px;margin:27px 0 20px;display:flex}.tutorial-objective>span{color:#c4b98f;font-family:Fraunces,Georgia,serif;font-size:1.65rem}.tutorial-objective div{gap:3px;display:grid}.tutorial-objective strong{font-size:.78rem}.tutorial-objective small{color:var(--muted);font-size:.65rem;line-height:1.4}.tutorial-cta{background:linear-gradient(135deg,#205946,#153e33)}.tutorial-cta:disabled{cursor:wait;opacity:.7}.tutorial-hint{color:#9ca19d;text-align:center;margin-top:13px;font-size:.6rem;line-height:1.45;display:block}.starter-building--candidate{background:#fbf6e8;border-color:#d99f3761}.tutorial-error{color:var(--error);margin:-8px 0 15px;font-size:.7rem;line-height:1.45}.tutorial-objective--done>span{color:#4b9365}.tutorial-panel--complete{background:linear-gradient(#fffdf8,#f3f7ed)}.tutorial-reopen{z-index:5;color:#fff;cursor:pointer;background:#123d36c7;border:1px solid #ffffff57;border-radius:9px;padding:11px 15px;font-size:.7rem;font-weight:700;position:absolute;top:18px;right:18px}.management-panel{z-index:2;background:#fffdf8;border-left:1px solid #daddd3;position:relative;overflow-y:auto}.management-section{padding:27px 24px}.management-section+.management-section{border-top:1px solid #e1e4da}.management-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.management-kicker{color:var(--gold);letter-spacing:.12em;text-transform:uppercase;margin:0 0 5px;font-size:.58rem;font-weight:800}.management-heading h2{color:var(--forest-950);margin:0;font-family:Fraunces,Georgia,serif;font-size:1.35rem}.production-period,.instant-badge{color:#63716a;white-space:nowrap;background:#eef1e8;border-radius:20px;padding:5px 8px;font-size:.55rem;font-weight:700}.instant-badge{color:#3e7557;background:#e4f1e5}.production-list,.construction-list{gap:9px;margin-top:17px;display:grid}.resource-stock-list{gap:11px;margin-top:17px;display:grid}.resource-stock{gap:6px;display:grid}.resource-stock__heading{color:var(--muted);justify-content:space-between;align-items:baseline;gap:10px;font-size:.62rem;display:flex}.resource-stock__heading span{color:var(--forest-950);font-weight:700}.resource-stock__heading strong{font-size:.58rem}.resource-stock__track{background:#e7e9e1;border-radius:999px;height:7px;overflow:hidden}.resource-stock__track>span{border-radius:inherit;background:linear-gradient(90deg,#4a8a61,#75a766);height:100%;transition:width .24s;display:block}.resource-stock__track>span.is-full{background:linear-gradient(90deg,#c47b43,#d39a4c)}.production-line{background:#f7f8f1;border:1px solid #e1e5da;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;display:grid}.production-icon{color:#efd078;background:var(--forest-800);border-radius:8px;place-content:center;width:31px;height:31px;display:grid}.production-icon--wood{color:#e7c790;background:#73553e}.production-icon--planks{color:#f1d8a5;background:#80634e}.production-line>div{gap:2px;min-width:0;display:grid}.production-line strong{font-size:.7rem}.production-line small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.53rem;overflow:hidden}.production-line>b{font-size:.75rem}.production-line>b.is-positive{color:#397b56}.production-line>b.is-negative{color:var(--error)}.production-empty{color:var(--muted);background:#f5f6f0;border-radius:10px;margin:0;padding:16px;font-size:.68rem;line-height:1.5}.construction-option{background:#fff;border:1px solid #e1e5da;border-radius:11px;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px;display:grid}.construction-option__icon{color:#f3d28a;background:#315e4a;border-radius:9px;place-content:center;width:37px;height:37px;font-size:1.1rem;display:grid}.construction-option__icon .resource-svg{width:27px;height:27px}.construction-option__copy{min-width:0}.construction-option__copy>div{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.construction-option__copy strong{font-size:.69rem}.construction-option__copy small{color:var(--muted);white-space:nowrap;font-size:.51rem}.construction-option__copy p{color:var(--muted);margin:4px 0 0;font-size:.56rem;line-height:1.4}.construction-option button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#205946,#153e33);border:0;border-radius:8px;grid-column:1/-1;min-height:34px;padding:8px 12px;font-size:.63rem;font-weight:750}.construction-option button:disabled{cursor:not-allowed;opacity:.48}.management-message{color:#316f4d;background:#e8f4e9;border-radius:8px;margin:13px 0 0;padding:9px 11px;font-size:.63rem}.construction-section .tutorial-error{margin:13px 0 0}.welcome-card,.world-card{background:#fffdf7cc;border:1px solid #dfe1d7;border-radius:18px;width:min(100%,1050px);margin-left:auto;margin-right:auto;box-shadow:0 18px 50px #1e41330f}.welcome-card{justify-content:space-between;align-items:flex-end;gap:36px;margin-top:10vh;padding:clamp(34px,5vw,62px);display:flex}.welcome-card h1{color:var(--forest-950);letter-spacing:-.05em;margin:0 0 13px;font-family:Fraunces,Georgia,serif;font-size:clamp(2.4rem,5vw,4.2rem);line-height:1}.welcome-card>div:first-child>p:last-child{max-width:680px;color:var(--muted);margin:0;line-height:1.7}.account-status{color:#4b6a5e;flex:none;align-items:center;gap:8px;font-size:.75rem;font-weight:600;display:flex}.status-dot{background:#51a171;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #51a17121}.world-card{grid-template-columns:auto 1fr auto;align-items:center;gap:25px;margin-top:24px;padding:27px 32px;display:grid}.world-card__icon{width:62px;height:62px;color:var(--forest-700);background:var(--sage-100);border-radius:15px;place-content:center;display:grid}.world-card__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:38px}.world-card h2{margin:0 0 5px;font-family:Fraunces,Georgia,serif;font-size:1.45rem}.world-card p:last-child{color:var(--muted);margin:0;font-size:.82rem}.world-card>button{color:#7d867f;background:#e7e8e2;border:0;border-radius:9px;padding:11px 16px;font-size:.74rem;font-weight:600}.worlds-link--technology{color:#8a651e!important}.technology-page{width:min(100%,1480px);margin:0 auto;padding:42px 0 76px}.technology-hero{justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:28px;display:flex}.technology-hero>div:first-child{max-width:780px}.technology-hero h1{color:var(--forest-950);letter-spacing:-.055em;margin:4px 0 10px;font-family:Fraunces,Georgia,serif;font-size:clamp(2.5rem,5vw,4.6rem);font-weight:600;line-height:.98}.technology-hero>div:first-child>p:last-child{max-width:700px;color:var(--muted);margin:0;font-size:.88rem;line-height:1.65}.technology-treasury{background:#fffdf7e0;border:1px solid #dfd5bd;border-radius:15px;flex:0 0 220px;grid-template-columns:auto auto;align-items:center;gap:1px 10px;padding:16px 18px;display:grid;box-shadow:0 10px 30px #42371f12}.technology-treasury>span{color:#fff5d5;background:#c79332;border-radius:10px;grid-row:1/3;place-content:center;width:38px;height:38px;display:grid}.technology-treasury>div{display:grid}.technology-treasury strong{color:#58451d;font-family:Fraunces,Georgia,serif;font-size:1.25rem;line-height:1}.technology-treasury small{color:#8a7d63;font-size:.57rem}.technology-treasury .technology-progress{background:#e7e2d5;border-radius:20px;grid-column:1/-1;height:5px;margin-top:11px;display:block;overflow:hidden}.technology-progress i{border-radius:inherit;background:linear-gradient(90deg,#d29b38,#e2bd66);height:100%;transition:width .25s;display:block}.technology-treasury em{color:#8b806a;text-align:right;grid-column:1/-1;margin-top:5px;font-size:.54rem;font-style:normal}.technology-filters{flex-wrap:wrap;gap:7px;margin-bottom:17px;display:flex}.technology-filters button{color:#637069;cursor:pointer;background:#ffffff94;border:1px solid #d9dcd2;border-radius:9px;align-items:center;gap:7px;min-height:34px;padding:7px 12px;font-size:.62rem;font-weight:700;display:flex}.technology-filters button span{color:#a77a27;font-size:.85rem}.technology-filters button.is-active{color:#fff;background:#285e4d;border-color:#285e4d;box-shadow:0 6px 16px #20534529}.technology-filters button.is-active span{color:#f3ce7a}.technology-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:16px;display:grid}.technology-tree{background:#fffdf7b8;border:1px solid #d9ded4;border-radius:17px;grid-template-columns:repeat(5,minmax(168px,1fr));min-width:890px;display:grid;overflow:hidden;box-shadow:0 16px 42px #21433514}.technology-tier{min-width:0;padding:15px 11px 17px}.technology-tier+.technology-tier{background:#f1f2e96b;border-left:1px dashed #d8d9cf}.technology-tier:nth-child(4),.technology-tier:nth-child(5){background:#ebefe4a8}.technology-tier>header{align-items:center;gap:8px;min-height:41px;margin:0 3px 11px;display:flex}.technology-tier>header>span{color:#958052;background:#ede7d6;border-radius:50%;place-content:center;width:27px;height:27px;font-family:Fraunces,Georgia,serif;font-size:.68rem;display:grid}.technology-tier>header div{display:grid}.technology-tier>header small{color:#a19e92;letter-spacing:.1em;text-transform:uppercase;font-size:.47rem;font-weight:800}.technology-tier>header strong{color:#3f5048;font-family:Fraunces,Georgia,serif;font-size:.78rem}.technology-tier__nodes{gap:9px;display:grid}.technology-node{width:100%;min-height:74px;color:var(--ink);cursor:pointer;text-align:left;background:#fffefa;border:1px solid #dfe2da;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 8px;transition:all .15s;display:grid;position:relative;box-shadow:0 4px 11px #203b310d}.technology-node:hover{border-color:#9eb6a8;transform:translateY(-1px)}.technology-node.is-selected{border-color:#326e5a;outline:2px solid #326e5a1f}.technology-tree--domains{grid-template-columns:repeat(3,minmax(230px,1fr));min-width:720px}.technology-tree--domains .technology-tier:nth-child(4),.technology-tree--domains .technology-tier:nth-child(5){background:initial}.technology-node--construction{border-left:3px solid #b88755}.technology-node--agriculture{border-left:3px solid #6d9a58}.technology-node--nutrition{border-left:3px solid #c38b45}.technology-node--industry{border-left:3px solid #647b85}.technology-node--energy{border-left:3px solid #d0a532}.capital-industry-page{width:min(1320px,100% - 3rem);margin:0 auto;padding:2.5rem 0 5rem}.capital-industry-hero{color:#f7f4e9;background:radial-gradient(circle at 82% 18%,#e6b14340,#0000 30%),linear-gradient(135deg,#253f43,#355e5c);border-radius:22px;justify-content:space-between;align-items:center;gap:2rem;padding:2rem;display:flex;box-shadow:0 18px 42px #143a302e}.capital-industry-hero h1{margin:.2rem 0 .35rem;font:700 clamp(2rem,4vw,3.35rem)/1.05 Fraunces,Georgia,serif}.capital-industry-hero p{color:#d2e2da;max-width:760px;margin:.25rem 0}.capital-industry-hero>div:last-child{text-align:center;background:#ffffff1a;border:1px solid #ffffff29;border-radius:15px;min-width:180px;padding:1rem 1.2rem;display:grid}.capital-industry-hero>div:last-child strong{color:#f3cc70;font:700 2.2rem Fraunces,Georgia,serif}.capital-industry-hero>div:last-child span{color:#d4e3de;font-size:.72rem}.capital-flow-section,.capital-electricity-section,.capital-industry-section,.capital-industry-catalog{background:var(--paper);border:1px solid var(--border);box-shadow:0 10px 28px var(--shadow);border-radius:18px;margin-top:1.5rem;padding:1.4rem}.capital-flow-grid{grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:.75rem;display:grid}.capital-flow-grid article{background:var(--surface-raised);border:1px solid var(--border);border-radius:11px;align-items:center;gap:.7rem;padding:.8rem;display:flex}.capital-flow-grid .resource-svg{width:38px;height:38px}.capital-flow-grid article div{grid-template-columns:1fr 1fr;gap:.15rem .55rem;display:grid}.capital-flow-grid article strong{color:var(--forest-800);grid-column:1/-1}.capital-flow-grid article span{font-size:.72rem}.capital-flow-grid .is-consumed{color:#a35448}.capital-flow-grid .is-produced{color:#367654}.capital-flow-grid .capital-flow-stock{color:var(--muted);border-top:1px solid var(--border);grid-column:1/-1;margin-top:.2rem;padding-top:.35rem}.capital-flow-grid .capital-flow-stock b{color:var(--forest-800)}.capital-electricity-section{background:linear-gradient(135deg,var(--paper),#fff9e9)}.capital-electricity-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.capital-electricity-grid article{background:#ffffffa8;border:1px solid #e2d3a6;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:.1rem .65rem;padding:.9rem;display:grid}.capital-electricity-grid article .resource-svg{grid-row:1/3;width:38px;height:38px}.capital-electricity-grid article span{color:var(--muted);font-size:.64rem}.capital-electricity-grid article strong{color:#66501c;font-family:Fraunces,Georgia,serif}.capital-electricity-grid article.is-housing{background:#f2faf4;border-color:#b8d4c4}.capital-electricity-grid article.is-housing strong{color:#2d6a4b}.capital-electricity-warning{color:#8c4a2e;background:#fff0e5;border-radius:9px;align-items:center;gap:.5rem;margin:.85rem 0 0;padding:.65rem .8rem;font-size:.76rem;display:flex}.capital-electricity-warning .resource-svg{width:24px;height:24px}.capital-industry-domain+.capital-industry-domain{margin-top:1.4rem}.capital-domain-heading{border-bottom:1px solid var(--border);color:var(--forest-800);align-items:center;gap:.55rem;margin:0 0 .7rem;padding-bottom:.45rem;font:700 .95rem Fraunces,Georgia,serif;display:flex}.capital-domain-heading>span{color:#f7e4ae;background:#526d69;border-radius:8px;place-content:center;width:26px;height:26px;font-size:.85rem;display:grid}.capital-domain-heading>em{color:var(--muted);margin-left:auto;font-size:.68rem;font-style:normal;font-weight:600}.capital-domain-heading--agriculture>span{background:#5c7a3f}.capital-domain-heading--nutrition>span{background:#a8703a}.capital-domain-heading--industry>span{background:#4a5f74}.capital-domain-heading--energy>span{background:#8b6d1f}.capital-industry-grid,.capital-industry-catalog-grid{gap:.9rem;display:grid}.capital-industry-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.capital-industry-catalog-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.capital-industry-grid>article,.capital-industry-catalog-grid>article{background:var(--surface-raised);border:1px solid var(--border);border-radius:13px;flex-direction:column;gap:.7rem;padding:1rem;display:flex}.capital-industry-grid>article.is-blocked{background:#fffaf4;border-color:#dfb89b}.capital-industry-grid article>header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.capital-industry-grid article>header>div{align-items:center;gap:.6rem;display:flex}.capital-industry-grid h4,.capital-industry-catalog-grid h3{color:var(--forest-800);margin:0;font-size:1.05rem}.capital-industry-grid article>p,.capital-industry-catalog-grid article>p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.5}.industry-glyph{color:#f7e4ae;background:#526d69;border-radius:11px;flex:none;place-content:center;width:42px;height:42px;font-size:1.15rem;display:grid}.industry-status{white-space:nowrap;border-radius:999px;padding:.3rem .5rem;font-size:.62rem}.industry-status--running{color:#286b49;background:#e1f3e7}.industry-status--input_blocked{color:#965b30;background:#f8e5d4}.industry-status--power_blocked{color:#8b5d12;background:#fff0ba}.industry-status--paused{color:#666;background:#ececec}.capital-industry-grid article>p.industry-electricity,.capital-industry-catalog-grid article>p.industry-electricity{color:#7b5b16;background:#fff7d8;border-radius:8px;align-items:center;gap:.35rem;padding:.45rem .55rem;display:flex}.industry-electricity.is-production{color:#2d6a4b!important;background:#eaf7ee!important}.industry-electricity .resource-svg{width:22px;height:22px}.capital-industry-grid label{color:var(--muted);gap:.25rem;font-size:.68rem;font-weight:700;display:grid}.capital-industry-grid select{border:1px solid var(--border);background:var(--paper);border-radius:8px;padding:.55rem}.industry-recipe-flow{background:var(--surface-soft);border-radius:9px;grid-template-columns:1fr auto 1fr;align-items:center;gap:.45rem;padding:.65rem;display:grid}.industry-recipe-flow>div{gap:.25rem;display:grid}.industry-recipe-flow span,.industry-cost span{align-items:center;gap:.3rem;font-size:.67rem;display:flex}.industry-recipe-flow .resource-svg,.industry-cost .resource-svg{width:20px;height:20px}.industry-recipe-flow>b{color:var(--muted)}.capital-industry-grid footer{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:.7rem;margin-top:auto;padding-top:.7rem;display:flex}.capital-industry-grid footer p,.industry-cost{flex-wrap:wrap;gap:.45rem;margin:.25rem 0 0;display:flex}.capital-industry-grid button,.capital-industry-catalog-grid button{color:#fff;background:var(--forest-700);cursor:pointer;border:0;border-radius:8px;padding:.62rem .75rem;font-weight:750}.capital-industry-grid button:disabled,.capital-industry-catalog-grid button:disabled{cursor:not-allowed;opacity:.5}.capital-industry-catalog-grid>article>button{margin-top:auto}.admin-industry-list{gap:1rem;display:grid}.admin-industry-list>form{background:var(--paper);border:1px solid var(--border);box-shadow:0 8px 24px var(--shadow);border-radius:15px;padding:1.1rem}.admin-industry-list form>header,.admin-industry-list form>footer{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-industry-list form>header div{flex-wrap:wrap;align-items:baseline;gap:.55rem;display:flex}.admin-industry-list form>header span{color:var(--muted);letter-spacing:.12em;font-size:.6rem}.admin-industry-list h2{color:var(--forest-800);margin:0;font:700 1.25rem Fraunces,Georgia,serif}.admin-industry-list form>p{color:var(--muted);font-size:.8rem}.admin-max-level{align-items:center;gap:.6rem;width:max-content;margin:.8rem 0;font-size:.75rem;font-weight:700;display:flex}.admin-max-level select,.admin-max-level input{border:1px solid var(--border);border-radius:7px;padding:.45rem}.admin-industry-levels{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.admin-industry-levels fieldset{border:1px solid var(--border);border-radius:10px;padding:.8rem}.admin-industry-levels legend{color:var(--forest-700);font-weight:800}.admin-industry-levels label{color:var(--muted);gap:.2rem;font-size:.67rem;display:grid}.admin-industry-levels input{border:1px solid var(--border);background:var(--surface-raised);border-radius:7px;min-width:0;padding:.45rem}.admin-cost-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.45rem;margin-top:.65rem;display:grid}.admin-industry-list form>footer{border-top:1px solid var(--border);margin-top:1rem;padding-top:.8rem}.admin-industry-list form>footer button{color:#fff;background:var(--forest-700);border:0;border-radius:8px;padding:.65rem .85rem;font-weight:750}@media (width<=820px){.capital-industry-page{width:min(100% - 1.25rem,1320px);padding-top:1rem}.capital-industry-hero{flex-direction:column;align-items:flex-start}.capital-industry-hero>div:last-child{box-sizing:border-box;width:100%}.capital-electricity-grid{grid-template-columns:1fr 1fr}.admin-industry-levels{grid-template-columns:1fr}}.technology-node.is-locked{opacity:.55;filter:saturate(.45)}.technology-node.is-unlocked{background:#f4f9ef;border-color:#a9c7aa}.technology-node__branch{background:#c8cabb;width:11px;height:1px;position:absolute;top:50%;left:-12px}.technology-node__branch:before{content:"";border-top:1px solid #c8cabb;border-left:1px solid #c8cabb;width:6px;height:6px;position:absolute;top:-3px;left:0;transform:rotate(-45deg)}.technology-node__icon{color:#f4d78f;background:#315d4d;border-radius:9px;place-content:center;width:31px;height:31px;font-size:1rem;display:grid}.technology-node--agriculture .technology-node__icon{color:#e0d699;background:#607a3e}.technology-node--artisanat .technology-node__icon{color:#ead4aa;background:#806344}.technology-node--metallurgie .technology-node__icon{color:#d6e0de;background:#536965}.technology-node--alchimie .technology-node__icon{color:#d8d3ee;background:#675f7d}.technology-node--ingenierie .technology-node__icon{color:#d1e3e4;background:#376d75}.technology-node__copy{gap:1px;min-width:0;display:grid}.technology-node__copy small{color:#9b9e95;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.43rem;font-weight:800;overflow:hidden}.technology-node__copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;overflow:hidden}.technology-node__copy em{color:#a57d32;font-size:.51rem;font-style:normal;font-weight:750}.technology-node.is-unlocked .technology-node__copy em{color:#4c8559}.technology-node__state{color:#9c8b68;background:#f0ecdf;border-radius:50%;place-content:center;width:18px;height:18px;font-size:.58rem;display:grid}.technology-node.is-unlocked .technology-node__state{color:#fff;background:#5c925f}.technology-tier__empty{color:#a6aaa2;margin:8px 4px;font-size:.58rem;line-height:1.4}.technology-detail{background:#fffdf8;border:1px solid #d9ded4;border-radius:17px;padding:21px;position:sticky;top:14px;overflow:hidden;box-shadow:0 16px 42px #2143351a}.technology-detail:before{content:"";background:#607a3e;height:4px;position:absolute;top:0;left:0;right:0}.technology-detail--artisanat:before{background:#806344}.technology-detail--metallurgie:before{background:#536965}.technology-detail--alchimie:before{background:#675f7d}.technology-detail--ingenierie:before{background:#376d75}.technology-detail__top{align-items:center;gap:12px;display:flex}.technology-detail__top>span{color:#f3d58c;background:var(--forest-800);border-radius:12px;flex:none;place-content:center;width:45px;height:45px;font-size:1.25rem;display:grid}.technology-detail__top small{color:#9a927d;text-transform:uppercase;font-size:.51rem;font-weight:750}.technology-detail h2{color:var(--forest-950);margin:3px 0 0;font-family:Fraunces,Georgia,serif;font-size:1.23rem;line-height:1.05}.technology-detail>p{color:var(--muted);margin:15px 0;font-size:.68rem;line-height:1.55}.technology-resource-unlock{background:#fbf5e4;border:1px solid #eadcb9;border-radius:11px;gap:7px;padding:12px;display:grid}.technology-resource-unlock small,.technology-recipes>header small,.technology-requires>small{color:#9c8960;letter-spacing:.09em;text-transform:uppercase;font-size:.48rem;font-weight:850}.technology-resource-unlock strong{align-items:center;gap:8px;font-size:.73rem;display:flex}.technology-resource-unlock strong span{color:#b58125;font-size:1rem}.technology-recipes{margin-top:16px}.technology-recipes>header{justify-content:space-between;align-items:center;margin-bottom:7px;display:flex}.technology-recipes>header span{color:#9ba19c;font-size:.49rem}.technology-recipes article{background:#fafbf6;border:1px solid #e3e6de;border-radius:9px;gap:6px;padding:9px 10px;display:grid}.technology-recipes article+article{margin-top:6px}.technology-recipes article>div{align-items:center;gap:7px;font-size:.66rem;display:flex}.technology-recipes article>div span{color:#5f806f}.technology-recipes article p{flex-wrap:wrap;gap:4px;margin:0;display:flex}.technology-recipes article p span{color:#7b7568;font-size:.49rem}.technology-recipes article p b{color:#c0b9a7;margin-right:4px;font-weight:400}.technology-requires{gap:7px;margin-top:15px;display:grid}.technology-requires>div{flex-wrap:wrap;gap:5px;display:flex}.technology-requires span{color:#8d6e63;background:#f6eae5;border-radius:6px;padding:5px 7px;font-size:.51rem}.technology-requires span.is-met{color:#4e7858;background:#e8f1e5}.technology-unlock{color:#fff;cursor:pointer;background:linear-gradient(135deg,#285f4d,#153e33);border:0;border-radius:9px;justify-content:space-between;align-items:center;width:100%;min-height:41px;margin-top:17px;padding:10px 13px;font-size:.65rem;font-weight:800;display:flex}.technology-unlock span{color:#f1cb75}.technology-unlock:disabled{color:#89908b;cursor:not-allowed;background:#e5e7e1;justify-content:center}.technology-complete{color:#386a49;background:#e7f1e3;border-radius:9px;align-items:center;gap:10px;margin-top:17px;padding:10px 12px;display:flex}.technology-complete>span{color:#fff;background:#5a8b5d;border-radius:50%;place-content:center;width:25px;height:25px;display:grid}.technology-complete div{display:grid}.technology-complete strong{font-size:.62rem}.technology-complete small{color:#6f8b74;font-size:.5rem}.technology-error{background:#fae9e5;border-radius:8px;padding:8px 10px;color:var(--error)!important;font-size:.58rem!important}.leaderboard-page{width:min(100%,1120px);margin:0 auto;padding:clamp(42px,7vh,78px) 0 30px}.leaderboard-hero{justify-content:space-between;align-items:flex-end;gap:35px;display:flex}.leaderboard-hero>div:first-child{max-width:670px}.leaderboard-hero h1{color:var(--forest-950);letter-spacing:-.05em;margin:6px 0 13px;font-family:Fraunces,Georgia,serif;font-size:clamp(2.7rem,5vw,4.5rem);font-weight:600;line-height:1}.leaderboard-hero>div:first-child>p:last-child{color:var(--muted);margin:0;line-height:1.6}.leaderboard-own-rank{background:linear-gradient(135deg,#fff9e7,#f4e6bd);border:1px solid #d7c48e;border-radius:16px;grid-template-columns:auto 1fr 1fr;align-items:center;gap:17px;min-width:330px;padding:18px 21px;display:grid;box-shadow:0 15px 35px #664e181a}.leaderboard-own-rank>span{font-size:2rem}.leaderboard-own-rank>div{gap:3px;display:grid}.leaderboard-own-rank small{color:#7d6c44;letter-spacing:.03em;text-transform:uppercase;font-size:.64rem;font-weight:700}.leaderboard-own-rank strong{color:#3a4f42;font-family:Fraunces,Georgia,serif;font-size:1.35rem}.leaderboard-own-rank sup{margin-left:1px;font-family:inherit;font-size:.55em}.leaderboard-tabs{flex-wrap:wrap;gap:9px;margin-top:30px;display:flex}.leaderboard-tabs button{color:var(--forest-800);cursor:pointer;background:#f8faf6;border:1px solid #ced7cd;border-radius:999px;padding:9px 15px;font-size:.72rem;font-weight:750}.leaderboard-tabs button.is-current{color:#fff;background:var(--forest-700);border-color:var(--forest-700)}.leaderboard-board{background:var(--paper);border:1px solid #d9ddd2;border-radius:19px;margin-top:19px;overflow:hidden;box-shadow:0 20px 50px #19413214}.leaderboard-board__heading{border-bottom:1px solid #e2e5dd;justify-content:space-between;align-items:center;gap:20px;padding:24px 28px;display:flex}.leaderboard-board__heading h2{color:var(--forest-950);margin:0 0 4px;font-family:Fraunces,Georgia,serif;font-size:1.45rem}.leaderboard-board__heading p{color:var(--muted);margin:0;font-size:.76rem}.leaderboard-refresh{color:#536d60;align-items:center;gap:11px;display:flex}.leaderboard-refresh>span{background:#e8f0e8;border-radius:50%;place-content:center;width:34px;height:34px;font-size:1.2rem;display:grid}.leaderboard-refresh>div{gap:2px;display:grid}.leaderboard-refresh small{color:var(--muted);font-size:.64rem}.leaderboard-refresh strong{font-size:.71rem}.leaderboard-table-wrap{overflow-x:auto}.leaderboard-table{border-collapse:collapse;width:100%}.leaderboard-table th{color:#7a857e;letter-spacing:.09em;text-align:left;text-transform:uppercase;background:#f6f7f2;padding:13px 24px;font-size:.62rem}.leaderboard-table th:first-child{text-align:center;width:90px}.leaderboard-table th:nth-child(4),.leaderboard-table th:last-child{text-align:right;width:150px}.leaderboard-table td{color:#526158;border-top:1px solid #e8eae4;padding:17px 24px;font-size:.8rem}.leaderboard-table tbody tr:first-child td{border-top:0}.leaderboard-table td:first-child{text-align:center}.leaderboard-table td:nth-child(4),.leaderboard-table td:last-child{color:var(--forest-800);text-align:right}.leaderboard-table td:nth-child(2)>strong{color:var(--forest-950)}.leaderboard-table .is-current-player td{background:#eef5e9}.leaderboard-table .is-current-player td:first-child{box-shadow:inset 4px 0 #7ca36e}.leaderboard-rank{color:#52685d;white-space:nowrap;font-size:.85rem}.leaderboard-you{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#538067;border-radius:10px;margin-left:9px;padding:3px 7px;font-size:.55rem;font-weight:800;display:inline-block}.leaderboard-pagination{border-top:1px solid #e2e5dd;justify-content:center;align-items:center;gap:15px;padding:19px 24px;display:flex}.leaderboard-pagination button{color:var(--forest-800);cursor:pointer;background:#f8faf6;border:1px solid #ced7cd;border-radius:8px;padding:8px 12px;font-size:.68rem;font-weight:700}.leaderboard-pagination button:disabled{opacity:.42;cursor:not-allowed}.leaderboard-pagination .leaderboard-my-page{color:#fff;background:var(--forest-700);border-color:var(--forest-700)}.leaderboard-pagination>span{color:var(--muted);font-size:.7rem}.leaderboard-loading,.leaderboard-error{text-align:center;border-radius:13px;margin-top:35px;padding:20px}.leaderboard-loading{color:var(--muted);background:#ffffff8c}.leaderboard-error{color:var(--error);background:#fae9e5}@media (width<=1260px){.technology-layout{display:block;overflow-x:auto}.technology-tree{width:100%}.technology-detail{box-sizing:border-box;width:min(100%,600px);margin-top:16px;position:relative;top:auto}.player-header{gap:10px}.player-header__account{width:186px;padding:6px 8px}.player-header__navigation button,.player-header__navigation a{margin-left:3px;padding-left:8px;padding-right:8px}.player-header__account button{padding-left:8px;padding-right:8px}}@media (width<=1040px){.auth-shell{grid-template-columns:minmax(400px,.9fr) minmax(450px,1.1fr)}.auth-story__content{width:84%}.story-features{gap:12px;display:grid}.auth-story h1{font-size:clamp(3.2rem,7vw,4.8rem)}.world-grid,.owned-islands{grid-template-columns:repeat(2,minmax(0,1fr))}.island-offers{grid-template-columns:repeat(3,minmax(0,1fr))}.game-layout{grid-template-columns:minmax(0,1fr) 340px}.admin-layout{grid-template-columns:1fr;gap:25px}.admin-nav{padding-bottom:4px;display:flex;position:static;overflow-x:auto}.admin-nav>p{display:none}.admin-nav a{flex:none}.admin-ship-form__stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=820px){.auth-shell{display:block}.auth-story{display:none}.auth-panel{min-height:100vh;padding:30px 24px 18px}.auth-card__mobile-brand{display:block}.auth-card__heading{margin-top:36px}.player-shell{padding-left:22px;padding-right:22px}.player-header{grid-template-columns:auto auto;justify-content:space-between;padding:14px 0 10px}.player-header__account{width:auto;min-width:150px}.player-header__navigation{grid-area:2/1/auto/-1;justify-content:flex-start;width:100%;padding-bottom:4px}.player-header__account .account-copy{display:none}.welcome-card{flex-direction:column;align-items:flex-start}.world-card{grid-template-columns:auto 1fr}.world-card>button{grid-column:1/-1}.world-grid{grid-template-columns:1fr}.archipelago__heading,.island-market__heading{flex-direction:column;align-items:flex-start}.island-market__actions{justify-content:space-between;width:100%;max-width:none}.island-offers{grid-template-columns:repeat(2,minmax(0,1fr))}.world-tile__body>p{min-height:auto}.game-layout{flex-direction:column;display:flex}.island-board{min-height:500px}.tutorial-panel,.management-panel{border-top:1px solid #daddd3;border-left:0}.technology-page{padding-top:30px}.technology-hero{flex-direction:column;align-items:flex-start;gap:20px}.technology-treasury{box-sizing:border-box;width:min(100%,280px)}.technology-filters{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.technology-filters button{flex:none}.leaderboard-hero{flex-direction:column;align-items:flex-start}.leaderboard-own-rank{box-sizing:border-box;width:min(100%,420px);min-width:0}.admin-header{padding:0 22px}.admin-header__account>div,.admin-badge{display:none}.admin-layout{width:calc(100% - 36px);padding-top:30px}.admin-page__heading{flex-direction:column;align-items:flex-start;gap:15px}.admin-page__heading>p{text-align:left}.admin-summary,.admin-section-grid{grid-template-columns:1fr}.admin-island-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-ship-form__identity{grid-template-columns:1fr}}@media (width<=520px){.auth-panel{justify-content:flex-start;padding:24px 18px 14px}.auth-card{margin-top:0}.auth-card__heading h2{font-size:2rem}.player-header__navigation button,.player-header__navigation a,.player-header__account button{margin-left:0;padding:8px}.account-identity,.avatar{display:none}.welcome-card{margin-top:45px;padding:30px 24px}.world-card{padding:24px}.world-selection{padding-top:48px}.archipelago{padding-top:30px}.owned-islands,.island-offers{grid-template-columns:1fr}.island-market__actions,.island-market__refresh-control{width:100%}.island-market__refresh{flex:1}.archipelago-wallet{width:100%}.world-selection__heading h1{font-size:2.65rem}.world-tile__landscape{height:150px}.player-header__navigation .worlds-link{font-size:.65rem}.game-shell{padding-left:14px;padding-right:14px}.game-topbar{flex-direction:column;align-items:flex-start;padding:27px 0}.resource-bar{width:100%}.resource-bar>div{flex:1}.island-board{min-height:380px}.play-island{inset:16% 4% 16% 3%}.play-mine{transform:scale(.75)}.technology-hero h1{font-size:2.65rem}.technology-detail{padding:18px}.leaderboard-page{padding-top:30px}.leaderboard-hero h1{font-size:2.65rem}.leaderboard-own-rank{grid-template-columns:auto 1fr 1fr;padding:15px}.leaderboard-board__heading{flex-direction:column;align-items:flex-start;padding:20px}.leaderboard-table thead{display:none}.leaderboard-table,.leaderboard-table tbody,.leaderboard-table tr,.leaderboard-table td{box-sizing:border-box;width:100%;display:block}.leaderboard-table tr{border-top:1px solid #e2e5dd;grid-template-columns:72px 1fr;padding:13px 15px;display:grid}.leaderboard-table tbody tr:first-child{border-top:0}.leaderboard-table td{border:0;padding:4px 8px;text-align:left!important}.leaderboard-table td:first-child{grid-row:1/5;align-content:center}.leaderboard-table td:nth-child(3){color:var(--muted);font-size:.68rem}.leaderboard-table td:nth-child(4),.leaderboard-table td:last-child{font-size:.75rem}.leaderboard-table .is-current-player td:first-child{box-shadow:none}.leaderboard-pagination{flex-wrap:wrap;gap:9px;padding:16px}.leaderboard-pagination>span{text-align:center;order:-1;width:100%}.admin-header__brand>span,.admin-header__account>a{display:none}.admin-header{min-height:70px}.admin-layout{width:calc(100% - 24px)}.admin-nav a{padding:9px 11px}.admin-page__heading h1{font-size:2.45rem}.admin-section-grid>a{grid-template-columns:auto minmax(0,1fr);padding:20px}.admin-section-grid>a>b{display:none}.admin-panel{padding:17px}.admin-panel__heading{flex-direction:column;align-items:stretch}.admin-panel__heading label{min-width:0}.admin-actions article{grid-template-columns:auto minmax(0,1fr)}.admin-actions button{grid-column:1/-1;width:100%}.admin-ship-form__stats{grid-template-columns:1fr 1fr}.admin-ship-list form>header,.admin-ship-list form>footer{flex-direction:column;align-items:flex-start}.admin-ship-list form>footer button{width:100%}}.capital-card__stocks>span,.capital-resource-strip>span,.cargo-pill,.route-operations li>span:last-child,.route-ship__cargo>span,.offer-costs span,.resource-inline-amount{align-items:center;gap:.3rem;display:inline-flex}.capital-card__stocks .resource-svg{width:1.75em;height:1.75em}.capital-resource-strip .resource-svg{width:1.55em;height:1.55em}.island-card__stats .resource-svg{width:1.8em;height:1.8em}.offer-capacities .resource-svg{grid-row:1/3;align-self:center;width:2.25em;height:2.25em;margin-right:.15rem}.offer-costs .resource-svg,.cargo-pill .resource-svg,.route-ship__cargo .resource-svg{width:1.75em;height:1.75em}.resource-stock__heading>span{align-items:center;gap:.4rem;display:inline-flex}.resource-stock__heading .resource-svg{width:2em;height:2em}.resource-svg.production-icon{width:36px;height:36px;color:inherit;background:0 0;border-radius:0;padding:0;display:block}.resource-svg.resource-png.production-icon{border-radius:50%}.resource-cost-list{flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .65rem;display:inline-flex}.resource-cost-list>span{align-items:center;gap:.25rem;display:inline-flex}.resource-cost-list .resource-svg{width:1.7em;height:1.7em}.resource-inline-amount+.resource-inline-amount{margin-left:.35rem}.resource-inline-amount>b{color:currentColor;opacity:.5;margin-right:.05rem;font-weight:400}.shipyard-stocks{flex-wrap:wrap;justify-content:flex-end;gap:.4rem .75rem;margin:0;padding:0;list-style:none;display:flex}.shipyard-stocks>li{background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .6rem;font-size:.74rem;display:inline-flex}.shipyard-stocks .resource-svg{width:1.7em;height:1.7em}.shipyard-stocks strong{color:var(--forest-900);font-weight:750}.shipyard-stocks span{color:var(--muted)}.ship-price .resource-svg,.route-operations .resource-svg{width:1.7em;height:1.7em}.technology-treasury>.resource-svg{grid-row:1/3;width:40px;height:40px}.technology-node__icon{width:36px;height:36px;color:inherit;background:0 0}.technology-node__icon .resource-svg{width:36px;height:36px}.technology-icon{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block;box-shadow:0 1px 4px #122d243d}.technology-icon--fallback{color:#f1d58d;background:var(--forest-800);place-items:center;display:grid}.technology-node__copy em{align-items:center;gap:3px;display:inline-flex}.technology-node__copy em .resource-svg{width:1.55em;height:1.55em}.technology-detail__top>span{width:48px;height:48px;color:inherit;background:0 0}.technology-detail__top .resource-svg{width:48px;height:48px}.technology-resource-unlock strong>.resource-svg{width:2.5em;height:2.5em}.technology-unlock .resource-svg{width:1.65em;height:1.65em}.language-switcher{right:max(78px, calc(env(safe-area-inset-right) + 60px));bottom:max(18px, env(safe-area-inset-bottom));z-index:1000;position:fixed}.language-switcher__trigger{color:#fff8e8;cursor:pointer;height:48px;font:inherit;background:#173f33;border:1px solid #153e3333;border-radius:999px;align-items:center;gap:.45rem;padding:0 .6rem 0 .8rem;font-weight:700;display:flex;box-shadow:0 10px 30px #0e30283d}.language-flag{background:#fff;border:1px solid #0000002e;border-radius:3px;flex:none;width:24px;height:16px;display:block;overflow:hidden;box-shadow:0 1px 2px #00000029}.language-switcher__trigger>span:nth-child(2){text-align:left;text-overflow:ellipsis;white-space:nowrap;width:min(152px,36vw);overflow:hidden}.language-switcher__chevron{transition:transform .16s}.language-switcher__trigger[aria-expanded=true] .language-switcher__chevron{transform:rotate(180deg)}body:has(.player-shell,.game-shell,.admin-shell,.admin-access-denied) .language-switcher__trigger{border-radius:50%;justify-content:center;width:48px;padding:0}body:has(.player-shell,.game-shell,.admin-shell,.admin-access-denied) .language-switcher__trigger>span:nth-child(2){display:none}body:has(.player-shell,.game-shell,.admin-shell,.admin-access-denied) .language-switcher__chevron{display:none}.language-switcher__menu{width:min(440px,100vw - 24px);max-height:min(64vh,520px);color:var(--ink);background:var(--paper);border:1px solid var(--border);scrollbar-width:thin;border-radius:16px;grid-template-columns:repeat(2,minmax(180px,1fr));padding:.45rem;display:grid;position:absolute;bottom:calc(100% + 10px);right:0;overflow-y:auto;box-shadow:0 18px 55px #0e30284d}.language-switcher__menu button{min-height:42px;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:9px;grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:.65rem;padding:.55rem .65rem;display:grid}.language-switcher__menu button:hover,.language-switcher__menu button:focus-visible{background:var(--surface-soft);outline:none}.language-switcher__menu button.is-selected{color:var(--forest-800);background:var(--sage-100);font-weight:800}.language-switcher__menu button>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.language-switcher__check{text-align:center}:root[data-theme=dark] .language-switcher__trigger{color:#1b3028;background:#f0c96f;border-color:#ffffff29}[dir=rtl] .language-switcher{right:auto;left:max(78px, calc(env(safe-area-inset-left) + 60px))}[dir=rtl] .language-switcher__menu{left:0;right:auto}[dir=rtl] .language-switcher__trigger>span:nth-child(2),[dir=rtl] .language-switcher__menu button{text-align:right}[dir=rtl] .theme-toggle{right:auto;left:max(18px, env(safe-area-inset-left))}.theme-toggle{right:max(18px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));z-index:1000;color:#fff8e8;cursor:pointer;background:#173f33;border:1px solid #153e3333;border-radius:50%;place-content:center;width:48px;height:48px;padding:0;transition:background .16s,box-shadow .16s,transform .16s;display:grid;position:fixed;box-shadow:0 10px 30px #0e30283d}.theme-toggle:hover{transform:translateY(-2px);box-shadow:0 13px 34px #0e302852}.theme-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;grid-area:1/1;width:22px;height:22px;transition:opacity .15s,transform .2s}.theme-toggle__sun{opacity:0;transform:rotate(-35deg)scale(.65)}:root[data-theme=dark] .theme-toggle{color:#1b3028;background:#f0c96f;border-color:#ffffff29;box-shadow:0 10px 32px #00000061}:root[data-theme=dark] .theme-toggle__moon{opacity:0;transform:rotate(35deg)scale(.65)}:root[data-theme=dark] .theme-toggle__sun{opacity:1;transform:rotate(0)scale(1)}:root[data-theme=dark] .auth-panel{background:radial-gradient(circle at 70% 30%, #1a3028 0, transparent 48%), var(--cream)}:root[data-theme=dark] .auth-tabs,:root[data-theme=dark] .form-field input,:root[data-theme=dark] .player-header__account button,:root[data-theme=dark] .player-header__account a,:root[data-theme=dark] .route-form input,:root[data-theme=dark] .route-form select,:root[data-theme=dark] .route-ship-assignment select,:root[data-theme=dark] .route-editor input,:root[data-theme=dark] .route-editor select,:root[data-theme=dark] .admin-panel select,:root[data-theme=dark] .admin-panel input,:root[data-theme=dark] .admin-ship-list input{color:var(--ink);border-color:var(--border);background:#152620}:root[data-theme=dark] .auth-tabs button{color:var(--muted)}:root[data-theme=dark] .auth-tabs button.is-active{color:var(--ink);background:var(--surface-raised);box-shadow:0 2px 10px #00000047}:root[data-theme=dark] .form-field label,:root[data-theme=dark] .terms-check{color:#bfd0c7}:root[data-theme=dark] .form-message--error{color:#ffaaa0;background:#452824}:root[data-theme=dark] .form-message--success{color:#9ed8b5;background:#1d3b2b}:root[data-theme=dark] .auth-story{background:radial-gradient(circle at 78% 12%,#ffe9a21a,#0000 25%),linear-gradient(146deg,#173f35 0%,#0e2821 65%,#091b17 100%)}:root[data-theme=dark] .player-shell{background:radial-gradient(circle at 80% 0, #4b7c6038, transparent 32%), var(--cream)}:root[data-theme=dark] .player-header{border-color:var(--border)}:root[data-theme=dark] .player-header__account{border-color:var(--border);background:#ffffff0a}:root[data-theme=dark] .play-time-meter.is-warning{color:#ecd59a;background:#3b321f;border-color:#65542c}:root[data-theme=dark] .play-time-meter.is-warning strong{color:#ecd59a}:root[data-theme=dark] .play-time-meter.is-exhausted{background:#422724;border-color:#68413b}:root[data-theme=dark] .play-time-meter.is-exhausted strong{color:#f0b48f}:root[data-theme=dark] .island-route-pill{color:#b6dcc4;background:#22392f;border-color:#35553f}:root[data-theme=dark] .island-route-pill.is-idle{color:#d2c48f;background:#3a3524;border-color:#5a5030}:root[data-theme=dark] .island-route-pill.is-idle>span{color:#c3ad6f}:root[data-theme=dark] .island-card__routes-empty{color:#f0b48f}:root[data-theme=dark] .worlds-link--admin{color:#f0c973!important;background:#342d1d!important;border-color:#68562c!important}:root[data-theme=dark] .worlds-link--technology{color:#e6bd64!important}:root[data-theme=dark] .world-tile,:root[data-theme=dark] .world-list-loading,:root[data-theme=dark] .world-empty,:root[data-theme=dark] .archipelago-wallet,:root[data-theme=dark] .island-card,:root[data-theme=dark] .island-offer,:root[data-theme=dark] .welcome-card,:root[data-theme=dark] .world-card,:root[data-theme=dark] .fleet-section,:root[data-theme=dark] .ship-card,:root[data-theme=dark] .route-list>.route-card,:root[data-theme=dark] .game-layout,:root[data-theme=dark] .tutorial-panel,:root[data-theme=dark] .management-panel,:root[data-theme=dark] .admin-summary article,:root[data-theme=dark] .admin-section-grid>a,:root[data-theme=dark] .admin-panel,:root[data-theme=dark] .admin-ship-list form,:root[data-theme=dark] .technology-treasury,:root[data-theme=dark] .technology-tree,:root[data-theme=dark] .technology-detail{color:var(--ink);background:var(--paper);border-color:var(--border);box-shadow:0 16px 42px var(--shadow)}:root[data-theme=dark] .world-tile dl,:root[data-theme=dark] .management-section+.management-section,:root[data-theme=dark] .admin-panel__heading,:root[data-theme=dark] .admin-ship-list form>header,:root[data-theme=dark] .admin-ship-list form>footer{border-color:var(--border)}:root[data-theme=dark] .world-tile dd,:root[data-theme=dark] .island-card__stats span,:root[data-theme=dark] .island-offer__position strong,:root[data-theme=dark] .ship-card h3,:root[data-theme=dark] .ship-card dd{color:#dbe9e2}:root[data-theme=dark] .world-tile__status,:root[data-theme=dark] .world-tile dt,:root[data-theme=dark] .island-card__title small,:root[data-theme=dark] .island-card__routes>small,:root[data-theme=dark] .island-card__stats small,:root[data-theme=dark] .island-card__stats em,:root[data-theme=dark] .island-offer__position,:root[data-theme=dark] .offer-costs>small,:root[data-theme=dark] .ship-card p,:root[data-theme=dark] .ship-card>small,:root[data-theme=dark] .ship-card dt{color:var(--muted)}:root[data-theme=dark] .island-card__title>b,:root[data-theme=dark] .island-card__stats>div,:root[data-theme=dark] .offer-capacities>span,:root[data-theme=dark] .ship-card dl div,:root[data-theme=dark] .starter-building,:root[data-theme=dark] .production-line,:root[data-theme=dark] .production-empty,:root[data-theme=dark] .construction-option,:root[data-theme=dark] .admin-island-overview>div,:root[data-theme=dark] .admin-actions article{color:var(--ink);background:var(--surface-soft);border-color:var(--border)}:root[data-theme=dark] .offer-costs span,:root[data-theme=dark] .cargo-pill,:root[data-theme=dark] .ship-price,:root[data-theme=dark] .route-ship__cargo span{background:#3a311d;color:#ebc874!important}:root[data-theme=dark] .ship-status{color:#9edab9;background:#1d4434}:root[data-theme=dark] .ship-status--in_transit{color:#9bcce4;background:#1b3a49}:root[data-theme=dark] .route-card__header,:root[data-theme=dark] .route-ship-assignment,:root[data-theme=dark] .route-operations article,:root[data-theme=dark] .route-stop,:root[data-theme=dark] .route-ships>article,:root[data-theme=dark] .route-editor__preview,:root[data-theme=dark] .route-editor__assigned-ships,:root[data-theme=dark] .route-editor__assigned-ships article{color:var(--ink);background:var(--surface-soft);border-color:var(--border)}:root[data-theme=dark] .route-card__identity strong,:root[data-theme=dark] .route-card__details h3,:root[data-theme=dark] .route-operations article>header strong,:root[data-theme=dark] .route-ship__heading strong,:root[data-theme=dark] .route-ship__capacity strong{color:#dcebe4}:root[data-theme=dark] .route-card__identity small,:root[data-theme=dark] .route-form label,:root[data-theme=dark] .route-distance,:root[data-theme=dark] .route-ship-assignment label,:root[data-theme=dark] .route-operations li,:root[data-theme=dark] .route-ship__heading small,:root[data-theme=dark] .route-ship__capacity,:root[data-theme=dark] .route-hint,:root[data-theme=dark] .route-editor label{color:var(--muted)}:root[data-theme=dark] .route-card__actions button:last-child,:root[data-theme=dark] .route-ship-assignment button.secondary,:root[data-theme=dark] .ship-card .ship-card__detach,:root[data-theme=dark] .route-editor__assigned-ships .route-detach,:root[data-theme=dark] .route-stop .route-remove,:root[data-theme=dark] .route-transfer>button,:root[data-theme=dark] .route-editor__actions .secondary{color:#bcd6c9;background:#263b33;border-color:#48665a}:root[data-theme=dark] .route-map{color:#a6d2d1;background:radial-gradient(circle at 25% 25%,#52867f38,#0000 32%),linear-gradient(145deg,#142c2c,#193839)}:root[data-theme=dark] .route-map__stop circle{fill:#182b25;stroke:#75b89e}:root[data-theme=dark] .route-map__stop-number,:root[data-theme=dark] .route-map__label{fill:#d9ebe4}:root[data-theme=dark] .route-map__label{stroke:#183231}:root[data-theme=dark] .route-map>p{color:#a7c4bc}:root[data-theme=dark] .route-editor__preview>header,:root[data-theme=dark] .route-editor__assigned-ships article{border-color:var(--border)}:root[data-theme=dark] .route-editor__preview>header h3,:root[data-theme=dark] .route-editor__assigned-ships h3,:root[data-theme=dark] .route-editor__assigned-ships article strong{color:#dcebe4}:root[data-theme=dark] .route-editor__preview>header small,:root[data-theme=dark] .route-editor__assigned-ships p,:root[data-theme=dark] .route-editor__assigned-ships article small{color:var(--muted)}:root[data-theme=dark] .route-stop__resources{color:var(--muted);background:#21352d}:root[data-theme=dark] .route-stop__resources>strong{color:#bcd6c9}:root[data-theme=dark] .route-stop__resources span{color:#c6d8cf;background:#263b33;border-color:#48665a}:root[data-theme=dark] .route-card__details h3>span,:root[data-theme=dark] .route-card__identity>span,:root[data-theme=dark] .route-ship__heading>span{color:#9bd1bc;background:#28453a}:root[data-theme=dark] .resource-select__trigger,:root[data-theme=dark] .resource-select__menu{color:#dcebe4;background:#1c2e28;border-color:#48665a}:root[data-theme=dark] .resource-select__menu button{color:#dcebe4}:root[data-theme=dark] .resource-select__menu button:hover,:root[data-theme=dark] .resource-select__menu button:focus-visible{background:#264036}:root[data-theme=dark] .resource-select__menu button.is-selected{color:#bcd6c9;background:#2f4f43}:root[data-theme=dark] .locked-resource-intro{color:var(--muted)}:root[data-theme=dark] .locked-resource{background:#1f2f28;border-color:#48665a}:root[data-theme=dark] .locked-resource strong{color:#dcebe4}:root[data-theme=dark] .locked-resource small,:root[data-theme=dark] .ship-upkeep{color:var(--muted)}:root[data-theme=dark] .ship-card__unfunded{color:#eaa79e;background:#3a2622;border-color:#6b4038}:root[data-theme=dark] .archipelago-wallet--alert{background:#3a2622;border-color:#6b4038}:root[data-theme=dark] .archipelago-wallet--alert>span,:root[data-theme=dark] .archipelago-wallet--alert strong{color:#eaa79e}:root[data-theme=dark] .rename-control__open{color:#bcd6c9;background:#263b33;border-color:#48665a}:root[data-theme=dark] .rename-control__open:hover:not(:disabled){background:#315145}:root[data-theme=dark] .rename-control input{color:#e4f0ea;background:#1c2e28;border-color:#48665a}:root[data-theme=dark] .rename-control small{color:#eaa79e}:root[data-theme=dark] .game-shell{background:#101d19}:root[data-theme=dark] .resource-bar>div{border-color:var(--border);background:#182722e6}:root[data-theme=dark] .tutorial-panel--complete{background:linear-gradient(#182722,#1c3028)}:root[data-theme=dark] .starter-building--candidate{background:#352f20;border-color:#6a5730}:root[data-theme=dark] .production-period{color:#b7c8c0;background:#263a32}:root[data-theme=dark] .instant-badge{color:#9dd2ae;background:#214331}:root[data-theme=dark] .resource-stock__track{background:#2b4037}:root[data-theme=dark] .management-message{color:#a4dab7;background:#1d432f}:root[data-theme=dark] .admin-shell{background:radial-gradient(circle at 90% 0,#4d775b33,#0000 31%),#101d19}:root[data-theme=dark] .admin-page__heading h1,:root[data-theme=dark] .admin-summary strong,:root[data-theme=dark] .admin-section-grid h2,:root[data-theme=dark] .admin-panel__heading h2,:root[data-theme=dark] .admin-island-overview strong,:root[data-theme=dark] .admin-actions h3,:root[data-theme=dark] .admin-ship-list code{color:#dceae3}:root[data-theme=dark] .admin-page__heading>p,:root[data-theme=dark] .admin-summary small,:root[data-theme=dark] .admin-section-grid p:last-child,:root[data-theme=dark] .admin-panel__heading label,:root[data-theme=dark] .admin-island-overview small,:root[data-theme=dark] .admin-actions p,:root[data-theme=dark] .admin-ship-list label,:root[data-theme=dark] .admin-ship-list form>footer small,:root[data-theme=dark] .admin-loading{color:var(--muted)}:root[data-theme=dark] .admin-ship-list form>header{background:var(--surface-soft)}:root[data-theme=dark] .admin-actions__danger{background:#342522!important;border-color:#66413a!important}:root[data-theme=dark] .admin-feedback--success{color:#a4dab7;background:#1d432f}:root[data-theme=dark] .admin-feedback--error,:root[data-theme=dark] .admin-error{color:#ffaaa0;background:#402522;border-color:#68413b}:root[data-theme=dark] .admin-access-denied{background:var(--cream)}:root[data-theme=dark] .admin-access-denied h1{color:var(--forest-950)}:root[data-theme=dark] .admin-access-denied p{color:var(--muted)}:root[data-theme=dark] .technology-filters button{color:#b5c7be;border-color:var(--border);background:#1b2d27}:root[data-theme=dark] .technology-filters button.is-active{color:#fff;background:#39755f;border-color:#70a991}:root[data-theme=dark] .technology-tier+.technology-tier,:root[data-theme=dark] .technology-tier:nth-child(4),:root[data-theme=dark] .technology-tier:nth-child(5){border-color:var(--border);background:#23372f85}:root[data-theme=dark] .technology-tier>header>span,:root[data-theme=dark] .technology-node__state{color:#d5bd82;background:#3b3526}:root[data-theme=dark] .technology-tier>header strong,:root[data-theme=dark] .technology-node{color:var(--ink)}:root[data-theme=dark] .technology-node,:root[data-theme=dark] .technology-recipes article{background:var(--surface-soft);border-color:var(--border)}:root[data-theme=dark] .technology-node.is-unlocked{background:#203729;border-color:#477b5a}:root[data-theme=dark] .technology-detail__top small,:root[data-theme=dark] .technology-node__copy small,:root[data-theme=dark] .technology-recipes>header span{color:var(--muted)}:root[data-theme=dark] .technology-treasury strong{color:#f0d38c}:root[data-theme=dark] .technology-treasury small,:root[data-theme=dark] .technology-treasury em{color:#bbaa85}:root[data-theme=dark] .technology-treasury .technology-progress{background:#3a362c}:root[data-theme=dark] .technology-resource-unlock{color:#f1e1b8;background:#372f1d;border-color:#62502a}:root[data-theme=dark] .technology-resource-unlock small,:root[data-theme=dark] .technology-recipes>header small,:root[data-theme=dark] .technology-requires>small{color:#d0b87e}:root[data-theme=dark] .technology-recipes article p span{color:#bcb5a4}:root[data-theme=dark] .technology-requires span{color:#dfaca1;background:#432c28}:root[data-theme=dark] .technology-requires span.is-met,:root[data-theme=dark] .technology-complete{color:#a8d5b0;background:#23402b}:root[data-theme=dark] .technology-complete small{color:#9ebca5}:root[data-theme=dark] .technology-unlock:disabled{color:#8d9b94;background:#2b3732}:root[data-theme=dark] .technology-error{background:#422724}:root[data-theme=dark] .capital-limit-alert{color:#ecd59a;background:#3b321f;border-color:#65542c}:root[data-theme=dark] .capital-success{color:#a4dab7;background:#1d432f;border-color:#36664a}:root[data-theme=dark] .capital-needs-grid .is-satisfied,:root[data-theme=dark] .capital-housing-status__lines .is-satisfied{background:#203d2a;border-color:#477b5a}:root[data-theme=dark] .capital-needs-grid .is-missing,:root[data-theme=dark] .capital-housing-status__lines .is-missing{background:#422724;border-color:#68413b}:root[data-theme=dark] .capital-district-consumption tr.is-missing th,:root[data-theme=dark] .capital-district-consumption tr.is-missing td{color:#f0b48f}:root[data-theme=dark] .capital-industry-grid>article.is-blocked{background:#31251c;border-color:#6d4c33}:root[data-theme=dark] .capital-electricity-section{background:linear-gradient(135deg,var(--paper),#2e2a1a)}:root[data-theme=dark] .capital-electricity-grid article{background:#0000003d;border-color:#5d5030}:root[data-theme=dark] .capital-electricity-grid article strong{color:#ecd08a}:root[data-theme=dark] .capital-electricity-grid article.is-housing{background:#203d2a8c;border-color:#41705a}:root[data-theme=dark] .capital-electricity-grid article.is-housing strong{color:#95d6b0}:root[data-theme=dark] .capital-electricity-warning{color:#f0b48f;background:#3d2820}:root[data-theme=dark] .leaderboard-own-rank{background:linear-gradient(135deg,#39331f,#2b2a20);border-color:#685b32;box-shadow:0 15px 35px #0000002e}:root[data-theme=dark] .leaderboard-own-rank small{color:#c9b578}:root[data-theme=dark] .leaderboard-own-rank strong{color:#f0e5c4}:root[data-theme=dark] .leaderboard-board{background:var(--paper);border-color:var(--border);box-shadow:0 20px 50px var(--shadow)}:root[data-theme=dark] .leaderboard-board__heading,:root[data-theme=dark] .leaderboard-pagination{border-color:var(--border)}:root[data-theme=dark] .leaderboard-board__heading h2,:root[data-theme=dark] .leaderboard-table td:nth-child(2)>strong{color:var(--ink)}:root[data-theme=dark] .leaderboard-refresh>span{background:#284139}:root[data-theme=dark] .leaderboard-table th{color:#aabbb2;background:#1c2c26}:root[data-theme=dark] .leaderboard-table td,:root[data-theme=dark] .leaderboard-table tr{border-color:var(--border);color:#b7c7bf}:root[data-theme=dark] .leaderboard-table td:nth-child(4),:root[data-theme=dark] .leaderboard-table td:last-child{color:#dcebe4}:root[data-theme=dark] .leaderboard-tabs button{color:#c7dbd1;background:#23372f;border-color:#496157}:root[data-theme=dark] .leaderboard-tabs button.is-current{color:#fff;background:var(--forest-700);border-color:var(--forest-700)}:root[data-theme=dark] .leaderboard-table .is-current-player td{background:#21372c}:root[data-theme=dark] .leaderboard-pagination button{color:#c7dbd1;background:#23372f;border-color:#496157}:root[data-theme=dark] .leaderboard-loading{background:#192b24b3}@media (width<=520px){.theme-toggle{right:max(12px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));width:44px;height:44px}.language-switcher{right:max(66px, calc(env(safe-area-inset-right) + 54px));bottom:max(12px, env(safe-area-inset-bottom))}.language-switcher__trigger{height:44px;font-size:.78rem}body:has(.player-shell,.game-shell,.admin-shell,.admin-access-denied) .language-switcher__trigger{width:44px}.language-switcher__trigger>span:nth-child(2){width:min(118px,31vw)}.language-switcher__menu{grid-template-columns:1fr;width:min(280px,100vw - 24px);max-height:66vh}[dir=rtl] .language-switcher{right:auto;left:max(66px, calc(env(safe-area-inset-left) + 54px))}[dir=rtl] .theme-toggle{right:auto;left:max(12px, env(safe-area-inset-left))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
