:root{--paper:#f8f6f0;--ink:#293e33;--muted:#7a8579;--line:#dce1d4;--blue:#507792;--green:#4c6b56;--soft:#eeefe5;--font:Arial,Helvetica,sans-serif;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink)}body{font:14px/1.6 var(--font);-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button,a,input,select{touch-action:manipulation}button{border:0;background:transparent;cursor:pointer;padding:8px 10px}button:hover,a:hover{color:var(--blue)}a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid #ac8554;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1{font:52px/1.07 var(--serif);letter-spacing:-1.5px}h2{font:27px/1.2 var(--serif)}p{margin-bottom:18px}.site-header{height:66px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 32px;border-bottom:1px solid var(--line)}.wordmark{font:23px var(--serif);text-decoration:none;letter-spacing:-.6px;white-space:nowrap}.wordmark em{font-weight:400;color:#527260}.site-header nav{display:flex;align-items:center;gap:28px;font-size:11px}.site-header nav>a{text-decoration:none;color:var(--muted)}.site-header nav button{font-size:11px;padding:5px 0}kbd{font-family:inherit;padding:1px 5px;border:1px solid var(--line);border-radius:3px;color:var(--muted);margin-left:9px}.map-page{height:100dvh;overflow:hidden;display:flex;flex-direction:column}.map-page #app{min-height:0;flex:1;display:flex}.map-page .map-nav{color:var(--ink)}.map-shell{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.map-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 30px;border-bottom:1px solid var(--line);min-height:48px}.map-breadcrumb{display:flex;gap:11px;align-items:center;min-width:0;font-size:12px}.map-breadcrumb button{padding:3px 0;white-space:nowrap}.map-breadcrumb button[aria-current=page]{font-weight:600}.map-breadcrumb strong{font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-breadcrumb>span{color:#8d978b}.edition-tag{font-size:10px;letter-spacing:.4px}.layers{display:flex;align-items:center;gap:20px;font-size:10px;color:var(--muted);flex-shrink:0}.layers label{display:flex;gap:6px;align-items:center;cursor:pointer;white-space:nowrap}.layers input{accent-color:var(--green);width:12px;height:12px;margin:0}.layers button{font-size:11px;padding:0}.map-workspace{display:flex;flex:1;min-height:0;min-width:0}.family-nav{width:207px;flex-shrink:0;padding:27px 16px 20px 24px;border-right:1px solid var(--line);overflow-y:auto;scrollbar-width:thin}.eyebrow{font-size:9px;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted)}.family-nav>.eyebrow{margin-bottom:17px;font-size:8px}.family-nav>button{display:flex;gap:9px;align-items:center;text-align:left;width:100%;font-size:11px;padding:10px 3px;border-bottom:1px solid transparent;line-height:1.45}.family-nav>button i{height:5px;width:5px;border-radius:50%;flex-shrink:0}.family-nav>button span{flex:1}.family-nav>button small{color:#9ca396;font-size:9px}.family-nav>button[aria-pressed=true]{background:#e9ede2;border-radius:3px;margin-left:-6px;width:calc(100% + 6px);padding-left:9px}.nav-note{font-size:10px;color:#9ba293;line-height:1.9;margin-top:24px;padding-top:19px;border-top:1px solid var(--line)}.nav-note a{display:block;margin-top:12px;color:var(--muted);text-decoration:none}.map-main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.map-caption{display:flex;align-items:center;justify-content:space-between;padding:18px 26px 12px;gap:20px}.map-caption h1{font-size:27px;letter-spacing:-.5px;margin:0 0 2px}.map-caption>div>span{color:var(--muted);font-size:10px}.map-tally{font-size:10px;color:#8c9788;white-space:nowrap}.map-tally span{margin:0 5px}.map-stage{position:relative;flex:1;min-height:250px;overflow:hidden;touch-action:none;cursor:grab;margin:0 12px 0 8px;isolation:isolate}.map-stage.dragging{cursor:grabbing}.map-world{position:absolute;inset:0}.main-map-svg{display:block;width:100%;height:100%;overflow:hidden;user-select:none;-webkit-user-select:none}.time-ruler{position:absolute;top:0;left:0;width:100%;height:39px;pointer-events:none;z-index:2}.family-hit{cursor:zoom-in}.family-hit:hover text{fill:#173e2b}.family-hit:focus{outline:none}.family-hit:focus rect{stroke:#ad8251;stroke-width:2}.currency-link{cursor:pointer}.currency-link:hover text{text-decoration:underline;fill:#143e28}.currency-link:focus{outline:none}.currency-link:focus rect{stroke:#ad8251;stroke-width:2}.map-edge{cursor:pointer}.map-edge:hover path:last-child,.map-edge:focus path:last-child{stroke-width:2.4;stroke-opacity:1}.map-edge:focus{outline:none}.zoom-tools{position:absolute;right:20px;top:59px;display:flex;flex-direction:column;background:#fcfbf7;border:1px solid var(--line);border-radius:4px;box-shadow:0 3px 12px #3a4f3c09;z-index:3;overflow:hidden;cursor:default}.zoom-tools button{width:37px;height:36px;padding:0;font-size:21px;border-bottom:1px solid var(--line)}.zoom-tools button:last-child{font-size:10px;border:0}.zoom-tools button:hover{background:#e9eee2}.zoom-level{position:absolute;right:19px;top:176px;font-size:9px;color:#8b9586;background:var(--paper);padding:3px;pointer-events:none}.mini-map{position:absolute;right:20px;bottom:39px;width:155px;height:94px;border:1px solid #cdd5c6;background:#f5f4ecd9;z-index:3;cursor:crosshair;box-shadow:0 3px 10px #3b503514;overflow:hidden}.mini-map svg{display:block;width:100%;height:100%;pointer-events:none}.map-instructions{position:absolute;right:20px;bottom:14px;font-size:9px;color:#8e9989;background:#f8f6f0d9;pointer-events:none}.map-instructions span{padding:0 5px}.map-bottom{min-height:34px;display:flex;align-items:center;gap:19px;padding:9px 25px 10px;border-top:1px solid var(--line);font-size:9px;color:var(--muted);flex-wrap:wrap}.map-bottom>span{display:flex;align-items:center;gap:6px}.legend-line{width:19px;border-top:1px solid #62836d}.legend-line.dashed{border-top:1px dashed #8e7d93}.legend-line.dotted{border-top:1px dotted #9a9b8f}.map-bottom .time-note{margin-left:auto;font-size:9px}.candidate-note{color:#9a7e58}.currency-page,.directory-page,.reading{max-width:1100px;padding:55px 45px 90px;margin:auto}.currency-page{max-width:1050px}.back-link{font-size:11px;color:var(--muted);display:inline-block;margin-bottom:39px;text-decoration:none}.currency-page h1{font-size:62px;margin:13px 0 22px;max-width:850px}.record-meta{font-size:10px;color:var(--muted);letter-spacing:.5px}.record-meta span{margin:0 10px}.profile-summary{font-size:16px;line-height:1.9;max-width:750px;color:#667767;margin:26px 0 18px}.profile-boundary{font-size:11px;color:#879180;line-height:1.8;max-width:820px;margin-top:18px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}.profile-grid h2{font-size:26px;margin:0 0 12px}.profile-grid h2:not(:first-child){margin-top:37px}.relative-row{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding:14px 0;align-items:center}.relative-row a{text-decoration:none;font-size:14px}.relative-row a:hover{text-decoration:underline}.relative-row small{display:block;color:var(--muted);font-size:10px;line-height:1.75;margin-top:5px}.relative-row button{font-size:16px;color:var(--muted);padding:7px 0 7px 10px}.empty{font-size:12px;color:var(--muted);line-height:1.85}.profile-details{margin:0 0 22px;padding-top:17px;border-top:1px solid var(--line)}.profile-details summary{font:20px/1.4 var(--serif);cursor:pointer}.profile-details summary span{font:10px var(--font);color:var(--muted);margin-left:10px}.profile-details>p{margin-top:18px}.profile-later{font-size:11px;color:#9ba492;margin-top:35px}.continuity-event{padding:13px 0;border-bottom:1px solid var(--line)}.continuity-event strong{font-weight:400;display:block;font-size:11px;color:var(--muted)}.continuity-event span{display:block;font-size:14px}.continuity-event p{font-size:11px;color:var(--muted);margin:6px 0}.directory-page h1,.reading h1{margin:14px 0 20px}.lead{font-size:16px;line-height:1.9;color:var(--muted);max-width:680px}.directory-controls{display:flex;align-items:center;gap:23px;margin:35px 0 15px;flex-wrap:wrap}.directory-controls>label:first-child{flex:1;min-width:240px}.directory-controls input[type=search]{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 0;font-size:16px}.directory-controls select{border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 0;font-size:12px;max-width:100%}.small-check{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px}.small-check input{accent-color:var(--green)}.small-note{font-size:10px;color:var(--muted)}.index-results{display:grid;grid-template-columns:1fr 1fr;column-gap:35px}.search-result{display:flex;align-items:center;justify-content:space-between;gap:18px;text-decoration:none;padding:14px 0;border-bottom:1px solid var(--line);font-size:14px}.search-result small{display:block;color:var(--muted);font-size:10px;line-height:1.7;margin-top:4px}.result-code{font-size:10px;color:#8d9987;flex-shrink:0}.search-result:hover{color:var(--blue)}.reading{max-width:820px}.reading h2{margin-top:36px}.reading p{color:#697969;font-size:14px;line-height:1.95}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:36px;max-width:620px;width:calc(100% - 32px);max-height:85dvh;box-shadow:0 20px 75px #263b322e}dialog::backdrop{background:#263b3255;backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:12px;top:8px;font:30px var(--serif);padding:0 10px;color:var(--muted)}dialog h2{font-size:32px;margin-top:5px}#global-search{width:100%;font-size:17px;background:transparent;border:0;border-bottom:1px solid var(--line);padding:13px 0;outline-offset:4px;margin-bottom:12px}#search-results{max-height:55dvh;overflow-y:auto;padding-right:6px}.edge-path{font:24px/1.5 var(--serif);margin:21px 0}.edge-path span{color:var(--muted)}.edge-path a{text-decoration:none}.edge-date{font-size:12px;color:var(--muted)}#edge-content>p{font-size:13px;line-height:1.9}.candidate-warning{border-left:2px solid #b0936c;padding-left:14px;color:#99794e}#edge-evidence{margin-top:25px;border-top:1px solid var(--line);padding-top:15px}#edge-evidence>summary{cursor:pointer;font:20px var(--serif)}#edge-evidence>summary span{font:10px var(--font);color:var(--muted);margin-left:10px}.claim{padding:22px 0;border-bottom:1px solid var(--line)}.claim p{font-size:13px;line-height:1.8;margin:10px 0}.claim summary{cursor:pointer;color:var(--blue);font-size:11px}.source{margin:16px 0;padding-left:12px;border-left:1px solid var(--line);font-size:11px}.source strong{font-weight:500}.source p{font-size:11px;margin:5px 0}.source small{display:block;color:var(--muted);line-height:1.8}.source a{display:inline-block;margin-top:8px}.loading{padding:60px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(min-width:1800px){.family-nav{width:235px;padding-left:32px}.map-caption{padding-top:22px}.map-caption h1{font-size:31px}.site-header{height:75px}.site-header .wordmark{font-size:26px}}@media(max-width:1100px){.family-nav{width:170px;padding:23px 12px 15px 16px}.family-nav>button{font-size:10px;gap:6px;padding:9px 2px}.family-nav>button small{display:none}.layers{gap:12px;font-size:9px}.map-caption{padding:14px 20px 10px}.map-tally{display:none}.map-caption h1{font-size:25px}.site-header{padding:0 22px}.wordmark{font-size:21px}.site-header nav{gap:20px}.map-topbar{padding:9px 22px}.map-bottom{gap:10px;font-size:8px}.map-bottom .time-note{font-size:8px}}@media(max-width:750px){.site-header{height:59px;padding:0 17px;gap:12px}.wordmark{font-size:18px}.wordmark em{display:block;font-size:16px;margin-top:-5px}.site-header nav{gap:16px;font-size:10px}.site-header nav button{font-size:10px}.site-header kbd,.about-nav{display:none}.map-topbar{display:block;padding:7px 15px}.map-breadcrumb{font-size:11px;margin-bottom:4px;height:22px}.map-breadcrumb .edition-tag{font-size:9px}.layers{font-size:9px;justify-content:space-between;gap:12px;min-height:25px}.layers label{gap:5px}.layers button{font-size:10px}.family-nav{display:none}.map-caption{padding:12px 17px 6px;min-height:54px}.map-caption h1{font-size:24px}.map-caption>div>span{font-size:9px}.map-stage{margin:0;min-height:230px}.zoom-tools{right:12px;top:51px}.zoom-tools button{width:39px;height:40px}.zoom-level{top:179px;right:12px;font-size:8px}.mini-map{width:108px;height:74px;right:12px;bottom:39px}.map-instructions{font-size:8px;right:12px;bottom:14px}.map-bottom{padding:8px 15px;gap:7px 13px;font-size:8px}.map-bottom .time-note{margin-left:0}.currency-page,.directory-page,.reading{padding:33px 22px 60px}.currency-page h1{font-size:43px;letter-spacing:-1px}.back-link{margin-bottom:27px;font-size:10px}.profile-summary{font-size:14px}.profile-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.profile-boundary{font-size:10px}.profile-grid h2{font-size:25px}.directory-page h1,.reading h1{font-size:40px}.lead{font-size:14px}.index-results{grid-template-columns:1fr}.directory-controls{gap:12px}.directory-controls>label:first-child{flex-basis:100%}.directory-controls select{font-size:11px}.small-check{font-size:10px}.search-result{font-size:13px}.search-result small{font-size:10px}dialog{padding:34px 22px}dialog h2{font-size:28px}.dialog-close{width:44px;height:44px}.edge-path{font-size:23px}#global-search{font-size:16px}.reading p{font-size:13px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{.site-header,.family-nav,.map-topbar,.zoom-tools,.zoom-level,.mini-map,.map-instructions,.map-bottom{display:none}.map-page{height:100vh}.map-caption{padding:0}.map-main{width:100%}.profile-grid{grid-template-columns:1fr 1fr}.currency-page{padding:0}.back-link{display:none}}

.predecessor-status{padding:18px 22px;margin:24px 0;border-left:3px solid #446e60;background:#f3f6f3}.predecessor-status.open{border-color:#a97d3f;background:#faf6ef}.predecessor-status p{margin:8px 0;font-size:15px;line-height:1.6}.predecessor-status a{font-size:14px}

/* Adopted bases are a distinct relationship, never an uncertain ancestry style. */
.basis-card{border-left:3px solid #823e92;padding-left:16px}.basis-card>strong{color:#823e92}.basis-card button{font:inherit;color:#663076;background:#faf6fb;border:1px solid #d9c4df;border-radius:5px;padding:7px 10px;cursor:pointer}.layers{flex-wrap:wrap}.layers a{font-size:12px}.map-edge:focus{outline:none}.map-edge:focus path{stroke-width:5}.adopted-basis-marker{pointer-events:all}
