*{box-sizing:border-box} :root{color-scheme:dark;--ink:#e9dfbb;--gold:#d0b575;--panel:#233237}body{margin:0;background:#152126;color:var(--ink);font-family:Georgia,serif;font-size:14px}button,input{font:inherit}button{background:linear-gradient(#405053,#2b3a3e);border:1px solid #6c7770;border-bottom:3px solid #101d21;color:var(--ink);padding:7px 10px;cursor:pointer;box-shadow:inset 0 1px #ffffff18}button:hover{background:#52625c;border-color:#d0b575}button:disabled{opacity:.4;cursor:default}button.active{border-color:#edd289;background:#666344}header{height:72px;display:flex;align-items:center;gap:28px;padding:12px 24px;border-bottom:3px double #a28d5a;background:linear-gradient(#29383c,#1b2a30)}.brand{font-size:27px;letter-spacing:5px;color:#e3c68c}.brand small{font:9px Arial;letter-spacing:2.5px;display:block;margin-top:3px}#resources{display:flex;gap:24px;flex:1}.resource{font:11px Arial;text-transform:uppercase;color:#bac4b7}.resource b{font:21px Georgia;color:#eee0b7;margin-left:6px}.resource em{font:10px Arial;color:#9ac99b;margin-left:4px}#date{font-size:16px;text-align:right;white-space:nowrap}main{display:flex;height:calc(100vh - 72px)}#viewport{position:relative;flex:1;overflow:hidden;background:#16282c}#world{width:100%;height:100%;display:block;image-rendering:pixelated;cursor:crosshair}.map-label{position:absolute;top:17px;left:22px;pointer-events:none;letter-spacing:3px;font:11px Georgia;color:#e0d6b5;text-shadow:1px 2px #000}.map-label span{display:block;font:10px Arial;letter-spacing:1px;margin-top:7px;color:#b8c5bb}#hint{position:absolute;bottom:23px;left:24px;max-width:75%;padding:10px 15px;background:#142127e8;border:1px solid #778579;color:#e7dfb9;font:12px Arial;pointer-events:none}.map-tools{position:absolute;right:18px;bottom:22px;display:flex;gap:4px}aside{width:292px;flex-shrink:0;padding:14px;background:repeating-linear-gradient(0deg,#243438,#243438 3px,#253539 4px);border-left:4px ridge #889180;overflow-y:auto;scrollbar-width:thin}.tabline,.section-title{font:11px Arial;letter-spacing:1.4px;color:var(--gold);margin-bottom:10px}.tabline span,.section-title span{float:right;font-size:9px;color:#acb5a9}#minimap{width:100%;height:155px;image-rendering:pixelated;border:3px ridge #8a8c72;cursor:crosshair}#objective{padding:12px 0;border-bottom:1px solid #657064;font-size:12px;line-height:1.6}#objective b{color:#e9c67e}#selection{min-height:100px;padding:12px 0;font-size:12px;line-height:1.6}#selection h3{font-size:19px;margin:0;color:#e5d4a4}#selection button{font-size:11px;padding:5px;margin:5px 3px 0 0}.section-title{border-top:1px solid #657064;padding-top:12px}#buildMenu{display:grid;grid-template-columns:1fr 1fr;gap:5px}#buildMenu button{text-align:left;font-size:12px;padding:7px}#buildMenu small{display:block;font:9px Arial;color:#bcc3b0;margin-top:4px}#events{height:100px;overflow-y:auto;margin:12px 0;font:11px/1.6 Arial;color:#b7c2b9}#events div{border-bottom:1px solid #ffffff0c;padding:4px 0}#events b{color:#c4aa75}.primary{background:linear-gradient(#b69651,#8e7036);color:#fff1c9;border-color:#e0c487;width:100%;padding:12px;font-weight:bold;letter-spacing:2px}.primary:hover{background:#b69b61}.primary span{font:10px Arial;float:right;letter-spacing:0}.footer{display:flex;gap:4px;margin-top:8px}.footer button{font-size:11px;flex:1;padding:6px 3px}dialog{background:linear-gradient(140deg,#324548,#17282e);color:var(--ink);border:3px double #b39e69;padding:36px;max-width:610px;box-shadow:0 20px 100px #0009}dialog::backdrop{background:#08151bd9;backdrop-filter:blur(3px)}#welcome{text-align:center;width:540px;padding:48px}h1{font-size:55px;letter-spacing:8px;margin:18px 0 2px;color:#e3c487;text-shadow:3px 3px #101e24}.subtitle{font-size:22px;margin:0 0 25px;font-style:italic}.eyebrow,.fine{font:10px Arial;letter-spacing:2px;color:#a9bcb6}.rule{height:1px;background:#b39e6977}dialog p{line-height:1.7}label{display:block;font:10px Arial;letter-spacing:2px;text-align:left;margin:25px 0 15px}input{display:block;width:100%;padding:10px;margin-top:7px;background:#15262b;color:var(--ink);border:1px solid #7c8874}#debugActions{display:flex;flex-wrap:wrap;gap:7px}pre{white-space:pre-wrap;font-size:11px} @media(max-width:900px){aside{width:245px}header{padding:10px;gap:10px}#resources{gap:8px}.brand{font-size:19px}.resource b{font-size:16px}.resource{font-size:9px}}@media(max-height:800px){#minimap{height:110px}#selection{min-height:80px}#events{height:65px}aside{padding:10px}#buildMenu button{padding:5px}}
/* Empires & Discovery */
aside{width:310px;position:relative}.brand small{letter-spacing:2px}.muted{color:#acbdb2;font:10px/1.6 Arial}.enemy-label{color:#e3987e}#selection h3 small{font:9px Arial;color:#b9cdb4}#selection{min-height:92px}#objective{padding:9px 0;font:11px/1.5 Arial}.legacy-row{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:5px}.legacy-row span{padding:3px 5px;border:1px solid #6d785f;font-size:10px}.legacy-row .fulfilled{background:#4b6043;color:#eedb98;border-color:#b8b271}#objective small{color:#aebdaf;font-size:10px}.research-button{width:100%;text-align:left;margin-top:9px;padding:10px;background:linear-gradient(115deg,#344f54,#243b42);border-color:#8c9b88}.research-button small{display:block;font:9px Arial;letter-spacing:1.4px;color:#b8cebd}.research-button strong{display:block;font-size:15px;margin:5px 0}.research-button>span{font:10px Arial;color:#acbeb9}.progress-track{height:4px;background:#13262c;margin-top:9px;overflow:hidden}.progress-track i{display:block;height:100%;background:#d0b56e;max-width:100%}#officeTabs{display:flex;gap:4px;margin-bottom:6px}#officeTabs button{flex:1;font:11px Arial;padding:8px 4px}#filterLabel{font:10px Arial;letter-spacing:1px;display:flex;align-items:center;gap:7px;margin:0}#buildFilter{background:#1b2e34;color:#ddcfaa;border:1px solid #6e8075;font:11px Arial;padding:3px;max-width:145px}.section-title{min-height:24px;margin-bottom:8px;padding-top:7px}.section-title span{float:right;padding-top:5px;font-size:8px}.command-dock{position:sticky;bottom:-14px;background:#243438;box-shadow:0 -8px 9px #243438;padding:1px 0 10px;margin-top:12px}#events{height:63px;margin:7px 0}#buildMenu{padding-bottom:6px}#buildMenu.ledger{display:block}.ledger-note{font:11px/1.6 Arial;color:#b2c3b6;margin:5px 0 9px}#buildMenu .muster-card{display:block;width:100%;margin:5px 0;padding:8px 10px}.muster-card strong{font-size:13px;font-weight:normal}.muster-card span{display:block;font:9px Arial;letter-spacing:.6px;margin-top:4px;color:#cdbf8e}#buildMenu .roster{width:100%;margin:3px 0;font-size:12px}#buildMenu .roster small{display:inline;float:right}#buildMenu .deposit-card{width:100%;margin:4px 0;padding:9px}.deposit-card i,#strategicResources i{display:inline-block;width:7px;height:7px;margin-right:7px;box-shadow:1px 1px #0c1b21}.locked-deposit{border-bottom:1px solid #4a5e58;padding:7px 0;color:#a3b3ac;font:12px Georgia}.locked-deposit small{display:block;font:10px Arial;margin-top:3px;color:#859d95}#strategicResources{position:absolute;top:56px;left:22px;display:flex;gap:5px;flex-wrap:wrap;max-width:calc(100% - 45px);pointer-events:none}#strategicResources span{background:#1b2d32ee;border:1px solid #6e8271;padding:6px 9px;font:10px Arial;color:#c4d1c1}#strategicResources b{font:14px Georgia;color:#ead7a7;margin-left:3px}#strategicResources em{color:#9cbd8e;font:9px Arial;margin-left:4px}#dispatch{position:absolute;top:107px;left:22px;max-width:460px;padding:10px 13px;background:#24383bea;border-left:3px solid #bba66e;font:12px/1.5 Georgia;opacity:0;transition:opacity .3s;pointer-events:none}#dispatch.visible{opacity:1}#hint{font-size:11px;max-width:calc(100% - 205px)}#researchDialog{width:min(1480px,calc(100vw - 32px));max-width:none;padding:25px;max-height:94vh}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-heading h2{font-size:25px;margin:9px 0;color:#e3cd96}.dialog-heading p{font:11px Arial;color:#b8c7bc;margin:8px 0}.dialog-heading>button{white-space:nowrap;font-size:12px}.research-instructions{font:12px/1.7 Arial;color:#bdcbbc;max-width:970px}#techTree{display:grid;grid-template-columns:repeat(6,minmax(190px,1fr));gap:12px;overflow-x:auto;padding:4px 0 15px;align-items:start}.tech-era>h3{font:12px Georgia;letter-spacing:.8px;padding-bottom:10px;border-bottom:2px solid #817953;margin:8px 0 12px}.tech-era>h3 span{font:10px Arial;color:#8da49b;margin-right:9px}.tech-card{position:relative;padding:12px;margin-bottom:11px;border:1px solid #546960;background:#213438;min-height:230px}.tech-card.available{border-color:#ae9863;background:linear-gradient(135deg,#36494a,#283c40)}.tech-card.researching{border:2px solid #e5c680;padding:11px;background:#3c4b47}.tech-card.known{background:#304a3d;border-color:#83976c}.tech-card.locked{background:#1d3035;color:#a8b8b0}.tech-state{font:8px Arial;letter-spacing:1.1px;color:#a8b8a7}.available .tech-state,.researching .tech-state{color:#e3c77f}.known .tech-state{color:#b8d797}.tech-card h4{font:17px Georgia;margin:8px 0;line-height:1.25;color:#e1d1a5}.tech-card p{font:11px/1.55 Arial;margin:8px 0;color:#b9c7ba}.tech-unlocks{font:10px/1.6 Arial;color:#b7bba3;margin:8px 0}.reveal-tag{font:9px/1.5 Arial;letter-spacing:.5px;color:#b9d79d;border-left:2px solid #93b383;padding-left:6px}.tech-prereqs{font:9px/1.7 Arial;color:#a0b3ac;margin-top:8px}.tech-prereqs button{font:9px Arial;background:none;border:0;border-bottom:1px dotted #677f71;box-shadow:none;padding:1px;color:#b1bbb0;cursor:pointer}.tech-prereqs button.met{color:#b3d69b}.tech-card>button{font:10px Arial;width:100%;margin-top:9px;padding:7px}.tech-card>button:disabled{opacity:.65}#guide{max-height:90vh}#guide p{font:13px/1.7 Georgia}#sandbox{max-height:90vh}#sandbox p{font-size:13px}
@media(max-height:850px){#minimap{height:95px}.research-button{padding:7px;margin-top:6px}.research-button strong{font-size:13px;margin:4px 0}#selection{padding:8px 0;min-height:82px}#objective{padding:7px 0}#events{height:43px}.command-dock{bottom:-10px;padding-bottom:7px}#buildMenu button{padding:6px}#researchDialog{max-height:96vh}}
@media(max-width:1000px){aside{width:270px}#resources{gap:10px}#strategicResources span{padding:4px 6px}#hint{max-width:calc(100% - 160px)}.dialog-heading h2{font-size:20px}.map-tools{right:10px}.map-tools button{padding:7px}}
/* Keep orders visible while long construction and muster lists scroll. */
aside{display:flex;flex-direction:column;overflow:hidden;min-height:0}aside>.tabline,aside>#minimap,aside>.research-button,aside>#objective,aside>#selection,aside>#officeTabs,aside>.section-title{flex-shrink:0}aside>#minimap{height:110px}#buildMenu{flex:1;min-height:85px;overflow-y:auto;align-content:start;scrollbar-width:thin}#buildMenu.ledger{overflow-y:auto}.command-dock{position:static;flex-shrink:0;margin-top:6px;padding-bottom:0;box-shadow:none}#events{height:49px}#selection{min-height:85px}.command-dock .footer{margin-top:6px}
@media(max-height:850px){aside>#minimap{height:65px}#selection{min-height:72px;padding:6px 0}#selection h3{font-size:17px}.research-button .progress-track{margin-top:5px}.research-button strong{font-size:12px}.research-button{padding:6px}#events{height:32px}.command-dock{margin-top:3px}#officeTabs button{padding:6px}#objective{padding:5px 0}.section-title{padding-top:4px;margin-bottom:5px}#endTurn{padding:9px}#buildMenu{min-height:70px}}
/* Infrastructure expansion: stock capacity, map overlay and flight safety. */
.resource b small{font:10px Arial;color:#a8bcb5;margin-left:2px}.stock-track{height:3px;background:#17282c;margin-top:4px;max-width:125px}.stock-track i{display:block;height:100%;background:#aeaa70}#resources{gap:17px}.resource b{font-size:19px}#logisticsToggle{position:absolute;top:16px;right:18px;font:11px Arial;padding:8px 12px}#logisticsLegend{position:absolute;bottom:66px;left:22px;max-width:calc(100% - 44px);padding:10px 13px;background:#142c34ee;border:1px solid #739993;font:10px/1.6 Arial;color:#caddcc;pointer-events:none}#dispatch{top:125px}.site-label{font:10px Arial;letter-spacing:0;margin:8px 0}.site-label select{display:block;width:100%;background:#1b3035;color:#e1d5af;padding:6px;margin-top:5px;border:1px solid #758378}#flightWarning{max-width:620px}#flightWarning button{margin:5px 3px;font-size:12px}#riskAircraft{border-color:#ba7460;color:#e9a68e}#selection{font-size:11px}#selection button{font-size:10px;padding:5px}#strategicResources span{font-size:9px}#strategicResources b{font-size:13px}#hint{max-width:calc(100% - 200px)}
@media(max-width:1100px){header{gap:14px;padding:12px}#resources{gap:9px}.brand{font-size:21px;letter-spacing:3px}.resource b{font-size:16px}.resource b small{font-size:8px}.resource{font-size:9px}}
#orderStatus{position:absolute;left:12px;bottom:48px;padding:9px 12px;background:#132b34ed;color:#fff0bd;border:1px solid #c6a55e;font:bold 12px monospace;pointer-events:none;max-width:calc(100% - 160px)}.selected-label{color:#ffe3a0;font:bold 11px monospace;letter-spacing:1px}#selection:has(.selected-label){border:2px solid #d6b365;background:#31464b}.order-reminder{color:#efd6a2;font:11px monospace;margin:8px 0}#growthInfo{font-size:12px;padding:10px;border-bottom:1px solid #6f7769}#growthInfo small{display:block;margin-top:6px;line-height:1.45;color:#c5c8af}#rivalInfo{margin:5px 10px}#logisticsLegend{bottom:88px!important}
.office-scroll{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin}.office-scroll>*{flex-shrink:0}.office-scroll>#minimap{height:110px}.office-scroll>#buildMenu{min-height:110px}#growthInfo{margin:6px 0 0;padding:7px;text-align:left;font-size:11px}#rivalInfo{margin:5px 0;font-size:11px;padding:7px}#selection{max-height:230px;overflow-y:auto}.command-dock{padding-top:5px;border-top:1px solid #586b64}@media(max-height:850px){.office-scroll>#minimap{height:65px}#selection{max-height:165px}}
.resource em.negative-flow,#strategicResources em.negative-flow{color:#ff8c81;font-weight:bold}
.catalog-dialog{width:min(1160px,95vw);max-width:none;max-height:92vh;padding:24px;overflow-y:auto}.catalog-toolbar{display:flex;gap:18px;align-items:end;margin:12px 0}.catalog-toolbar label{margin:0;flex:1;letter-spacing:1px}.catalog-toolbar input,.catalog-toolbar select{width:100%;padding:9px;background:#193038;color:#e9dfbb;border:1px solid #71897c}.catalog-toolbar #catalogCount{font:11px Arial;padding:10px;white-space:nowrap}.catalog-dialog #buildMenu,.catalog-dialog #buildMenu.ledger{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:12px;overflow:visible;min-height:0;align-items:stretch}.catalog-dialog #buildMenu>button{margin:0;padding:12px;display:flex;flex-direction:column;text-align:left;min-height:210px}.catalog-dialog #buildMenu>button[hidden]{display:none}.catalog-dialog #buildMenu>button canvas{width:112px;height:80px;image-rendering:pixelated;align-self:center;margin-bottom:7px}.catalog-dialog #buildMenu strong{font:17px Georgia;color:#f2d7a0}.catalog-dialog .catalog-description{font:12px/1.5 Arial;color:#c2d0bf;display:block;margin:7px 0;flex:1}.catalog-dialog #buildMenu small{font:11px/1.5 Arial}.catalog-dialog #buildMenu .availability{color:#e3b089}.catalog-dialog #buildMenu>button:disabled{opacity:.65}.catalog-dialog .ledger-note,.catalog-dialog .site-label,.catalog-dialog #buildMenu>.section-title{grid-column:1/-1}.catalog-dialog .site-label{max-width:520px}.catalog-dialog #buildMenu .roster{min-height:0;padding:10px}.catalog-dialog .section-title{min-height:30px}.catalog-dialog #filterLabel{max-width:300px}.catalog-dialog #filterLabel select{max-width:none;flex:1}#officeLedger{flex:1;min-height:70px}#officeLedger #buildMenu{display:block}.catalog-dialog .dialog-heading{position:sticky;top:-24px;background:#243b40;z-index:1;padding:12px 0}.catalog-dialog [hidden]{display:none!important}
#soundToggle{position:absolute;top:16px;right:116px;font:11px Arial;padding:8px 10px}#musterStatus{font:13px/1.4 Arial;color:#cbd8ba;max-width:750px;margin:8px 0 0;padding:8px;border-left:3px solid #8ca778;background:#1b3036}#musterStatus.success{color:#c3edb4;border-color:#a4d283}#musterStatus.failure{color:#ffab97;border-color:#e89580}#battleNotice{position:absolute;top:160px;left:22px;max-width:calc(100% - 44px);background:#2f2828ee;border:2px solid #bd8461;padding:12px;z-index:2}#battleNotice strong{display:block;font:13px/1.5 Arial;color:#ffdbb3;margin-bottom:8px}#battleNotice button{font-size:11px;margin-right:6px}#battleNotice[hidden]{display:none}#battleDialog{max-height:85vh;overflow:auto}#battleHistory p{font:13px/1.6 Arial;border-bottom:1px solid #637066;padding-bottom:8px}
#jobsInfo{width:100%;margin:4px 0;color:#e8d19c}.jobs-table{width:100%;border-collapse:collapse}.jobs-table th,.jobs-table td{text-align:left;padding:10px;border-bottom:1px solid #655a43}.jobs-table th{color:#e4c886}.jobs-table select{min-width:115px}.job-warning{color:#ffad88}#jobsDialog{max-height:85vh;overflow:auto}#worldPreset,#seedPreset{width:100%}#worldDescription{min-height:2em}#randomSeed{margin:8px 0}
.jobs-table select,#worldPreset,#seedPreset{font:13px Georgia;padding:7px;background:#193038;color:#e9dfbb;border:1px solid #71897c}#welcome{max-height:94vh;overflow:auto}#worldDescription{font:12px/1.5 Georgia;letter-spacing:0}#jobsDialog .fine{font:12px/1.5 Arial;letter-spacing:0}

#airLegend{position:absolute;top:150px;left:22px;max-width:560px;background:#172e36ee;border:1px solid #83b79b;padding:9px 12px;font:12px/1.5 Arial;pointer-events:none;color:#d9ecce}.maintenance-summary{padding:12px;border:1px solid #96875e;color:#dfd0a7;font:13px/1.6 Arial}

#selection [data-deck-plane]{display:block;width:100%;text-align:left}#selection .deck-help{display:block;margin-top:6px;line-height:1.5}
