:root{color-scheme:dark;--ink:#ecedda;--muted:#a5b8b0;--gold:#dbc994;--line:#ffffff16;--panel:#112a29f5}*{box-sizing:border-box}body{margin:0;background:#102526;color:var(--ink);font:14px 'DM Sans',sans-serif;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;background:transparent;transition:background .2s,color .2s}button:hover{color:#fff;background:#ffffff0c}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}a{color:inherit;text-decoration:none}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;border-bottom:1px solid #ffffff12;background:linear-gradient(180deg,#102526e8,#102526a8 72%,transparent);position:fixed;inset:0 0 auto;z-index:5;backdrop-filter:blur(7px)}.brand{display:flex;gap:11px;align-items:center;font:25px Marcellus,serif;letter-spacing:.4px}.brand-mark{font-size:40px;color:var(--gold)}.brand small{display:block;font:8px 'DM Mono',monospace;letter-spacing:2.4px;margin-top:5px;color:var(--muted)}nav{display:flex;gap:7px;height:100%;align-items:center}nav button{height:100%;padding:0 18px;color:var(--muted);border-bottom:2px solid transparent}nav button.active{color:var(--gold);border-color:var(--gold)}nav small{font:10px 'DM Mono';margin-left:5px;opacity:.65}.live{font:9px 'DM Mono';letter-spacing:1px;display:flex;align-items:center;gap:8px;color:var(--muted)}.live i{height:6px;width:6px;border-radius:50%;background:#a4b6a7}.live.running i{background:#b3d29a;box-shadow:0 0 12px #a0cf95}.live.offline i{background:#cf746d}.world{position:fixed;inset:0;width:100vw;height:100dvh;overflow:hidden;background:radial-gradient(ellipse at 50% 46%,#326052,#193a3b 50%,#102829 100%);touch-action:none;cursor:grab}.world:active{cursor:grabbing}#worldMap{display:block;width:100%;height:100%;outline:none}.map-title{position:absolute;left:32px;top:26px;pointer-events:none;text-shadow:0 2px 18px #102829,0 1px 4px #102829}.eyebrow{font:9px 'DM Mono',monospace;letter-spacing:1.65px;color:var(--muted)}h1{font:38px Marcellus,serif;margin:9px 0 5px;letter-spacing:-.6px}.map-title p{font-size:12px;color:#c2d0c4;margin:0}.weather{position:absolute;right:30px;top:26px;display:flex;align-items:center;gap:9px;font:9px 'DM Mono';letter-spacing:1px;text-shadow:0 2px 8px #102829}.weather>span:first-child{font-size:23px;color:var(--gold)}.compass{position:absolute;right:35px;top:78px;text-align:center;font:9px 'DM Mono';color:#b6c8ba;text-shadow:0 2px 8px #102829}.compass span{display:block;font-size:40px;margin-top:1px}.latest{position:absolute;bottom:20px;left:27px;display:flex;align-items:center;gap:12px;max-width:440px;background:#102829e8;border:1px solid var(--line);border-radius:8px;padding:11px 15px;text-align:left;box-shadow:0 5px 24px #071c2350;backdrop-filter:blur(9px)}.latest small{display:block;font:8px 'DM Mono';letter-spacing:1.3px;color:var(--muted);margin-bottom:5px}.latest b{font-weight:400;margin-left:12px;color:var(--gold)}.event-symbol{color:var(--gold);font-size:22px}#latestEvent{font-size:11px;line-height:1.4}.map-tools{position:absolute;right:27px;bottom:20px;display:flex;align-items:center;background:#102829ed;border:1px solid var(--line);border-radius:8px;padding:4px;backdrop-filter:blur(8px)}.map-tools button{height:34px;min-width:37px;border-radius:4px;font-size:20px}.map-tools #fitMap{font:9px 'DM Mono';min-width:54px}.map-credit{position:absolute;right:30px;top:133px;font:7px 'DM Mono';letter-spacing:1px;color:#c1cdc28a;text-shadow:0 2px 7px #102829}.time-dock{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:8px 30px;background:linear-gradient(0deg,#102526f2,#102526c8 74%,#10252608);border-top:1px solid #ffffff18;position:fixed;inset:auto 0 0;z-index:5;backdrop-filter:blur(8px)}.calendar{display:flex;align-items:center;gap:12px;min-width:150px}.sun{font-size:29px;color:var(--gold)}.calendar strong{display:block;font:17px Marcellus;margin-top:4px}.calendar .eyebrow{font-size:8px;letter-spacing:.9px}.calendar b{font-weight:400;color:var(--ink)}.dot-sep{margin:0 5px}.playback{display:flex;gap:14px;align-items:center;white-space:nowrap}#playState{font:8px 'DM Mono';letter-spacing:1.1px;color:var(--muted)}.season-track{flex:1;max-width:330px;margin:auto}.season-track>div:first-child{display:flex;justify-content:space-between;font:8px 'DM Mono';color:var(--muted)}.season-line{height:3px;background:linear-gradient(90deg,#9cb78b 25%,#d4bb75 25% 50%,#b88a65 50% 75%,#9aafb7 75%);margin-top:13px;position:relative;opacity:.85}.season-line i{position:absolute;top:-3px;width:9px;height:9px;border:2px solid #fff4cb;background:#1e3835;border-radius:50%;transform:translateX(-50%)}.population{text-align:center;min-width:110px}.population strong{font:24px Marcellus;display:block}.population span,.elapsed span{font:7px 'DM Mono';letter-spacing:1.4px;color:var(--muted)}.elapsed{text-align:center;min-width:112px}.elapsed strong{font:22px Marcellus;display:block}.dock-weather{min-width:185px;display:flex;align-items:center;gap:9px}.dock-weather>span{font-size:25px;color:var(--gold)}.dock-weather strong{display:block;font:11px 'DM Sans';font-weight:600;white-space:nowrap}.dock-weather div>span{display:block;margin-top:4px;font:7px 'DM Mono';letter-spacing:1.3px;color:var(--muted)}.naming-note{font:8px 'DM Mono'!important;letter-spacing:.4px;color:#d8c891!important;margin-top:0!important}.drawer{position:fixed;z-index:6;right:18px;top:83px;bottom:96px;width:340px;overflow:auto;background:var(--panel);border:1px solid #ffffff20;box-shadow:0 15px 60px #061d2470;backdrop-filter:blur(18px);border-radius:12px;padding:22px}.drawer[hidden]{display:none}.drawer-head{display:flex;align-items:center;justify-content:space-between}.drawer-head button{font-size:23px;color:var(--muted)}h2{font:25px Marcellus;margin:15px 0 17px}.civ-card{border-top:1px solid var(--line);padding:17px 0}.civ-card h3{font:21px Marcellus;margin:0 0 4px}.civ-card p,.drawer-intro{font-size:11px;color:var(--muted);line-height:1.65;margin:0 0 12px}.civ-stats{display:flex;justify-content:space-between;font-size:9px;color:var(--muted)}.civ-stats strong{font:19px Marcellus;color:var(--ink);display:block;margin-top:4px}.role-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 8px;margin:12px 0}.role{font:8px 'DM Mono';color:var(--muted);display:flex;align-items:center;gap:4px;min-width:0}.role b{color:var(--gold);font-weight:500}.role i{height:4px;flex:1;max-width:24px;background:#ffffff14;border-radius:4px;overflow:hidden}.role i:after{content:'';display:block;height:100%;width:var(--value);background:var(--role,#dbc994)}.civ-foot{font:9px 'DM Mono';color:#c9cfb3}.footnote{font-size:10px;color:var(--muted);line-height:1.7}.event{border-left:1px solid #c1b88940;padding:0 0 23px 16px;position:relative}.event:before{content:'';position:absolute;left:-3px;top:2px;width:5px;height:5px;border-radius:50%;background:var(--gold)}.event-time{font:8px 'DM Mono';color:var(--muted);letter-spacing:1px}.event-title{font:16px Marcellus;margin:7px 0}.event-desc{font-size:11px;line-height:1.6;color:var(--muted)}#toast{position:fixed;z-index:10;bottom:100px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#e3d5ad;color:#18322f;padding:12px 20px;border-radius:6px;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}@media(min-width:1600px){.map-title{top:100px;left:40px}}@media(max-width:1100px){.live{display:none}.time-dock{gap:13px;padding-inline:18px}.dock-weather{min-width:150px}.playback #playState{display:none}}@media(max-width:760px){.topbar{height:64px;padding:0 14px}.brand{font-size:20px;gap:6px}.brand-mark{font-size:29px}.brand small{font-size:6px;letter-spacing:1.3px}nav{gap:0}nav button{padding:0 8px;font-size:10px}nav small{display:none}.map-title{left:16px;top:78px}.eyebrow{font-size:7px}.compass{right:15px;top:72px}.compass span{font-size:30px}.latest{left:12px;bottom:100px;padding:8px 10px;max-width:calc(100% - 24px)}.latest small{font-size:7px}#latestEvent{font-size:9px}.map-tools{right:12px;bottom:99px}.time-dock{min-height:94px;padding:8px 10px;display:grid;grid-template-columns:auto 1fr auto;gap:7px}.calendar{min-width:0;gap:6px}.sun{font-size:21px}.calendar strong{font-size:13px}.calendar .eyebrow{font-size:7px;letter-spacing:.35px}.elapsed{min-width:0}.elapsed strong{font-size:17px}.elapsed span,.population span{font-size:6px;letter-spacing:.6px}.population{min-width:65px}.population strong{font-size:18px}.dock-weather{grid-column:1/3;grid-row:2;min-width:0;gap:6px}.dock-weather>span{font-size:18px}.dock-weather strong{font-size:9px}.dock-weather div>span{display:none}.playback{grid-column:3;grid-row:2;justify-content:end;gap:3px}.playback #playState{display:none}.drawer{top:74px;bottom:105px;right:10px;left:10px;width:auto;padding:18px}#toast{bottom:110px;max-width:90%;width:max-content}}@media(max-width:400px){.brand{font-size:17px}.brand-mark{font-size:25px}nav button{padding:0 5px;font-size:9px}.time-dock{grid-template-columns:auto 1fr auto}.calendar .eyebrow{font-size:6px}.dock-weather strong{font-size:8px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* 2026-09-24 simulation control surface */
.topbar nav{gap:2px}.topbar nav button{font-size:12px;padding:0 13px}
.time-dock{min-height:84px;gap:24px}.calendar{display:block;min-width:370px}.calendar-date{display:flex;gap:24px;align-items:baseline;font:10px 'DM Mono',monospace;letter-spacing:1.2px;color:var(--muted)}.calendar-date span{white-space:nowrap}.calendar-date b{font:31px Marcellus,serif;color:var(--ink);letter-spacing:0;margin-left:5px}.calendar-weather{display:flex;align-items:center;gap:10px;margin-top:0;font:10px 'DM Sans',sans-serif;white-space:nowrap}.calendar-weather #season{font:10px 'DM Mono';letter-spacing:1px;color:var(--gold)}.calendar-weather #weather{color:#d2ded9;font-size:11px}.calendar-weather .dot-sep{margin:0;color:#8daaa0}
.population-wrap{position:relative;margin-left:auto}.population{min-width:180px;padding:7px 12px;border-radius:8px;text-align:center}.population:hover,.population[aria-expanded="true"]{background:#ffffff11}.population strong{font:29px Marcellus;display:block}.population span{font:8px 'DM Mono';letter-spacing:1.2px;color:var(--muted)}.population-details{position:absolute;bottom:calc(100% + 20px);right:-24px;width:390px;max-height:min(68vh,600px);overflow:auto;padding:20px;background:#102b2af2;border:1px solid #ffffff33;border-radius:14px;box-shadow:0 18px 70px #061920bb;backdrop-filter:blur(18px);z-index:8}.population-details[hidden]{display:none}.population-details h2{margin:0;font-size:22px}.population-row{display:grid;grid-template-columns:1fr auto 44px;align-items:center;gap:7px;border-top:1px solid var(--line);padding:10px 0;font-size:11px}.population-row span{display:flex;align-items:center;gap:8px}.population-row i{width:8px;height:8px;border-radius:50%;flex:none}.population-row strong{font:17px Marcellus}.population-row small{font:9px 'DM Mono';color:var(--muted);text-align:right}.population-summary{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:12px;font:10px 'DM Sans';color:var(--muted)}.population-summary b{display:block;font:17px Marcellus;color:var(--ink)}.demography{margin-top:18px;border-top:1px solid var(--line);padding-top:13px}.demography h3{font:16px Marcellus;margin:0 0 10px}.demography>div{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.demography>div span{border:1px solid var(--line);padding:7px;border-radius:6px;font:9px 'DM Sans';color:var(--muted)}.demography b{display:block;font:17px Marcellus;color:var(--ink);margin-top:4px}.demography p{font-size:10px;color:var(--muted)}
#civilizationsPanel{left:50%;right:auto;transform:translateX(-50%);width:min(1060px,calc(100vw - 40px))}#civilizationList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.civ-card{padding:16px;border:1px solid #ffffff20;border-top:3px solid var(--role);border-radius:10px;background:#ffffff09}.civ-card h3{font-size:20px}.civ-card p{margin-bottom:8px}.role-groups{grid-template-columns:repeat(4,minmax(0,1fr))}.civ-foot{font-size:8px}
#chroniclePanel{width:min(530px,calc(100vw - 36px))}.chronicle-tabs{display:flex;gap:3px;margin:12px 0 20px;padding:3px;background:#0c2323;border:1px solid var(--line);border-radius:8px;overflow:auto}.chronicle-tabs button{flex:1;min-width:max-content;padding:8px 9px;border-radius:5px;font:9px 'DM Sans';color:var(--muted)}.chronicle-tabs button[aria-selected="true"]{background:#d5c58c;color:#142822}.chronicle-tabs button:focus-visible{outline-offset:-2px}
#chroniclePanel .chronicle-head{position:sticky;top:-22px;z-index:2;display:block;margin:-22px -22px 16px;padding:18px 22px 10px;background:#102a29;box-shadow:0 10px 22px #081c1d88}.chronicle-top{display:flex;align-items:flex-start;justify-content:space-between}.chronicle-top h2{margin:6px 0 2px}.chronicle-tabs{margin:10px 0 0}
.latest{bottom:102px}.map-tools{bottom:102px}
@media(max-width:900px){.topbar nav button{font-size:10px;padding:0 7px}.calendar{min-width:0}.time-dock{gap:8px;padding-inline:12px}.population{min-width:125px}.playback{gap:3px}}
@media(max-width:760px){.topbar nav button{font-size:9px;padding:0 4px}.topbar nav small{display:none}.time-dock{min-height:95px;display:flex;flex-wrap:wrap;align-content:center;justify-content:space-between;gap:3px 10px}.calendar{width:100%}.calendar-date{gap:18px;font-size:8px}.calendar-date b{font-size:23px}.calendar-weather{font-size:8px}.calendar-weather #weather{font-size:9px}.population{min-width:0;padding:2px 7px}.population strong{font-size:18px}.population span{font-size:6px}.population-details{position:fixed;left:9px;right:9px;bottom:105px;width:auto;max-height:65vh}.playback{margin-left:auto}.latest,.map-tools{bottom:108px}#civilizationList{grid-template-columns:1fr}#civilizationsPanel{left:10px;right:10px;transform:none;width:auto}.role-groups{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:761px){#civilizationsPanel{top:78px;bottom:90px;padding:14px 20px}#civilizationsPanel h2{margin:6px 0 10px;font-size:21px}#civilizationList{gap:8px}.civ-card{padding:8px 12px}.civ-card h3{font-size:17px;margin:0 0 2px}.civ-card p{font-size:9px;line-height:1.2;margin:0 0 3px}.civ-stats{font-size:8px}.civ-stats strong{font-size:15px;margin-top:1px}.role-groups{gap:2px 5px;margin:6px 0}.role{font-size:7px}.civ-foot{font-size:7px}#civilizationsPanel .footnote{margin:8px 0 0}}
.time-dock{z-index:7}.population-details{z-index:9}
/* Civilization inspection */
.civ-card-open{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 0 3px;text-align:left;color:var(--ink)}.civ-card-open:hover{background:none;color:var(--gold)}.civ-card-open>span:last-child{font-size:17px;color:var(--gold)}.civ-card-name{font:20px Marcellus,serif}.civ-card:has(.civ-card-open:hover){border-color:#e0d29b80;background:#ffffff12}.civ-detail-panel{width:min(490px,calc(100vw - 36px));padding:19px 22px}.detail-back{font:9px 'DM Mono',monospace;letter-spacing:.5px;color:var(--gold);padding:7px 4px;text-align:left}.detail-hero{border-left:4px solid var(--role);padding:3px 0 5px 15px;margin:16px 0 20px}.detail-status{font:9px 'DM Mono',monospace;letter-spacing:1.2px;color:var(--gold)}.detail-hero h2{font-size:30px;margin:7px 0 4px}.detail-hero p{font-size:11px;color:var(--muted);margin:0;line-height:1.5}.detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.detail-metrics>div{min-width:0;border:1px solid var(--line);border-radius:8px;padding:10px 8px;background:#ffffff07}.detail-metrics span{display:block;font:8px 'DM Mono';color:var(--muted);min-height:20px}.detail-metrics strong{display:block;font:18px Marcellus;margin-top:3px}.detail-section{border-top:1px solid var(--line);margin-top:20px;padding-top:15px}.detail-section h3{font:19px Marcellus;margin:0 0 11px}.detail-resources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px}.detail-resources>span{display:flex;justify-content:space-between;gap:6px;font-size:11px;color:var(--muted);border-bottom:1px solid #ffffff0c;padding:5px 0}.detail-resources b{color:var(--ink);font-weight:600}.detail-value,.detail-role{display:grid;grid-template-columns:minmax(105px,1fr) minmax(70px,1fr) 46px;gap:9px;align-items:center;margin:9px 0;font-size:11px}.detail-value b,.detail-role b{font:10px 'DM Mono';font-weight:400;color:var(--gold);text-align:right}.detail-value-track{height:5px;background:#ffffff17;border-radius:4px;overflow:hidden}.detail-value-track i{display:block;height:100%;background:linear-gradient(90deg,#8fb8a0,#decf92);border-radius:4px}.detail-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.detail-role{grid-template-columns:minmax(72px,1fr) minmax(28px,.6fr) 33px;gap:6px;font-size:9px;margin:6px 0}.detail-role b{font-size:9px}.detail-note{font-size:10px;line-height:1.5;color:var(--muted);margin:4px 0 10px}.detail-demographics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.detail-demographics span{border:1px solid var(--line);border-radius:7px;padding:8px 7px;font-size:10px;color:var(--muted)}.detail-demographics b{display:block;color:var(--ink);font:17px Marcellus;margin-top:5px}.detail-chips{display:flex;flex-wrap:wrap;gap:6px}.detail-chip{border:1px solid #d8c98b55;border-radius:30px;padding:5px 9px;color:#e5d7aa;font-size:10px}.detail-relation{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid #ffffff0e;font-size:10px;color:var(--muted)}.relation-name{display:flex;align-items:center;gap:6px;color:var(--ink)}.relation-name i{width:7px;height:7px;border-radius:50%;flex:none}.detail-chronicle{list-style:none;margin:0;padding:0}.detail-chronicle li{border-left:1px solid #d7c89166;margin-left:2px;padding:0 0 13px 12px;font-size:11px;line-height:1.4}.detail-chronicle time{display:block;color:var(--muted);font:8px 'DM Mono';margin-bottom:4px}.map-hover-tooltip{position:fixed;z-index:9;pointer-events:none;max-width:230px;background:#0c2826ee;border:1px solid #dfd19e80;border-radius:8px;padding:9px 12px;box-shadow:0 7px 24px #071a19aa;backdrop-filter:blur(7px)}.map-hover-tooltip[hidden]{display:none}.map-hover-tooltip strong{display:block;font:16px Marcellus;color:var(--ink)}.map-hover-tooltip span{display:block;font-size:10px;color:var(--muted);margin-top:3px}
@media(min-width:761px){.civ-card-name{font-size:17px}.civ-detail-panel{top:78px;bottom:90px}}
.event-facts{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.event-facts span{font:9px 'DM Sans',sans-serif;line-height:1.4;color:#e5dcc2;background:#d8c98b15;border:1px solid #d8c98b35;border-radius:5px;padding:5px 7px}
@media(max-width:760px){.civ-detail-panel{left:10px;right:10px;width:auto;max-width:none}.detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-roles{grid-template-columns:1fr}.detail-role{grid-template-columns:minmax(100px,1fr) 1fr 35px}}
.detail-focus{display:inline-flex;align-items:center;gap:7px;margin-top:13px;padding:8px 11px;background:#dac995;color:#18302b;border-radius:6px;font:10px 'DM Sans';font-weight:700}.detail-focus:hover{background:#eee0af;color:#102526}
.civ-card{cursor:pointer}.civ-path{display:inline-block;margin:2px 0 5px;padding:3px 7px;border:1px solid #d9ca9680;border-radius:20px;color:#e4d7aa;font:9px 'DM Sans'}.detail-orientation{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.detail-orientation span{border:1px solid #dac99580;border-radius:30px;padding:5px 8px;color:#e7d6a2;font-size:11px}
.drawer>.drawer-head{position:sticky;top:-22px;z-index:6;margin:-12px -22px 12px;padding:10px 22px;background:rgba(17,42,41,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.population-details>.drawer-head{position:sticky;top:-20px;z-index:6;margin:-10px -20px 12px;padding:10px 20px;background:rgba(16,43,42,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}

/* Civilization identity and the three durable branches of world memory. */
.civ-card-name{flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.12}
.civ-card-population{flex:none;align-self:flex-start;margin-top:2px;color:#f0e4bf;font:16px Marcellus,serif;white-space:nowrap;font-variant-numeric:tabular-nums}
.civ-card-population small{font:9px 'DM Sans',sans-serif;color:var(--muted)}
.civ-card-open>.civ-card-arrow{flex:none;font-size:17px;color:var(--gold)}
.detail-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.detail-title-row h2{min-width:0;overflow-wrap:anywhere}
.detail-title-population{flex:none;color:#f0e4bf;font:19px Marcellus,serif;white-space:nowrap;font-variant-numeric:tabular-nums}
.detail-title-population small{display:block;text-align:right;color:var(--muted);font:9px 'DM Sans',sans-serif}
.civ-model{display:flex;align-items:baseline;gap:6px;min-width:0;margin:1px 0 7px;color:var(--muted);font:9px 'DM Mono',monospace}
.civ-model strong{color:#c6dfd5;font-weight:500;overflow-wrap:anywhere}
.event-time{display:flex;flex-wrap:wrap;align-items:center;gap:5px 9px}
.event-category{padding:3px 6px;border-radius:3px;border:1px solid #c9b87454;color:#e9d7a3;font:8px 'DM Mono',monospace;letter-spacing:.4px}
.event-society .event-category{border-color:#9bb8ae66;color:#bfd9cb}
.event-discovery .event-category{border-color:#8fb7cd66;color:#bad9e8}
#chroniclePanel .chronicle-tabs button{flex:1 0 auto}
@media(max-width:760px){.civ-card-open{gap:5px}.civ-card-name{font-size:17px}.civ-card-population{font-size:15px}.civ-card-population small{font-size:8px}.detail-title-row h2{font-size:24px}.detail-title-population{font-size:16px}.civ-model{font-size:8px;flex-wrap:wrap}.chronicle-tabs{scrollbar-width:thin}#chroniclePanel .chronicle-head{top:-18px;margin:-18px -18px 12px;padding:14px 18px 9px}}

/* Durable histories of extinct and archived civilizations. */
#archivePanel{width:min(620px,calc(100vw - 36px))}
.archive-card{border:1px solid var(--line);border-left:3px solid var(--archive-color);border-radius:9px;background:#ffffff08;padding:16px;margin:0 0 14px}
.archive-label,.archive-dates,.archive-author{font:9px 'DM Mono',monospace;letter-spacing:.4px;color:var(--muted)}
.archive-card h3{font:24px Marcellus,serif;margin:7px 0 4px;color:var(--ink)}
.archive-dates{margin:0 0 13px;color:var(--gold)}
.archive-summary{font-size:12px;line-height:1.7;color:#e3e8db;margin:0 0 9px}
.archive-author{color:#c8d9ce}
.archive-card h4{font:16px Marcellus,serif;margin:17px 0 10px}
.archive-card ol{list-style:none;padding:0;margin:0}
.archive-card li{display:flex;gap:11px;padding:8px 0;border-top:1px solid var(--line);font-size:11px;line-height:1.5;color:var(--muted)}
.archive-card time{flex:none;color:var(--gold);font:10px 'DM Mono',monospace}
@media(max-width:760px){#archivePanel{left:10px;right:10px;width:auto}.topbar nav{overflow-x:auto;scrollbar-width:none}.topbar nav button{white-space:nowrap}}
.civ-card-fallen{opacity:.62;border-top-color:#ffffff30}
.ai-spend{font:9px 'DM Mono';letter-spacing:1px;color:var(--gold);border:1px solid #dbc99455;border-radius:4px;padding:6px 8px}.admin-login{display:grid;gap:8px}.admin-login[hidden]{display:none}.admin-login input{font:inherit;padding:9px 10px;border-radius:6px;border:1px solid var(--line);background:#ffffff0c;color:var(--ink)}.admin-login button,.admin-logout{border:1px solid #dbc99466;border-radius:6px;padding:8px 12px;color:var(--gold)}.admin-error{color:#e39b8f;font-size:11px;margin:0}.admin-spend{font-size:12px;color:var(--muted)}.admin-spend strong{color:var(--gold);font-size:16px}.admin-table{width:100%;border-collapse:collapse;font-size:10px}.admin-table th,.admin-table td{text-align:left;padding:5px 4px;border-bottom:1px solid var(--line)}.admin-table th{font:8px 'DM Mono';color:var(--muted)}.admin-civs{padding-left:16px;font-size:11px;line-height:1.7}.admin-civs code{font:10px 'DM Mono';color:var(--muted)}.admin-logout{margin-top:14px}
.chronicle-panel{width:min(560px,calc(100vw - 36px))}.chronicle-authors,.chronicle-tabs{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 10px}.chronicle-authors button,.chronicle-tabs button{font-size:11px;padding:5px 9px;border:1px solid var(--line);border-radius:30px;color:var(--muted)}.chronicle-authors button i,.event-author i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--author);margin-right:5px}.chronicle-authors button[aria-pressed=true],.chronicle-tabs button[aria-pressed=true]{color:var(--ink);border-color:#dbc99488;background:#ffffff10}
.event-author{margin-left:8px;color:#c9cfb3}.event-decision{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:11px;color:var(--muted);margin:2px 0 4px}.event-decision b{color:var(--ink);font-weight:600}.event-effects{font:9px 'DM Mono',monospace;color:#b9c3a8;margin-bottom:4px}
.decided-by{font:8px 'DM Mono',monospace;letter-spacing:.6px;padding:2px 6px;border-radius:20px;border:1px solid var(--line);font-style:normal}.decided-council{color:#cfe0b0;border-color:#cfe0b055}.decided-custom{color:#e7cf8c;border-color:#e7cf8c66}.decided-rules{color:#9fb0aa}
.event-god .event-category{color:#e7cf8c}.detail-decisions li{display:grid;gap:3px}.detail-decisions small{color:var(--muted);font-size:10px}.decision-text{color:#c2cdc4}
.run-list{display:grid;gap:8px}.run-list[hidden]{display:none}.run-card{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#ffffff08;font-size:11px;color:var(--muted)}.run-card:hover{border-color:#dbc99488}.run-number{font:18px Marcellus,serif;color:var(--ink)}.run-status{font:9px 'DM Mono',monospace;color:var(--gold)}.run-title{font:24px Marcellus,serif;margin:10px 0 2px}.run-heading{font:15px Marcellus,serif;margin:18px 0 8px}
.god{border-top:1px solid var(--line);margin-top:18px;padding-top:6px}.god h4{font:9px 'DM Mono',monospace;letter-spacing:1px;color:var(--muted);margin:12px 0 6px}.god-group{display:flex;flex-wrap:wrap;gap:5px}.god-group button{font-size:11px;padding:5px 9px;border:1px solid var(--line);border-radius:6px;color:var(--ink)}.god-group button[aria-pressed=true]{border-color:var(--gold);background:#dbc99422;color:var(--gold)}
.god-form{display:grid;gap:8px;margin-top:12px;padding:12px;border:1px solid #dbc99444;border-radius:8px;background:#ffffff06}.god-form[hidden]{display:none}.god-form label{display:grid;gap:4px;font-size:11px;color:var(--muted)}.god-form select,.god-form textarea,.god-form input{font:inherit;font-size:12px;padding:7px 9px;border-radius:6px;border:1px solid var(--line);background:#0f2322;color:var(--ink)}.god-desc{font-size:11px;color:var(--muted);margin:0}.god-desc b{color:var(--ink)}.god-pick{font:10px 'DM Mono',monospace;color:var(--gold);margin:0}.god-submit{border:1px solid var(--gold);border-radius:6px;padding:8px;color:var(--gold)}.god-status{font-size:11px;color:#cfe0b0;min-height:1em}.admin-danger{border:1px solid #e39b8f88;border-radius:6px;padding:8px 12px;color:#e39b8f}
.snapshot-mode .topbar,.snapshot-mode .finale-banner,.snapshot-mode .latest,.snapshot-mode .time-dock,.snapshot-mode .map-title,.snapshot-mode .compass,.snapshot-mode .map-tools,.snapshot-mode .drawer,.snapshot-mode .calendar,.snapshot-mode .population-wrap,.snapshot-mode .population-details,.snapshot-mode .playback{display:none!important}
.event-media{display:flex;gap:6px;margin-top:9px;flex-wrap:wrap}.media-thumb{padding:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;line-height:0;background:#0c1f1f}.media-thumb:hover{border-color:var(--gold);background:#0c1f1f}.media-thumb img{display:block;width:100%;height:auto}.event-media .media-thumb{width:112px}.event-media .media-thumb img{aspect-ratio:4/3;object-fit:cover}.event-media .media-painting{border-color:#dbc99466}
.archive-collage{margin:10px 0}.archive-collage figcaption,.detail-gallery figcaption,.century-strip figcaption{font:9px 'DM Mono',monospace;letter-spacing:.4px;color:var(--muted);margin-top:5px;line-height:1.5}.detail-gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-gallery figure,.century-strip figure,.archive-collage{margin:0}
.comic-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.comic-panel{margin:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#0c1f1f}.comic-panel .media-thumb{border:0;border-radius:0;width:100%}.comic-panel figcaption{padding:7px 9px 9px;font-size:11px;line-height:1.45}.comic-panel time{display:block;font:9px 'DM Mono',monospace;color:var(--gold);letter-spacing:1px;margin-bottom:3px}
.century-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px}.century-strip figure{flex:0 0 132px}
.lightbox{max-width:min(1100px,94vw);max-height:92vh;padding:14px;border:1px solid #ffffff24;border-radius:12px;background:var(--panel);color:var(--ink);overflow:auto}.lightbox::backdrop{background:#061418d0}.lightbox img{display:block;max-width:100%;max-height:72vh;margin:0 auto;border-radius:6px}.lightbox-close{float:right;font-size:24px;color:var(--muted);margin:-6px -4px 4px 8px}.lightbox-caption{font:17px Marcellus,serif;margin:6px 0}.lightbox-prompt{font-size:11px;color:var(--muted);line-height:1.6;margin:0}.lightbox-prompt[hidden]{display:none}
.finale-banner{position:absolute;top:88px;left:50%;transform:translateX(-50%);z-index:4;display:grid;gap:4px;justify-items:center;text-align:center;max-width:min(560px,calc(100% - 32px));padding:11px 20px;border:1px solid #e39b8f66;border-radius:10px;background:#1a1414e0;box-shadow:0 8px 30px #0008;backdrop-filter:blur(8px)}.finale-banner[hidden]{display:none}.finale-banner .eyebrow{color:#e39b8f}.finale-banner strong{font:21px Marcellus,serif}.finale-banner small{font-size:11px;color:var(--muted)}.run-summary{margin:10px 0 2px}
@media(max-width:760px){.finale-banner{top:120px;padding:9px 14px}.finale-banner strong{font-size:17px}}
.event-dialogue{display:grid;gap:6px;margin-top:8px;padding:9px 11px;border-left:2px solid var(--gold);background:#ffffff06;border-radius:0 6px 6px 0;font-size:11px}.event-dialogue p{margin:0;color:var(--muted)}.event-dialogue b{color:var(--ink);font-weight:600}.event-dialogue q{display:block;color:#dfe6d6;font-style:italic;margin-top:2px}.event-dialogue .decided-by{justify-self:start}
.detail-credo blockquote{margin:0;padding:10px 12px;border-left:2px solid var(--gold);background:#ffffff06;font:14px/1.6 Marcellus,serif;color:#e6e8d6}.relation-deals{display:block;color:var(--gold);font:9px 'DM Mono',monospace;margin-top:3px}.detail-chip-key{border-color:#dbc99477!important;color:var(--gold)!important}
.archive-goals{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:6px;font-size:11px}.archive-goals span{display:block;color:var(--muted)}.archive-credo{margin:8px 0 12px;font-size:11px}.archive-credo summary{cursor:pointer;color:var(--gold);font:9px 'DM Mono',monospace;letter-spacing:1px}.archive-credo ol{padding-left:0;list-style:none;display:grid;gap:8px;margin:8px 0 0}.archive-credo time{display:block;font:9px 'DM Mono',monospace;color:var(--muted)}
.myth-lead{font:15px/1.7 Marcellus,serif;color:#e6e8d6}.myth-acts{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:9px;font-size:12px;line-height:1.6;color:#cfd8cc}.myth-acts b{color:var(--gold);font:10px 'DM Mono',monospace;margin-right:4px}.about-rules{font-size:12px;line-height:1.6;color:var(--muted);padding-left:18px;display:grid;gap:6px}
.intro{max-width:min(520px,calc(100vw - 32px));padding:26px 26px 22px;border:1px solid #ffffff24;border-radius:14px;background:var(--panel);color:var(--ink)}.intro::backdrop{background:#061418d8}.intro h2{margin:6px 0 12px}.intro p:not(.eyebrow){font:15px/1.7 Marcellus,serif;color:#e6e8d6;margin:0 0 10px}.intro-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.intro-enter{border:1px solid var(--gold);border-radius:8px;padding:10px 16px;color:var(--gold)}.intro-more{border:1px solid var(--line);border-radius:8px;padding:10px 16px;color:var(--muted)}
/* Painted event icons (sprite atlas backgrounds set inline by app.js). */
.event-icon{display:inline-block;flex:none;vertical-align:-6px;margin-right:7px;border-radius:50%;background-color:#0d1f1f;background-repeat:no-repeat;box-shadow:0 0 0 1px #dbc99433}
.civ-arms{display:inline-block;flex:none;vertical-align:-7px;margin-right:8px;filter:drop-shadow(0 1px 2px #0009)}.detail-title-row .civ-arms{align-self:center;margin-right:0}.detail-title-row .civ-arms+h2{margin-right:auto}.archive-card h3 .civ-arms{margin-right:10px}
.event-dialogue .event-icon{vertical-align:-4px;margin-right:6px}.decided-by .event-icon{vertical-align:-4px;margin-right:4px;box-shadow:none}
/* Phones: short nav labels so every view fits; zoom control at the top right, clear of the latest-event card. */
@media(max-width:760px){.nav-long{display:none}.topbar nav button{padding:0 6px}.map-tools{top:176px;bottom:auto;right:12px;flex-direction:column;padding:3px}.map-tools button{height:32px;min-width:36px}.map-tools #fitMap{min-width:36px;font-size:7px;letter-spacing:0}}

/* God's sleep: a quiet veil over the still world. */
.sleep-veil{position:absolute;inset:0;z-index:5;display:grid;place-items:center;padding:16px;background:radial-gradient(ellipse at center,#07131acc,#040a0ef0);backdrop-filter:blur(3px)}.sleep-veil[hidden]{display:none}
.sleep-card{max-width:520px;display:grid;gap:10px;text-align:center;padding:26px 28px;border:1px solid #dbc99444;border-radius:14px;background:#0d1d20e8;box-shadow:0 12px 40px #000a}
.sleep-card h2{margin:0;font:30px Marcellus,serif;color:#ecedda}.sleep-card p{margin:0;color:var(--muted);line-height:1.55}.sleep-card .sleep-wake{color:#dbc994;font-weight:600}
.snapshot-mode .sleep-veil{display:none!important}

/* F9: the Book of the run, the chapter card, war alerts. */
.book{display:grid;gap:18px}.book-chapter{padding:14px 16px;border:1px solid #dbc99433;border-radius:12px;background:#0d1d20b0}.book-chapter h3{margin:4px 0 8px;font:21px Marcellus,serif;color:#ecedda}.book-chapter p{margin:0 0 6px;line-height:1.6}
.chapter-card{position:absolute;left:50%;bottom:104px;transform:translateX(-50%);z-index:4;max-width:min(440px,calc(100% - 32px));max-height:32vh;overflow:auto;display:grid;gap:4px;padding:11px 15px;border:1px solid #dbc99466;border-radius:12px;background:#0d1d20ee;box-shadow:0 10px 34px #000a;backdrop-filter:blur(8px)}.chapter-card[hidden]{display:none}
.chapter-card h3{margin:0;font:18px Marcellus,serif;color:#ecedda}.chapter-card p{margin:0;font-size:13.5px;line-height:1.45}.chapter-card button{justify-self:start;margin-top:2px;padding:4px 10px;border:1px solid #dbc99466;border-radius:8px;background:transparent;color:#dbc994;cursor:pointer}
.war-alert{border-left:3px solid #e25c3c;padding-left:10px}.detail-title-row h2 small{font-size:.55em;color:#dbc994;font-weight:500}
@media(max-width:1100px){.chapter-card{bottom:168px}}
@media(max-width:760px){.chapter-card{left:16px;right:16px;transform:none;max-width:none;bottom:162px;max-height:40vh;padding:9px 12px}.chapter-card h3{font-size:16px}.chapter-card p{font-size:12.5px}}

/* F9: television mode. */
.tv-toggle{position:absolute;right:16px;bottom:150px;z-index:5;padding:8px 12px;border:1px solid #dbc99455;border-radius:10px;background:#0d1d20d8;color:#ecedda;font:600 12px system-ui,sans-serif;cursor:pointer;backdrop-filter:blur(6px)}
.tv-toggle[aria-pressed="true"]{border-color:#dbc994aa;color:#dbc994}
.tv-caption{position:absolute;top:92px;left:50%;transform:translateX(-50%);z-index:4;display:grid;gap:4px;justify-items:center;text-align:center;max-width:min(620px,calc(100% - 32px));padding:10px 18px;border:1px solid #dbc99466;border-radius:10px;background:#0d1d20e6;box-shadow:0 8px 28px #0009;backdrop-filter:blur(8px)}
.tv-caption[hidden]{display:none}.tv-caption strong{font:18px Marcellus,serif;color:#ecedda;line-height:1.35}.tv-caption .eyebrow{color:#dbc994}
.snapshot-mode .tv-toggle,.snapshot-mode .tv-caption,.snapshot-mode .chapter-card{display:none!important}
/* Great recent events under the year plaque; a hover or tap tells what happens. */
.event-badges{position:absolute;top:168px;left:50%;transform:translateX(-50%);z-index:4;display:flex;gap:7px;max-width:calc(100vw - 24px);justify-content:center;pointer-events:none}
.event-badges button{pointer-events:auto;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #dbc99488;border-radius:50%;background:#0d1d20e6;box-shadow:0 4px 14px #0008;cursor:help;transition:transform .15s}
.event-badges button:hover,.event-badges button:focus-visible{transform:scale(1.12);border-color:#dbc994}
.event-badges .event-icon{margin:0;vertical-align:0;box-shadow:none}
.event-badges button.fresh{animation:badge-in .6s ease-out}
@keyframes badge-in{from{opacity:0;transform:translateY(-8px) scale(.7)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.event-badges button.fresh{animation:none}}
@media(max-width:760px){.event-badges{top:138px}.event-badges button{width:34px;height:34px}}
@media(max-width:760px){.tv-toggle{bottom:170px;right:12px}.tv-caption{top:120px}.tv-caption strong{font-size:15px}}

/* Menu rebuild: Kronika first, the map is the world view, panels close beside themselves. */
.topbar{z-index:8}.drawer{z-index:7}
.nav-primary{color:#e9dcae}.nav-mark{color:var(--gold);font-size:11px;margin-right:6px}
@media(max-width:1000px){.nav-long{display:none}}
.panel-scrim{position:fixed;inset:0;z-index:6;background:#04101218}.panel-scrim[hidden]{display:none}
.panel-scrim.scrim-book{background:#040c0ed0;backdrop-filter:blur(2px)}
/* The year plaque: a small parchment tablet under the menu. */
.year-plaque{position:absolute;top:84px;left:50%;transform:translateX(-50%);z-index:4;display:grid;justify-items:center;gap:1px;align-content:center;width:264px;height:78px;overflow:hidden;padding:6px 26px 7px;text-align:center;pointer-events:none;color:#2f2616;background:radial-gradient(ellipse at 50% 25%,#f8efd6,#e8d8ae 68%,#d3bf8b);border:1px solid #9c8450;border-radius:5px;box-shadow:0 0 0 3px #16302d,0 0 0 4px #dbc994a0,0 12px 30px #000a}
.year-plaque:before,.year-plaque:after{content:'\2726';position:absolute;top:50%;transform:translateY(-50%);font-size:10px;color:#9c8450}.year-plaque:before{left:9px}.year-plaque:after{right:9px}
.plaque-year{display:flex;align-items:baseline;gap:7px}.plaque-year small{font:9px 'DM Mono',monospace;letter-spacing:2px;color:#7a6536}.plaque-year b{font:31px/1 Marcellus,serif;color:#241b0d;letter-spacing:.5px;font-variant-numeric:tabular-nums}
.plaque-day{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:9px 'DM Mono',monospace;letter-spacing:.9px;color:#6b5a35}.plaque-day b{font-weight:500;color:#2f2616}.plaque-day .dot-sep{margin:0 5px}#era{color:#8a4f1c}
.plaque-weather{margin-top:2px;padding-top:3px;border-top:1px solid #9c845066;font:8px 'DM Mono',monospace;letter-spacing:.8px;color:#6b5a35;white-space:nowrap;width:100%;overflow:hidden;text-overflow:ellipsis}.plaque-weather #season{color:#8a4f1c}.plaque-weather .dot-sep{margin:0 5px}
.tv-caption,.finale-banner{top:176px}
/* Národy: simple cards with a popover, the standings, and the eight segment tiles. */
#civilizationList{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
#civilizationList .civ-card{position:relative;padding:12px 14px;border:1px solid #ffffff1c;border-left:4px solid var(--role);background:linear-gradient(100deg,color-mix(in srgb,var(--role) 16%,transparent),#ffffff05 65%)}
#civilizationList .civ-card:hover,#civilizationList .civ-card:focus-within{border-color:#dbc99480;border-left-color:var(--role)}
#civilizationList .civ-card-name{font-size:19px}
#civilizationList .civ-temper{margin:1px 0 8px;font:9px 'DM Mono',monospace;letter-spacing:.8px;line-height:1.4;color:var(--gold);text-transform:uppercase}
.civ-card-stats{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:11px;color:var(--muted)}.civ-card-stats b{margin-right:4px;font:20px Marcellus,serif;color:var(--ink);font-variant-numeric:tabular-nums}
.civ-pop{position:absolute;left:10px;right:10px;top:calc(100% - 6px);z-index:4;display:none;gap:5px;padding:11px 13px;background:#0b2322f8;border:1px solid #dbc99466;border-radius:10px;box-shadow:0 14px 40px #000b;pointer-events:none}
.civ-card:hover .civ-pop,.civ-card:focus-within .civ-pop{display:grid}
.civ-pop span{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted)}.civ-pop b{color:var(--ink);font-weight:600;text-align:right}.civ-pop em{font:9px 'DM Mono',monospace;color:var(--gold);font-style:normal;margin-top:3px}.civ-pop .naming-note{margin:0}
.civ-compare{margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}.civ-compare h3{margin:0 0 4px;font:21px Marcellus,serif}.civ-compare .drawer-intro{margin-bottom:12px}
.compare-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:10px}
.compare-seg{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#ffffff06}.compare-seg h4{display:flex;align-items:center;gap:8px;margin:0 0 7px;font:15px Marcellus,serif}
.compare-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(50px,.9fr) auto;gap:8px;align-items:center;margin:5px 0;font-size:10px;color:var(--muted)}.compare-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.compare-row i{height:6px;background:#ffffff14;border-radius:4px;overflow:hidden}.compare-row i b{display:block;height:100%;border-radius:4px}.compare-row em{font:10px 'DM Mono',monospace;font-style:normal;color:var(--ink);text-align:right;white-space:nowrap}
#civilizationDetailPanel{width:min(640px,calc(100vw - 36px))}#civilizationDetailPanel .drawer-head .detail-back{font-size:10px}
.seg-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.seg-tile{position:relative;display:grid;align-content:start;gap:2px;padding:10px 10px 11px;border:1px solid #dbc99430;border-radius:10px;background:linear-gradient(180deg,#ffffff0e,#ffffff04);outline:none}
.seg-tile:hover,.seg-tile:focus{border-color:#dbc994aa;background:#ffffff13;z-index:5}.seg-tile:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.seg-top{display:flex;align-items:center;gap:6px;font:9px 'DM Mono',monospace;letter-spacing:.5px;color:var(--muted);text-transform:uppercase}.seg-icon{flex:none;width:34px;height:34px;filter:drop-shadow(0 2px 4px #0009)}
.seg-tile strong{margin-top:5px;font:23px/1.1 Marcellus,serif;color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.seg-tile small{font-size:9px;line-height:1.3;color:var(--muted)}
.seg-bar{display:block;height:4px;margin-top:6px;background:#ffffff14;border-radius:3px;overflow:hidden}.seg-bar b{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--role,#8fb8a0),#decf92)}
.seg-more{position:absolute;left:-1px;top:calc(100% + 5px);width:230px;z-index:5;display:none;gap:5px;padding:11px 13px;background:#0b2322fa;border:1px solid #dbc99466;border-radius:10px;box-shadow:0 14px 40px #000b;pointer-events:none}
.seg-tile:nth-child(4n+3) .seg-more,.seg-tile:nth-child(4n) .seg-more{left:auto;right:-1px}
.seg-tile:hover .seg-more,.seg-tile:focus .seg-more{display:grid}
.seg-more p{margin:0 0 2px;font:15px Marcellus,serif;color:var(--gold)}.seg-more span{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--muted)}.seg-more b{color:var(--ink);font-weight:600;text-align:right}.seg-more em{margin-top:3px;font:8px 'DM Mono',monospace;font-style:normal;color:#9fb3aa}
.detail-more summary{cursor:pointer;font:10px 'DM Mono',monospace;letter-spacing:1px;color:var(--gold)}.detail-more h3{margin:16px 0 8px}
/* Kniha: golden emblems on the timeline and a filter by kind. */
.book-filter button{display:inline-flex;align-items:center;gap:5px}#chroniclePanel .book-filter button{flex:0 0 auto}.cat-icon{width:16px;height:16px;flex:none}
.chronicle-events{padding-left:16px}
.event-emblemed{padding-left:24px}.event-emblemed:before{display:none}.event-emblem{position:absolute;left:-16px;top:-6px;width:32px;height:32px;filter:drop-shadow(0 2px 5px #000b)}
/* Kronika: one card per century with its picture. */
.book-chapter{position:relative;padding:18px 20px 16px;border:1px solid #dbc99440;border-left:3px solid var(--gold);background:linear-gradient(180deg,#14302dde,#0d1d20cc)}.book-chapter .eyebrow{color:var(--gold)}
.book-chapter h3{font-size:23px}.book-chapter>p:not(.eyebrow):not(.detail-note){font-size:13px;line-height:1.7;color:#dce3d6}
.chapter-figure{margin:12px 0 0}.chapter-figure .media-thumb{width:100%;border-color:#dbc99455}.chapter-figure img{aspect-ratio:16/9;object-fit:cover}
.chapter-figure figcaption{margin-top:7px;font:14px Marcellus,serif;color:#e6dcc0}.chapter-figure figcaption span{font:9px 'DM Mono',monospace;letter-spacing:.5px;color:var(--muted)}
.chapter-more{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.chapter-more .media-thumb{width:84px}.chapter-more img{aspect-ratio:4/3;object-fit:cover}
/* Dějiny: Luna's title large, the run's dates and years small. */
#runList .run-card{grid-template-columns:1fr;gap:4px;padding:14px 16px}.run-name{font:22px Marcellus,serif;color:var(--ink);line-height:1.2}
.run-line{font:10px 'DM Mono',monospace;letter-spacing:.3px;line-height:1.5;color:var(--muted)}#runDates{margin:0 0 10px}
.run-live{border-color:#dbc99488;background:linear-gradient(90deg,#dbc9941c,#ffffff06)}
/* O Plochozemi: an open illuminated book over the world. */
.about-book{position:fixed;z-index:9;left:50%;top:calc(50% + 28px);transform:translate(-50%,-50%);width:min(1120px,calc(100vw - 40px));height:min(920px,calc(100dvh - 120px));display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr);padding:14px;border:1px solid #6d4f2f;border-radius:14px;background:linear-gradient(135deg,#4a3320,#2a1b10);box-shadow:0 30px 90px #000d,inset 0 0 0 2px #dbc99430}
.about-book[hidden]{display:none}
.about-book:after{content:'';position:absolute;top:14px;bottom:14px;left:50%;width:2px;transform:translateX(-50%);background:#5c4428;opacity:.55;pointer-events:none}
.book-page{min-height:0;overflow:auto;padding:32px 38px 28px;color:#3b2d1a;scrollbar-width:thin;scrollbar-color:#b39a6a transparent}
.book-left{border-radius:6px 0 0 6px;background:linear-gradient(90deg,#e6d6ae,#f3e8cb 10%,#f1e4c3 78%,#dcca9f 93%,#b49f74)}
.book-right{border-radius:0 6px 6px 0;background:linear-gradient(90deg,#b49f74,#dcca9f 7%,#f1e4c3 22%,#f3e8cb 90%,#e6d6ae)}
.about-book .eyebrow{color:#8a6a35}.about-book h2{margin:6px 0 2px;font:30px Marcellus,serif;color:#2a1f10}
.book-sub{margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #b89c6a70;font:10px 'DM Mono',monospace;letter-spacing:1.4px;text-transform:uppercase;color:#8a6a35}
.about-book .myth-lead{font:15px/1.75 Marcellus,serif;color:#3b2d1a}.about-book .myth-acts{color:#4a3a22}.about-book .myth-acts b{color:#9a3b1f}
.about-book .about-rules{font-size:13px;color:#4a3a22}.about-book .about-rules li::marker{color:#9a3b1f}
.book-initial:first-letter{float:left;margin:5px 9px 0 0;padding:5px 9px;font:54px/.9 Marcellus,serif;color:#9a3b1f;background:#f9f0d8;border:1px solid #b8954f;box-shadow:inset 0 0 0 2px #e8d49a}
.about-close{position:absolute;top:-15px;right:-15px;z-index:1;width:38px;height:38px;border-radius:50%;background:#2a1b10;border:1px solid #dbc99488;color:#dbc994;font-size:22px;line-height:1}.about-close:hover{background:#4a3320;color:#fff}
.snapshot-mode .year-plaque,.snapshot-mode .panel-scrim,.snapshot-mode .about-book{display:none!important}
@media(max-width:760px){
  .topbar nav{flex:1 1 auto;min-width:0;justify-content:flex-start;margin-left:8px}.brand{flex:none}
  .map-title{display:none}
  .year-plaque{top:72px;width:208px;height:60px;padding:4px 20px 5px}.plaque-year b{font-size:22px}.plaque-day{font-size:8px;letter-spacing:.5px}.plaque-weather{font-size:7px}
  .tv-caption,.finale-banner{top:142px}
  /* Without the calendar the phone dock is one row; everything standing on it moves down with it. */
  .time-dock{min-height:56px}.latest{bottom:69px}.drawer{bottom:66px}.chapter-card{bottom:123px}.tv-toggle{bottom:131px}#toast{bottom:71px}.population-details{bottom:66px}
  #civilizationDetailPanel{width:auto}
  .seg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.seg-more,.seg-tile:nth-child(4n+3) .seg-more{left:-1px;right:auto;width:min(230px,calc(100vw - 60px))}.seg-tile:nth-child(2n) .seg-more{left:auto;right:-1px}
  .about-book{top:72px;bottom:12px;transform:translateX(-50%);width:calc(100vw - 20px);max-height:none;height:auto;grid-template-columns:1fr;grid-template-rows:none;align-content:start;overflow:auto;padding:8px}
  .about-book:after{display:none}.book-page{min-height:auto;overflow:visible;padding:24px 20px}.book-left,.book-right{border-radius:6px;background:#f1e4c3}.book-right{margin-top:8px}
  .about-close{top:6px;right:6px}.about-book h2{font-size:25px}
}
/* Block C: age make-up of a nation (young, adults, elders) and its crisis badge */
.age-row{display:flex;align-items:center;gap:6px;margin-top:6px}
.age-bar{flex:1;display:flex;height:7px;border-radius:4px;overflow:hidden;background:#ffffff14}
.age-bar i{display:block;height:100%}
.age-young{background:#9cc98a}.age-adults{background:#d9c27e}.age-elders{background:#b98b6f}
.age-trend{font:11px 'DM Mono',monospace;font-style:normal;color:var(--gold)}
.compare-age{margin:-3px 0 8px}
.seg-tile.seg-up .seg-more{top:auto;bottom:calc(100% + 5px)}
.civ-card .civ-crisis{display:inline-block;margin:0 0 9px;padding:2px 8px;border:1px solid #d9a36f88;border-radius:10px;font:8px 'DM Mono',monospace;letter-spacing:.8px;line-height:1.5;text-transform:uppercase;color:#f0c08e}
.admin-scenario{display:flex;gap:8px;align-items:center;margin:8px 0;font-size:13px}
.admin-scenario select{flex:1;min-width:0}
.nav-long{display:inline}
.share-btn{justify-self:start;margin-top:8px;padding:4px 10px;border:1px solid #dbc99466;border-radius:8px;background:transparent;color:#dbc994;font-size:12px}
.book-chapter.flash{animation:chapter-flash 2.5s ease-out}
@keyframes chapter-flash{0%,60%{background:#dbc99422}100%{background:transparent}}
.vote-section{border-top:1px solid var(--line);padding:14px 0}.vote-section h3{font:18px Marcellus,serif;margin:0 0 8px}.vote-section p{font-size:12px;line-height:1.55;margin:0 0 8px}
.vote-options{display:grid;gap:8px}
.vote-option{position:relative;overflow:hidden;display:grid;gap:3px;text-align:left;padding:10px 12px;border:1px solid #ffffff22;border-radius:10px;background:#ffffff08}
.vote-option.mine{border-color:var(--gold);background:#dbc9941a}
.vote-option .vote-kind{font:8px 'DM Mono',monospace;letter-spacing:1.3px;text-transform:uppercase;color:var(--gold)}
.vote-option strong{font:15px Marcellus,serif}.vote-option .vote-desc{font-size:11px;color:var(--muted);line-height:1.45}
.vote-option b{font:9px 'DM Mono',monospace;font-weight:400;color:var(--muted)}
.vote-option .vote-bar{position:absolute;left:0;bottom:0;height:3px;width:var(--share,0%);background:var(--gold);opacity:.8}
.vote-bless{padding:8px 14px;border:1px solid var(--gold);border-radius:10px;color:var(--gold);background:transparent}
.digest-card{position:absolute;left:50%;top:176px;transform:translateX(-50%);z-index:4;width:min(420px,calc(100% - 32px));max-height:50vh;overflow:auto;display:grid;gap:6px;padding:14px 16px;border:1px solid #dbc99466;border-radius:12px;background:#0d1d20f2;box-shadow:0 10px 34px #000a}
.digest-card[hidden]{display:none}
.digest-card h3{margin:0;font:19px Marcellus,serif}.digest-card p{margin:0;font-size:13px;line-height:1.5}
.digest-stats{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.digest-stats li{padding:2px 9px;border:1px solid #ffffff22;border-radius:10px;font:10px 'DM Mono',monospace}
.digest-list{margin:0;padding-left:18px;font-size:12px;line-height:1.5}.digest-list li.own{color:var(--gold)}
.digest-actions{display:flex;gap:8px;margin-top:4px}.digest-actions button{padding:4px 10px;border:1px solid #dbc99466;border-radius:8px;color:#dbc994}
@media(max-width:760px){.nav-long{display:none}.digest-card{top:150px;max-height:44vh}}
@media(max-width:560px){.brand>span:not(.brand-mark){display:none}nav{flex:1;justify-content:flex-end}}
