:root{--bg:#faf8f4;--panel:#fff;--text:#2a2622;--muted:#7a7168;--border:#e3ddd3;--accent:#2f6b4f;--male:#dbe8f4;--female:#f6e1e6;--other:#e8e4f3;--unknown:#eee9e0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#171512;--panel:#211e1a;--text:#ece6dc;--muted:#9b9287;--border:#38332c;--accent:#5fb58b;--male:#243645;--female:#4a2a33;--other:#35304a;--unknown:#2f2b25}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}a{color:var(--accent)}button{font:inherit;border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;padding:.4rem .8rem}button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:8px;width:100%;padding:.45rem .6rem}.muted{color:var(--muted);font-size:.9em}.error{color:#c0392b}.center{text-align:center;margin-top:4rem}.topbar{border-bottom:1px solid var(--border);background:var(--panel);align-items:center;gap:.75rem;height:52px;padding:.5rem 1rem;display:flex}.brand{color:var(--text);font-weight:700;text-decoration:none}.spacer{flex:1}.badge{background:#f1c40f33;border:1px solid #f1c40f;border-radius:99px;padding:0 .6rem;font-size:.8rem}.login{text-align:center;max-width:360px;margin:12vh auto;padding:0 1rem}.login label{text-align:left;margin-bottom:.75rem;display:block}.tree{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;background-image:radial-gradient(var(--border) 1px, transparent 1px);background-size:24px 24px;height:calc(100dvh - 52px);position:relative;overflow:hidden}.tree:active{cursor:grabbing}.world{transform-origin:0 0;will-change:transform;position:absolute;top:0;left:0}.edges{pointer-events:none;position:absolute;top:0;left:0}.edges .descent{fill:none;stroke:var(--muted);stroke-width:1.5px}.edges .married{stroke:var(--accent);stroke-width:2.5px}.edges .divorced{stroke:#c0392b;stroke-width:2px;stroke-dasharray:6 4}.elabel{fill:var(--muted);font-size:11px}.node{cursor:pointer;position:absolute}.card{border:1px solid var(--border);background:var(--unknown);border-radius:10px;height:100%;padding:.45rem .6rem;overflow:hidden}.card.male{background:var(--male)}.card.female{background:var(--female)}.card.other{background:var(--other)}.card-name{font-weight:600;line-height:1.2}.card-sub{color:var(--muted);font-size:.8rem}.controls{flex-direction:column;gap:6px;display:flex;position:absolute;bottom:36px;right:12px}.hint{color:var(--muted);pointer-events:none;margin:0;font-size:.8rem;position:absolute;bottom:6px;left:12px}.profile{max-width:720px;margin:0 auto;padding:1rem}.profile dl{grid-template-columns:7rem 1fr;gap:.25rem 1rem;display:grid}.profile dt{color:var(--muted)}.profile dd{flex-direction:column;margin:0;display:flex}.profile article{border-bottom:1px solid var(--border);padding:.5rem 0}.profile blockquote{border-left:3px solid var(--border);margin:.4rem 0 0;padding-left:.8rem}.actions{flex-wrap:wrap;gap:.5rem;margin:.75rem 0;display:flex}.form{gap:.75rem;display:grid}.form label{gap:.2rem;display:grid}.form label.inline{align-items:center;gap:.5rem;display:flex}.form label.inline input{width:auto}.profile dl>div{display:contents}.row{align-items:center;gap:.75rem;display:flex}.row-actions{float:right;gap:.4rem;display:inline-flex}.row-actions button{padding:.1rem .5rem;font-size:.85rem}.subform{border:1px solid var(--border);background:var(--panel);border-radius:10px;margin:.5rem 0;padding:.75rem}.place{position:relative}.suggest{z-index:20;background:var(--panel);border:1px solid var(--border);border-radius:8px;max-height:14rem;margin:2px 0 0;padding:0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 4px 16px #0003}.suggest li{cursor:pointer;padding:.45rem .7rem}.suggest li:hover{background:var(--unknown)}.form{gap:.6rem}.form label,.datepick{color:var(--muted);font-size:.85rem}.form input,.form select,.form textarea{color:var(--text);padding:.35rem .5rem;font-size:.95rem}.form label.inline{font-size:.85rem}.r2,.r3{align-items:start;gap:.6rem;display:grid}.r2{grid-template-columns:1fr 1fr}.r3{grid-template-columns:1fr 1fr 1fr}@media (width<=640px){.r2,.r3{grid-template-columns:1fr}}.datepick{gap:.2rem;display:grid}.datepick-head{justify-content:space-between;align-items:center;display:flex}.datepick-row{grid-template-columns:1.5fr .8fr 1fr;gap:.35rem;display:grid}.datepick-row select{width:100%;min-width:0}.subform{padding:.6rem}.profile{max-width:800px}.profile section{margin-top:1rem}.profile h2{margin:0 0 .3rem;font-size:1.1rem}.profile article{padding:.3rem 0}.profile article p{margin:.2rem 0}.profile h1{font-size:1.7rem}.actions{margin:.5rem 0}.profile h1{margin-bottom:.6rem}.picker input{width:100%}.picker-list{border:1px solid var(--border);background:var(--panel);border-radius:10px;margin:.4rem 0 0;padding:0;list-style:none;overflow:hidden}.picker-list li{border-bottom:1px solid var(--border);cursor:pointer;padding:.45rem .75rem}.picker-list li:last-child{border-bottom:0}.picker-list li:hover{background:var(--unknown)}.picker-list li.sel{background:var(--male);outline:2px solid var(--accent);outline-offset:-2px}.picker-list li.none{cursor:default}.otherparents{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:.6rem;display:flex}.linkbar{margin:.8rem 0}.profile.wide{max-width:1000px}.back{margin:0 0 .4rem}.phead{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:.8rem;display:flex}.phead h1{margin:0}.phead p{margin:.1rem 0 0}.phead .actions{margin:0}.pgrid{grid-template-columns:1fr 1fr;align-items:start;gap:.8rem;display:grid}.pcard{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:.7rem .9rem;margin:0!important}.pcard.span2{grid-column:span 2}@media (width<=720px){.pgrid{grid-template-columns:1fr}.pcard.span2{grid-column:auto}}.shead{justify-content:space-between;align-items:center;margin-bottom:.35rem;display:flex}.shead h2{margin:0!important}.shead button{padding:.1rem .55rem;font-size:.85rem}.pcard>p.muted{margin:.2rem 0}.vitals{grid-template-columns:1fr;gap:.15rem;margin:0;display:grid}.vitals>div{gap:.8rem;display:flex}.vitals dt{flex:none;width:3.5rem}.vitals dd{display:block}.bio{margin:.5rem 0 0}.famrow{align-items:baseline;gap:.6rem;padding:.25rem 0;display:flex}.famrow>.muted{flex:none;width:4.5rem}.chips{flex-wrap:wrap;gap:.35rem;display:flex}.chip{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:16px;flex-wrap:wrap;align-items:baseline;gap:.3rem;padding:.15rem .6rem;text-decoration:none;display:inline-flex}.chip:hover{border-color:var(--accent)}.chip-sub{flex-basis:100%;font-size:.8rem}.item{border-bottom:1px solid var(--border);justify-content:space-between;gap:.6rem;padding:.3rem 0;display:flex}.item:last-of-type{border-bottom:0}.item-main{min-width:0}.item .row-actions{float:none;flex:none;align-self:flex-start}.cap{text-transform:capitalize}.profile blockquote{margin:.25rem 0 0;font-size:.92rem}.otherparents{border:1px solid var(--border);background:var(--panel);border-radius:10px;margin:.8rem 0 1.2rem;padding:.5rem .75rem}.otherparents label.inline{color:var(--text);align-items:center;gap:.4rem;font-size:.95rem;display:inline-flex}.otherparents input[type=checkbox]{width:auto;margin:0}.picker input[type=search]{width:100%}.linkhead{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.linkhead h1{margin:0!important}.picker-list{max-height:20rem;overflow-y:auto}.otherparents{margin:.6rem 0 .8rem}.picker-list li .tick{color:var(--accent);margin-right:.4rem}.linkbar{gap:.5rem;margin:.8rem 0;display:grid}.linkbar .primary{justify-self:start}button.chip{cursor:pointer;font:inherit}.saved{background:var(--male);border-radius:8px;padding:.4rem .7rem}.legalhead{flex-wrap:wrap;align-items:baseline;gap:.2rem .8rem;margin-bottom:-.2rem;display:flex}.legalhead .muted{font-size:.85rem}.addbox,.userbox{margin:1rem 0!important}.permrow{flex-wrap:wrap;gap:.4rem 1rem;display:flex}.usertable-wrap{overflow-x:auto}.usertable{border-collapse:collapse;width:100%;font-size:.9rem}.usertable th{color:var(--muted);text-align:center;vertical-align:bottom;padding:.2rem .3rem;font-size:.75rem;font-weight:500}.usertable th:first-child{text-align:left}.usertable td{border-top:1px solid var(--border);text-align:center;padding:.4rem .3rem}.usertable td:first-child{text-align:left}.usertable td input[type=checkbox]{width:auto}.usertable .ua{text-align:right;white-space:nowrap}.usertable .ua button{margin-left:.3rem;padding:.1rem .5rem;font-size:.8rem}.tag{background:var(--male);border-radius:99px;margin-left:.4rem;padding:.05rem .4rem;font-size:.7rem}.tag.wait{background:#f1c40f33}.tag.none{background:var(--female)}.bars{align-items:flex-end;gap:3px;height:56px;margin:.3rem 0 0;display:flex}.bar{flex:1;align-items:flex-end;height:100%;display:flex}.bar>div{background:var(--accent);border-radius:2px;width:100%;min-height:2px}.barlabel{justify-content:space-between;font-size:.75rem;display:flex;margin:.1rem 0 .6rem!important}.recent{gap:.2rem;margin:.4rem 0 0;padding:0;font-size:.9rem;list-style:none;display:grid}details summary{cursor:pointer;color:var(--muted);margin-top:.5rem}.login form{text-align:left}.login .primary{width:100%;margin-top:.25rem}.loginlinks{text-align:center;font-size:.9rem}.linkbtn{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.banner{text-align:center;background:#f1c40f33;border-bottom:1px solid #f1c40f;margin:0;padding:.45rem 1rem;font-size:.9rem}.fixhint{margin:0 0 .4rem;font-size:.9rem}.fixrow{border-top:1px solid var(--border);padding:.35rem 0}.fixrow:first-of-type{border-top:0}.fixtop{flex-wrap:wrap;align-items:center;gap:.4rem .8rem;display:flex}.fixtop>a{color:var(--text);flex:10rem;text-decoration:none}.fixsel{color:var(--muted);align-items:center;gap:.4rem;font-size:.85rem;display:inline-flex}.fixsel select{width:auto;padding:.15rem .3rem}.fixtop button{padding:.1rem .5rem;font-size:.85rem}.suggestbox{border:1px solid var(--accent);background:var(--panel);border-radius:12px;margin:.4rem 0 1rem;padding:.5rem .75rem .6rem}.suggestbox h2{font-size:1.05rem;margin:0!important}.suggestbox .picker-list{margin:.3rem 0 0}.reason{background:var(--male);color:var(--text);border-radius:99px;margin-left:.5rem;padding:.05rem .5rem;font-size:.75rem}.sexpick{color:var(--muted);gap:.2rem;font-size:.85rem;display:grid}.sexpick>div{align-items:center;gap:1.2rem;min-height:2.1rem;display:flex}.edges .implied{stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:2 4}.datepick-about{color:var(--muted);font-size:.8rem!important}.form .datepick-about input,.datepick-about input{width:auto}.mgrid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;margin-top:.4rem;display:grid}.mthumb{aspect-ratio:1;background:var(--unknown);border-radius:10px;padding:0;position:relative;overflow:hidden}.mthumb img,.mthumb video{object-fit:cover;width:100%;height:100%;display:block}.mthumb .play{color:#fff;background:#000a;border-radius:99px;place-items:center;width:26px;height:26px;font-size:.75rem;display:grid;position:absolute;bottom:6px;right:6px}.tagchips{margin:.3rem 0}.lightbox{z-index:100;background:#000d;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.lb-body{background:var(--panel);border-radius:14px;grid-template-columns:minmax(0,1fr) 320px;gap:1rem;width:min(1200px,100%);max-height:94dvh;display:grid;overflow:hidden}.lb-media{background:#000;place-items:center;min-height:40dvh;display:grid;position:relative}.lb-media img,.lb-media video{max-width:100%;max-height:90dvh;display:block}.lb-side{max-height:94dvh;padding:1rem 1rem 1rem 0;overflow-y:auto}.lb-caption{margin-top:0;font-size:1.05rem}.lb-nav{color:#fff;background:#0008;border:0;padding:.2rem .7rem;font-size:2rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.lb-nav.prev{left:.5rem}.lb-nav.next{right:.5rem}@media (width<=760px){.lb-body{grid-template-columns:1fr;overflow-y:auto}.lb-side{max-height:none;padding:0 1rem 1rem}}
