/* Geographic mode shares the same timeline, learning cards, catalog and storage. */
#civilization-deep-cosmos .hm-world{position:absolute;inset:0;z-index:4;overflow:hidden;background:radial-gradient(ellipse at 65% 40%,#11283455,transparent 65%),linear-gradient(145deg,#090f14e8,#080f18f0);color:#e8dfd0;isolation:isolate}
#civilization-deep-cosmos .hm-world[hidden]{display:none}
#civilization-deep-cosmos .hm-map{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:grab}
#civilization-deep-cosmos .hm-map:active{cursor:grabbing}
#civilization-deep-cosmos .hm-graticule{fill:none;stroke:#8dabb3;stroke-opacity:.075;stroke-width:.5;vector-effect:non-scaling-stroke}
#civilization-deep-cosmos .hm-land{fill:url(#hm-land-tone);stroke:#a7a68d;stroke-opacity:.42;stroke-width:.8;vector-effect:non-scaling-stroke}
#civilization-deep-cosmos .hm-land-depth{fill:#000;stroke:none;transform:translate(0,5px);opacity:.55}
#civilization-deep-cosmos .hm-rivers{fill:none;stroke:#638b9d;stroke-opacity:.48;stroke-width:.75;vector-effect:non-scaling-stroke}
#civilization-deep-cosmos .hm-river-glow{fill:none;stroke:#72a4b4;stroke-opacity:.12;stroke-width:3;filter:url(#hm-soft-glow);vector-effect:non-scaling-stroke}
#civilization-deep-cosmos .hm-marker-layer{position:absolute;inset:0;pointer-events:none}
#civilization-deep-cosmos .hm-label-links path{fill:none;stroke:#cdbc844d;stroke-width:.7;pointer-events:none}
#civilization-deep-cosmos .hm-marker{position:absolute;pointer-events:auto;transform:none;width:max-content;min-width:44px;min-height:40px;height:auto;padding:5px 6px;border:none;background:none;text-align:left;cursor:pointer;color:#dcca9f;border-radius:3px}
#civilization-deep-cosmos .hm-marker[hidden]{display:none}
#civilization-deep-cosmos .hm-marker span{display:block;white-space:nowrap;font:14px/18px "Songti SC",serif;letter-spacing:.07em;text-shadow:0 1px 7px #000,0 1px 5px #000}
#civilization-deep-cosmos .hm-marker small{display:block;white-space:nowrap;font:10px/14px system-ui;color:#c2b9a1a0}
#civilization-deep-cosmos .hm-marker:hover{background:#d8bd7514}
#civilization-deep-cosmos .hm-point-halo{fill:#c6a96d33;stroke:#dec58a66;stroke-width:1}
#civilization-deep-cosmos .hm-point-core{fill:#e5ce91}
#civilization-deep-cosmos .hm-point.is-active .hm-point-halo{fill:#e9cf8055;stroke:#eee1b1}
#civilization-deep-cosmos .hm-point.is-muted{opacity:.3}
#civilization-deep-cosmos .hm-point-symbols{pointer-events:none}
#civilization-deep-cosmos .hm-marker.is-active span{color:#fff0c9}
#civilization-deep-cosmos .hm-marker:focus-visible{outline:2px solid #dacaab;outline-offset:2px}
#civilization-deep-cosmos .hm-intro{position:absolute;left:44px;top:116px;width:225px;pointer-events:none}
#civilization-deep-cosmos .hm-eyebrow{font:10px system-ui;letter-spacing:.24em;color:#bda778}
#civilization-deep-cosmos .hm-intro h1{font:400 clamp(30px,3.4vw,44px)/1.3 "Songti SC",serif;letter-spacing:.11em;margin:23px 0 17px;color:#ece3d1}
#civilization-deep-cosmos .hm-intro h1 em{font-style:normal;color:#b9aa87}
#civilization-deep-cosmos .hm-intro>p{font:12px/1.9 system-ui;color:#a6a8a7;margin:0 0 18px}
#civilization-deep-cosmos .hm-intro .hm-era-summary{font:12px/1.9 system-ui;color:#bdbcb0;margin:17px 0}
#civilization-deep-cosmos .hm-era-picker{display:flex;gap:5px;align-items:center;pointer-events:auto;border-top:1px solid #c3ab6833;padding-top:20px;margin-top:25px}
#civilization-deep-cosmos .hm-era-picker label{flex:1;min-width:0}
#civilization-deep-cosmos .hm-era-picker select{width:100%;font:14px "Songti SC",serif;color:#e0d2b6;background:#0a141c;border:0;padding:7px 2px;cursor:pointer}
#civilization-deep-cosmos .hm-era-picker button{font:14px system-ui;color:#b9b4a8;background:none;border:0;padding:5px;cursor:pointer}
#civilization-deep-cosmos .hm-era-picker button:disabled{opacity:.25;cursor:default}
#civilization-deep-cosmos .hm-era-range{font:11px/1.6 system-ui;color:#929a9b;margin:10px 0 0}
#civilization-deep-cosmos .hm-guide{pointer-events:auto;background:none;border:0;border-bottom:1px solid #cdbb7c55;color:#d2c191;padding:0 0 6px;font:12px system-ui;cursor:pointer}
#civilization-deep-cosmos .hm-mode{position:absolute;top:91px;right:44px;display:flex;gap:0;background:#071119d9;border:1px solid #d1bb7830}
#civilization-deep-cosmos .hm-mode button{font:11px system-ui;letter-spacing:.07em;background:none;border:0;padding:12px 16px;color:#acb2b2;cursor:pointer}
#civilization-deep-cosmos .hm-mode button[aria-pressed=true]{color:#e2cca0;background:#d8bd7511}
#civilization-deep-cosmos .hm-zoom{position:absolute;right:44px;bottom:211px;display:flex;flex-direction:column;background:#09151cec;border:1px solid #cdb87533}
#civilization-deep-cosmos .hm-zoom button{font:18px system-ui;background:none;border:0;width:36px;height:36px;color:#c1baa6;cursor:pointer}
#civilization-deep-cosmos .hm-map-caption{position:absolute;left:44px;bottom:157px;display:flex;gap:22px;color:#8e9a9d;font:10px system-ui;letter-spacing:.04em}
#civilization-deep-cosmos .hm-map-caption span:first-child{color:#c8b88e}
#civilization-deep-cosmos .hm-no-location{position:absolute;left:42%;top:45%;max-width:300px;font:13px/1.9 system-ui;color:#b7b5a5}
#civilization-deep-cosmos .hm-no-location button{display:block;margin-top:14px;font-size:12px}
#civilization-deep-cosmos .hm-map-credit{position:absolute;right:44px;bottom:155px;font:9px system-ui;color:#889396;display:flex;gap:7px}
#civilization-deep-cosmos .hm-map-credit a{color:#889396;text-decoration:none}
#civilization-deep-cosmos .hm-map-credit span{margin-left:6px}
#civilization-deep-cosmos .hm-place-panel{position:absolute;right:44px;top:150px;width:300px;bottom:210px;overflow:auto;padding:24px;background:#0a151df5;border:1px solid #c7b27d33;backdrop-filter:blur(16px);scrollbar-width:thin;scrollbar-color:#927d5255 transparent}
#civilization-deep-cosmos .hm-place-panel[hidden]{display:none}
#civilization-deep-cosmos .hm-place-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
#civilization-deep-cosmos .hm-place-top>span{font:10px system-ui;color:#ac9568;letter-spacing:.1em}
#civilization-deep-cosmos .hm-place-close{background:none;border:0;font:22px system-ui;color:#d0c5ae;padding:0;cursor:pointer}
#civilization-deep-cosmos .hm-place-title{font:400 24px/1.4 "Songti SC",serif;margin:14px 0;color:#eee3cd}
#civilization-deep-cosmos .hm-place-location{font:11px/1.8 system-ui;color:#a2afb1;margin:0 0 20px}
#civilization-deep-cosmos .hm-place-records{display:grid}
#civilization-deep-cosmos .hm-place-records button{position:relative;text-align:left;padding:16px 22px 16px 0;background:none;border:0;border-top:1px solid #d6c28e24;cursor:pointer;color:#ddd3bc}
#civilization-deep-cosmos .hm-place-records span{display:block;font:10px system-ui;color:#ac986d;margin-bottom:8px}
#civilization-deep-cosmos .hm-place-records strong{display:block;font:400 16px/1.55 "Songti SC",serif;color:#e0d6c0}
#civilization-deep-cosmos .hm-place-records small{display:block;font:10px system-ui;color:#8fa0a4;margin-top:7px}
#civilization-deep-cosmos .hm-place-records i{position:absolute;right:0;top:40%;font-style:normal}
#civilization-deep-cosmos .hm-place-evidence{font:11px/1.8 system-ui;color:#929f9e;margin-top:20px}
#civilization-deep-cosmos .hm-place-evidence summary{cursor:pointer;color:#b2a585}
#civilization-deep-cosmos .hm-place-evidence a{color:#c7b482}
#civilization-deep-cosmos .hm-reading-note{position:absolute;left:44px;bottom:188px;color:#c9bb98;font:11px/1.7 system-ui;max-width:38vw}
body.historical-map-active #civilization-deep-cosmos :is(.cu-stars,.cu-labels,.cu-epoch-markers,.cu-view-switch,.cu-panorama-caption,.cu-era-guide,.cu-era-coordinate,.cu-welcome,.cu-theme-rail,.cu-manifesto,.cu-scope-bar,.cu-statusbar,.cu-flight-hint,.cu-controls,.cu-discover,.cu-empty){visibility:hidden!important;pointer-events:none!important}
body.historical-map-active #civilization-deep-cosmos .cu-timeline{z-index:7;background:linear-gradient(transparent,#080e15e8);pointer-events:auto}
body.historical-map-active #civilization-deep-cosmos .cu-detail{z-index:15}
body.historical-map-active #civilization-deep-cosmos .cu-foot .cu-gesture{display:none}
body.historical-map-active #historicalMapButton{color:#e4cf9d}
#historicalMapButton{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
body.historical-map-active #civilization-deep-cosmos .cu-hero{display:none!important}
body.historical-map-active #civilization-deep-cosmos .cu-world-inscription{display:none!important}
@media(max-width:800px){
 #civilization-deep-cosmos .hm-intro{left:20px;top:87px;width:calc(100% - 40px);pointer-events:none}
 #civilization-deep-cosmos .hm-intro h1{font-size:29px;line-height:1.3;margin:8px 0}
 #civilization-deep-cosmos .hm-intro h1 br{display:none}
 #civilization-deep-cosmos .hm-intro>p:not(.hm-era-summary){display:none}
 #civilization-deep-cosmos .hm-era-picker{width:min(245px,78vw);border:0;margin:8px 0 0;padding:0}
 #civilization-deep-cosmos .hm-era-range{margin:3px 0}
 #civilization-deep-cosmos .hm-intro .hm-era-summary{display:none}
 #civilization-deep-cosmos .hm-no-location{left:35px;right:35px;top:40%;max-width:none}
 #civilization-deep-cosmos .hm-guide{position:absolute;right:0;top:84px;font-size:10px}
 #civilization-deep-cosmos .hm-mode{top:59px;right:20px}
 #civilization-deep-cosmos .hm-mode button{padding:8px 9px;font-size:10px}
 #civilization-deep-cosmos .hm-mode .hm-map-mode{display:none}
 #civilization-deep-cosmos .hm-marker span{font-size:12px;letter-spacing:0}
 #civilization-deep-cosmos .hm-marker small{font-size:10px}
 #civilization-deep-cosmos .hm-marker{min-height:44px}
 #civilization-deep-cosmos .hm-zoom{right:20px;bottom:176px}
 #civilization-deep-cosmos .hm-map-caption{left:20px;right:20px;bottom:133px;gap:14px;font-size:9px}
 #civilization-deep-cosmos .hm-map-credit{left:20px;right:auto;bottom:114px;font-size:9px}
 #civilization-deep-cosmos .hm-map-credit span{display:none}
 #civilization-deep-cosmos .hm-place-panel{top:32%;left:16px;right:16px;bottom:137px;width:auto;padding:17px}
 #civilization-deep-cosmos .hm-place-title{font-size:21px;margin:8px 0}
 #civilization-deep-cosmos .hm-place-location{margin-bottom:12px}
 #civilization-deep-cosmos .hm-place-records button{padding:12px 22px 12px 0}
 #civilization-deep-cosmos .hm-reading-note{left:16px;top:88px;bottom:auto;max-width:85vw;font-size:10px}
 #civilization-deep-cosmos .hm-reading .hm-zoom,#civilization-deep-cosmos .hm-reading .hm-map-caption,#civilization-deep-cosmos .hm-reading .hm-map-credit{display:none}
 .cosmic-primary #historicalMapButton{display:none}
}
@media(max-height:500px){
 #civilization-deep-cosmos .hm-intro{left:20px;top:72px;width:170px}
 #civilization-deep-cosmos .hm-intro h1{font-size:24px;margin:5px 0}
 #civilization-deep-cosmos .hm-intro h1 br{display:none}
 #civilization-deep-cosmos .hm-intro>p,#civilization-deep-cosmos .hm-guide{display:none}
 #civilization-deep-cosmos .hm-era-picker{width:165px}
 #civilization-deep-cosmos .hm-mode{right:20px;top:68px}
 #civilization-deep-cosmos .hm-place-panel{top:72px;left:auto;right:16px;width:47%;bottom:52px;padding:15px}
 #civilization-deep-cosmos .hm-map-caption{left:20px;bottom:50px}
 #civilization-deep-cosmos .hm-map-credit{display:none}
 #civilization-deep-cosmos .hm-zoom{bottom:80px;right:20px}
 #civilization-deep-cosmos .hm-reading-note{top:70px;max-width:32vw}
 body.historical-map-active #civilization-deep-cosmos .cu-timeline{height:43px}
 body.historical-map-active #civilization-deep-cosmos .cu-time-heading,body.historical-map-active #civilization-deep-cosmos .cu-era-nav,body.historical-map-active #civilization-deep-cosmos .cu-foot{display:none}
}

