:root{--ink: #2b211b;--paper: #fbf7f2;--accent: #5b3a29;--muted: #7a6a5f;--line: #e6dcd2;color-scheme:light}*{box-sizing:border-box}#app{min-height:100dvh;display:flex;flex-direction:column}body{margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--paper)}a{color:var(--accent)}main{padding:1rem;max-width:40rem;margin:0 auto;flex:1}.foot{margin-top:2rem;position:relative}.tagline{position:absolute;top:11%;left:0;right:0;z-index:1;margin:0;padding:0 1rem;text-align:center;font-style:italic;font-size:.95rem;color:#2f2f2f}.banner{display:block;width:100%;height:clamp(110px,13vw,340px);object-fit:cover;object-position:50% 50%;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 14%);mask-image:linear-gradient(to bottom,transparent,#000 14%)}.banner.hero{height:clamp(170px,24vw,440px)}input,button,select{font:inherit}button.link{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;cursor:pointer}.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:.6rem 1.2rem;flex-wrap:wrap;padding:.7rem 1.2rem;background:#fbf7f2eb;backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.top .brand{font-weight:700;text-decoration:none;color:var(--ink);font-size:1.05rem}.top nav{display:flex;gap:1.1rem;align-items:center;margin-left:auto;flex-wrap:wrap;font-size:.95rem}.top nav a,.top nav button.link{text-decoration:none;color:var(--muted);font-size:.95rem}.top nav a:hover,.top nav button.link:hover{color:var(--accent)}.top nav a.router-link-active{color:var(--accent);font-weight:600}.top select{width:auto;padding:.3rem .5rem;border-radius:.4rem;font-size:.9rem;border:1px solid #cdbfb3}.chip{font-size:.8rem;padding:.1rem .5rem;border-radius:1rem;background:#efe3d5;color:var(--accent)}@media(max-width:34rem){.top{padding:.55rem .8rem;gap:.35rem .8rem}.top .brand{font-size:1rem}.top .lang{order:2;margin-left:auto;font-size:.85rem;padding:.2rem .35rem}.top nav{order:3;width:100%;margin-left:0;gap:.8rem;font-size:.9rem}.top nav a,.top nav button.link{font-size:.9rem}}.nofamily{max-width:32rem;margin:4rem auto}.nofamily h1{font-size:1.4rem;margin:0 0 .5rem}.nofamily p{color:var(--muted);margin:0}@media print{:root{--paper: #fff}body{background:#fff}header.top,footer.foot,.nofamily{display:none!important}main{padding:0!important;max-width:none!important}a{text-decoration:none;color:inherit}}.signin[data-v-e1a48059]{display:inline-block;padding:.6rem 1.2rem;border-radius:.4rem;background:var(--accent);color:#fff;text-decoration:none;font-weight:600}.signin[data-v-e1a48059]:hover{background:#4a2f21}.first[data-v-e1a48059]{display:grid;gap:.6rem;max-width:24rem}label[data-v-e1a48059]{display:grid;gap:.2rem}label.inline[data-v-e1a48059]{display:inline-flex;align-items:center;gap:.3rem;margin-right:.8rem}fieldset[data-v-e1a48059]{border:0;padding:0;margin:0}legend[data-v-e1a48059]{padding:0;margin-bottom:.2rem}input[data-v-e1a48059]:not([type=radio]){padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem;width:100%}button[data-v-e1a48059]{padding:.6rem 1rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff}.error[data-v-e1a48059]{color:#a33;margin:0}form[data-v-1c14c960]{display:grid;gap:1rem}label[data-v-1c14c960]{display:grid;gap:.25rem}input[data-v-1c14c960]{padding:.6rem .7rem;border:1px solid #cdbfb3;border-radius:.4rem}button[data-v-1c14c960]{padding:.7rem 1rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff}.error[data-v-1c14c960]{color:#a33;margin:0}.card[data-v-3ed8b3c4]{display:flex;flex-direction:column;gap:.1rem;padding:.55rem .7rem;min-width:0;background:#fff;border:1px solid #eee4da;border-radius:.5rem;color:var(--ink);text-decoration:none}.card[data-v-3ed8b3c4]:active{background:#f6efe7}.card.big[data-v-3ed8b3c4]{padding:.9rem 1rem;border-color:var(--accent)}.card.big .name[data-v-3ed8b3c4]{font-size:1.25rem}.card.restricted[data-v-3ed8b3c4]{border-style:dashed}.name[data-v-3ed8b3c4]{font-weight:600;overflow-wrap:anywhere}.years[data-v-3ed8b3c4]{color:var(--muted);font-size:.85rem}.hint[data-v-3ed8b3c4]{display:inline-block;margin-left:.3rem;width:1.1em;height:1.1em;line-height:1.1em;border-radius:50%;background:#efe3d5;color:var(--accent);font-size:.75rem;text-align:center;font-weight:700}.search[data-v-5075be9a]{width:100%;padding:.6rem .7rem;border:1px solid #cdbfb3;border-radius:.4rem;margin-bottom:1rem}.persons[data-v-5075be9a]{display:grid;gap:.5rem}.muted[data-v-5075be9a]{color:var(--muted)}.slot[data-v-15ff8c82]{padding:.55rem .7rem;text-align:left;background:transparent;border:1px dashed #cdbfb3;border-radius:.5rem;color:var(--muted);cursor:pointer}.slot[data-v-15ff8c82]:hover,.slot[data-v-15ff8c82]:focus-visible{border-color:var(--accent);color:var(--accent)}.add[data-v-32d5dc9f]{display:grid;gap:.6rem;padding:.8rem;background:#fff7ee;border:1px solid #e6d5c3;border-radius:.6rem}h3[data-v-32d5dc9f]{margin:0;font-size:1rem}label[data-v-32d5dc9f]{display:grid;gap:.2rem}label.inline[data-v-32d5dc9f]{display:inline-flex;align-items:center;gap:.3rem;margin-right:.8rem}input[data-v-32d5dc9f]:not([type=radio]):not([type=checkbox]){padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem;width:100%}fieldset[data-v-32d5dc9f]{border:0;padding:0;margin:0}legend[data-v-32d5dc9f]{padding:0;margin-bottom:.2rem}.row[data-v-32d5dc9f]{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.row label[data-v-32d5dc9f]:first-child{flex:1}.actions[data-v-32d5dc9f]{display:flex;gap:.5rem}button[data-v-32d5dc9f]{padding:.55rem .9rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff;cursor:pointer}button.secondary[data-v-32d5dc9f]{background:transparent;color:var(--accent);border:1px solid var(--accent)}.matches[data-v-32d5dc9f]{list-style:none;padding:0;margin:0;display:grid;gap:.4rem}.matches li[data-v-32d5dc9f]{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .5rem;background:#fff;border-radius:.4rem}.match-title[data-v-32d5dc9f]{margin:0;font-weight:600}.muted[data-v-32d5dc9f]{color:var(--muted);font-size:.85rem}.error[data-v-32d5dc9f]{color:#a33;margin:0}.panel[data-v-53d34d94]{display:grid;gap:.6rem;padding:.8rem;background:#fff7ee;border:1px solid #e6d5c3;border-radius:.6rem}h3[data-v-53d34d94]{margin:0;font-size:1rem}label[data-v-53d34d94]{display:grid;gap:.2rem}label.inline[data-v-53d34d94]{display:flex;align-items:center;gap:.3rem;margin-bottom:.2rem}.warn[data-v-53d34d94]{margin:0;padding:.4rem .6rem;border-radius:.4rem;background:#f6e3d6;color:#7a3a1e;font-size:.9rem}fieldset[data-v-53d34d94]{border:0;padding:0;margin:0}input[data-v-53d34d94]:not([type=radio]){padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem;width:100%}input.url[data-v-53d34d94]{font-family:ui-monospace,monospace;font-size:.85rem}.actions[data-v-53d34d94]{display:flex;gap:.5rem;flex-wrap:wrap}button[data-v-53d34d94]{padding:.55rem .9rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff;cursor:pointer}button.secondary[data-v-53d34d94]{background:transparent;color:var(--accent);border:1px solid var(--accent)}.muted[data-v-53d34d94]{color:var(--muted);margin:0}.small[data-v-53d34d94]{font-size:.85rem}.error[data-v-53d34d94]{color:#a33;margin:0}.strip[data-v-dd9fd73b]{display:grid;gap:.3rem}.scroller[data-v-dd9fd73b]{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.3rem;scroll-snap-type:x proximity}.thumb[data-v-dd9fd73b]{flex:0 0 auto;width:5.5rem;height:5.5rem;border-radius:.5rem;overflow:hidden;border:1px solid #eee4da;background:#fff;scroll-snap-align:start}.thumb img[data-v-dd9fd73b]{width:100%;height:100%;object-fit:cover;display:block}.cell[data-v-dd9fd73b]{margin:0;display:grid;gap:.2rem;flex:0 0 auto}.thumb.chosen[data-v-dd9fd73b]{border-color:var(--accent);border-width:2px}.pick[data-v-dd9fd73b]{border:0;background:none;padding:0;font:inherit;font-size:.75rem;color:var(--muted);cursor:pointer;text-decoration:underline}.pick[data-v-dd9fd73b]:hover{color:var(--accent)}.pick.on[data-v-dd9fd73b]{color:var(--accent);text-decoration:none}.add[data-v-dd9fd73b]{flex:0 0 auto;width:5.5rem;height:5.5rem;border:1px dashed #cdbfb3;border-radius:.5rem;background:transparent;color:var(--muted);cursor:pointer;font-size:.85rem}.add[data-v-dd9fd73b]:hover{border-color:var(--accent);color:var(--accent)}.error[data-v-dd9fd73b]{color:#a33;margin:0;font-size:.9rem}section[data-v-a7ef72f7]{margin-bottom:1.25rem;display:grid;gap:.5rem}h2[data-v-a7ef72f7]{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0}h3[data-v-a7ef72f7]{font-size:.8rem;color:var(--muted);margin:.25rem 0 0;font-weight:500}.grid2[data-v-a7ef72f7]{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.list[data-v-a7ef72f7]{display:grid;gap:.5rem}.center[data-v-a7ef72f7]{padding:.5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.editlink[data-v-a7ef72f7]{font-size:.9rem}.links[data-v-a7ef72f7]{display:flex;gap:1rem}button.link[data-v-a7ef72f7]{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;font-size:.85rem;cursor:pointer;justify-self:start}.danger[data-v-a7ef72f7]{color:#a33}.flash[data-v-a7ef72f7]{margin:0;color:#2a6b2a}.muted[data-v-a7ef72f7]{color:var(--muted);font-weight:400}.error[data-v-a7ef72f7]{color:#a33}.nm[data-v-0daacb11]{display:grid;gap:.6rem;padding:.8rem;background:#fff7ee;border:1px solid #e6d5c3;border-radius:.6rem}label[data-v-0daacb11]{display:grid;gap:.2rem}label.inline[data-v-0daacb11]{display:flex;align-items:center;gap:.4rem}input[data-v-0daacb11]:not([type=checkbox]),select[data-v-0daacb11]{padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem;width:100%}.hint[data-v-0daacb11]{margin:0;font-size:.85rem;color:var(--muted)}.actions[data-v-0daacb11]{display:flex;gap:.5rem}button[data-v-0daacb11]{padding:.55rem .9rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff;cursor:pointer}button.secondary[data-v-0daacb11]{background:transparent;color:var(--accent);border:1px solid var(--accent)}.fd[data-v-5f40130f]{display:grid;gap:.5rem}label[data-v-5f40130f]{display:grid;gap:.2rem}label.inline[data-v-5f40130f]{display:flex;align-items:center;gap:.4rem}.ymd[data-v-5f40130f]{display:flex;gap:.5rem;align-items:end}.ymd label[data-v-5f40130f]{flex:1}.to[data-v-5f40130f]{color:var(--muted);padding-bottom:.55rem}input[data-v-5f40130f]:not([type=checkbox]),select[data-v-5f40130f]{padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem;width:100%}.ev[data-v-128e7601]{display:grid;gap:.6rem;padding:.8rem;background:#fff7ee;border:1px solid #e6d5c3;border-radius:.6rem}label[data-v-128e7601]{display:grid;gap:.2rem}label.inline[data-v-128e7601]{display:flex;align-items:center;gap:.4rem}.row[data-v-128e7601]{display:flex;gap:.4rem}.row input[data-v-128e7601]{flex:1;min-width:0}.row button[data-v-128e7601]{white-space:nowrap;padding:.4rem .6rem;font-size:.9rem}input[data-v-128e7601]:not([type=checkbox]),select[data-v-128e7601]{padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem;width:100%}.actions[data-v-128e7601]{display:flex;gap:.5rem}.muted[data-v-128e7601]{color:var(--muted);margin:0;font-size:.85rem}.error[data-v-128e7601]{color:#a33;margin:0}button[data-v-128e7601]{padding:.55rem .9rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff;cursor:pointer}button.secondary[data-v-128e7601]{background:transparent;color:var(--accent);border:1px solid var(--accent)}.cf[data-v-c80b3fe7]{display:grid;gap:.6rem;padding:.8rem;background:#fff7ee;border:1px solid #e6d5c3;border-radius:.6rem}label[data-v-c80b3fe7]{display:grid;gap:.2rem}label.inline[data-v-c80b3fe7]{display:flex;align-items:center;gap:.4rem}input[data-v-c80b3fe7]:not([type=checkbox]),select[data-v-c80b3fe7]{padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem;width:100%}.actions[data-v-c80b3fe7]{display:flex;gap:.5rem}button[data-v-c80b3fe7]{padding:.55rem .9rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff;cursor:pointer}button.secondary[data-v-c80b3fe7]{background:transparent;color:var(--accent);border:1px solid var(--accent)}section[data-v-b1766dbd]{margin-bottom:1.5rem;display:grid;gap:.5rem}h2[data-v-b1766dbd]{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0}h3[data-v-b1766dbd]{font-size:.8rem;color:var(--muted);margin:.5rem 0 0;font-weight:500}.basics[data-v-b1766dbd]{display:grid;gap:.6rem}label[data-v-b1766dbd]{display:grid;gap:.2rem}label.inline[data-v-b1766dbd]{display:inline-flex;align-items:center;gap:.3rem;margin-right:.8rem}fieldset[data-v-b1766dbd]{border:0;padding:0;margin:0}legend[data-v-b1766dbd]{padding:0;margin-bottom:.2rem}input[data-v-b1766dbd]:not([type=radio]),select[data-v-b1766dbd],textarea[data-v-b1766dbd]{padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem;width:100%;font:inherit}button[data-v-b1766dbd]{padding:.55rem .9rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff;cursor:pointer}button.secondary[data-v-b1766dbd]{background:transparent;color:var(--accent);border:1px solid var(--accent)}button.link[data-v-b1766dbd]{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;font-size:.85rem}.danger[data-v-b1766dbd]{color:#a33!important;border-color:#a33!important}.rows[data-v-b1766dbd]{list-style:none;padding:0;margin:0;display:grid;gap:.4rem}.rows li[data-v-b1766dbd]{display:flex;justify-content:space-between;gap:.5rem;flex-wrap:wrap;padding:.5rem .6rem;background:#fff;border:1px solid #eee4da;border-radius:.5rem}.rows li>form[data-v-b1766dbd]{flex:1 1 100%}.btns[data-v-b1766dbd]{display:flex;gap:.6rem;align-items:center}.tag[data-v-b1766dbd]{margin-left:.4rem;font-size:.75rem;padding:.05rem .4rem;border-radius:.3rem;background:#efe3d5;color:var(--accent)}.map[data-v-b1766dbd]{margin-left:.4rem;font-size:.85rem}.muted[data-v-b1766dbd]{color:var(--muted)}.flash[data-v-b1766dbd]{color:#2a6b2a}.error[data-v-b1766dbd]{color:#a33}.tree[data-v-7d0609f1]{position:relative;width:100vw;left:50%;margin-left:-50vw;margin-top:-1rem}.toolbar[data-v-7d0609f1]{display:flex;gap:1rem;align-items:center;padding:.5rem 1rem;flex-wrap:wrap}.note[data-v-7d0609f1]{margin:0 1rem .5rem}.sheet[data-v-7d0609f1]{display:none}@media print{.tree[data-v-7d0609f1]{width:auto;left:auto;margin:0;display:flex;flex-direction:column;height:100vh}.toolbar[data-v-7d0609f1],.note[data-v-7d0609f1]{display:none!important}.sheet[data-v-7d0609f1]{display:block;text-align:center;margin:0 0 6mm}.sheet h1[data-v-7d0609f1]{font-size:16pt;margin:0 0 2mm}.sheet p[data-v-7d0609f1]{margin:0;font-size:9pt;color:#555}.facts[data-v-7d0609f1]{display:flex;gap:6mm;justify-content:center;margin-top:2mm!important}.facts .when[data-v-7d0609f1]{color:#888}.canvas[data-v-7d0609f1]{flex:1 1 auto;min-height:0;width:100%;height:auto;background:#fff;cursor:default}.box[data-v-7d0609f1]{cursor:default}}.density[data-v-7d0609f1]{display:flex;gap:.8rem;align-items:center;font-size:.9rem;color:var(--muted);flex-wrap:wrap}.density label[data-v-7d0609f1]{display:flex;gap:.3rem;align-items:center;cursor:pointer}.density input[data-v-7d0609f1]{margin:0}.canvas[data-v-7d0609f1]{display:block;width:100%;height:calc(100vh - 7.5rem);touch-action:none;background:var(--paper);cursor:grab}.canvas[data-v-7d0609f1]:active{cursor:grabbing}.link[data-v-7d0609f1]{fill:none;stroke:#b9a898;stroke-width:1.5}.marriage[data-v-7d0609f1]{stroke:#b9a898;stroke-width:2}.box[data-v-7d0609f1]{cursor:pointer}.box rect[data-v-7d0609f1]{stroke:#d8cbbd;stroke-width:1}.box.root rect[data-v-7d0609f1]{stroke:var(--accent);stroke-width:2.5}.box.restricted[data-v-7d0609f1]{cursor:default}.box.restricted rect[data-v-7d0609f1]{stroke-dasharray:4 3}.box text[data-v-7d0609f1]{pointer-events:none;fill:var(--ink)}.name[data-v-7d0609f1]{font-size:13px;font-weight:600}.years[data-v-7d0609f1]{font-size:11px;fill:var(--muted)!important}button.link[data-v-7d0609f1]{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;cursor:pointer;font:inherit}.muted[data-v-7d0609f1]{color:var(--muted);font-size:.9rem}.error[data-v-7d0609f1]{color:#a33;margin:0 1rem}.error[data-v-67bd514a]{color:#a33}.photo[data-v-cad4d807]{width:100%;height:auto;border-radius:.6rem;background:#fff;display:block}.caption[data-v-cad4d807]{display:flex;gap:.5rem;margin-top:.6rem}.caption input[data-v-cad4d807]{flex:1;padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem}section[data-v-cad4d807]{margin-top:1.25rem;display:grid;gap:.5rem}h2[data-v-cad4d807]{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0}.tags[data-v-cad4d807]{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.tag[data-v-cad4d807]{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .6rem;background:#fff;border:1px solid #eee4da;border-radius:1rem}.tag .x[data-v-cad4d807]{background:none;border:0;color:var(--muted);cursor:pointer;font-size:1rem;line-height:1;padding:0 .1rem}.tagger[data-v-cad4d807]{display:grid;gap:.4rem}.tagger input[data-v-cad4d807]{padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem;width:100%}.candidates[data-v-cad4d807]{list-style:none;padding:0;margin:0}button[data-v-cad4d807]{padding:.55rem .9rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff;cursor:pointer}button.secondary[data-v-cad4d807]{background:transparent;color:var(--accent);border:1px solid var(--accent)}button.link[data-v-cad4d807]{background:none;border:0;padding:.3rem 0;color:var(--accent);text-decoration:underline;text-align:left}.danger[data-v-cad4d807]{color:#a33!important;border-color:#a33!important}.muted[data-v-cad4d807]{color:var(--muted)}.small[data-v-cad4d807]{font-size:.85rem;margin:.3rem 0 0}.error[data-v-cad4d807]{color:#a33}.already[data-v-38388246]{background:#f6efe7;border:1px solid var(--line, #e6dcd2);border-radius:.5rem;padding:.6rem .8rem}form[data-v-38388246]{display:grid;gap:1rem;max-width:24rem}label[data-v-38388246]{display:grid;gap:.25rem}input[data-v-38388246]{padding:.6rem .7rem;border:1px solid #cdbfb3;border-radius:.4rem}button[data-v-38388246]{padding:.7rem 1rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff}.muted[data-v-38388246]{color:var(--muted)}.error[data-v-38388246]{color:#a33;margin:0}h1[data-v-dbced9a2]{font-size:1.2rem;margin:0 0 .3rem}h2[data-v-dbced9a2]{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0}.who[data-v-dbced9a2]{margin:0 0 1rem;display:flex;gap:.5rem;flex-wrap:wrap;align-items:baseline}.box[data-v-dbced9a2]{display:grid;gap:.7rem;background:#fff;border:1px solid var(--line, #e6dcd2);border-radius:.6rem;padding:1rem}label[data-v-dbced9a2]{display:grid;gap:.25rem;font-size:.95rem}input[data-v-dbced9a2]{padding:.5rem .6rem;border:1px solid #cdbfb3;border-radius:.4rem;width:100%}button[data-v-dbced9a2]{padding:.55rem .9rem;border:0;border-radius:.4rem;background:var(--accent);color:#fff;cursor:pointer}button[data-v-dbced9a2]:disabled{opacity:.6;cursor:default}.muted[data-v-dbced9a2]{color:var(--muted)}.small[data-v-dbced9a2]{font-size:.85rem;margin:0}.error[data-v-dbced9a2]{color:#a33;margin:0}.ok[data-v-dbced9a2]{color:#2a6b2a;margin:0}
