.hm{--hm-conquest:#B3442E;--hm-occupation:#C9792B;--hm-migration:#2E6F8E;display:grid;gap:12px;margin-top:12px}.hm-chapters{display:flex;gap:8px;overflow-x:auto;padding:2px 0 6px;scrollbar-width:thin;scrollbar-color:var(--accent, #1F5C6B) transparent}.hm-chip{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:7px 12px;border:1px solid var(--rule-strong, #bbb);border-radius:12px;background:var(--panel, #fff);color:var(--ink, #16222A);font:inherit;cursor:pointer;text-align:left;transition:border-color .15s,transform .15s}.hm-chip:hover{transform:translateY(-1px)}.hm-chip b{font-size:.9rem;font-weight:600}.hm-chip i{font-style:normal;font-size:.75rem;opacity:.7;font-variant-numeric:tabular-nums}.hm-chip:hover,.hm-chip:focus-visible{border-color:var(--accent, #1F5C6B)}.hm-chip[aria-current=true]{background:var(--accent, #1F5C6B);color:#fff;border-color:var(--accent, #1F5C6B)}.hm-stage{position:relative;border:1px solid var(--rule-strong, #bbb);border-radius:12px;overflow:hidden;background:var(--panel, #f2f2f2)}.hm-map{height:min(72vh,700px);min-height:360px;background:#cfd8dc}.hm-map .leaflet-tile-pane,.hm-map .leaflet-baseLabels-pane{filter:grayscale(.9) contrast(.88) brightness(1.06);opacity:.9}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .hm-map{background:#1b2428}:root:not([data-theme=light]) .hm-map .leaflet-tile-pane,:root:not([data-theme=light]) .hm-map .leaflet-baseLabels-pane{filter:grayscale(1) invert(1) contrast(.82) brightness(.72)}}:root[data-theme=dark] .hm-map{background:#1b2428}:root[data-theme=dark] .hm-map .leaflet-tile-pane,:root[data-theme=dark] .hm-map .leaflet-baseLabels-pane{filter:grayscale(1) invert(1) contrast(.82) brightness(.72)}.hm-hud{position:absolute;left:14px;top:12px;z-index:500;pointer-events:none;text-shadow:0 0 6px var(--panel, #fff),0 0 2px var(--panel, #fff)}.hm-year{font:700 clamp(2.4rem,7vw,4.4rem)/1 var(--font-display, Georgia, serif);color:var(--ink, #16222A);font-variant-numeric:tabular-nums}.hm-ch{font-size:.95rem;color:var(--ink, #16222A);max-width:34ch;margin-top:4px}.hm-stage>.hm-gnote{position:absolute;z-index:560;left:12px;right:12px;bottom:10px;pointer-events:none;padding:5px 12px;border-radius:8px;font-size:.8rem;line-height:1.35;opacity:1;background:color-mix(in srgb,var(--panel, #fff) 76%,transparent)}.hm-load{position:absolute;inset:0;display:grid;place-items:center;z-index:600;background:color-mix(in srgb,var(--panel, #fff) 80%,transparent);color:var(--ink, #16222A)}.hm-load[hidden]{display:none}.hm-bar{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.hm-play{width:44px;height:44px;border-radius:50%;border:1px solid var(--accent, #1F5C6B);background:var(--accent, #1F5C6B);color:#fff;font-size:1.05rem;cursor:pointer}.hm-play:focus-visible{outline:3px solid var(--accent, #1F5C6B);outline-offset:2px}.hm-scrub{position:relative;padding-top:42px;min-width:0}.hm-dens{position:absolute;left:0;right:0;top:0;width:100%;height:40px}.hm-dens rect{fill:var(--accent, #1F5C6B);opacity:.55}.hm-dens rect.on{opacity:.95}#hm-range{width:100%;accent-color:var(--accent, #1F5C6B);margin:0}.hm-ticks{position:relative;height:18px;font-size:.7rem;color:var(--ink, #16222A);opacity:.7}.hm-ticks span{position:absolute;transform:translate(-50%);font-variant-numeric:tabular-nums}.hm-speed{font-size:.8rem;display:grid;gap:2px}.hm-tour{font-size:.85rem;display:inline-flex;gap:6px;align-items:center}.hm-chip.hm-all{border-color:var(--accent, #1F5C6B)}.hm-layers{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.85rem;padding:10px 12px;background:var(--panel, #fff);border:1px solid var(--rule, #ddd);border-radius:12px}.hm-layers-h{font:600 10.5px/1 var(--mono, monospace);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3, #606C72);margin-right:4px}.hm-layers label{display:inline-flex;gap:6px;align-items:center;padding:5px 10px;border:1px solid var(--rule-strong, #bbb);border-radius:999px;cursor:pointer;background:var(--ground, transparent)}.hm-layers label:has(input:checked){border-color:var(--accent, #1F5C6B);background:var(--accent-wash, #DDE7E9)}.hm-layers label:hover{border-color:var(--accent, #1F5C6B)}.hm-layers .k{display:inline-block;width:18px;height:4px;border-radius:2px}.k.conquest{background:var(--hm-conquest)}.k.occupation{background:var(--hm-occupation)}.k.migration{background:var(--hm-migration)}.k.voyage{background:#7a4fa3}.k.mort{background:#000;border:1px solid #fff;box-shadow:0 0 0 1px #000}.hm-below{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}@media(max-width:760px){.hm-below{grid-template-columns:1fr}.hm-bar{grid-template-columns:auto 1fr}.hm-speed{grid-column:1 / -1}}.hm-hud{top:12px;bottom:52px;left:12px;width:min(340px,40%);display:flex;flex-direction:column;gap:0;padding:10px 14px 12px;border-radius:12px;text-shadow:none;background:color-mix(in srgb,var(--panel, #fff) 74%,transparent);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.hm-hud .hm-list{pointer-events:auto;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;background:none;border:0;padding:0;margin-top:8px;border-top:1px solid var(--rule-strong, #bbb);border-radius:0}.hm-hud .hm-list h2{margin:8px 0 4px;font-size:.95rem}.hm-hud .hm-list ol{flex:1 1 auto;min-height:0;max-height:none;align-content:start;grid-auto-rows:min-content;gap:2px}.hm-hud .hm-list li button{padding:4px 6px;font-size:.86rem;line-height:1.3}.hm-hud .hm-list li small{font-size:.74rem}.hm-list h2{display:flex;justify-content:space-between;align-items:center;gap:8px}.hm-list h2 button{border:0;background:none;font-size:1rem;cursor:pointer;color:inherit;padding:0 4px}.hm-list.fold ol{display:none}.hm-hud:has(.hm-list.fold){bottom:auto}.hm-list.fold{flex:0 0 auto}.hm-list li button.hm-major{font-weight:600}@media(max-width:760px){.hm-hud{bottom:auto;left:8px;top:8px;width:min(300px,calc(100% - 70px));max-height:78%;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;padding:6px 10px}.hm-hud>*{grid-column:1 / -1;min-width:0}.hm-hud>.hm-year{grid-column:1;font-size:1.7rem}.hm-hud>.hm-ch{grid-column:2;margin:0;font-size:.72rem;line-height:1.3;max-width:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hm-hud .hm-focusrow input{padding:4px 8px;font-size:.8rem}.hm-hud .hm-list{margin-top:4px}.hm-hud .hm-list h2{margin:4px 0 2px;font-size:.85rem}.hm-hud .hm-list ol{max-height:150px}.hm-stage>.hm-gnote{font-size:.68rem;padding:3px 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}.hm-card,.hm-list{background:var(--panel, #fff);border:1px solid var(--rule-strong, #bbb);border-radius:12px;padding:14px 16px;min-width:0}.hm-card h2,.hm-list h2{margin:0 0 6px;font-size:1.05rem}.hm-card p{margin:.4em 0}.hm-fine{font-size:.8rem;opacity:.75}.hm-list ol{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:280px;overflow:auto;align-content:start}.hm-list li button{width:100%;text-align:left;background:none;border:0;padding:5px 6px;font:inherit;color:inherit;cursor:pointer;border-left:4px solid var(--c, #999);border-radius:2px}.hm-list li button:hover,.hm-list li button:focus-visible{background:color-mix(in srgb,var(--c, #999) 14%,transparent)}.hm-list li small{display:block;opacity:.7;font-variant-numeric:tabular-nums}.hm-fs{position:absolute;right:10px;bottom:34px;z-index:850;width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--rule-strong, #bbb);border-radius:8px;background:var(--panel, #fff);color:var(--ink, #16222A);cursor:pointer}.hm-fs[aria-pressed=true]{background:var(--adriatic, #1F5C6B);color:#fff;border-color:var(--adriatic, #1F5C6B)}:global(body.hm-full-on){overflow:hidden}.hm.hm-full{position:fixed;inset:0;z-index:3000;display:flex;flex-direction:column;gap:8px;box-sizing:border-box;padding:calc(env(safe-area-inset-top,0px) + 8px) calc(env(safe-area-inset-right,0px) + 8px) calc(env(safe-area-inset-bottom,0px) + 8px) calc(env(safe-area-inset-left,0px) + 8px);background:var(--paper, #EDEBE5);overflow:auto}.hm.hm-full .hm-chapters{flex:none;flex-wrap:nowrap;overflow-x:auto}.hm.hm-full .hm-stage{flex:1 1 auto;min-height:0;display:flex}.hm.hm-full .hm-map{flex:1 1 auto;height:auto;min-height:0}.hm.hm-full .hm-bar,.hm.hm-full .hm-layers{flex:none}.hm.hm-full .hm-below{display:none}@media(max-width:760px){.hm.hm-full .hm-layers{flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;padding-bottom:2px}.hm.hm-full .hm-tour,.hm.hm-full .hm-speed{display:none}.hm.hm-full .hm-bar{grid-template-columns:auto 1fr}}