/* --- 时代地理注记层（2026-10：每个时代对应地图变化） --- */
.hm-map .hm-era-wash{fill:var(--hm-tint,#8fa4b8);opacity:.055;transition:opacity .5s ease;pointer-events:none}
.hm-era-zones .hm-zone{fill:var(--hm-tint,#c2ab7d);fill-opacity:.045;stroke:#cfe0ec;stroke-opacity:.35;stroke-width:.8;stroke-dasharray:3 7}
.hm-era-zones .hm-zone-labels text{fill:#cfe0ec;font-size:9px;letter-spacing:2.5px;opacity:.55}
.hm-annotation-layer{position:absolute;inset:0;z-index:1;pointer-events:none}
.hm-marker-layer{z-index:2}
.hm-anno{position:absolute;display:flex;flex-direction:column;gap:1px;transform:translate(-4px,-100%);white-space:nowrap}
.hm-anno b{font:10px var(--serif);color:#e3d6ae;letter-spacing:1.5px;text-shadow:0 1px 6px #000c}
.hm-anno small{font:8px var(--sans);color:#87a0b5;letter-spacing:1px;opacity:0;transition:opacity .18s ease}
.hm-anno:hover small{opacity:1}
.hm-anno-mark{fill:var(--hm-tint,#c2ab7d);stroke:#eadfb8;stroke-width:.9;opacity:.9}
.hm-map[aria-hidden] .hm-anno{display:none}
@media(max-width:800px){.hm-anno b{font-size:9px}.hm-anno small{display:none}}

/* --- 朝代轮廓层（2026-10：每个时代自己的边界线） --- */
.hm-era-border path{fill:var(--hm-tint,#c2ab7d);fill-opacity:.12;stroke:#e8d7a6;stroke-width:1.1;stroke-opacity:.8;stroke-linejoin:round}
.hm-era-border:hover path{stroke:#f6e8bb;stroke-width:1.6;fill-opacity:.17}
.hm-era-border-labels text{fill:#f0e3ba;font:11px var(--serif);letter-spacing:3px;opacity:.85;paint-order:stroke;stroke:#050e18;stroke-width:3px;stroke-linejoin:round;text-anchor:middle}
