#cws-kinship{--kf-ink:light-dark(#213b3c,#e1e8dc);--kf-muted:light-dark(#637b7c,#a9beba);--kf-paper:light-dark(#f1f2ed,#14242a);--kf-line:light-dark(#c8cfca,#43575b);--kf-copper:light-dark(#965432,#e0a879);color:var(--kf-ink);background:var(--kf-paper);min-height:100svh;display:flex;flex-direction:column}
#cws-kinship *{box-sizing:border-box}
#cws-kinship [hidden]{display:none!important}
#cws-kinship a{color:inherit;text-decoration:none}
#cws-kinship a:hover{color:var(--kf-copper)}
.kf-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:28px 38px}
.kf-header>a{font:24px/1.3 Georgia,serif;letter-spacing:-.04em}
.kf-header h1{font:400 14px/1.3 Georgia,serif;letter-spacing:.04em;margin:0}
#kf-count{text-align:right;color:var(--kf-muted);font:11px/1.5 monospace}
.kf-map-shell{position:relative;flex:1;min-height:400px;display:flex}
#kf-map{display:block;width:100%;height:calc(100svh - 150px);min-height:400px;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}
#kf-map.is-dragging{cursor:grabbing}
#kf-connections path{stroke:var(--kf-muted);stroke-width:.8;opacity:.56}
#kf-connections path.is-lineage{stroke:var(--kf-copper);stroke-width:1.5;opacity:1}
.kf-node{cursor:pointer;outline:none}
.kf-node .kf-hit{fill:transparent}
.kf-node .kf-point{fill:var(--kf-paper);stroke:var(--kf-ink);stroke-width:1.1}
.kf-node .kf-number{font:10px monospace;fill:var(--kf-muted);paint-order:stroke;stroke:var(--kf-paper);stroke-width:3px;stroke-linejoin:round}
.kf-node .kf-name{display:none}
.kf-node.is-current .kf-point,.kf-node:focus-visible .kf-point{fill:var(--kf-copper);stroke:var(--kf-copper);stroke-width:2}
.kf-node.is-current .kf-number,.kf-node:focus-visible .kf-number{fill:var(--kf-copper)}
.kf-node:focus-visible .kf-hit{stroke:var(--kf-copper);stroke-width:1;stroke-dasharray:2 3}
.kf-zoom{position:absolute;right:34px;bottom:12px;display:flex;align-items:center;background:var(--kf-paper);border:1px solid var(--kf-line)}
.kf-zoom button{font:13px Georgia,serif;background:none;color:var(--kf-ink);border:0;min-width:44px;min-height:44px;cursor:pointer}
.kf-zoom button:hover{color:var(--kf-copper)}
.kf-zoom button:disabled{opacity:.35;cursor:default}
.kf-footer{min-height:65px;padding:14px 38px 24px;display:flex;align-items:center;gap:24px;justify-content:space-between}
#kf-selected{font:22px/1.3 Georgia,serif;letter-spacing:-.025em}
#kf-selected span{font:11px/1.4 monospace;letter-spacing:0;color:var(--kf-muted);margin-right:18px}
#kf-range{font:11px/1.5 monospace;color:var(--kf-muted);margin-left:auto;white-space:nowrap}
#kf-error,.kf-noscript{position:absolute;inset:35% 20px auto;text-align:center;color:var(--kf-copper);font:15px/1.5 Georgia,serif}
.kf-footer .lf-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:620px){.kf-header{padding:23px 20px;gap:12px;grid-template-columns:1fr auto}.kf-header>a{font-size:21px}.kf-header h1{font-size:13px}#kf-count{grid-column:1/-1;text-align:left;font-size:10px}.kf-zoom{right:18px;bottom:0}.kf-footer{padding:16px 20px 24px;align-items:flex-start;gap:12px;min-height:90px}#kf-selected{font-size:19px}#kf-selected span{display:block;margin:0 0 5px}#kf-range{font-size:10px}#kf-map{height:calc(100svh - 185px)}}
