:root{--ground:#eff1ea;--surface:#fafaf5;--surface2:#f3f4ed;--ink:#24312b;--muted:#5e6b62;--faint:#8b968d;--line:#cbd2c7;--line-soft:#dde2d8;--accent:#2f5d46;--accent-ink:#fafaf5;--accent-soft:#e2eae2;--seal:#8e3b2c;--chip:#e8ece3;--shadow:0 1px 3px rgba(36,49,43,.08),0 8px 24px rgba(36,49,43,.06)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#151a16;--surface:#1d231e;--surface2:#232a24;--ink:#e4e8e0;--muted:#9fab9f;--faint:#75816f;--line:#37413a;--line-soft:#2c342e;--accent:#8ab89e;--accent-ink:#151a16;--accent-soft:#26332b;--seal:#d08a75;--chip:#26302a;--shadow:0 1px 3px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.3)}}:root[data-theme=dark]{--ground:#151a16;--surface:#1d231e;--surface2:#232a24;--ink:#e4e8e0;--muted:#9fab9f;--faint:#75816f;--line:#37413a;--line-soft:#2c342e;--accent:#8ab89e;--accent-ink:#151a16;--accent-soft:#26332b;--seal:#d08a75;--chip:#26302a;--shadow:0 1px 3px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.3)}*{box-sizing:border-box}body{background:var(--ground);color:var(--ink);font-family:"Source Serif 4",Georgia,serif;font-size:16px;line-height:1.55;margin:0;-webkit-font-smoothing:antialiased}.wrap{max-width:1080px;margin:0 auto;padding:0 20px 80px}a{color:var(--accent)}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mast{text-align:center;padding:56px 0 8px}.mast .rule{width:72px;height:1px;background:var(--line);margin:0 auto}.mast .eyebrow{font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:18px 0 10px}h1.title{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:clamp(30px,5vw,44px);line-height:1.1;margin:0 0 10px;text-wrap:balance}.mast .sub{color:var(--muted);max-width:52ch;margin:0 auto;font-size:15px}.stats{font-family:IBM Plex Mono,monospace;font-size:11.5px;color:var(--faint);margin-top:14px;letter-spacing:.04em}.mast .signedin{font-size:12.5px;color:var(--muted);margin-top:10px}.mast .signedin button{background:none;border:none;color:var(--accent);text-decoration:underline;padding:0;font-size:inherit}.searchbox{max-width:560px;margin:30px auto 0;position:relative}.searchbox input{width:100%;padding:14px 18px;font:inherit;font-size:17px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:3px;box-shadow:var(--shadow)}.searchbox input::placeholder{color:var(--faint)}.sugg{position:absolute;left:0;right:0;top:calc(100% + 6px);background:var(--surface);border:1px solid var(--line);border-radius:3px;box-shadow:var(--shadow);z-index:30;max-height:380px;overflow-y:auto;text-align:left}.sugg[hidden]{display:none!important}.sugg .row{padding:10px 16px;border-bottom:1px solid var(--line-soft);cursor:pointer}.sugg .row:last-child{border-bottom:none}.sugg .row.sel,.sugg .row:hover{background:var(--surface2)}.sugg .nm{font-weight:600}.sugg .dt{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted);margin-left:8px}.sugg .par{font-size:13px}.sugg .none,.sugg .par{color:var(--muted);font-style:italic}.sugg .none{padding:12px 16px}.examples{text-align:center;margin-top:18px;color:var(--muted);font-size:14px}.examples button{background:var(--chip);color:var(--ink);border:1px solid var(--line-soft);border-radius:99px;padding:4px 13px;margin:4px 3px;font-size:13.5px}.examples button:hover{border-color:var(--accent);color:var(--accent)}.privnote{text-align:center;color:var(--faint);font-size:12.5px;margin-top:26px;font-style:italic}#personView{margin-top:38px}.phead{background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);padding:26px 30px 0}.phead .top{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:baseline;justify-content:space-between}.pname{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:clamp(24px,3.5vw,32px);margin:0;line-height:1.15}.pvitals{color:var(--muted);font-size:14.5px;margin:6px 0 0}.prefn{font-size:11px;color:var(--faint);letter-spacing:.05em}.prefn,.tag-living{font-family:IBM Plex Mono,monospace}.tag-living{display:inline-block;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--seal);border:1px solid;border-radius:2px;padding:1px 7px;vertical-align:2px;margin-left:10px}.tabs{display:flex;gap:2px;margin-top:20px;flex-wrap:wrap}.tabs button{background:none;border:none;border-bottom:2px solid transparent;padding:10px 18px 12px;color:var(--muted);font-size:15px;font-family:inherit}.tabs button.on{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.tabs .spacer{flex:1 1}.tabs .action{align-self:center;background:var(--accent);color:var(--accent-ink);border:none;border-radius:3px;padding:7px 16px;font-size:13.5px;margin-bottom:6px}.treewrap{margin-top:22px;background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);padding:18px}.treebar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:0 6px 12px;border-bottom:1px solid var(--line-soft);color:var(--muted);font-size:13.5px}.treebar select{font:inherit;font-size:13px;background:var(--surface2);color:var(--ink);border:1px solid var(--line);border-radius:3px;padding:3px 6px}.treescroll{overflow-x:auto;padding:20px 6px 10px}.pt-node{display:flex;align-items:center}.pt-card{background:var(--surface2);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:3px;padding:8px 12px;min-width:172px;max-width:210px;cursor:pointer;flex-shrink:0}.pt-card:hover{border-color:var(--accent)}.pt-card.living{border-left-color:var(--seal)}.pt-card.root{background:var(--accent-soft)}.pt-card .nm{font-weight:600;font-size:13.5px;line-height:1.25}.pt-card .yr{font-size:10.5px;color:var(--muted)}.pt-card .lv,.pt-card .yr{font-family:IBM Plex Mono,monospace;margin-top:3px}.pt-card .lv{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--seal)}.pt-parents{display:flex;flex-direction:column;justify-content:center;margin-left:26px;position:relative;row-gap:10px}.pt-parents:before{content:"";position:absolute;left:-26px;top:50%;width:26px;height:1px;background:var(--line)}.pt-branch{position:relative;padding-left:26px}.pt-branch:before{width:26px;height:1px}.pt-branch.top:after,.pt-branch:before{content:"";position:absolute;left:0;top:50%;background:var(--line)}.pt-branch.top:after{bottom:-6px;width:1px}.pt-branch.bot:after{content:"";position:absolute;left:0;top:-6px;bottom:50%;width:1px;background:var(--line)}.pt-branch.only:after{display:none}.pt-more{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--accent);margin-top:3px}.book{margin-top:22px;background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);padding:clamp(24px,5vw,64px)}.bookinner{max-width:66ch;margin:0 auto}.book .btitle{font-family:Fraunces,Georgia,serif;font-weight:700;font-size:clamp(26px,4vw,36px);text-align:center;margin:18px 0 6px;text-wrap:balance}.book .bsub{text-align:center;color:var(--muted);font-size:14px;margin-bottom:4px}.book .bmeta{font-family:IBM Plex Mono,monospace;text-align:center;color:var(--faint);font-size:11px;letter-spacing:.06em;margin-bottom:30px}.book .fleuron{text-align:center;color:var(--accent);font-size:18px;margin:26px 0}.book h2.part{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:22px;margin:44px 0 4px;text-align:center}.book .partsub{text-align:center;color:var(--muted);font-size:13.5px;margin:0 0 26px;font-style:italic}.book h3.gen{font-family:IBM Plex Mono,monospace;font-weight:500;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--line-soft);padding-bottom:6px;margin:34px 0 18px}.entry{margin:0 0 20px;padding-left:56px;position:relative}.entry .no{position:absolute;left:0;top:2px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--accent);width:44px;text-align:right}.entry .enm{font-weight:600}.entry .evit{color:var(--muted);font-size:14.5px}.entry .enote{font-size:14px;color:var(--ink);margin-top:6px;border-left:2px solid var(--line-soft);padding-left:12px}.entry .enote p{margin:0 0 8px}.entry .withheld{color:var(--faint);font-style:italic;font-size:14px}.fam-sec{margin:0 0 30px}.fam-sec h4{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:17px;margin:0 0 4px}.fam-sec .fmarr{color:var(--muted);font-size:14px;font-style:italic;margin:0 0 12px}.kid{margin:0 0 10px}.kid .knm{font-weight:600}.kid .kvit{color:var(--muted);font-size:14px}.kid .anc{font-size:13px;color:var(--accent);font-style:italic}.kid .enote{font-size:13.5px;margin-top:4px;border-left:2px solid var(--line-soft);padding-left:12px}.kid .enote p{margin:0 0 6px}.sub1{margin-left:26px}.sub2{margin-left:52px}.sub3{margin-left:78px}.sub4{margin-left:104px}.idx{column-count:2;column-gap:36px;font-size:13.5px}@media (max-width:640px){.idx{column-count:1}}.idx div{page-break-inside:avoid;break-inside:avoid;padding:1.5px 0}.idx a{text-decoration:none;color:var(--ink)}.idx a:hover{color:var(--accent)}.idx .yrs{font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--faint)}.about p{font-size:14.5px;color:var(--muted)}.backtop{text-align:center;margin-top:40px}.backtop button{background:none;border:1px solid var(--line);color:var(--muted);border-radius:3px;padding:6px 16px;font-size:13px}[hidden]{display:none!important}@media print{body{background:#fff;color:#111}.backtop,.examples,.mast,.phead,.privnote,.searchbox,.stats,.treewrap{display:none!important}.book{border:none;box-shadow:none;padding:0}.book .btitle,.book h2.part,.fam-sec h4{color:#111}.book h3.gen,.entry .no{color:#333}a{color:#111;text-decoration:none}}.authWrap{max-width:420px;margin:80px auto;padding:0 20px}.authWrap h1{font-family:Fraunces,Georgia,serif;font-size:26px;margin:0 0 6px}.authWrap .sub{color:var(--muted);font-size:14.5px;margin:0 0 26px}.authForm{gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);padding:24px}.authForm,.authForm label{display:flex;flex-direction:column}.authForm label{gap:6px;font-size:13.5px;color:var(--muted)}.authForm input{font:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--line);border-radius:3px;background:var(--ground);color:var(--ink)}.authForm .err{color:var(--seal);font-size:13.5px;margin:0}.authForm .notice{background:var(--accent-soft);color:var(--ink);font-size:13.5px;padding:10px 12px;border-radius:3px;margin:0 0 6px}.btn{background:var(--accent);color:var(--accent-ink);border:none;border-radius:3px;padding:10px 16px;font-size:14.5px;font-weight:600}.btn:disabled{opacity:.6;cursor:default}.btn.secondary{background:none;border:1px solid var(--line);color:var(--ink)}.alt{text-align:center;color:var(--muted);margin-top:18px}.alt,.notice{font-size:13.5px}.notice{background:var(--accent-soft);color:var(--ink);padding:10px 12px;border-radius:3px;margin:0 0 18px}.suggestPanel{margin-top:22px;background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);padding:22px 26px}.suggestPanel h3{font-family:Fraunces,Georgia,serif;margin:0 0 4px}.suggestPanel .sub{color:var(--muted);font-size:13.5px;margin:0 0 18px}.suggestForm{gap:14px}.suggestForm,.suggestForm label{display:flex;flex-direction:column}.suggestForm label{gap:6px;font-size:13px;color:var(--muted)}.suggestForm input,.suggestForm select,.suggestForm textarea{font:inherit;font-size:14.5px;padding:9px 11px;border:1px solid var(--line);border-radius:3px;background:var(--ground);color:var(--ink)}.suggestForm textarea{min-height:70px;resize:vertical}.suggestForm .row2{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}@media (max-width:560px){.suggestForm .row2{grid-template-columns:1fr}}.suggestSuccess{color:var(--accent);font-size:14px;font-weight:600}.adminWrap{max-width:900px;margin:0 auto;padding:40px 20px 80px}.adminWrap h1{font-family:Fraunces,Georgia,serif;font-size:26px}.adminTable{width:100%;border-collapse:collapse;margin-top:20px;font-size:14px}.adminTable th{text-align:left;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding:8px 10px}.adminTable td{border-bottom:1px solid var(--line-soft);padding:10px;vertical-align:top}.adminTable .diff{font-size:13px}.adminTable .diff .cur{color:var(--faint);text-decoration:line-through}.adminTable .diff .new{color:var(--accent);font-weight:600}.adminActions{display:flex;gap:8px}.adminActions button{border-radius:3px;padding:6px 12px;font-size:13px;border:1px solid var(--line)}.adminActions .approve{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.adminActions .reject{background:none;color:var(--seal);border-color:var(--seal)}.pill{font-family:IBM Plex Mono,monospace;font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:2px 7px;border-radius:2px;border:1px solid}.pill.pending{color:var(--muted)}.pill.approved{color:var(--accent)}.pill.rejected{color:var(--seal)}.mast .tagline{font-family:Fraunces,Georgia,serif;font-style:italic;font-size:17px;color:var(--ink);margin-bottom:8px}.treebar .viewtoggle{display:inline-flex;border:1px solid var(--line);border-radius:3px;overflow:hidden}.treebar .viewtoggle button{background:var(--surface2);border:none;color:var(--muted);font-size:12.5px;padding:3px 10px}.treebar .viewtoggle button.on{background:var(--accent);color:var(--accent-ink)}.treebar .gensavail{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--faint);letter-spacing:.04em}.st-legend{display:flex;flex-wrap:wrap;gap:6px 18px;padding:10px 6px 0;font-size:12px;color:var(--muted)}.st-legend .st-key{white-space:nowrap}.st-chip{display:inline-block;font-family:IBM Plex Mono,monospace;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;border-radius:2px;padding:1px 6px;line-height:1.5;vertical-align:2px;border:1px solid transparent}.st-open{color:var(--muted);background:var(--chip);border-color:var(--line-soft)}.st-supported{color:#6b5a2a;background:#f1e9d2;border-color:#e2d6b4}.st-documented{color:var(--accent);background:var(--accent-soft);border-color:#c5d6c8}.st-sealed{color:var(--seal);background:#f2e3de;border-color:#e4c9c0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .st-supported{color:#d9c27e;background:#332c1b;border-color:#4a4128}:root:not([data-theme=light]) .st-documented{border-color:#365040}:root:not([data-theme=light]) .st-sealed{background:#3a2521;border-color:#553530}}:root[data-theme=dark] .st-supported{color:#d9c27e;background:#332c1b;border-color:#4a4128}:root[data-theme=dark] .st-documented{border-color:#365040}:root[data-theme=dark] .st-sealed{background:#3a2521;border-color:#553530}.pname .st-chip{margin-left:10px;font-size:10.5px}.pt-card .st-chip{margin-top:4px;vertical-align:0}.ahnwrap{overflow-x:auto;padding:14px 6px 6px}.ahn{width:100%;border-collapse:collapse;font-size:13.5px;min-width:560px}.ahn th{text-align:left;font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 8px;font-weight:500}.ahn td{border-bottom:1px solid var(--line-soft);padding:7px 8px;vertical-align:top}.ahn tr[role=button]{cursor:pointer}.ahn tr[role=button]:focus-visible td,.ahn tr[role=button]:hover td{background:var(--surface2)}.ahn td.no{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--accent);text-align:right;width:56px}.ahn td.nm{font-weight:600}.ahn td.yr{font-family:IBM Plex Mono,monospace;font-size:11.5px;color:var(--muted);white-space:nowrap}.ahn td.pl{color:var(--muted);font-size:13px}.ahn tr.dup td{color:var(--faint)}.ahn .anc{font-size:12px;color:var(--accent);font-style:italic;font-weight:400}.helpwanted,.relcalc{margin-top:22px;background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);padding:22px 26px}.helpwanted h3,.relcalc h3{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:20px;margin:0 0 4px}.helpwanted .sub,.relcalc .sub{color:var(--muted);font-size:13.5px;margin:0 0 14px}.searchbox.small{margin:0;max-width:440px}.searchbox.small input{font-size:15px;padding:10px 14px;box-shadow:none}.relresult{margin-top:18px}.rel-answer{font-size:17px;margin:0 0 8px}.rel-bridge{color:var(--muted);font-size:14px;margin:0 0 8px}.rel-paths{border-left:2px solid var(--line-soft);padding-left:14px;font-size:14px}.rel-paths p{margin:0 0 6px}.rel-paths .k{font-family:IBM Plex Mono,monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-right:8px}.rel-paths .arrow{color:var(--faint)}.rel-paths a{text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line)}.rel-paths a:hover{color:var(--accent);border-bottom-color:var(--accent)}.rel-note{color:var(--faint);font-size:12.5px;font-style:italic;margin:12px 0 0}.helpwanted ul{list-style:none;padding:0;margin:0;column-count:2;column-gap:32px;font-size:14px}@media (max-width:700px){.helpwanted ul{column-count:1}}.helpwanted li{page-break-inside:avoid;break-inside:avoid;padding:5px 0;border-bottom:1px solid var(--line-soft)}.helpwanted li a:first-child{font-weight:600;color:var(--ink);text-decoration:none}.helpwanted li a:first-child:hover{color:var(--accent)}.helpwanted .yr{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted)}.helpwanted .meta{font-size:12px;color:var(--faint)}@media print{.helpwanted,.relcalc{display:none!important}}