:root{color-scheme:dark;--bg:#101719;--panel:#161f21;--panel2:#1b2628;--line:#2a3738;--text:#e7eeeb;--muted:#829592;--mint:#82dcb8;--mint-dim:#203c33;--amber:#f1bd73;--danger:#e99a8c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:"Segoe UI","Malgun Gothic",system-ui,sans-serif;font-size:13px;line-height:1.6}button,input,select{font:inherit}button{cursor:pointer;border:0;color:inherit;background:none;transition:background .16s,color .16s,transform .16s}button:disabled{opacity:.4;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(1.1)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--mint);outline-offset:4px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}small{font-size:11px}button.primary{background:var(--mint);color:#14281f;font-weight:700;border:1px solid var(--mint);padding:11px 19px;border-radius:7px}button.secondary{background:#202d2f;border:1px solid #384849;padding:11px 16px;border-radius:7px}.small{font-size:12px!important;padding:8px 13px!important}.muted{color:var(--muted)}.topbar{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:24px;background:#121b1d}.brand{display:flex;align-items:center;gap:11px;font-size:17px;font-weight:700;line-height:1.2;white-space:nowrap}.brand small{display:block;font-size:8px;letter-spacing:2.5px;color:var(--muted);margin-top:7px;font-weight:500}.brand-symbol{color:var(--mint);font-size:37px;font-weight:400;line-height:1}.version{align-self:flex-start;font-size:8px;font-weight:500;letter-spacing:1px;color:#769089;border:1px solid var(--line);padding:4px 6px;border-radius:3px;margin:2px 0 0 8px}nav{height:100%;display:flex;gap:27px}.nav{color:var(--muted);font-size:13px;position:relative;padding:0 5px}.nav.active{color:var(--text)}.nav.active:after{content:"";height:2px;position:absolute;bottom:0;left:0;right:0;background:var(--mint)}.top-actions{display:flex;gap:20px;align-items:center}.connection{color:#a0b0ab;display:flex;align-items:center;gap:7px;font-size:11px}.connection i,.live-dot,.live-pill i{background:var(--mint);height:5px;width:5px;display:inline-block;border-radius:50%;box-shadow:0 0 8px #82dcb844}.connection.off i{background:var(--amber);box-shadow:none}main{max-width:1740px;margin:auto;padding:29px 30px 110px}.intro{display:flex;justify-content:space-between;align-items:center;margin:0 0 26px}.eyebrow{font-size:9px;color:#87aa9d;letter-spacing:2px;font-weight:600}.tiny-line{display:inline-block;width:18px;height:1px;background:var(--mint);vertical-align:middle;margin-right:7px}h1{font-size:28px;letter-spacing:-1.3px;font-weight:500;margin:8px 0 6px}h1 span{color:#9fd9c0}.intro p{font-size:12px;color:var(--muted)}.experiment{text-align:right;border-right:2px solid #37594b;padding-right:14px}.experiment span,.experiment small{display:block;color:var(--muted);font-size:9px}.experiment strong{font-size:18px;display:block;font-weight:500;margin:1px 0 3px}.experiment small{font-family:monospace;letter-spacing:1px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.stats article{position:relative;display:flex;gap:13px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:16px 17px;min-height:94px}.stat-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;color:var(--mint);background:#223830;font-size:23px}.stat-icon.lavender{color:#c7a9e8;background:#302c3b}.stat-icon.amber{color:var(--amber);background:#383025}.stat-icon.blue{color:#85b9df;background:#243440}.stats article div>span{display:block;font-size:10px;color:var(--muted);margin-bottom:3px}.stats article strong{display:block;font-size:25px;font-weight:550;letter-spacing:-.5px;line-height:1.2}.stats article strong small{font-weight:400;color:var(--muted);font-size:12px}.stats .era-value{font-size:21px}.stat-note{position:absolute;right:14px;bottom:14px;color:#7c938a;font-size:9px}.observatory{display:grid;grid-template-columns:235px minmax(380px,1fr) 285px;gap:20px;align-items:start}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:15px}.section-heading h2{font-size:13px;font-weight:600}.section-heading>span{font-family:monospace;font-size:9px;color:#79928b;letter-spacing:.8px}.section-heading small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.faction-panel>.section-heading{margin-top:2px}.faction-card{width:100%;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:13px;margin-bottom:10px;position:relative}.faction-card.selected{background:#1b2c28;border-color:#496a5b}.faction-card.dead{opacity:.5}.faction-top{display:flex;align-items:center;gap:10px;margin-bottom:10px}.faction-mark{display:grid;place-items:center;width:33px;height:36px;background:color-mix(in srgb,var(--faction) 12%,transparent);color:var(--faction);font-size:23px;border:1px solid color-mix(in srgb,var(--faction) 25%,transparent);border-radius:7px}.faction-top h3{font-size:14px;display:inline;font-weight:600}.faction-top small{display:block;font-size:9px;color:var(--muted)}.you{margin-left:auto;font-size:8px;border:1px solid #526f5e;color:#a7d4bb;border-radius:3px;padding:1px 4px}.faction-stats{display:flex;justify-content:space-between;font-size:10px;color:#a3b1ab}.faction-stats b{font-weight:500;color:#d8e3dc}.faction-progress{height:3px;background:#2a3735;margin-top:10px;border-radius:4px;overflow:hidden}.faction-progress i{display:block;height:100%;background:var(--faction);transition:width .4s}.faction-bottom{display:flex;justify-content:space-between;font-size:9px;color:#8aa097;margin-top:7px}.insight{border-top:1px solid var(--line);margin-top:20px;padding-top:17px}.insight .eyebrow{font-size:8px;letter-spacing:1.6px}.insight-heading{display:flex;align-items:center;justify-content:space-between;margin-top:9px}.insight h3{font-size:13px}.pill{display:inline-flex;align-items:center;border:1px solid #3a4944;border-radius:4px;padding:3px 7px;font-size:9px;color:#96aaa1;white-space:nowrap}.pill.mint{border-color:#36594b;color:#a1d4b9;background:#20352d}.insight p{font-size:11px;color:#a5b9ae;line-height:1.9;margin:12px 0 14px;border-left:2px solid #395846;padding-left:10px;min-height:42px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:10px}.detail-grid div{color:var(--muted)}.detail-grid b{display:block;color:#d0ded5;font-size:13px;font-weight:500}.insight-foot{color:#71887d;font-size:9px;margin-top:16px}.map-card{border:1px solid #35443f;border-radius:10px;overflow:hidden;background:#131f22}.map-header{display:flex;align-items:center;justify-content:space-between;padding:14px 17px;background:#182423;gap:10px}.map-title{display:flex;align-items:center;gap:10px}.map-title h2{font-size:13px;font-weight:600}.map-title>div>span{font-size:9px;color:var(--muted)}.map-emblem{font-size:25px;color:#86b9a0}.map-options{display:flex;gap:10px;align-items:center}.icon-button{border:1px solid #354441;border-radius:5px;min-width:29px;height:29px;font-size:17px;color:#a7b9b0;display:inline-grid;place-items:center}.map-wrap{position:relative;background:#172b34;aspect-ratio:1.6;overflow:hidden}#world-map{width:100%;height:100%;display:block;cursor:crosshair}.map-top-left{position:absolute;top:16px;left:17px;display:flex;align-items:center;gap:7px;color:#b2c9bd;font-size:8px;letter-spacing:1.2px;background:#10231dc9;padding:5px 9px;border:1px solid #46655677;border-radius:4px;pointer-events:none}.map-coordinates{position:absolute;right:15px;top:15px;color:#6d9296;font-size:9px;font-family:monospace;line-height:1.8;pointer-events:none}.compass{position:absolute;bottom:15px;right:16px;text-align:center;color:#9cb7ad;font-size:8px;line-height:1;pointer-events:none}.compass span{display:block;font-size:31px;margin:2px 0;color:#a8c6b1}.map-bottom-left{position:absolute;bottom:12px;left:15px;color:#adc3b5;font-size:9px;background:#10221ac9;padding:4px 7px;border-radius:3px;pointer-events:none}.map-tooltip{position:absolute;padding:6px 10px;background:#101c1eeb;border:1px solid #5b7b6b;border-radius:5px;font-size:10px;pointer-events:none;max-width:200px;z-index:2}.map-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 13px;border-top:1px solid #30403c;background:#182423}.map-layers{display:flex;gap:3px}.map-layers button{font-size:10px;padding:4px 10px;border-radius:4px;color:#8a9d93}.map-layers button.active{background:#2d4639;color:#c3dec9}.legend{display:flex;gap:10px;font-size:8px;color:#839d90}.legend span{display:flex;align-items:center;gap:4px}.legend i{display:inline-block;width:6px;height:6px;border-radius:1px}.land-dot{background:#476154}.city-dot{background:#d8dab0}.war-dot{background:#d88b73}.era-card{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:14px 16px;margin-top:15px}.era-card .section-heading{margin-bottom:12px}.era-card .section-heading h2{font-size:11px}.era-card .section-heading>span{font-family:inherit;font-size:9px}.era-track{display:flex;justify-content:space-between;position:relative;gap:3px}.era-track:before{content:"";position:absolute;height:1px;left:5px;right:5px;top:6px;background:#394640}.era-step{position:relative;z-index:1;text-align:center;font-size:8px;color:#6c8278}.era-step i{width:10px;height:10px;background:#26332f;border:2px solid #46564e;border-radius:50%;display:block;margin:1px auto 7px}.era-step.past{color:#94b9a0}.era-step.past i{background:#80b99b;border-color:#80b99b}.era-step.current{color:var(--mint)}.era-step.current i{background:var(--mint);border-color:var(--mint);box-shadow:0 0 0 4px #82dcb81a}.research-line{display:flex;align-items:center;gap:12px;margin-top:14px;color:#81998c;font-size:9px}.progress{height:3px;background:#2b3b32;flex:1;overflow:hidden;border-radius:2px}.progress i{display:block;background:var(--mint);height:100%;transition:width .4s}.research-line b{font-weight:400;font-family:monospace;color:#a5cbb2}.under-map{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}.under-map button{border:1px solid var(--line);border-radius:7px;background:#182322;padding:13px;display:flex;align-items:center;gap:11px;text-align:left}.under-map button>span{font-size:24px;color:#a1bea8}.under-map strong{display:block;font-weight:500;font-size:11px}.under-map small{display:block;color:#768f80;font-size:8px;margin-top:2px}.under-map b{font-size:16px;font-weight:400;color:#80998a;margin-left:auto}.chronicle{border:1px solid var(--line);background:var(--panel);border-radius:9px;overflow:hidden}.chronicle>.section-heading{padding:16px 15px 0;margin-bottom:15px}.live-pill{font-family:monospace;font-size:8px!important;color:#97c7ad!important;letter-spacing:1px;display:flex;gap:5px;align-items:center}.feed-tabs{display:flex;border-bottom:1px solid var(--line);gap:14px;padding:0 15px}.feed-tabs button{font-size:10px;color:#80958a;padding:0 0 10px;position:relative}.feed-tabs button.active{color:#b4d3c0}.feed-tabs button.active:after{position:absolute;content:"";height:2px;bottom:0;left:0;right:0;background:var(--mint)}.event-feed{height:550px;overflow:auto;padding:5px 14px 0;scrollbar-width:thin;scrollbar-color:#3e5548 transparent}.log-item{position:relative;border-bottom:1px solid #29392f;padding:13px 0 13px 21px}.log-item:before{content:"";position:absolute;width:7px;height:7px;left:0;top:19px;background:var(--event-color,#8bae99);border-radius:50%;box-shadow:0 0 0 3px #ffffff06}.log-meta{display:flex;justify-content:space-between;color:#769482;font-size:8px;margin-bottom:5px}.log-meta span:first-child{color:var(--event-color,#8bae99)}.log-item h3{font-size:11px;font-weight:500;color:#d0dfd4;line-height:1.6}.log-item p{font-size:10px;color:#7d9787;line-height:1.8;margin-top:4px}.empty-feed{padding:40px 10px;color:var(--muted);font-size:11px;text-align:center}.chronicle-footer{padding:11px 13px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:9px;color:#6e8877}.chronicle-footer button{color:#9dc5ac;font-size:9px}.lower-section{display:grid;grid-template-columns:minmax(400px,1fr) 355px;gap:20px;margin-top:23px}.population-card{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:15px 18px}.population-card .section-heading{margin-bottom:2px}.population-card canvas{width:100%;height:92px;display:block}.chart-legend{display:flex;gap:20px;font-size:9px;color:#8ca192}.chart-legend span{display:flex;gap:6px;align-items:center}.chart-legend i{display:inline-block;width:12px;height:2px;background:var(--faction)}.world-note{border:1px solid var(--line);border-radius:8px;padding:20px;background:linear-gradient(120deg,#1c2c25,#17201f);position:relative;overflow:hidden}.world-note:after{position:absolute;content:"◈";font-size:110px;color:#88b0980b;right:8px;bottom:-33px}.world-note .eyebrow{font-size:8px}.world-note h3{font-size:16px;letter-spacing:-.6px;font-weight:400;margin:8px 0}.world-note p{font-size:10px;color:#90a795;line-height:1.9}.world-note>small{display:block;font-size:8px;color:#6e8a76;margin-top:14px}.controlbar{position:fixed;z-index:5;bottom:0;left:0;right:0;border-top:1px solid #384a40;background:#131d1df2;backdrop-filter:blur(14px);height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 32px;box-shadow:0 -8px 32px #0003}.playback{display:flex;gap:12px;align-items:center;min-width:280px}.play-button{width:38px;height:38px;border:1px solid #6baf8c;border-radius:50%;color:var(--mint);font-size:14px;background:#253e31}.playback strong{display:block;font-size:11px;font-weight:500}.playback span{display:block;font-size:9px;color:#758e7d;margin-top:2px}.speed-control{display:flex;align-items:center;gap:13px}.speed-control>span{color:#7e9787;font-size:10px}.segmented{display:flex;gap:1px;background:#1e2b26;border:1px solid #35493c;border-radius:5px;padding:3px}.segmented button{font-family:monospace;font-size:11px;border-radius:3px;color:#7f9888;padding:4px 11px}.segmented button.active{background:#365842;color:#d1e8d7}.save-controls{display:flex;gap:10px;align-items:center}.save-controls>span{color:#6d8978;font-size:9px}dialog{background:#162220;color:var(--text);border:1px solid #465e4f;border-radius:13px;padding:0;box-shadow:0 20px 90px #0009;max-height:92vh;width:min(900px,92vw);scrollbar-width:thin;scrollbar-color:#42644d transparent}dialog::backdrop{background:#07110fd1;backdrop-filter:blur(7px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;border-bottom:1px solid #304337}.dialog-top h2{font-size:18px;font-weight:500}.setup-dialog{width:min(1050px,94vw)}.setup-steps{display:flex;align-items:center;gap:18px;padding:20px 28px;font-size:10px;color:#637e6c;letter-spacing:1px}.setup-steps>span{display:flex;gap:10px;white-space:nowrap}.setup-steps b{font-weight:400;letter-spacing:0}.setup-steps>i{height:1px;background:#354b3c;width:45px}.setup-steps .active{color:var(--mint)}#setup-body{padding:4px 28px 24px;min-height:370px}.setup-heading h2{font-size:25px;font-weight:450;letter-spacing:-1px}.setup-heading p{color:#8ea694;font-size:11px;margin-top:6px}.mode-switch{display:flex;gap:10px;margin:20px 0}.mode-option{padding:12px 16px;border:1px solid #354c3d;border-radius:7px;flex:1;display:flex;gap:10px;align-items:center;text-align:left;font-size:12px}.mode-option.selected{background:#263e2d;border-color:#75ae88}.mode-option>span{font-size:21px;color:#a2c7ac}.mode-option small{display:block;color:#809a87;font-size:9px;margin-top:3px}.model-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.model-card{border:1px solid #344b3c;background:#1b2b23;border-radius:8px;padding:15px 13px}.model-card .model-tribe{display:flex;gap:7px;align-items:center;color:var(--faction);font-size:11px;margin-bottom:13px}.model-card .model-tribe i{width:5px;height:5px;border-radius:50%;background:var(--faction)}.model-card select{width:100%;background:#15231b;color:#d2e3d4;border:1px solid #425b47;border-radius:5px;padding:8px 5px;font-size:11px}.model-card h3{font-size:18px;font-weight:500;margin:12px 0 1px}.model-card .model-meta{font-size:10px;color:#91b39a}.model-card p{font-size:10px;color:#819b88;line-height:1.85;margin:11px 0;min-height:69px}.model-tags{display:flex;gap:4px;flex-wrap:wrap}.model-tags span{font-size:8px;border:1px solid #39523f;border-radius:3px;padding:2px 5px;color:#94b09b}.model-card .model-link{display:block;font-size:9px;color:#87b694;margin-top:12px}.setup-notice{font-size:10px;color:#99b59f;line-height:1.8;padding:12px 14px;border:1px solid #3b5140;background:#203025;border-radius:6px;margin-top:16px}.setup-notice.warn{color:#d3b884;border-color:#62543b;background:#312b20}.setup-bottom{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid #344b3c;padding:17px 27px;background:#132018}.setup-bottom>span{font-size:10px;color:#7f9a85}.world-setup-grid{display:grid;grid-template-columns:1fr 255px;gap:22px;margin-top:18px}.setup-map-wrap{border:1px solid #426148;border-radius:8px;overflow:hidden;position:relative;background:#192e32}.setup-map-wrap canvas{display:block;width:100%;aspect-ratio:1.6;cursor:crosshair}.setup-map-help{padding:9px 12px;background:#1e3025;color:#9bb5a0;font-size:9px}.setup-sidebar label{display:block;color:#9db7a2;font-size:11px;margin-bottom:12px}.setup-sidebar input,.setup-sidebar select{display:block;margin-top:5px;width:100%;background:#112018;border:1px solid #3e5743;border-radius:5px;color:#dce9dc;padding:8px 10px}.setup-tribes{display:grid;gap:5px;margin:15px 0}.setup-tribes button{text-align:left;padding:7px 9px;border:1px solid #344b3c;border-radius:5px;font-size:10px;color:var(--faction)}.setup-tribes button.active{border-color:var(--faction);background:#27382c}.start-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.start-summary article{border:1px solid #3b5340;border-radius:8px;background:#1d2f23;padding:15px}.start-summary .eyebrow{font-size:8px;letter-spacing:1px}.start-summary h3{font-size:15px;font-weight:500;margin:5px 0}.start-summary p{font-size:11px;color:#94ae98;line-height:1.8}.start-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:14px}.start-rules p{border-left:1px solid #405a46;padding:0 10px;color:#91ad97;font-size:10px;line-height:1.8}.start-rules strong{display:block;color:#c1d8c4;font-size:11px;font-weight:500;margin-bottom:5px}.event-dialog{text-align:center;width:min(540px,92vw);padding:30px}.event-art{font-size:40px;color:#bbd7a1;background:radial-gradient(ellipse,#709b5a1a,transparent 66%);padding:8px 0 16px}.event-dialog .eyebrow{font-size:8px;color:#b0bf8a}.event-dialog h2{font-size:25px;font-weight:450;letter-spacing:-.8px;margin:10px 0}.event-dialog>p{color:#94ad97;font-size:12px;line-height:1.9}.event-for{margin:15px 0;font-size:10px;color:#b3c7af}.event-option{text-align:left;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:1px solid #40573f;border-radius:7px;background:#203020;padding:12px 15px;margin:8px 0}.event-option strong{display:block;font-size:12px;font-weight:500}.event-option small{font-size:10px;color:#a4b585;display:block;margin-top:3px}.event-option>span{color:#a8bf91;font-size:18px}.event-dialog>.muted{display:block;font-size:9px;margin-top:20px}.event-dialog>button{margin:14px 4px 0}.ending-stats{display:flex;justify-content:center;gap:25px;margin-top:20px;color:#a8c59f;font-size:11px}#info-body{padding:23px 26px 28px;font-size:12px;color:#aac1ae}#info-body h3{font-size:14px;color:#d7e7d8;margin:14px 0 7px}#info-body p{margin:8px 0;line-height:1.9}#info-body .model-grid{margin-top:10px}#info-body button{margin:5px}#info-body code{background:#0c1c12;border:1px solid #2e4934;border-radius:4px;padding:3px 6px;color:#b9d6b6;user-select:all}.relation-table{border-collapse:collapse;width:100%;font-size:11px}.relation-table td,.relation-table th{text-align:center;padding:15px 5px;border-bottom:1px solid #344c38}.relation-table th{font-weight:500}.archive-list{max-height:400px;overflow:auto}.archive-list article{padding:9px 0;border-bottom:1px solid #344b39}.archive-list h3{margin:0!important;font-size:11px!important}.archive-list p{font-size:10px;margin:4px 0!important}.file-actions{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.error-box{padding:14px;border:1px solid #74584b;border-radius:7px;background:#382920;color:#e1b49d;margin:14px 0}.toggle-row{display:flex;align-items:center;gap:8px;margin:14px 0;color:#a9bfa8;font-size:11px}#toast{position:fixed;bottom:92px;left:50%;transform:translateX(-50%);padding:12px 20px;border:1px solid #4b6b4d;background:#213c27;color:#d8eed6;border-radius:8px;z-index:30;box-shadow:0 5px 25px #0006;font-size:12px;max-width:90vw}button:hover:not(:disabled).faction-card{border-color:#668c70}.field-hint{color:#7e9a84;font-size:9px;margin-top:6px}.big-map .map-card{position:fixed;inset:20px 15%;z-index:15;display:flex;flex-direction:column;box-shadow:0 0 0 100vw #07120ee8}.big-map .map-wrap{flex:1;min-height:0;aspect-ratio:auto}.big-map #world-map{object-fit:contain}.big-map .map-footer{margin-top:auto}
@media(min-width:1600px){.observatory{grid-template-columns:260px minmax(500px,1fr) 310px}.event-feed{height:655px}.faction-card{padding:16px}.map-header{padding:16px 20px}.lower-section{grid-template-columns:1fr 400px}}
@media(max-width:1200px){main{padding:23px 20px 110px}.topbar{padding:0 20px;gap:15px}nav{gap:16px}.version{display:none}.observatory{grid-template-columns:205px minmax(350px,1fr);gap:15px}.chronicle{grid-column:1/-1}.event-feed{height:220px;display:grid;grid-template-columns:repeat(3,1fr);column-gap:20px}.chronicle .section-heading{margin-bottom:10px}.faction-card{padding:11px}.stat-note{display:none}.stats{gap:10px}.stats article{padding:13px}.top-actions{gap:10px}.lower-section{grid-template-columns:1fr 300px}.controlbar{padding:0 20px}.save-controls>span{display:none}.speed-control>span{display:none}}
@media(max-width:760px){.topbar{height:66px;padding:0 15px}.brand{font-size:14px}.brand-symbol{font-size:30px}.brand small{font-size:6px}.topbar nav{display:none}.connection{font-size:0}.connection i{width:6px;height:6px}.top-actions{gap:9px}.top-actions .primary{font-size:10px!important;padding:7px 9px!important}main{padding:20px 13px 140px}.intro{margin-bottom:20px}.intro h1{font-size:22px;line-height:1.5}.intro h1 span{display:block}.intro p{font-size:10px;max-width:270px}.eyebrow{font-size:7px;letter-spacing:1.4px}.experiment{display:none}.stats{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.stats article{min-height:77px;padding:11px;gap:10px}.stat-icon{height:32px;width:32px;font-size:20px}.stats article strong{font-size:22px}.stats .era-value{font-size:17px}.stats article div>span{font-size:9px}.observatory{display:flex;flex-direction:column;gap:16px}.world-column{order:0;width:100%}.faction-panel{order:1;width:100%}#faction-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.faction-card{margin:0}.faction-top h3{font-size:12px}.faction-stats{font-size:9px}.insight{margin-top:13px;padding-top:14px}.detail-grid{grid-template-columns:repeat(4,1fr)}.chronicle{order:2;width:100%}.map-header{padding:10px 11px}.map-title{gap:7px}.map-title h2{font-size:11px}.map-title>div>span{font-size:8px}.map-emblem{font-size:21px}.map-options{gap:6px}.map-options .pill{font-size:7px;padding:3px 5px}.map-top-left{top:10px;left:10px;font-size:6px;padding:4px 6px}.map-coordinates{font-size:7px;top:10px;right:10px}.map-bottom-left{font-size:7px;left:8px;bottom:7px;max-width:78%}.compass{bottom:10px;right:10px}.compass span{font-size:25px}.map-footer{padding:8px}.map-layers button{font-size:9px;padding:3px 7px}.legend{gap:6px;font-size:6px}.era-card{padding:12px}.era-step{font-size:6px}.era-track{gap:2px}.era-step i{width:8px;height:8px}.era-track:before{top:5px}.research-line{font-size:8px;gap:8px}.under-map{gap:8px;margin-top:10px}.under-map button{padding:10px;gap:7px}.under-map button>span{font-size:20px}.under-map strong{font-size:9px}.under-map small{font-size:7px}.event-feed{height:290px;display:block}.lower-section{grid-template-columns:1fr;gap:13px;margin-top:16px}.world-note{padding:17px}.controlbar{height:113px;flex-wrap:wrap;gap:7px;padding:10px 14px;align-content:center}.playback{min-width:0;flex:1}.playback strong{font-size:10px}.playback span{font-size:8px}.play-button{width:33px;height:33px}.speed-control{order:3;width:100%;justify-content:center;gap:10px;border-top:1px solid #2c4234;padding-top:7px}.segmented button{padding:2px 16px}.speed-control .icon-button{height:25px}.save-controls{gap:6px}.save-controls .secondary{padding:6px 9px!important;font-size:10px!important}.save-controls .icon-button{height:27px;min-width:27px}.dialog-top{padding:16px 17px}.setup-steps{gap:9px;padding:16px;font-size:8px}.setup-steps>span{gap:5px}.setup-steps>i{width:18px}#setup-body{padding:4px 16px 18px}.setup-heading h2{font-size:20px}.setup-heading p{font-size:10px}.mode-option{padding:9px;font-size:10px}.mode-option small{font-size:8px}.model-grid{grid-template-columns:1fr 1fr;gap:9px}.model-card{padding:12px}.model-card h3{font-size:16px}.model-card p{font-size:9px;min-height:65px}.setup-bottom{padding:13px 16px}.setup-bottom>span{display:none}.setup-bottom button{font-size:11px;padding:9px 12px}.world-setup-grid{grid-template-columns:1fr;gap:13px}.setup-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:10px}.setup-tribes{grid-column:1/-1;grid-template-columns:1fr 1fr;margin:0}.setup-sidebar label{margin-bottom:0;font-size:10px}.setup-sidebar .field-hint{grid-column:1/-1}.start-summary{gap:8px}.start-summary article{padding:12px}.start-summary h3{font-size:13px}.start-summary p{font-size:10px}.start-rules{grid-template-columns:1fr;gap:10px}.event-dialog{padding:22px}.event-dialog h2{font-size:21px}#info-body{padding:15px}.big-map .map-card{inset:10px}.chart-legend{gap:13px}#toast{bottom:128px}}
.setup-bottom{position:sticky;bottom:0;z-index:2}.start-summary select{width:100%;background:#172b1c;border:1px solid #49684b;border-radius:5px;padding:8px;color:#d7e9d5;font-size:11px}.text-button{color:var(--mint);text-decoration:underline;font-size:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.atlas-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 13px;border-bottom:1px solid #354941;background:#14221f}.atlas-toolbar>span{color:#a1c5ae;font:10px monospace}.atlas-toolbar>div{display:flex;align-items:center;gap:5px}.atlas-toolbar button{border:1px solid #3d5747;background:#23382b;border-radius:4px;padding:3px 8px;font-size:10px;color:#c8e7cf}.atlas-toolbar #zoom-label{font:10px monospace;color:#c8e8cd;min-width:35px;text-align:center}.map-wrap{aspect-ratio:auto;height:clamp(440px,62vh,760px)}#world-map{cursor:grab;touch-action:none}#world-map.dragging{cursor:grabbing}.map-tooltip{z-index:4}.minimap-wrap{position:absolute;right:13px;bottom:13px;border:1px solid #95b4a2;border-radius:5px;background:#102521ec;padding:5px;box-shadow:0 3px 15px #0008;width:162px}.minimap-wrap>span{display:block;color:#b8d2bd;font:7px monospace;letter-spacing:1px;margin-bottom:4px}.minimap-wrap canvas{display:block;width:150px;height:94px;cursor:crosshair;touch-action:none}.territory-legend{padding:9px 12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#14221f;border-top:1px solid #30493b}.territory-legend button,.territory-legend>span{display:flex;align-items:center;gap:6px;font-size:10px;padding:4px 8px;border:1px solid #35483d;border-radius:4px;color:#c1d1c4}.territory-legend button.active{background:#2a3e31;border-color:var(--faction);color:#f2faee}.territory-legend i{display:inline-block;width:11px;height:11px;border:1px solid #ffffff66;background:var(--faction);border-radius:2px}.territory-legend small{font:9px monospace;color:#91ac97}.territory-legend .unclaimed{margin-left:auto;color:#879c8d;font-size:9px}.territory-legend .unclaimed i{background:#334439}.setup-map-wrap canvas{touch-action:none;cursor:grab}.setup-map-wrap canvas.dragging{cursor:grabbing}.big-map .map-card{inset:12px 3%;z-index:15}.big-map .map-wrap{height:auto;flex:1;min-height:0}.big-map #world-map{object-fit:fill}.big-map .map-header{flex-shrink:0}.big-map .map-footer{margin-top:0;flex-shrink:0}.big-map .atlas-toolbar,.big-map .territory-legend{flex-shrink:0}
@media(max-width:760px){.map-wrap{height:430px}.atlas-toolbar{flex-wrap:wrap;padding:8px}.atlas-toolbar>span{font-size:9px}.atlas-toolbar>div{width:100%;justify-content:flex-end}.atlas-toolbar button{font-size:9px}.minimap-wrap{width:117px;padding:4px;right:9px;bottom:32px}.minimap-wrap canvas{width:107px;height:67px}.minimap-wrap>span{font-size:6px}.territory-legend{padding:7px;gap:5px}.territory-legend button{font-size:9px;padding:4px 6px}.territory-legend small{font-size:8px}.territory-legend .unclaimed{margin-left:0}.big-map .map-card{inset:7px}.big-map .map-header{padding:8px}.big-map .map-title>div>span{display:none}.map-bottom-left{font-size:8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.terrain-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 12px}.terrain-type{text-align:left;border:1px solid #344847;border-radius:8px;padding:12px;background:#152321;display:grid;grid-template-columns:26px 1fr;gap:2px 8px;align-items:center}.terrain-type>span{grid-row:span 2;font-size:24px;color:#8ba9a0}.terrain-type strong{font-size:13px;font-weight:600}.terrain-type small{font-size:10px;color:#92a89f}.terrain-type.active{background:#254338;border-color:#7dd3b1;box-shadow:inset 0 0 0 1px #7dd3b133}.terrain-type.active>span{color:#8ce3bd}.terrain-stats{display:flex;flex-wrap:wrap;gap:5px 16px;font-size:10px;color:#a8c3b8;background:#111e1c;border:1px solid #2c4540;border-radius:6px;margin-bottom:16px;padding:8px 12px}.setup-map-wrap{min-width:0}#setup-map{height:360px;object-fit:contain}.setup-map-help{font-size:10px}.setup-sidebar .field-hint{font-size:10px}@media(max-width:620px){.terrain-picker{gap:6px}.terrain-type{display:block;padding:9px}.terrain-type>span{font-size:20px;display:block}.terrain-type strong{font-size:12px}.terrain-type small{display:block;font-size:9px;line-height:1.5;margin-top:3px}.terrain-stats{font-size:9px;gap:3px 10px}#setup-map{height:260px}}
.conflict-strip{display:flex;align-items:center;flex-wrap:wrap;gap:7px 13px;border-top:1px solid #293f3b;border-bottom:1px solid #33413b;background:#1b2725;padding:8px 13px;font-size:10px;color:#a7b8a8}.conflict-strip button{border:1px solid #7b6144;border-radius:4px;padding:3px 8px;color:#f0c18a;background:#302b22}.conflict-strip .danger{color:#ffac78}.conflict-options{padding:16px;background:#202a26;border:1px solid #685b40;border-radius:7px;margin-bottom:18px}.conflict-options h3{margin:0 0 8px;font-size:15px;color:#f1c28b}.conflict-options p{font-size:12px;line-height:1.8;color:#afbfaf;margin:10px 0}.conflict-options button.chosen{border-color:#e2b278;color:#ffe0a8;background:#4a3b28}.conflict-options>button{margin:3px 7px 3px 0}@media(max-width:620px){.conflict-strip{font-size:9px;gap:5px 9px;padding:6px 9px}.conflict-options{padding:12px}}
.society-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:15px;background:#14251f;border:1px solid #3e6050;border-radius:8px;margin-bottom:17px}.society-controls label{font-size:13px;font-weight:700}.society-controls select{background:#22392d;color:#b9f2d3;border:1px solid #59896c;border-radius:5px;padding:8px 12px}.society-controls>span{font-size:11px;color:#92ac9c;flex:1}.personality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.personality-card{min-width:0;padding:16px;background:#162321;border:1px solid #30483d;border-top:2px solid var(--faction);border-radius:7px}.personality-heading{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.personality-heading>i{background:var(--faction);width:8px;height:8px;border-radius:2px}.personality-heading>strong{font-size:15px}.personality-heading>span{font-size:11px;color:var(--faction);margin-left:auto}.personality-card>p{font-size:11px;color:#a1b8a7;line-height:1.7;margin:10px 0}.personality-card>small{display:block;margin-top:10px;color:#8aa596;font-size:10px}.trait-bars label{display:grid;grid-template-columns:46px 1fr 24px;align-items:center;gap:8px;font-size:10px;color:#92aa9c}.trait-bars meter{width:100%;height:6px}.trait-bars meter::-webkit-meter-bar{background:#2a3a32;border:0}.trait-bars meter::-webkit-meter-optimum-value{background:var(--faction)}.trait-bars small{text-align:right;color:#b3cdbb;font-size:9px}.advanced-models{border-top:1px solid #344239;margin-top:20px;padding-top:14px;color:#91a79a}.advanced-models summary{cursor:pointer;font-size:12px}.advanced-models .mode-switch{margin-top:14px}.advanced-models>p{font-size:11px;margin-top:9px}.relation-scroll{overflow-x:auto;width:100%}.relation-scroll table{min-width:560px}.event-library{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:330px;overflow:auto;margin:10px 0 22px;padding-right:5px}.event-library button{text-align:left}.event-library small{display:block;font-size:9px;color:#92aa9c}.event-library-note{color:#ddbf8c!important;font-size:11px!important}#faction-list{max-height:535px;overflow:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:#3b5e4b transparent}#aftereffects h4{font-size:11px;color:#dfc193;margin:15px 0 5px}#aftereffects p{margin:6px 0;padding:7px;border:1px solid #5b513b;border-radius:4px;font-size:10px;min-height:0;line-height:1.6}#aftereffects b{display:block;color:#eed5ac;font-size:10px}#aftereffects small{display:block;font-size:9px;color:#9fb5a3}.outcome-heading{border-left:3px solid #eab979;padding:2px 0 4px 15px;margin-bottom:20px}.outcome-heading>span{font-size:11px;color:#9fb6a8}.outcome-heading h2{font-size:24px;color:#f2d2a2;margin:7px 0}.outcome-heading p{color:#bfd2c5}.outcome-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:15px 0 24px}.outcome-grid article{padding:13px;background:#162720;border:1px solid #3b5c47;border-radius:6px}.outcome-grid .negative{background:#2c211f;border-color:#654039}.outcome-grid small{display:block;color:#a6b9ab;font-size:10px}.outcome-grid strong{display:block;font-size:22px;color:#9ae2b6}.outcome-grid .negative strong{color:#f1a28e}.outcome-effects{padding-left:18px;color:#dfc698;line-height:2;font-size:12px;margin-bottom:23px}.outcome-heading~.primary{margin-top:20px}@media(max-width:620px){.society-controls{gap:9px;padding:11px}.society-controls>span{flex-basis:100%;order:3}.society-controls .secondary{margin-left:auto}.personality-grid{grid-template-columns:1fr}.personality-card{padding:13px}.event-library{grid-template-columns:1fr;max-height:280px}.outcome-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.outcome-heading h2{font-size:21px}#faction-list{max-height:450px}}
.lower-section>*{min-width:0}.chart-legend{flex-wrap:wrap;row-gap:7px}
/* Cities, research and the civilization race. */
.empire-strip{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:10px 16px;background:#142622;border-top:1px solid #31443b;color:#c6cdb7;font-size:11px}.empire-strip button{color:#e4d5ab;border-color:#7e7a52}.empire-strip span{flex:1;min-width:150px}
#info-dialog:has(.civ-tabs){width:min(1040px,96vw);max-height:90dvh}#info-body:has(.civ-tabs){padding-top:0}.civ-summary{display:flex;flex-wrap:wrap;gap:12px 22px;padding:18px 0;border-top:2px solid var(--faction);font-size:12px;color:#aabbac}.civ-summary b{color:#ecdba5;font-size:16px;margin-left:5px}.civ-summary span:last-child{margin-left:auto}.civ-tabs{display:flex;gap:4px;overflow:auto;padding:6px 0 13px;border-bottom:1px solid #33433c;position:sticky;top:-1px;background:#17211f;z-index:2}.civ-tabs button{white-space:nowrap;padding:10px 13px;border:1px solid transparent;background:transparent;color:#9aaca0;border-radius:6px;font:inherit;font-size:12px;cursor:pointer}.civ-tabs button.active{background:#334334;color:#e6dab6;border-color:#5b7054}.civ-content{padding-top:12px}.civ-content p{font-size:12px;line-height:1.7;color:#a8b9ac}.civ-content h3{font-size:14px;color:#e5e3cf;margin:0 0 10px}.civ-content small{display:block;color:#9aaea2;font-size:10px;line-height:1.6}.civ-city-grid,.civ-build-grid,.civ-victory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 22px}.civ-city,.civ-build-grid>article,.civ-victory-grid>article,.civ-tech,.civ-resource-grid>article{border:1px solid #34483d;background:#1b2b25;border-radius:9px;padding:16px;min-width:0}.civ-city.chosen{border-color:#8c9362;background:#25382b}.civ-card-top{display:flex;align-items:start;gap:6px;justify-content:space-between}.civ-card-top h3{overflow-wrap:anywhere}.civ-card-top button{white-space:nowrap;font-size:10px;padding:0}.civ-chips{display:flex;gap:5px;flex-wrap:wrap;margin:12px 0}.civ-chips span{font-size:10px;background:#344234;color:#c7d2bb;padding:4px 7px;border-radius:4px}.gold{color:#edce8d!important;display:block;margin:10px 0}.civ-queue{font-size:11px;color:#dbcea0;display:block;margin:14px 0 6px}.civ-meter{height:5px;background:#0e1c18;border-radius:5px;overflow:hidden;margin:9px 0 5px}.civ-meter i{display:block;height:100%;background:#b9be7f}.civ-city-picker{display:flex;align-items:center;gap:16px;font-size:12px;color:#d4d4b6;margin:20px 0}.civ-city-picker select{flex:1;max-width:350px;background:#18271f;border:1px solid #52674c;border-radius:6px;color:#e3e3cb;padding:10px;min-width:0}.civ-build-grid>article{display:flex;flex-direction:column;align-items:start}.civ-build-grid button{margin-top:14px}.civ-build-grid p{flex:1}.civ-require{color:#b2a17b!important;margin-top:5px}.civ-tech-tree{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.civ-tech-tree>section>h3{text-align:center;color:#d4c999}.civ-tech{min-height:196px;display:flex;flex-direction:column;align-items:start}.civ-tech p{flex:1}.civ-tech button{margin-top:12px}.civ-tech.done{background:#273c2c;border-color:#5c7751}.civ-tech.current{border-color:#cfbc7a;box-shadow:0 0 0 1px #cfbc7a55}.civ-tech-arrow{text-align:center;color:#849e77;height:26px;line-height:26px}.civ-research-current{border-left:3px solid #c4bc7d;padding:12px 18px;background:#25312a;margin:10px 0 25px}.civ-research-current h3{margin-top:8px}.civ-resource-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.civ-resource-grid b{font:26px Georgia,serif;color:#ecdbb1;display:block;margin:12px 0}.civ-resource-grid strong{font-size:13px}.civ-route-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.civ-route-list article{padding:14px;background:#26392e;border-radius:6px;font-size:12px}.civ-route-list small{margin-top:6px}.civ-wonder-icon{font:36px Georgia,serif;color:#dfca8b;display:block;margin-bottom:12px}.civ-racer{width:100%;font-size:11px;color:#cbd5c4;margin:8px 0}.civ-strategy{background:#24352a;padding:18px;border-radius:8px;margin:8px 0 26px}.civ-strategy .file-actions{margin:12px 0 0}.civ-strategy .civ-require{display:none}.civ-goal{margin:18px 0}.civ-goal strong{display:flex;justify-content:space-between;font-size:11px;color:#cad6bd}.civ-goal strong b{color:#dcc488}.civ-victory-grid>article{padding:18px}.civ-victory-grid .dead{opacity:.5}.civ-readonly{color:#d9c595!important}.civ-victory-note{background:#28372a;padding:16px;border-radius:6px}
@media(max-width:760px){.civ-city-grid,.civ-build-grid,.civ-victory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.civ-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.civ-tech-tree{gap:8px}.civ-tech{padding:12px;min-height:230px}.civ-tabs button{padding:9px}.civ-summary span:last-child{margin-left:0}.empire-strip{gap:8px}.civ-content .secondary{white-space:normal}}
@media(max-width:480px){.civ-city-grid,.civ-build-grid,.civ-victory-grid,.civ-route-list{grid-template-columns:1fr}.civ-tech-tree{grid-template-columns:1fr}.civ-tech{min-height:0}.civ-tech-tree>section{margin-bottom:18px}.civ-tabs{top:-1px}.civ-summary{gap:10px 16px}.civ-city-picker{gap:8px}.civ-tabs button{font-size:11px}.map-footer{flex-wrap:wrap;gap:8px}.empire-strip span{font-size:10px}.civ-content .file-actions{flex-wrap:wrap}}

.resource-map-legend{display:flex;flex-wrap:wrap;gap:8px 15px;background:#172823;color:#d9d2b2;padding:10px 14px;font-size:10px}.resource-map-legend[hidden]{display:none}.resource-map-legend small{color:#8da49b;font-size:9px}
.pace-label{display:flex;align-items:center;gap:7px;color:#bac9b5;font-size:10px}.pace-label select{color:#d8dfbe;background:#1e342b;border:1px solid #52674c;padding:5px;border-radius:5px}.empire-strip #army-summary{color:#e8c598;min-width:110px}.has-decision .intro,.has-inspector .intro,.has-decision .stats,.has-inspector .stats,.has-decision .lower-section,.has-inspector .lower-section{display:none}.has-decision .observatory,.has-inspector .observatory{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,410px);gap:18px;align-items:start}.has-decision .faction-panel,.has-inspector .faction-panel,.has-decision .chronicle,.has-inspector .chronicle{display:none}.has-decision .world-column,.has-inspector .world-column{grid-column:1;grid-row:1;min-width:0;order:0}.has-decision .world-column .map-card,.has-inspector .world-column .map-card{position:sticky;top:12px}.has-decision #event-dialog,.has-inspector #info-dialog,.has-inspector #info-dialog:has(.civ-tabs){position:sticky;inset:auto;top:12px;grid-column:2;grid-row:1;width:100%;min-width:0;max-width:none;max-height:calc(100dvh - 115px);margin:0;transform:none;box-shadow:0 8px 30px #0004;overflow:auto}.has-decision #event-dialog{padding:20px;text-align:left;border-color:#9d8251}.has-decision #event-dialog .event-art{font-size:24px;padding:0 0 8px}.has-decision #event-dialog h2{font-size:21px;line-height:1.5}.has-decision #event-dialog .event-for{color:#dfc38f;margin:10px 0}.has-decision #event-dialog .event-option{padding:12px;margin:9px 0}.has-decision #event-dialog .event-option strong{font-size:12px;line-height:1.6}.has-decision #event-dialog .event-option small{font-size:10px;line-height:1.6}.has-decision #event-dialog>.muted{font-size:10px;line-height:1.7;margin-top:12px}.has-inspector #info-dialog .dialog-top{padding:16px}.has-inspector #info-title{font-size:16px;line-height:1.6}.has-inspector #info-body{padding:12px 16px 22px}.has-inspector #info-body .civ-city-grid,.has-inspector #info-body .civ-build-grid,.has-inspector #info-body .civ-victory-grid,.has-inspector #info-body .civ-tech-tree,.has-inspector #info-body .personality-grid,.has-inspector #info-body .civ-route-list{grid-template-columns:1fr}.has-inspector #info-body .civ-summary{gap:8px 13px}.has-inspector #info-body .civ-summary b{font-size:14px}.has-inspector #info-body .civ-summary span:last-child{flex-basis:100%;margin-left:0}.has-inspector #info-body .civ-city-picker{display:block}.has-inspector #info-body .civ-city-picker select{display:block;width:100%;margin-top:8px}.has-inspector #info-body .outcome-grid{grid-template-columns:1fr 1fr}.has-inspector #info-body .event-library{grid-template-columns:1fr}.has-inspector #info-body .civ-tech{min-height:0}.has-inspector #info-body .civ-tech-tree>section{margin:12px 0}.tactic-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}.military-panel>small{display:block;color:#92a995;font-size:10px;line-height:1.8;margin:8px 0 20px}.military-panel .chosen{border-color:#d2b977;background:#3e402b}.military-note{color:#b6cbb9!important}.unit-list{display:grid;gap:7px;margin:14px 0}.unit-list button{display:grid;grid-template-columns:9px 1fr;gap:2px 9px;text-align:left;background:#21382c;border:1px solid #3f5b44;border-radius:6px;padding:12px;margin:0!important}.unit-list i{width:7px;height:22px;grid-row:span 2;border-radius:2px}.unit-list strong{font-size:12px;font-weight:500}.unit-list b{float:right;font-weight:400;color:#d8c691}.unit-list span{color:#96ad99;font-size:10px}.siege-summary{width:100%;text-align:left;display:block;background:#342d24;border:1px solid #725e3c;border-radius:5px;padding:12px!important;margin:8px 0!important}.siege-summary strong,.siege-summary span{display:block;font-size:12px}.siege-summary span{font-size:10px;color:#c7b78f;margin:5px 0}.siege-summary i{height:4px;display:block;background:#ddb76e}.military-targets{display:flex;flex-direction:column}.military-targets button{text-align:left}.has-decision .big-map .map-card{position:static}
@media(max-width:760px){body.has-decision,body.has-inspector{overflow:hidden}.has-decision .topbar,.has-inspector .topbar{display:none}.has-decision .observatory,.has-inspector .observatory{display:block}.has-decision .world-column .map-card,.has-inspector .world-column .map-card{position:fixed;top:8px;left:8px;right:8px;height:38dvh;width:auto;z-index:12;display:flex;flex-direction:column;overflow:hidden}.has-decision .map-header,.has-inspector .map-header,.has-decision .conflict-strip,.has-inspector .conflict-strip,.has-decision .empire-strip,.has-inspector .empire-strip,.has-decision .territory-legend,.has-inspector .territory-legend,.has-decision .map-footer,.has-inspector .map-footer,.has-decision .resource-map-legend,.has-inspector .resource-map-legend{display:none}.has-decision .map-wrap,.has-inspector .map-wrap{flex:1;min-height:0;aspect-ratio:auto}.has-decision #event-dialog,.has-inspector #info-dialog,.has-inspector #info-dialog:has(.civ-tabs){position:fixed;top:calc(38dvh + 16px);bottom:132px;left:8px;right:8px;width:auto;max-height:none;z-index:13;border-radius:8px}.has-decision #event-dialog{padding:15px}.has-decision #event-dialog .event-art{display:none}.has-decision #event-dialog h2{font-size:18px;margin-top:4px}.has-decision #event-dialog>p{font-size:11px}.has-decision #event-dialog .event-option{margin:7px 0;padding:10px}.has-decision .under-map,.has-inspector .under-map,.has-decision .era-card,.has-inspector .era-card{display:none}.has-decision .minimap-wrap,.has-inspector .minimap-wrap{width:90px}.has-inspector #info-body{padding:12px}.has-inspector #info-dialog .dialog-top{padding:10px 14px}.has-inspector #info-title{font-size:14px}}
.demo-battle-link{display:block;color:#d5c18e;font-size:11px;margin:12px 0}.has-decision #toast,.has-inspector #toast{pointer-events:none}
@media(max-width:760px){.has-decision #event-dialog,.has-inspector #info-dialog,.has-inspector #info-dialog:has(.civ-tabs){height:calc(62dvh - 148px);min-height:0;max-height:calc(62dvh - 148px)}.has-decision #toast,.has-inspector #toast{bottom:auto;top:12px;font-size:10px;padding:8px 12px}.has-decision .minimap-wrap,.has-inspector .minimap-wrap{right:8px;max-width:90px;overflow:hidden}.has-decision #minimap,.has-inspector #minimap{width:90px;height:56px}}

/* Sovereign histories share the map; only decisions pause the world. */
.history-strip{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:9px 16px;background:#1c2e28;border-top:1px solid #415143;font-size:11px;color:#d5cda8}.history-strip progress{accent-color:#d8bd7a;width:100px;height:6px}.history-strip span:last-child{margin-left:auto;color:#9eb6a5}.nation-banner{width:100%;display:flex;gap:14px;align-items:center;text-align:left;border:0;border-top:2px solid var(--faction);padding:13px 18px;background:linear-gradient(100deg,#273e2d,#162b25);color:#eadab2;cursor:pointer}.nation-banner[hidden]{display:none}.nation-banner-icon{font-size:32px;color:var(--faction)}.nation-banner small,.nation-banner strong,.nation-banner em{display:block}.nation-banner small{font-size:10px;color:var(--faction);letter-spacing:1px}.nation-banner strong{font-size:17px;margin:4px 0}.nation-banner em{font-size:11px;font-style:normal;color:#c4cbb7}.nation-banner>span:last-child{margin-left:auto;font-size:11px}.national-record,.nation-summary{padding:16px;background:#20332b;border:1px solid #425441;border-left:3px solid var(--faction);border-radius:6px;margin:14px 0}.nation-panel p{font-size:12px;line-height:1.8;color:#b8c9b9}.national-record h3,.nation-summary h3{font-size:16px;color:#e4d7b1}.national-record small{color:var(--faction);font-size:11px}.national-assets{display:flex;gap:16px;font-size:11px;color:#b9c7ae}.national-assets b{display:block;font-size:22px;color:#ebd7a7;margin-bottom:4px}.nation-panel h3{margin-top:12px}.nation-summary b{color:#ead8a7}.nation-panel .text-button{font-size:11px}
@media(max-width:760px){.history-strip{gap:6px;padding:7px 12px;font-size:10px}.history-strip progress{width:60px}.nation-banner{padding:8px 12px;gap:10px}.nation-banner strong{font-size:14px}.nation-banner em{font-size:10px}.nation-banner>span:last-child{display:none}.has-decision .nation-banner,.has-inspector .nation-banner{display:none}.has-decision .history-strip,.has-inspector .history-strip{display:none}}

@media(min-width:761px){
:is(.has-inspector,.has-decision) .world-column .map-card{height:calc(100dvh - 96px);min-height:450px;display:flex;flex-direction:column;overflow:hidden}
:is(.has-inspector,.has-decision) .map-wrap{flex:1;min-height:180px;aspect-ratio:auto}
:is(.has-inspector,.has-decision) .map-header{padding:10px 14px}
:is(.has-inspector,.has-decision) .map-header h2{font-size:14px}
:is(.has-inspector,.has-decision) .map-options .pill{display:none}
:is(.has-inspector,.has-decision) .atlas-toolbar{padding:7px 12px}
:is(.has-inspector,.has-decision) .conflict-strip{padding:7px 12px}
:is(.has-inspector,.has-decision) .empire-strip{padding:7px 12px;gap:8px}
:is(.has-inspector,.has-decision) .empire-strip>span{display:none}
:is(.has-inspector,.has-decision) .history-strip{padding:7px 12px;gap:8px}
:is(.has-inspector,.has-decision) .history-strip>span:last-child{display:none}
:is(.has-inspector,.has-decision) .nation-banner{padding:7px 14px;gap:10px}
:is(.has-inspector,.has-decision) .nation-banner-icon{font-size:22px}
:is(.has-inspector,.has-decision) .nation-banner strong{font-size:14px;margin:2px 0}
:is(.has-inspector,.has-decision) .nation-banner em{font-size:10px}
:is(.has-inspector,.has-decision) .territory-legend{padding:6px 12px;max-height:42px;overflow:auto}
:is(.has-inspector,.has-decision) .map-footer{padding:8px 12px}
}

/* Keep the complete map above the controls, with panels in their own column. */
:root{--controlbar-height:80px}
@media(min-width:761px){
body:is(.has-inspector,.has-decision){overflow:hidden}
:is(.has-inspector,.has-decision) .topbar{display:none}
:is(.has-inspector,.has-decision) .observatory{position:fixed;inset:8px 8px calc(var(--controlbar-height) + 8px);width:auto;height:auto;grid-template-columns:minmax(0,1fr) clamp(260px,30vw,340px);gap:10px;align-items:stretch}
:is(.has-inspector,.has-decision) .world-column{height:100%;min-height:0;display:flex;flex-direction:column}
:is(.has-inspector,.has-decision) .world-column .map-card{position:relative;top:auto;height:100%;min-height:0;flex:1}
:is(.has-inspector,.has-decision) .era-card,:is(.has-inspector,.has-decision) .under-map{display:none}
.has-inspector #info-dialog,.has-inspector #info-dialog:has(.civ-tabs),.has-decision #event-dialog{position:relative;inset:auto;height:100%;max-height:100%;min-height:0;align-self:stretch}
:is(.has-inspector,.has-decision) .map-wrap{flex:1;min-height:0}
:is(.has-inspector,.has-decision) .atlas-toolbar{gap:6px;flex-wrap:nowrap}
:is(.has-inspector,.has-decision) .atlas-toolbar>span{white-space:nowrap;font-size:9px}
:is(.has-inspector,.has-decision) .atlas-toolbar>div{flex-wrap:nowrap}
:is(.has-inspector,.has-decision) .empire-strip{gap:6px}
:is(.has-inspector,.has-decision) .empire-strip button{font-size:10px!important;padding:6px 8px!important}
:is(.has-inspector,.has-decision) .history-strip progress{width:60px}
:is(.has-inspector,.has-decision) .nation-banner em{display:none}
:is(.has-inspector,.has-decision) .minimap-wrap{width:110px;right:10px;bottom:10px}
:is(.has-inspector,.has-decision) #minimap{width:110px;height:69px}
:is(.has-inspector,.has-decision) .minimap-wrap>span{font-size:7px}
:is(.has-inspector,.has-decision) .map-bottom-left{font-size:8px;max-width:calc(100% - 145px)}
:is(.has-inspector,.has-decision) .map-footer .legend{display:none}
}
@media(max-width:760px){
.has-decision #event-dialog,.has-inspector #info-dialog,.has-inspector #info-dialog:has(.civ-tabs){bottom:calc(var(--controlbar-height) + 8px);height:calc(62dvh - var(--controlbar-height) - 24px);max-height:calc(62dvh - var(--controlbar-height) - 24px)}
}

.minimap-wrap #minimap{max-width:100%;height:auto}
.big-map .map-card{inset:8px 8px calc(var(--controlbar-height) + 8px);width:auto;height:auto;max-height:none}

body.big-map{overflow:hidden}
.big-map .controlbar{z-index:20}
.big-map .minimap-wrap{width:112px;right:10px;bottom:10px}
.big-map #minimap{width:100%;height:auto}

@media(min-width:761px){
.has-decision .conflict-strip,.has-decision .empire-strip,.has-decision .history-strip{display:none}
}

.big-map .conflict-strip,.big-map .empire-strip,.big-map .history-strip,.big-map .nation-banner{display:none}
.big-map .map-header{padding:7px 12px}
.big-map .map-title>div>span,.big-map .map-emblem,.big-map .map-options .pill{display:none}
.big-map .atlas-toolbar{padding:7px 12px}

/* A compact, opt-in atlas key; no additional permanent toolbar row. */
.atlas-toolbar{position:relative}.map-display{flex-shrink:0}.map-display>summary{list-style:none;cursor:pointer;border:1px solid #4d6759;border-radius:5px;padding:4px 8px;color:#dfd2a2;font-size:10px;white-space:nowrap;background:#20372e}.map-display>summary::-webkit-details-marker{display:none}.map-display-menu{position:absolute;right:8px;top:calc(100% + 3px);width:266px;padding:14px;z-index:30;border:1px solid #5a7764;border-radius:8px;background:#132b29f7;box-shadow:0 12px 25px #0008;max-height:min(420px,65dvh);overflow:auto;white-space:normal}.map-display-menu h3{font-size:13px;color:#ecd5a6;margin-bottom:10px}.map-toggles{display:grid;grid-template-columns:1fr 1fr;gap:8px 6px;border-bottom:1px solid #425747;padding-bottom:12px;font-size:10px}.map-toggles label{display:flex;align-items:center;gap:4px;color:#d3dfc9}.map-toggles input{accent-color:#8bdbbb}.map-symbol-key{display:grid;grid-template-columns:1fr 1fr;gap:8px 6px;margin:12px 0}.map-symbol-key span{display:flex;align-items:center;gap:6px;font-size:10px;color:#c7d4c3}.map-symbol-key canvas{width:23px;height:23px;flex-shrink:0}.map-route-key{display:grid;gap:6px;font-size:10px;color:#c3d4c7;margin:8px 0 12px}.map-route-key span{display:flex;align-items:center;gap:8px}.map-route-key i{display:inline-block;width:32px;border-top:2px dashed}.map-route-key .sea{color:#75e0ee}.map-route-key .land{color:#e4c67f}.map-route-key .attack{color:#ffad88}.map-display-menu>small{display:block;color:#8ca69a;font-size:10px;line-height:1.7}.map-tooltip{max-width:230px;line-height:1.7}
@media(max-width:760px){.map-display>summary{font-size:9px;padding:4px}.atlas-toolbar{gap:4px}.atlas-toolbar>span{max-width:70px;font-size:8px}.has-decision .map-display-menu,.has-inspector .map-display-menu{max-height:calc(38dvh - 62px)}.map-display-menu{width:min(266px,calc(100vw - 32px))}}

@media(max-width:760px){.atlas-toolbar>span{display:none}.atlas-toolbar{justify-content:space-between;flex-wrap:nowrap}.atlas-toolbar>div{flex-wrap:nowrap;gap:3px}.atlas-toolbar button{font-size:9px;padding:4px 6px}}

/* Decisions are a small dock. They never resize, scroll or refocus the atlas. */
#event-dialog.decision-dock{position:fixed;inset:12px 12px auto auto;width:min(292px,calc(100vw - 24px));height:auto;max-height:min(600px,calc(100dvh - var(--controlbar-height) - 28px));margin:0;padding:0;transform:none;z-index:35;background:#142b29f7;border:1px solid #a18e5e;border-radius:8px;box-shadow:0 5px 16px #0004;text-align:left;overflow:auto;color:#e4e7d7}
#event-dialog.decision-dock[hidden]{display:none}
.decision-dock-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;background:#293c30;border-bottom:1px solid #5d6748;position:sticky;top:0;z-index:1}.decision-dock-heading strong{font-size:11px;color:#e7d29c}.decision-dock-heading button{font-size:10px;color:#bcd8c4;border:1px solid #506c58;border-radius:4px;padding:3px 7px;white-space:nowrap}
#decision-body{padding:12px}#decision-body .eyebrow{font-size:9px;color:#c1b980;letter-spacing:1px}#decision-body h2{font-size:16px;line-height:1.5;margin:5px 0 8px}#decision-body>p{font-size:11px;color:#adbfad;line-height:1.7;margin:0 0 8px}#decision-body .event-for{font-size:10px;color:#dbcc9e;margin:8px 0}#decision-body .event-option{width:100%;padding:10px;margin:7px 0;text-align:left;border:1px solid #52674a;background:#21382a}#decision-body .event-option strong{font-size:11px;line-height:1.5}#decision-body .event-option small{font-size:10px;line-height:1.6;color:#a4b999}#decision-body .event-option>span{font-size:14px}#decision-hint{display:block;font-size:10px;line-height:1.6;color:#8da393;margin-top:10px}
#event-dialog.decision-collapsed{width:182px}.decision-collapsed #decision-body{display:none}.decision-deltas{display:flex;flex-wrap:wrap;gap:7px;font-size:10px;padding:8px 0 12px}.decision-deltas span{background:#243d31;padding:4px 7px;border-radius:4px;color:#b4c9b6}.decision-deltas b{color:#e5d5a2}.decision-receipt-actions{display:flex;align-items:center;gap:15px;margin-top:8px}.decision-receipt-actions .text-button{font-size:10px}
.has-choice-dock #info-dialog{visibility:hidden;pointer-events:none}
body.has-choice-dock:not(.big-map):not(.has-inspector) #event-dialog{top:94px}
@media(max-width:600px){
#event-dialog.decision-dock,body.has-choice-dock:not(.big-map):not(.has-inspector) #event-dialog{inset:auto 8px calc(var(--controlbar-height) + 8px) 8px;width:auto;max-height:46dvh}
#event-dialog.decision-collapsed{left:auto;width:182px}
}

#event-dialog.decision-dock{overscroll-behavior:contain}

/* Scenery defaults keep data in the hover inspector instead of covering the world. */
.map-display-menu .scene-note{font-size:11px;line-height:1.8;color:#a8bfb3;margin:0 0 12px}.tactical-switch{display:block;border:1px solid #6b866c;border-radius:6px;padding:10px;color:#eedcb4;font-size:11px;margin-bottom:12px}.tactical-switch input{accent-color:#8bdbbb;vertical-align:middle}.tactical-switch small{display:block;margin:5px 0 0 19px;font-size:9px;color:#9db4a6}.scene-key{display:grid;gap:3px;margin:8px 0 12px}.scene-key>span{display:flex;align-items:center;font-size:10px;color:#c5d9c7}.scene-key canvas{width:65px;height:53px;flex-shrink:0}.map-display-menu{max-height:min(540px,72dvh)}

/* Quiet watch mode: map, tiny actors, and controls; detail remains opt-in. */
.cinematic:not(.tactical-view) .map-coordinates,.cinematic:not(.tactical-view) .map-bottom-left,.cinematic:not(.tactical-view) .atlas-toolbar>span,.cinematic:not(.tactical-view) .territory-legend small,.cinematic:not(.tactical-view) .territory-legend .unclaimed,.cinematic:not(.tactical-view) .map-footer .legend,.cinematic:not(.tactical-view) .minimap-wrap>span,.cinematic:not(.tactical-view) .controlbar .playback>div>span,.cinematic:not(.tactical-view) .controlbar .save-controls>span{display:none}
.cinematic:not(.tactical-view) .map-top-left{font-size:8px;opacity:.75}.cinematic .atlas-toolbar>div{gap:5px}.cinematic .territory-legend{padding:6px 10px;gap:5px}.cinematic .territory-legend button{padding:3px 6px;font-size:9px}.cinematic .map-title h2{font-size:12px}.cinematic .map-footer{padding:6px 10px}.cinematic .controlbar .playback>div>strong{font-size:10px}.cinematic .minimap-wrap{opacity:.85}
.command-dock{position:absolute;right:12px;top:42px;z-index:9;width:252px;max-height:calc(100% - 58px);overflow:auto;padding:14px;border:1px solid #577567;border-radius:10px;background:#122c29f2;box-shadow:0 10px 32px #051b2880;backdrop-filter:blur(10px);font-size:11px;color:#dce5cf}.command-dock[hidden]{display:none}.command-dock header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.command-dock header strong{font-size:12px;color:#ead9ac}.command-dock header button{padding:2px 5px}.command-dock label{display:block;color:#a8c1af;font-size:10px;margin:8px 0}.command-dock select{display:block;width:100%;margin:5px 0 10px;padding:8px;color:#e3edd9;background:#1d3c33;border:1px solid #526d5b;border-radius:5px}.command-relation{font-size:10px;text-align:center;color:#d9c499;margin:10px 0}.command-actions{display:flex;gap:7px}.command-actions button{flex:1;border:1px solid #78816a;padding:9px 6px;border-radius:5px;font-size:11px;background:#294136}.command-actions #command-war{color:#f1bb9c;border-color:#a27e60}.command-dock .manual-war{display:flex;align-items:center;gap:7px;margin:14px 0;line-height:1.4}.command-dock input{accent-color:#93d6b4}.command-dock hr{border:0;border-top:1px solid #466353;margin:12px 0}.command-dock #command-recruit{width:100%;padding:9px 5px;border:1px solid #68896b;border-radius:5px;color:#d2e4bc;background:#244335;font-size:11px}.command-dock>small{display:block;color:#829e8d;font-size:8px;margin-top:7px;line-height:1.7}.command-dock output{display:block;color:#e1d4a4;font-size:10px;line-height:1.7;margin-top:10px}.command-dock button:disabled{opacity:.35;cursor:default}
@media(max-width:600px){.cinematic .atlas-toolbar{padding:6px;gap:3px}.cinematic .atlas-toolbar>div{gap:3px}.cinematic .atlas-toolbar button{padding:4px 5px;font-size:8px}.cinematic .map-display>summary{font-size:8px}.command-dock{top:34px;right:7px;width:235px;max-height:calc(100% - 42px)}.cinematic .map-title h2{font-size:10px}.cinematic .minimap-wrap{width:91px}.cinematic .minimap-wrap canvas{width:81px;height:51px}.cinematic .territory-legend button{font-size:8px;padding:2px 4px}}

.settlement-status{padding:7px 14px;background:#21362e;color:#dfd6ad;font-size:11px;line-height:1.5;border-bottom:1px solid #465348}
.command-dock .asylum-summary{font-size:10px;line-height:1.7;color:#e2d3a8}.command-dock .asylum-hint{font-size:9px;line-height:1.6;color:#a6bbad}

/* Employment is opt-in in the existing side inspector. */
.economy-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.economy-heading h3{font-size:14px}.economy-heading small{font-size:10px;color:#a8c0af}.economy-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.economy-metrics span{padding:10px;border:1px solid #4b6756;border-radius:7px;font-size:10px;color:#b5cbb9}.economy-metrics b{display:block;font-size:15px;color:#e2e8c5;margin-top:5px}.economy-metrics b.economy-negative{color:#efac88}.work-priorities{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:15px}.work-priorities .civ-require{display:none}.work-priorities button{margin:0!important}.employment-table{width:100%;border-collapse:collapse;font-size:11px}.employment-table th,.employment-table td{padding:10px 5px;text-align:left;border-bottom:1px solid #405a4b}.employment-table thead{font-size:10px;color:#a9c4b1}.economy-flow{display:grid;gap:7px;padding:13px 0;color:#c3d6bb;font-size:11px}.economy-flow strong{color:#efac88}.economy-rules{font-size:10px;color:#9eb8a6;margin-top:8px}.economy-rules summary{cursor:pointer}.economy-rules p{font-size:10px!important;line-height:1.8!important}

.supply-panel{border-top:1px solid #506551;margin-top:16px;padding-top:13px}.supply-panel h3{font-size:13px;margin-bottom:10px}.supply-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px}.supply-metrics>span{font-size:10px;color:#a9c1ad;background:#20372e;border:1px solid #405e4b;border-radius:5px;padding:8px}.supply-metrics b{display:block;font-size:14px;color:#e4dfb8}.supply-metrics b.economy-negative,.supply-danger{color:#efb08b}.supply-metrics small{font-size:9px;font-weight:400;color:#a9bea9}.supply-list p{display:grid;gap:3px;font-size:10px!important;line-height:1.6!important;border-bottom:1px solid #405744;padding:8px 0;margin:0!important}.supply-list p span{color:#abc4b1}.supply-danger{font-size:11px!important;padding:8px 0}.supply-note{display:block;font-size:9px!important;line-height:1.7!important;color:#a2baa5;margin-top:8px}

.logistics-status{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.logistics-status button{background:#334a37;border:1px solid #718266;border-radius:4px;padding:4px 7px;font-size:10px}.logistics-status button:first-child{color:#edb58c}.logistics-status span{font-size:10px;color:#d6d6ac}
.race-claim{display:block;color:var(--mint);margin-top:7px}.ending-stats{max-height:30vh;overflow:auto}.ending-stats span{overflow-wrap:anywhere}
