.map-story{display:flex;position:relative;flex:1;min-height:0;min-width:0}.story-plot{position:relative;display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.story-plot>#map{min-width:0}.ancestry-heading{height:70px;min-height:70px}.ancestry-rail nav{margin-right:12px}
#breadcrumbs .ancestry-path button>small{font-size:9px;color:var(--muted);margin-left:4px}
:root{--ancestry-line:#244e42;--ancestry-active:#174c39;--ancestry-muted:#789084}:root[data-theme=dark]{--ancestry-line:#d8eadb;--ancestry-active:#b7e6c9;--ancestry-muted:#6e9b86}
#time-axis .present-label{fill:var(--ink)}
@media(max-width:800px){#breadcrumbs .ancestry-path{flex-wrap:nowrap;overflow-x:hidden;overflow-y:auto}#breadcrumbs .ancestry-path button{flex-shrink:0}}
.ancestry-rail{position:relative;flex:0 0 242px;width:242px;min-height:0;display:flex;flex-direction:column;background:var(--surface);color:var(--ink);overflow:hidden}.ancestry-rail[hidden]{display:none}.ancestry-heading{padding:13px 16px 6px;flex:none;min-height:59px}.ancestry-heading strong{display:block;font-size:12px;font-weight:500}.ancestry-heading small{display:block;font-size:9px;color:var(--muted);margin-top:5px;line-height:1.4}.ancestry-rail nav{flex:1;min-height:0;overflow:auto;padding:12px 15px 15px;scrollbar-width:thin;position:relative;z-index:2}.ancestry-rail ol{list-style:none;padding:0;margin:0}.ancestry-rail li{margin:0;padding:0}.ancestry-rail button{width:100%;height:var(--ancestry-row,26px);position:relative;padding:2px 2px 2px 17px;display:flex;align-items:center;gap:5px;font-size:11.5px;text-align:left;background:transparent;border:0;line-height:1.25}.ancestry-rail button>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ancestry-rail button>small{font-size:9px;color:var(--muted);flex-shrink:0}.ancestry-rail button::before{content:'';position:absolute;left:0;top:50%;width:6px;height:6px;border-radius:50%;transform:translate(-50%,-50%);background:#244e42;box-shadow:0 0 0 2px var(--surface)}.ancestry-rail li.in-lineage button>span,.ancestry-rail button:hover>span,.ancestry-rail button:focus-visible>span{text-decoration:underline;text-underline-offset:3px}.ancestry-rail svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:visible}.ancestry-rail path{fill:none;stroke:#5c786e;stroke-width:1.1;stroke-linejoin:round;stroke-linecap:round}.ancestry-rail .rail-highlight{stroke:#174c39;stroke-width:2.4}
@media(max-width:1100px) and (min-width:801px){.ancestry-rail{flex-basis:215px;width:215px}.ancestry-rail button{font-size:11px}.ancestry-heading{padding-inline:15px}}
@media(max-width:800px){.ancestry-rail{display:none!important}.ancestry-breadcrumbs .ancestry-path{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:12px 16px 12px 22px;max-height:340px}.ancestry-path>span{display:none}#breadcrumbs .ancestry-path button{position:relative;min-height:25px;display:flex;align-items:center;gap:6px;padding:4px 0 4px 15px;text-align:left;white-space:normal;line-height:1.3}#breadcrumbs .ancestry-path button>span{font-size:12px;min-width:0}#breadcrumbs .ancestry-path button>small{font-size:9px;color:var(--muted);flex-shrink:0}#breadcrumbs .ancestry-path button::before{content:'';position:absolute;left:0;top:50%;width:6px;height:6px;transform:translate(-50%,-50%);border-radius:50%;background:#244e42;box-shadow:0 0 0 2px var(--surface);z-index:1}#breadcrumbs .ancestry-path button::after{content:'';position:absolute;left:-.5px;top:0;bottom:0;width:1px;background:#789084}#breadcrumbs .ancestry-path button:first-of-type::after{top:50%}#breadcrumbs .ancestry-path button:last-of-type::after{bottom:50%}#breadcrumbs .ancestry-path button.in-lineage::after{background:#244e42;width:2px;left:-1px}}
.ancestry-rail path{stroke:var(--ancestry-muted)}.ancestry-rail .rail-highlight{stroke:var(--ancestry-active)}.ancestry-rail button::before,#breadcrumbs .ancestry-path button::before{background:var(--ancestry-line)}#breadcrumbs .ancestry-path button::after{background:var(--ancestry-muted)}#breadcrumbs .ancestry-path button.in-lineage::after{background:var(--ancestry-active)}
.ancestry-rail .ancestry-heading{position:absolute;left:0;right:0;top:calc(var(--ancestry-origin,70px) - var(--ancestry-header,70px));height:var(--ancestry-header,70px);min-height:0;padding:8px 15px}.ancestry-heading small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ancestry-rail nav{position:absolute;top:var(--ancestry-origin,70px);bottom:0;left:0;right:0;flex:none;padding:0 15px}
.ancestry-rail nav{bottom:auto;height:var(--ancestry-list-height,calc(100% - var(--ancestry-origin,70px)));overflow-x:hidden}.ancestry-rail button{padding-block:0;font-size:clamp(8px,calc(var(--ancestry-row,22px)*.84),11.5px);line-height:1.05}
.video-options{grid-template-columns:1fr}.video-options label:last-child{grid-column:auto}
.ancestry-rail nav{margin-right:0}.ancestry-rail li{position:relative;margin-inline:-15px;padding-inline:15px;background:var(--rail-row-bg,var(--surface));color:var(--rail-row-ink,var(--ink))}.ancestry-rail button{color:inherit}.ancestry-rail button>small{color:inherit;opacity:.75}.ancestry-rail button::before{box-shadow:0 0 0 2px var(--rail-row-bg,var(--surface))}.ancestry-rail svg{z-index:3}.ancestry-rail button{z-index:4}
.ancestry-rail{background:var(--rail-bottom-bg,var(--surface))}.ancestry-rail::before{content:'';position:absolute;inset:0 0 auto;height:var(--ancestry-origin,70px);background:var(--rail-top-bg,var(--surface));pointer-events:none}.ancestry-rail .ancestry-heading{z-index:1;color:var(--rail-top-ink,var(--ink))}.ancestry-rail .ancestry-heading small{color:inherit;opacity:.75}
@media(max-width:800px){.workspace .inspector.open{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:0;max-height:none;padding-top:0}.inspector::before{display:none}}
/* Keep the gutter stable to avoid resizing the canvas at a tiny zoom.  At the
   fitted compact overview its controls are transparent; they return whenever
   the user zooms or opens a scrollable list, and always in the wide view. */
#map[data-compact-fit="true"] .map-scroll{scrollbar-color:transparent transparent}
#map[data-compact-fit="true"] .map-scroll::-webkit-scrollbar-track,
#map[data-compact-fit="true"] .map-scroll::-webkit-scrollbar-thumb,
#map[data-compact-fit="true"] .map-scroll::-webkit-scrollbar-corner{background:transparent}
