.f3{--female-color:#c48a92;--male-color:#789fac;--genderless-color:lightgray;--background-color:#212121;--text-color:#fff;font-family:Roboto,sans-serif}.f3 *{box-sizing:border-box}.f3 .cursor-pointer{cursor:pointer}.f3 svg.main_svg{width:100%;height:100%}.f3 svg.main_svg text{fill:currentColor}.f3 rect.card-female,.f3 .card-female .card-body-rect,.f3 .card-female .text-overflow-mask{fill:var(--female-color)}.f3 rect.card-male,.f3 .card-male .card-body-rect,.f3 .card-male .text-overflow-mask{fill:var(--male-color)}.f3 .card-genderless .card-body-rect,.f3 .card-genderless .text-overflow-mask{fill:var(--genderless-color)}.f3 .card_add .card-body-rect{fill:#3b5560;stroke-width:4px;stroke:#fff;cursor:pointer}.f3 g.card_add text{fill:#fff}.f3 .card-main-outline{stroke:currentColor;stroke-width:3px}.f3 .card_family_tree rect{transition:all .3s}.f3 .card_family_tree:hover rect{transform:scale(1.1)}.f3 .card_add_relative{cursor:pointer;color:#fff;transition:all .3s}.f3 .card_add_relative circle{fill:#0000}.f3 .card_add_relative:hover{color:#000}.f3 .card_edit.pencil_icon{color:#fff;transition:all .3s}.f3 .card_edit.pencil_icon:hover{color:#000}.f3 .card_break_link,.f3 .link_upper,.f3 .link_lower,.f3 .link_particles{transform-origin:50%;transition:all 1s}.f3 .card_break_link{color:#fff}.f3 .card_break_link.closed .link_upper{transform:translate(-140.5px,655.6px)}.f3 .card_break_link.closed .link_upper g{transform:rotate(-58deg)}.f3 .card_break_link.closed .link_particles{transform:scale(0)}.f3 .input-field input{height:2.5rem!important}.f3 .input-field>label:not(.label-icon).active{transform:translateY(-8px)scale(.8)}.f3.f3-cont{background-color:var(--background-color);width:100%;height:900px;max-height:70vh;color:var(--text-color)}.f3{display:flex;position:relative}.f3-form input[type=text],.f3-form textarea,.f3-form select{box-sizing:border-box;background:var(--background-color);color:currentColor;border:1px solid #ddd;border-radius:4px;width:100%;margin:8px 0;padding:8px 12px;font-size:14px}.f3-form input[type=text]:focus,.f3-form textarea:focus,.f3-form select:focus{box-shadow:0 0 5px #4caf5033}.f3-form button{cursor:pointer;border:none;border-radius:4px;margin:10px 0;padding:10px 20px;font-size:14px;transition:background-color .3s ease-in-out,border-color .3s ease-in-out,color .3s ease-in-out}.f3-form button[type=submit]{color:#fff;background-color:#4caf50}.f3-cancel-btn{background-color:#ccc}.f3-form .f3-delete-btn{color:#f44336;background-color:#0000;border:1px solid #f44336;width:100%;padding:5px 10px}.f3-delete-btn:hover{color:#fff;background-color:#da190b;border-color:#da190b}.f3-delete-btn:disabled{opacity:.5;color:#f44336;cursor:not-allowed;background-color:#0000}.f3-form .f3-remove-relative-btn{color:currentColor;background-color:#0000;border:1px solid;width:100%;padding:5px 10px}.f3-remove-relative-btn:hover,.f3-remove-relative-btn.active{background-color:var(--text-color);border-color:var(--text-color);color:var(--background-color)}.f3-radio-group{margin:15px 0}.f3-radio-group label{cursor:pointer;margin-right:15px}.f3-radio-group input[type=radio]{margin-right:5px}.f3-info-field-label,.f3-form-field label{opacity:.8;font-size:12px;font-weight:700;display:block}.f3-info-field-value{border:none;border-bottom:1px solid #fff3;outline:none;min-height:18px;margin-bottom:10px;padding-bottom:1px;font-weight:400;display:block}.f3-form-buttons{text-align:right}.f3-form-title{text-align:center}.f3-form.non-editable .f3-form-buttons,.f3-form.non-editable .f3-delete-btn,.f3-form.non-editable .f3-remove-relative-btn,.f3-form.non-editable .f3-link-existing-relative{display:none}.f3-close-btn{cursor:pointer;color:var(--text-color);font-size:30px;position:absolute;top:8px;left:10px}.f3-edit-btn{cursor:pointer;width:24px;height:24px;display:inline-block;position:relative;top:-1px}.f3-add-relative-btn{cursor:pointer;width:27px;height:27px;margin-right:5px;display:inline-block}.f3 div.card{cursor:pointer;color:var(--text-color);line-height:1.2;position:relative}.f3 div.card-image-circle{border-radius:50%;width:90px;height:90px;padding:5px}.f3 div.card-image-circle div.card-label{text-align:center;text-overflow:ellipsis;white-space:nowrap;background-color:#00000080;border-radius:3px;max-width:150%;min-height:22px;padding:0 5px;position:absolute;bottom:-10px;left:50%;overflow:hidden;transform:translate(-50%,50%)}.f3 div.card-image-circle svg{object-fit:cover;border-radius:50%;width:100%;height:100%;padding:5px}.f3 div.card-image-circle img{object-fit:cover;border-radius:50%;width:100%;height:100%}.f3 div.card-rect{text-align:center;border-radius:3px;flex-direction:column;justify-content:center;width:120px;min-height:70px;padding:5px;display:flex;overflow:hidden}.f3 div.card-image-rect{border-radius:5px;align-items:center;width:200px;min-height:70px;display:flex}.f3 div.card-image-rect .person-icon{object-fit:cover;flex:none;width:70px;height:70px;margin-right:10px;padding:5px}.f3 div.card-image-rect img{object-fit:cover;border-radius:8px;flex:none;width:70px;height:70px;margin-right:10px;padding:5px}.f3 div.card-image-rect svg{object-fit:cover;border-radius:7px;width:100%;height:100%;padding:5px}.f3 div.card-image-rect div.card-label{flex-direction:column;justify-content:center;height:100%;display:flex;overflow:hidden}.f3 div.mini-tree{text-align:right;z-index:-1;position:absolute;top:-15px;right:-2px}.f3 div.mini-tree svg{width:55px}.f3 .f3-card-duplicate-tag{color:#fffbdc;background-color:#fffbdc00;border-radius:50%;padding:2px;transition:color .2s ease-in-out,background-color .2s ease-in-out;position:absolute;top:2px;right:2px}.f3 .f3-card-duplicate-hover div.card-inner{outline:4px solid #fffbdc;transform:translateY(-2px)}.f3 .f3-card-duplicate-hover .f3-card-duplicate-tag{color:#000;background-color:#fffbdccc}.f3 .f3-remove-relative-active .card{background-color:var(--background-color)}.f3 .f3-remove-relative-active .card-inner{opacity:.75;transition:border .2s ease-in-out,opacity .2s ease-in-out,transform .2s ease-in-out}.f3 .f3-remove-relative-active .card:hover .card-inner{opacity:.25}.f3 .f3-remove-relative-active .card-male.card-depth--1:hover .card-inner{transform:translate(-8px,-8px)}.f3 .f3-remove-relative-active .card.card-female.card-depth--1:hover .card-inner{transform:translate(8px,-8px)}.f3 .f3-remove-relative-active .card.card-female.card-depth-0:hover .card-inner{transform:translate(8px)}.f3 .f3-remove-relative-active .card.card-male.card-depth-0:hover .card-inner{transform:translate(-8px)}.f3 .f3-remove-relative-active .card.card-depth-1:hover .card-inner{transform:translateY(8px)}.f3 .f3-remove-relative-active .card.card-main .card-inner{opacity:1!important;transform:translate(0)!important}.f3 div.card>div{transition:transform .2s ease-in-out;box-shadow:0 0 #000c}.f3 .card-inner{outline:0 solid #fff;transition:outline .5s ease-in-out}.f3 div.card-female .card-inner,.f3 div.card-female .person-icon svg{background-color:var(--female-color)}.f3 div.card-male .card-inner,.f3 div.card-male .person-icon svg{background-color:var(--male-color)}.f3 div.card-genderless .card-inner,.f3 div.card-genderless .person-icon svg{background-color:var(--genderless-color)}.f3 div.card-new-rel .card-inner,.f3 div.card-new-rel .person-icon svg{background-color:var(--background-color)}.f3 div.card-to-add .card-inner{background-color:var(--background-color);border:1px solid}.f3 div.card-to-add .card-inner .card-label{margin:0 auto}.f3 div.card-to-add .person-icon{display:none}.f3 div.card-new-rel.card-female .card-inner,.f3 div.card-to-add.card-female .card-inner{border-color:var(--female-color);color:var(--female-color)}.f3 div.card-new-rel.card-male .card-inner,.f3 div.card-to-add.card-male .card-inner{color:var(--male-color);border-color:var(--male-color)}.f3 div.card-unknown .card-inner{background-color:var(--background-color);border:1px solid}.f3 div.card-unknown .card-inner .card-label{margin:0 auto}.f3 div.card-unknown .person-icon{display:none}.f3 div.card-new-rel .card-inner{border-style:dashed;border-width:1px;outline:0!important}.f3 div.card-new-rel.card-female .card-inner,.f3 div.card-unknown.card-female .card-inner{border-color:var(--female-color);color:var(--female-color)}.f3 div.card-new-rel.card-male .card-inner,.f3 div.card-unknown.card-male .card-inner{color:var(--male-color);border-color:var(--male-color)}.f3 div.card:hover>div{transform:translateY(-2px)}.f3 div.card-main .card-inner,.f3 div.card:hover .card-inner{box-shadow:0 0 20px #000c}.f3 div.card-main .card-inner{outline:4px solid #dcdcdc}.f3 div.card-inner.f3-path-to-main{outline:4px solid #fff}.f3 .link{transition:stroke-width .2s ease-in-out}.f3 .link.f3-path-to-main{stroke-width:4px}.f3-form-cont{z-index:6;background-color:var(--background-color);flex:none;width:0;height:100%;position:relative;top:0;right:0;overflow:auto;box-shadow:0 0 10px #00000080}.f3-form-cont.opened{width:350px}.f3-form{padding:20px}.f3-form hr{opacity:.15;border-style:solid;border-width:thin 0 0}.f3-nav-cont{width:100%;display:flex;position:absolute;top:0;left:0}.f3-history-controls{z-index:2;padding:8px 5px 7px 9px;display:inline-block;position:relative}.f3-back-button,.f3-forward-button{cursor:pointer;color:currentColor;background-color:#0000;border:none;width:30px;height:30px;margin-right:10px;transition:opacity .3s;display:inline-block}.f3-history-controls svg{height:100%}.f3-back-button.disabled,.f3-forward-button.disabled{opacity:.5}.f3-modal{z-index:10;background-color:#0006;width:100%;height:100%;display:none;position:absolute;top:0;left:0;overflow:auto}.f3-modal-content{background-color:var(--background-color);border:1px solid #888;border-radius:5px;width:500px;max-width:90%;margin:15% auto;padding:20px;position:relative}.f3-modal-close{color:#aaa;font-size:28px;font-weight:700;position:absolute;top:7px;right:10px}.f3-modal-close:hover,.f3-modal-close:focus{color:#000;cursor:pointer;text-decoration:none}.f3-popup{position:fixed;box-shadow:0 0 10px #000c}.f3-popup-content{background-color:var(--background-color);border:1px solid #888;border-radius:5px;width:100%;height:100%;position:relative;overflow:hidden}.f3-popup-nav{height:20px}.f3-popup-content-inner{width:100%;height:100%}.f3-popup-close{color:#aaa;z-index:4;font-size:28px;font-weight:700;line-height:1;position:absolute;top:1px;right:6px}.f3-popup-close:hover,.f3-popup-close:focus{color:#000;cursor:pointer;text-decoration:none}.f3-btn{cursor:pointer;background-color:var(--text-color);color:var(--background-color);border-width:0;border-radius:3px;outline:none;padding:5px 10px;font-size:14px;transition:background-color .3s;position:relative;overflow:hidden;box-shadow:0 1px 4px #0009}.f3-btn:hover,.f3-btn:focus{background-color:var(--background-color);color:var(--text-color)}.f3-female-bg{background-color:var(--female-color)}.f3-male-bg{background-color:var(--male-color)}.f3-genderless-bg{background-color:var(--genderless-color)}.f3-female-color{color:var(--female-color)}.f3-male-color{color:var(--male-color)}.f3-genderless-color{color:var(--genderless-color)}.f3-autocomplete-cont{z-index:2;width:200px;font-size:14px;display:inline-block;position:relative}.f3-autocomplete input{background-color:var(--background-color);color:var(--text-color);border:1px solid #fff3;width:100%;padding:10px}.f3-autocomplete input:focus{outline:none}.f3-autocomplete-toggle{cursor:pointer;color:var(--text-color);width:20px;transition:color .3s ease-in-out;position:absolute;top:10px;right:10px}.f3-autocomplete-items{background-color:var(--background-color);border:1px solid #fff3;border-top:none;max-height:0;transition:max-height .3s ease-in-out;overflow-y:auto}.f3-autocomplete.active .f3-autocomplete-items{max-height:300px}.f3-autocomplete-item>div{cursor:pointer;background-color:var(--background-color);border-bottom:1px solid #fff3;padding:10px;transition:background-color .3s ease-in-out,color .3s ease-in-out}.f3-autocomplete-item>div:hover,.f3-autocomplete-item.f3-selected>div{background-color:var(--text-color);color:var(--background-color)}.f3-autocomplete-active{color:#fff;background-color:#1e90ff!important}.f3-kinship-info{padding:10px 20px}.f3-kinship-info .f3-info-field{color:#b3b01e}.f3-kinship-info-icon{cursor:pointer;color:#04a4f4;width:18px;height:18px;display:inline-block;position:relative;top:4px;left:2px}.f3-kinship-info .f3{color:#fff;background-color:#212121;width:100%;height:100%;position:relative}.f3 .f3-kinship-info .card-kinship-self{color:#437fae;border:3px solid;border-radius:50%;width:60px;height:60px;min-height:0;font-weight:700;background-color:var(--background-color)!important}.f3 .f3-kinship-info .card-kinship-self.f3-real-label{border-radius:50px;width:150px;height:50px}.f3 .f3-kinship-info .card-kinship-rel{border-radius:50px;width:150px;height:50px;min-height:0;font-weight:700;background-color:#1d3456!important}.f3 .f3-kinship-info .card-kinship-default{border:1px solid;border-radius:50px;width:150px;height:50px;min-height:0;background-color:var(--background-color)!important}.f3-kinship-labels-toggle{z-index:10;font-size:12px;position:absolute;top:0;left:0}.f3-kinship-labels-toggle label{cursor:pointer;color:#fff;text-align:center;padding:2px 5px;font-weight:700}.f3-kinship-labels-toggle input[type=checkbox]{cursor:pointer;margin:5px}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f5f3ee;--paper-2:#edeae3;--surface:#fff;--sunken:#faf9f6;--overlay:#201c168c;--scrim:#201c1657;--ink-900:#16202b;--ink-700:#3c4650;--ink-500:#5d6875;--ink-300:#aab2bc;--line:#e5e2da;--line-soft:#efece5;--line-strong:#cdc9be;--rule:#c8c4b8;--seal:#b0472c;--seal-strong:#93371f;--seal-soft:#faefea;--seal-ring:#b0472c47;--seal-focus:#b0472c29;--male:#4e7ca8;--male-tint:#e9f0f6;--male-ring:#4e7ca86b;--male-ink:#3d6488;--female:#a8607a;--female-tint:#f7edf1;--female-ring:#a8607a6b;--female-ink:#8a4760;--un:#7e8894;--un-tint:#eff1f4;--un-ring:#7e889461;--un-ink:#5a6470;--danger:#b0342b;--danger-tint:#fbeeec;--danger-line:#e8c1bb;--ok:#2f6b4f;--ok-tint:#edf4f0;--ok-line:#c2dbcd;--warn:#8a6114;--warn-tint:#faf3e3;--warn-line:#e9dcb6;--info:#2f5d8c;--info-tint:#eef3f9;--info-line:#c6d6e7;--sev-high:#b0342b;--sev-high-ink:#b0342b;--sev-high-tint:#fbeeec;--sev-high-line:#e8c1bb;--sev-mid:#a67213;--sev-mid-ink:#8a6114;--sev-mid-tint:#faf3e3;--sev-mid-line:#e9dcb6;--sev-low:#5b6875;--sev-low-ink:#4d5865;--sev-low-tint:#eff1f4;--sev-low-line:#d7dce2;--chart-track:var(--paper-2);--chart-fill:var(--seal);--chart-h:132px;--chart-gut:58px;--subnav-h:44px;--r-xs:4px;--r-sm:7px;--r-md:10px;--r-lg:14px;--r-xl:18px;--r-pill:999px;--sh-card:0 1px 2px #26221a0f;--sh-raise:0 6px 18px -8px #26221a4d, 0 1px 2px #26221a0f;--sh-pop:0 18px 44px -20px #26221a61, 0 2px 6px #26221a12;--sh-rail:-16px 0 38px -30px #26221a8c;--sh-sheet:0 -16px 40px -26px #26221a73;--ring-focus:0 0 0 3px var(--seal-focus);--s1:4px;--s2:6px;--s3:8px;--s4:10px;--s5:12px;--s6:16px;--s7:20px;--s8:24px;--s9:32px;--s10:40px;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans SC", "Noto Sans CJK SC", sans-serif;--font-serif:"Songti SC", "Source Han Serif SC", "Noto Serif SC", "STSong", SimSun, Georgia, serif;--nav-h:56px;--ctl:34px;--ctl-sm:28px;--ctl-lg:38px;--panel-w:392px;--card-w:210px;--card-h:78px;--card-av:54px;--hud-gap:16px;--ease:cubic-bezier(.22, .61, .36, 1);--t-fast:.14s;--t:.18s;--t-slow:.24s}@media (width>=1600px){:root{--panel-w:420px}}@media (width<=1279px){:root{--panel-w:360px}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-sans);color:var(--ink-900);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:14px;line-height:1.55}a{color:var(--seal);text-underline-offset:2px;text-decoration:none}a:hover{color:var(--seal-strong);text-decoration:underline}h1{font-family:var(--font-serif);letter-spacing:.04em;margin:0;font-size:24px;font-weight:600;line-height:1.25}h2{font-family:var(--font-serif);letter-spacing:.04em;margin:0;font-size:19px;font-weight:600;line-height:1.3}h3{font-family:var(--font-serif);letter-spacing:.04em;margin:0;font-size:17px;font-weight:600;line-height:1.3}p{margin:0 0 10px}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.spacer{flex:1}.muted{color:var(--ink-500)}.micro{color:var(--ink-500);font-size:12px}.num{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{letter-spacing:.16em;color:var(--ink-500);font-size:11px;font-weight:600}.sec-head{align-items:center;gap:10px;margin:0 0 10px;display:flex}.sec-head:after{content:"";background:var(--line-soft);flex:auto;height:1px}.sec-head--plain:after{display:none}.sec-head .count{color:var(--ink-500);font-variant-numeric:tabular-nums;font-size:11.5px}.btn{font:inherit;height:var(--ctl);white-space:nowrap;background:var(--surface);color:var(--ink-700);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--sh-card);cursor:pointer;transition:background var(--t-fast), border-color var(--t-fast), color var(--t-fast), box-shadow var(--t-fast);justify-content:center;align-items:center;gap:6px;padding:0 13px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{background:var(--sunken);border-color:var(--line-strong);color:var(--ink-900);text-decoration:none}.btn:active{background:var(--paper-2)}.btn:focus-visible{border-color:var(--seal);box-shadow:var(--ring-focus);outline:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;box-shadow:none}.btn--primary{background:var(--seal);border-color:var(--seal);color:#fff;box-shadow:0 1px 2px #93371f42}.btn--primary:hover{background:var(--seal-strong);border-color:var(--seal-strong);color:#fff}.btn--ghost{box-shadow:none;color:var(--ink-500);background:0 0;border-color:#0000}.btn--ghost:hover{background:var(--paper-2);color:var(--ink-900);border-color:#0000}.btn--danger{color:var(--danger);border-color:var(--danger-line);box-shadow:none;background:0 0}.btn--danger:hover{background:var(--danger-tint);border-color:var(--danger);color:var(--danger)}.btn--sm{height:var(--ctl-sm);padding:0 10px;font-size:12.5px}.btn--lg{height:var(--ctl-lg);padding:0 16px;font-size:14px}.btn--icon{width:var(--ctl);padding:0}.btn--icon.btn--sm{width:var(--ctl-sm)}.btn svg{flex:none;display:block}.btn-group{display:inline-flex}.btn-group>.btn{box-shadow:none;border-radius:0;margin-left:-1px}.btn-group>.btn:first-child{border-radius:var(--r-sm) 0 0 var(--r-sm);margin-left:0}.btn-group>.btn:last-child{border-radius:0 var(--r-sm) var(--r-sm) 0}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field>label,.field>.flabel{letter-spacing:.08em;color:var(--ink-500);font-size:11px;font-weight:600}.input,select.input,textarea.input{font:inherit;height:var(--ctl);width:100%;color:var(--ink-900);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);transition:border-color var(--t-fast), box-shadow var(--t-fast);padding:0 10px;font-size:13px}textarea.input{resize:vertical;height:auto;min-height:80px;padding:9px 10px;line-height:1.6}.input::placeholder{color:var(--ink-300)}.input:hover{border-color:var(--line-strong)}.input:focus{border-color:var(--seal);box-shadow:var(--ring-focus);outline:none}.input:disabled{background:var(--sunken);color:var(--ink-300)}.has-error .input{border-color:var(--danger)}.has-error .input:focus{box-shadow:0 0 0 3px #b0342b24}.field-error{color:var(--danger);margin-top:4px;font-size:12px}.field-hint{color:var(--ink-500);margin-top:4px;font-size:12px}select.input{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path d='M2.6 4.4 6 7.8l3.4-3.4' fill='none' stroke='%235D6875' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}.search{position:relative}.search .input{border-radius:var(--r-pill);padding-left:31px}.search>svg{color:var(--ink-500);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.check{color:var(--ink-700);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.check input{appearance:none;border:1px solid var(--line-strong);border-radius:var(--r-xs);background:var(--surface);cursor:pointer;width:16px;height:16px;transition:background var(--t-fast), border-color var(--t-fast);flex:none;margin:0}.check input:checked{background-color:var(--seal);border-color:var(--seal);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M3.5 8.5l3 3 6-6' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:50%;background-repeat:no-repeat;background-size:12px 12px}.check input:focus-visible{border-color:var(--seal);box-shadow:var(--ring-focus);outline:none}.check input:disabled{background-color:var(--sunken);border-color:var(--line);opacity:.6;cursor:not-allowed}.check input:checked:disabled{background-color:var(--ink-300);border-color:var(--ink-300)}.seg{height:var(--ctl);background:var(--paper-2);border-radius:var(--r-sm);gap:2px;padding:3px;display:inline-flex}.seg.seg--full{width:100%;display:flex}.seg.seg--full button{flex:1 1 0}.seg button{white-space:nowrap;border-radius:var(--r-xs);height:100%;font:inherit;color:var(--ink-500);cursor:pointer;transition:background var(--t-fast), color var(--t-fast), box-shadow var(--t-fast);background:0 0;border:0;flex:none;justify-content:center;align-items:center;gap:5px;padding:0 12px;font-size:12.5px;display:inline-flex}.seg button:hover{color:var(--ink-900)}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink-900);box-shadow:var(--sh-card);font-weight:600}.seg button:focus-visible{box-shadow:var(--ring-focus);outline:none}.gdot{background:var(--un);vertical-align:1px;border-radius:50%;width:7px;height:7px;display:inline-block}.gdot.m{background:var(--male)}.gdot.f{background:var(--female)}.tag{border-radius:var(--r-xs);background:var(--paper-2);height:20px;color:var(--ink-500);border:1px solid #0000;align-items:center;gap:5px;padding:0 8px;font-size:11.5px;font-weight:500;display:inline-flex}.tag.m{background:var(--male-tint);color:var(--male-ink)}.tag.f{background:var(--female-tint);color:var(--female-ink)}.tag--warn{border-color:var(--warn-line);color:var(--warn);background:0 0}.tag--quiet{border-color:var(--line);color:var(--ink-500);background:0 0}.tag--gone{font-family:var(--font-serif);background:var(--paper-2);color:var(--ink-500)}.alert{border-radius:var(--r-sm);border:1px solid;gap:9px;padding:10px 13px;font-size:13px;display:flex}.alert--err{background:var(--danger-tint);border-color:var(--danger-line);color:#8b2820}.alert--ok{background:var(--ok-tint);border-color:var(--ok-line);color:#245740}.alert--info{background:var(--info-tint);border-color:var(--info-line);color:#27507a}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-card)}.page{max-width:1140px;margin:0 auto;padding:28px 20px 72px}.page--narrow{max-width:760px}.page-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:20px;padding-bottom:16px;display:flex}.page-head .titles{min-width:0}.page-head .titles .eyebrow{margin-bottom:6px;display:block}.page-head .stat{color:var(--ink-500);font-variant-numeric:tabular-nums;padding-bottom:2px;font-size:12.5px}.app{flex-direction:column;min-height:100%;display:flex}.app-main{flex:auto;min-height:0}.topnav{z-index:30;height:var(--nav-h);-webkit-backdrop-filter:blur(10px)saturate(1.3);backdrop-filter:blur(10px)saturate(1.3);border-bottom:1px solid var(--line);background:#f5f3eee0;align-items:center;gap:4px;padding:0 20px;display:flex;position:sticky;top:0}.brand{color:var(--ink-900);align-items:center;gap:9px;margin-right:20px;display:flex}.brand:hover{text-decoration:none}.brand-seal{border-radius:var(--r-xs);background:var(--seal);color:#fff;width:24px;height:24px;font-family:var(--font-serif);place-items:center;font-size:14px;display:grid;box-shadow:0 1px 2px #93371f57}.brand-name{font-family:var(--font-serif);letter-spacing:.14em;font-size:19px;font-weight:600}.topnav-nav{gap:2px;display:flex}.navlink{height:var(--nav-h);color:var(--ink-500);align-items:center;padding:0 12px;font-size:13.5px;display:inline-flex;position:relative}.navlink:hover{color:var(--ink-900);text-decoration:none}.navlink.active{color:var(--ink-900);font-weight:600}.navlink.active:after{content:"";background:var(--seal);height:2px;position:absolute;bottom:-1px;left:12px;right:12px}.topnav-actions{align-items:center;gap:8px;display:flex}.tree-page{height:calc(100vh - var(--nav-h));flex-direction:column;min-height:0;display:flex}.tree-body{min-height:0;transition:grid-template-columns var(--t-slow) var(--ease);flex:auto;grid-template-columns:minmax(0,1fr) 0;display:grid}.tree-body.is-open{grid-template-columns:minmax(0, 1fr) var(--panel-w)}.tree-canvas{background-color:var(--paper);background-image:radial-gradient(circle at 1px 1px,#685e4829 1px,#0000 0);background-size:22px 22px;min-width:0;position:relative;overflow:hidden}.hud{z-index:6;pointer-events:none;position:absolute;inset:0}.hud>*{pointer-events:auto}.hud-glass{-webkit-backdrop-filter:blur(12px)saturate(1.3);backdrop-filter:blur(12px)saturate(1.3);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-card);background:#ffffffdb}.hud-title{left:var(--hud-gap);top:var(--hud-gap);max-width:340px;padding:10px 14px;position:absolute}.hud-title h2{font-size:19px;display:inline}.hud-title .stat{color:var(--ink-500);font-variant-numeric:tabular-nums;margin-left:8px;font-size:12px}.hud-title .sub{color:var(--ink-500);margin-top:3px;font-size:12px}.hud-zoom{right:var(--hud-gap);bottom:var(--hud-gap);flex-direction:column;padding:0;display:flex;position:absolute;overflow:hidden}.hud-zoom button{width:34px;height:34px;color:var(--ink-500);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.hud-zoom button+button{border-top:1px solid var(--line-soft)}.hud-zoom button:hover{background:var(--sunken);color:var(--ink-900)}.hud-zoom button:focus-visible{color:var(--seal);box-shadow:inset var(--ring-focus);outline:none}.hud-legend{left:var(--hud-gap);bottom:var(--hud-gap);border-radius:var(--r-pill);color:var(--ink-500);gap:14px;padding:7px 12px;font-size:12px;display:flex;position:absolute}.hud-legend i{vertical-align:-1px;border-radius:2px;width:4px;height:11px;margin-right:6px;display:inline-block}.tree-status{z-index:8;place-items:center;display:grid;position:absolute;inset:0}.tree-status.is-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#f5f3eeb8}.tree-status .box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-card);text-align:center;max-width:360px;padding:30px 34px}.tree-status .box h2{margin-bottom:6px}.tree-status .box p{color:var(--ink-500);margin:0 0 16px;font-size:13px}.tree-status .box .row{justify-content:center;gap:8px;display:flex}.toast{top:var(--hud-gap);z-index:20;border-radius:var(--r-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);max-width:min(560px,100% - 32px);box-shadow:var(--sh-pop);animation:toastIn .18s var(--ease);background:#ffffffe6;align-items:center;gap:9px;padding:10px 14px;font-size:13px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.toast i{background:var(--ink-300);border-radius:2px;flex:none;width:4px;height:16px}.toast.is-ok i{background:var(--ok)}.toast.is-err i{background:var(--danger)}.toast.is-err{color:#8b2820}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}.family-tree-cont.f3{width:100%;height:100%;color:var(--ink-900);font-family:var(--font-sans);--background-color:transparent;--text-color:var(--ink-900);--male-color:transparent;--female-color:transparent;--genderless-color:transparent;background:0 0;position:absolute;inset:0}.family-tree-cont.f3 svg.main_svg{background:0 0;height:100%;max-height:none}.family-tree-cont.f3 .links_view path,.family-tree-cont.f3 path.link{stroke:var(--rule);stroke-width:1.6px;stroke-linecap:round}.family-tree-cont.f3 .link.f3-path-to-main{stroke:var(--seal);stroke-width:2.2px;opacity:.6}.family-tree-cont.f3 .link-text text{font-family:var(--font-sans);letter-spacing:.02em;paint-order:stroke;stroke:var(--paper);stroke-width:4px;stroke-linejoin:round;fill:var(--ink-500)!important}.family-tree-cont.f3 div.card>div{box-shadow:none;transition:transform var(--t) var(--ease)}.family-tree-cont.f3 div.card-male .card-inner,.family-tree-cont.f3 div.card-female .card-inner,.family-tree-cont.f3 div.card-genderless .card-inner{background-color:#0000}.family-tree-cont.f3 .card-inner{transition:none}.family-tree-cont.f3 div.card{color:var(--ink-900)}.family-tree-cont.f3 div.card:focus-visible{outline:none}.family-tree-cont.f3 div.card:focus-visible>.card-inner.ftc{border-color:var(--seal);box-shadow:var(--ring-focus), var(--sh-raise)}.family-tree-cont.f3 div.card>.card-inner.ftc{width:var(--card-w);height:var(--card-h);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-card);transition:border-color var(--t) var(--ease), box-shadow var(--t) var(--ease);align-items:center;gap:11px;padding:0 14px 0 15px;display:flex;position:relative;overflow:hidden;outline:0!important}.ftc__rail{background:var(--un);width:4px;position:absolute;top:0;bottom:0;left:0}.ftc--m .ftc__rail{background:var(--male)}.ftc--f .ftc__rail{background:var(--female)}.ftc__av{width:var(--card-av);height:var(--card-av);border-radius:var(--r-md);background:var(--un-tint);box-shadow:inset 0 0 0 1px var(--un-ring);flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.ftc--m .ftc__av{background:var(--male-tint);box-shadow:inset 0 0 0 1px var(--male-ring)}.ftc--f .ftc__av{background:var(--female-tint);box-shadow:inset 0 0 0 1px var(--female-ring)}.ftc__av img{object-fit:cover;object-position:center 32%;width:100%;height:100%;display:block;position:absolute;inset:0}.ftc__ini{font-family:var(--font-serif);color:var(--un-ink);-webkit-user-select:none;user-select:none;font-size:27px;font-weight:600;line-height:1}.ftc--m .ftc__ini{color:var(--male-ink)}.ftc--f .ftc__ini{color:var(--female-ink)}.ftc__txt{flex:auto;min-width:0}.ftc__name{letter-spacing:.02em;color:var(--ink-900);white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:600;line-height:1.2;overflow:hidden}.ftc__sub{align-items:center;gap:5px;margin-top:5px;display:flex}.ftc__yr{letter-spacing:.03em;color:var(--ink-500);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.ftc__gone{font-family:var(--font-serif);border-radius:var(--r-xs);background:var(--paper-2);color:var(--ink-500);flex:none;padding:0 5px;font-size:12px;line-height:1.4}.family-tree-cont.f3 div.card:hover>.card-inner.ftc{border-color:var(--line-strong);box-shadow:var(--sh-raise)}.family-tree-cont.f3 div.card>.card-inner.ftc.is-selected{border-color:var(--seal);box-shadow:0 0 0 3px var(--seal-ring), var(--sh-raise)}.family-tree-cont.f3 div.card-main>.card-inner.ftc{border-color:var(--seal-ring);box-shadow:0 0 0 3px var(--seal-ring), var(--sh-card)}.family-tree-cont.f3 div.card>.card-inner.ftc.f3-path-to-main{border-color:var(--seal-ring)}.ftc.is-deceased .ftc__av img{filter:grayscale(.45)contrast(.97)}.ftc.is-deceased .ftc__name{color:var(--ink-700)}.ftc__seal{display:none}.family-tree-cont.f3 div.card-main .ftc__seal{background:var(--seal);color:#fff;width:22px;height:22px;font-family:var(--font-serif);border-radius:0 var(--r-lg) 0 9px;place-items:center;font-size:12px;display:grid;position:absolute;top:0;right:0}.family-tree-cont.f3 div.card>.card-inner.ftc--ghost{border:1px dashed var(--line-strong);width:168px;height:60px;box-shadow:none;background:0 0;justify-content:center}.ftc--ghost .ftc__name{color:var(--ink-500);font-size:14px;font-weight:500}.ftc__add{border-radius:var(--r-pill);background:var(--paper-2);width:26px;height:26px;color:var(--ink-500);cursor:pointer;opacity:0;transition:opacity var(--t-fast), transform var(--t-fast) var(--ease), background var(--t-fast), color var(--t-fast);border:0;place-items:center;padding:0;display:grid;position:absolute;bottom:8px;right:8px;transform:scale(.85)}.family-tree-cont.f3 div.card:hover .ftc__add,.ftc.is-selected .ftc__add{opacity:1;transform:none}.ftc__add:hover{background:var(--seal);color:#fff}@keyframes ftcEnter{0%{box-shadow:0 0 0 7px var(--seal-ring), var(--sh-raise)}to{box-shadow:0 0 0 0 #b0472c00, var(--sh-card)}}.family-tree-cont.f3 div.card>.card-inner.ftc.is-new{animation:ftcEnter .9s var(--ease)}.family-tree-cont.f3 .f3-nav-cont{padding:var(--hud-gap);pointer-events:none;z-index:7;justify-content:flex-end}.family-tree-cont.f3 .f3-autocomplete-cont{pointer-events:auto;width:240px;font-size:13px}.family-tree-cont.f3 .f3-autocomplete input{height:34px;color:var(--ink-900);-webkit-backdrop-filter:blur(12px)saturate(1.3);backdrop-filter:blur(12px)saturate(1.3);border:1px solid var(--line);border-radius:var(--r-pill);box-shadow:var(--sh-card);background-color:#ffffffe0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 16 16'><circle cx='7' cy='7' r='4.5' fill='none' stroke='%235D6875' stroke-width='1.5'/><path d='M10.5 10.5L14 14' stroke='%235D6875' stroke-width='1.5' stroke-linecap='round'/></svg>");background-position:10px;background-repeat:no-repeat;padding:0 12px 0 31px;font-family:inherit;font-size:13px}.family-tree-cont.f3 .f3-autocomplete input::placeholder{color:var(--ink-500)}.family-tree-cont.f3 .f3-autocomplete input:focus{border-color:var(--seal);box-shadow:var(--ring-focus);outline:none}.family-tree-cont.f3 .f3-autocomplete-toggle,.family-tree-cont.f3 .f3-autocomplete-items:empty{display:none}.family-tree-cont.f3 .f3-autocomplete-items{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--sh-pop);margin-top:4px;overflow:hidden}.family-tree-cont.f3 .f3-autocomplete-item>div{background:var(--surface);color:var(--ink-900);border-bottom:1px solid var(--line-soft);padding:9px 12px;font-size:13px}.family-tree-cont.f3 .f3-autocomplete-item>div:hover,.family-tree-cont.f3 .f3-autocomplete-item.f3-selected>div{background:var(--seal-soft);color:var(--seal)}.np{background:var(--surface);border-left:1px solid var(--line);box-shadow:var(--sh-rail);flex-direction:column;min-width:0;display:flex;overflow:hidden}.np-inner{height:100%;min-width:var(--panel-w);opacity:0;transition:opacity var(--t), transform var(--t) var(--ease);flex-direction:column;display:flex;transform:translate(12px)}.tree-body.is-open .np-inner{opacity:1;transition-delay:60ms;transform:none}.np-swap{display:contents}.np-head{border-bottom:1px solid var(--line-soft);background:linear-gradient(#fffdf9,#fff);flex:none;padding:18px 18px 14px;position:relative}.np-close{border-radius:var(--r-sm);width:28px;height:28px;color:var(--ink-500);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:12px;right:12px}.np-close:hover{background:var(--paper-2);color:var(--ink-900)}.np-id{align-items:flex-start;gap:14px;display:flex}.np-idmain{flex:auto;min-width:0;padding-right:24px}.np-name{font-family:var(--font-serif);letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;margin:3px 0 5px;font-size:24px;font-weight:600;overflow:hidden}.np-name:focus{outline:none}.np-meta{color:var(--ink-500);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:11px;font-size:12.5px;display:flex}.np-headbtns{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.np-id .av-block{width:92px}.np-body{overscroll-behavior:contain;flex:auto;min-height:0;padding:4px 18px 18px;overflow:auto}.np-sec{border-top:1px solid var(--line-soft);padding:14px 0}.np-sec:first-child{border-top:0}.np-grid2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.np-grid2 .span2{grid-column:1/-1}.np-foot{border-top:1px solid var(--line-soft);background:var(--surface);flex:none;align-items:center;gap:8px;padding:10px 18px;display:flex}.np-dirty{background:var(--seal-soft);border-top:1px solid var(--line-soft);min-height:44px;color:var(--seal);animation:dirtyIn .16s var(--ease);flex:none;align-items:center;gap:8px;padding:0 18px;font-size:12px;display:flex}@keyframes dirtyIn{0%{transform:translateY(100%)}to{transform:none}}.np-confirm{background:var(--danger-tint);border-top:1px solid var(--danger-line);color:#8b2820;animation:dirtyIn .16s var(--ease);flex:none;padding:12px 18px;font-size:12.5px}.np-confirm .row{gap:8px;margin-top:9px;display:flex}.np-fade{animation:npFade .16s var(--ease)}@keyframes npFade{0%{opacity:.25}to{opacity:1}}.rel-group+.rel-group{border-top:1px solid var(--line-soft);margin-top:14px;padding-top:14px}.rel-row{border-radius:var(--r-sm);color:inherit;cursor:pointer;text-align:left;width:calc(100% + 16px);font:inherit;transition:background var(--t-fast);background:0 0;border:0;align-items:center;gap:10px;margin:0 -8px;padding:6px 8px;text-decoration:none;display:flex}.rel-row:hover{background:var(--sunken);text-decoration:none}.rel-av{width:30px;height:30px;font-family:var(--font-serif);background:var(--un-tint);box-shadow:inset 0 0 0 1px var(--un-ring);color:var(--un-ink);border-radius:7px;flex:none;place-items:center;font-size:14px;font-weight:600;display:grid;position:relative;overflow:hidden}.rel-av.m{background:var(--male-tint);box-shadow:inset 0 0 0 1px var(--male-ring);color:var(--male-ink)}.rel-av.f{background:var(--female-tint);box-shadow:inset 0 0 0 1px var(--female-ring);color:var(--female-ink)}.rel-av img{object-fit:cover;object-position:center 32%;width:100%;height:100%;position:absolute;inset:0}.rel-main{text-align:left;flex:auto;min-width:0;display:block}.rel-main:focus-visible{box-shadow:var(--ring-focus);border-radius:var(--r-xs);outline:none}.rel-n{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:500;display:block;overflow:hidden}.rel-s{color:var(--ink-500);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;display:block;overflow:hidden}.rel-x{color:var(--ink-500);cursor:pointer;opacity:0;transition:opacity var(--t-fast), color var(--t-fast);background:0 0;border:0;margin-left:auto;padding:2px 4px;font-size:12px}.rel-x:hover{color:var(--danger)}.rel-row:hover .rel-x,.rel-row:focus-within .rel-x,.rel-x:focus-visible{opacity:1}.rel-empty{color:var(--ink-500);padding:3px 0 2px;font-size:12.5px}.rel-row.is-new{animation:relIn .26s var(--ease)}@keyframes relIn{0%{background:var(--seal-soft);transform:translateY(-4px)}to{background:0 0;transform:none}}.add-row{width:100%;height:34px;font:inherit;color:var(--seal);text-align:left;cursor:pointer;background:var(--seal-soft);border:1px dashed var(--seal-ring);border-radius:var(--r-sm);transition:border-color var(--t-fast), color var(--t-fast), background var(--t-fast);align-items:center;gap:7px;margin-top:7px;padding:0 11px;font-size:13px;font-weight:500;display:flex}.add-row:hover{border-color:var(--seal);color:var(--seal-strong);background:var(--seal-soft)}.add-row:focus-visible{border-color:var(--seal);box-shadow:var(--ring-focus);outline:none}.add-form{background:var(--sunken);border:1px solid var(--line);border-left:2px solid var(--seal);border-radius:var(--r-sm);animation:formIn .16s var(--ease);margin-top:8px;padding:12px}@keyframes formIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.add-form .r{align-items:flex-end;gap:8px;display:flex}.add-form .r>*{min-width:0}.add-form .r+.r{margin-top:8px}.add-form .grow{flex:auto}.add-form .foot{align-items:center;gap:8px;margin-top:10px;display:flex}.add-form .seg{background:var(--surface);border:1px solid var(--line)}.link-q{color:var(--ink-500);cursor:pointer;border:0;border-bottom:1px solid var(--line-strong);background:0 0;padding:0;font-size:12px}.link-q:hover{color:var(--seal);border-bottom-color:var(--seal)}.av-drop{border-radius:var(--r-md);cursor:pointer;background:var(--un-tint);box-shadow:inset 0 0 0 1px var(--un-ring);color:var(--un-ink);border:0;flex:none;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.av-drop.m{background:var(--male-tint);box-shadow:inset 0 0 0 1px var(--male-ring);color:var(--male-ink)}.av-drop.f{background:var(--female-tint);box-shadow:inset 0 0 0 1px var(--female-ring);color:var(--female-ink)}.av-drop--sm{width:92px;height:92px}.av-drop--lg{width:120px;height:120px}.av-drop img{object-fit:cover;object-position:center 32%;width:100%;height:100%;position:absolute;inset:0}.av-drop .av-ini{font-family:var(--font-serif);color:currentColor;font-size:40px;font-weight:600;line-height:1}.av-drop.is-empty{border:1px dashed var(--line-strong)}.av-drop.is-over{border-color:var(--seal);box-shadow:var(--ring-focus)}.av-drop:focus-visible{box-shadow:var(--ring-focus);outline:none}.av-drop.has-error{border:1px solid var(--danger)}.av-drop .av-ov{background:var(--overlay);color:#fff;opacity:0;height:26px;transition:opacity var(--t-fast);grid-auto-flow:column;place-items:center;gap:4px;font-size:11.5px;display:grid;position:absolute;bottom:0;left:0;right:0}.av-drop:hover .av-ov,.av-drop:focus-within .av-ov,.av-drop:focus-visible .av-ov{opacity:1}.av-drop.is-empty .av-ov{opacity:1;background:var(--paper-2);color:var(--ink-500)}.av-drop.is-empty:hover .av-ov{background:var(--seal-soft);color:var(--seal)}.av-drop .av-x{border-radius:var(--r-pill);background:var(--overlay);color:#fff;cursor:pointer;opacity:0;width:18px;height:18px;transition:opacity var(--t-fast);z-index:2;border:0;place-items:center;display:grid;position:absolute;top:5px;right:5px}.av-drop:hover .av-x,.av-x:focus-visible{opacity:1}@media (hover:none){.av-drop .av-x{opacity:1}}.av-drop .av-mask{background:var(--overlay);position:absolute;inset:0}.av-drop .av-bar{background:var(--seal);height:2px;animation:indet 1.1s var(--ease) infinite;z-index:3;position:absolute;top:0;left:0}@keyframes indet{0%{width:22%;left:0}50%{width:44%;left:40%}to{width:14%;left:100%}}.av-block{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.av-block .av-err{max-width:220px}.av-err{color:var(--danger);font-size:12px}.modal-scrim{z-index:50;background:var(--scrim);animation:fadeIn .15s var(--ease);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--r-xl);width:420px;max-width:100%;box-shadow:var(--sh-pop);animation:modalIn .2s var(--ease);padding:22px}.modal h3{font-family:var(--font-serif);letter-spacing:.04em;margin:0 0 8px;font-size:19px;font-weight:600}.modal p{color:var(--ink-700);margin:0 0 18px;font-size:13px;line-height:1.65}.modal-actions{justify-content:flex-end;gap:8px;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}.list-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.table-wrap{border-radius:var(--r-lg);overflow-x:auto}.ptable{border-collapse:collapse;width:100%;font-size:13px}.ptable th{text-align:left;letter-spacing:.16em;height:40px;color:var(--ink-500);background:var(--paper-2);white-space:nowrap;padding:0 14px;font-size:11px;font-weight:600}.ptable th:last-child,.ptable td:last-child{text-align:right}.ptable td{border-top:1px solid var(--line-soft);white-space:nowrap;font-variant-numeric:tabular-nums;height:52px;color:var(--ink-700);padding:0 14px}.ptable tbody tr:first-child td{border-top:0}.ptable tbody tr{cursor:pointer;transition:background var(--t-fast)}.ptable tbody tr:hover td{background:var(--sunken)}.ptable tbody tr:hover td:first-child{box-shadow:inset 2px 0 0 var(--seal)}.ptable .who{align-items:center;gap:10px;min-width:0;display:flex}.ptable .who .rel-main{min-width:0}.ptable .who .rel-n{color:var(--ink-900);font-size:14px;font-weight:600}.ptable .gcell{align-items:center;gap:6px;display:inline-flex}.empty-state{text-align:center;place-items:center;padding:64px 20px;display:grid}.empty-state .box{max-width:380px}.empty-state .mark{border-radius:var(--r-md);background:var(--paper-2);width:44px;height:44px;color:var(--ink-500);font-family:var(--font-serif);place-items:center;margin:0 auto 14px;font-size:20px;display:grid}.empty-state h2{font-family:var(--font-sans);letter-spacing:0;margin-bottom:6px;font-size:15px;font-weight:600}.empty-state p{color:var(--ink-500);margin-bottom:16px;font-size:13px}.empty-state .row{justify-content:center;gap:8px;display:flex}.card-list{display:none}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-grid .span2{grid-column:1/-1}.form-grid .seg--full,.np-grid2 .seg--full{max-width:420px}.form-actions{border-top:1px solid var(--line-soft);justify-content:flex-end;align-items:center;gap:8px;margin-top:20px;padding-top:16px;display:flex}.form-sec+.form-sec{margin-top:22px}.edit-grid{grid-template-columns:minmax(0,1fr) minmax(0,380px);align-items:start;gap:20px;display:grid}.edit-head{top:var(--nav-h);z-index:20;-webkit-backdrop-filter:blur(10px)saturate(1.3);backdrop-filter:blur(10px)saturate(1.3);border-bottom:1px solid var(--line);background:#f5f3eee6;flex-wrap:wrap;align-items:center;gap:14px;margin:-28px -20px 20px;padding:14px 20px;display:flex;position:sticky}.edit-head .who{align-items:center;gap:12px;min-width:0;display:flex}.edit-head .rel-av{border-radius:var(--r-md);width:48px;height:48px;font-size:22px}.edit-head .meta{color:var(--ink-500);font-variant-numeric:tabular-nums;align-items:center;gap:8px;margin-top:2px;font-size:12.5px;display:flex}.panel-pad{padding:20px}.identity-row{align-items:flex-start;gap:16px;display:flex}.identity-row .hint{color:var(--ink-500);font-size:12px;line-height:1.6}.stamp{color:var(--ink-500);font-variant-numeric:tabular-nums;font-size:12px}.menu{display:inline-flex;position:relative}.menu__pop{z-index:60;-webkit-backdrop-filter:blur(12px)saturate(1.3);backdrop-filter:blur(12px)saturate(1.3);border:1px solid var(--line);border-radius:var(--r-md);min-width:186px;box-shadow:var(--sh-pop);animation:menuIn .14s var(--ease);background:#fffffff0;padding:5px;position:absolute;top:calc(100% + 6px);right:0}.menu__pop--left{left:0;right:auto}@keyframes menuIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.menu__item{border-radius:var(--r-sm);width:100%;height:32px;font:inherit;color:var(--ink-700);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:0 10px;font-size:13px;text-decoration:none;display:flex}.menu__item:hover,.menu__item:focus-visible{background:var(--sunken);color:var(--ink-900);outline:none;text-decoration:none}.menu__item svg{color:var(--ink-500);flex:none}.menu__item:hover svg{color:var(--seal)}.menu__item .k{border-radius:var(--r-pill);background:var(--paper-2);border:1px solid var(--line);min-width:18px;height:18px;color:var(--ink-500);font-variant-numeric:tabular-nums;place-items:center;margin-left:auto;padding:0 5px;font-size:11px;font-weight:600;display:inline-grid}.menu__sep{background:var(--line-soft);height:1px;margin:5px 6px}.menu__label{letter-spacing:.16em;color:var(--ink-500);padding:6px 10px 4px;font-size:11px;font-weight:600}.menu__chev{transition:transform var(--t-fast) var(--ease)}[aria-expanded=true]>.menu__chev{transform:rotate(180deg)}.notice-list{max-height:220px;color:var(--ink-500);margin:8px 0 0;padding-left:18px;font-size:12.5px;line-height:1.7;overflow:auto}.navlink--more{font:inherit;cursor:pointer;background:0 0;border:0;gap:5px;font-size:13.5px}.navlink--more[aria-expanded=true]{color:var(--ink-900)}.navlink--more:focus-visible{box-shadow:inset var(--ring-focus);border-radius:var(--r-sm);outline:none}.nav-dot{background:var(--sev-high);width:6px;height:6px;box-shadow:0 0 0 2px var(--paper);border-radius:50%}.subnav{top:var(--nav-h);z-index:20;height:var(--subnav-h);-webkit-backdrop-filter:blur(10px)saturate(1.3);backdrop-filter:blur(10px)saturate(1.3);border-bottom:1px solid var(--line);scrollbar-width:none;background:#f5f3eee6;align-items:center;gap:2px;margin:-28px -20px 20px;padding:0 20px;display:flex;position:sticky;overflow-x:auto}.subnav::-webkit-scrollbar{display:none}.subnav a{height:var(--subnav-h);color:var(--ink-500);white-space:nowrap;align-items:center;gap:7px;padding:0 12px;font-size:13px;display:inline-flex;position:relative}.subnav a:hover{color:var(--ink-900);text-decoration:none}.subnav a.active{color:var(--ink-900);font-weight:600}.subnav a.active:after{content:"";background:var(--seal);height:2px;position:absolute;bottom:-1px;left:12px;right:12px}.subnav__badge{border-radius:var(--r-pill);background:var(--sev-high-tint);border:1px solid var(--sev-high-line);min-width:17px;height:17px;color:var(--sev-high-ink);font-variant-numeric:tabular-nums;place-items:center;padding:0 5px;font-size:11px;font-weight:600;display:inline-grid}.subnav__badge.is-zero{background:var(--ok-tint);border-color:var(--ok-line);color:var(--ok)}.picker{position:relative}.picker__pop{z-index:40;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);max-height:252px;box-shadow:var(--sh-pop);padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.picker__opt{border-radius:var(--r-sm);width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:6px 8px;display:flex}.picker__opt:hover,.picker__opt[aria-selected=true]{background:var(--seal-soft)}.picker__opt strong{color:var(--seal);font-weight:600}.picker__none{text-align:center;color:var(--ink-500);padding:12px;font-size:12.5px}.chips{flex-wrap:wrap;gap:5px;display:flex}.chip{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);height:26px;font:inherit;color:var(--ink-700);white-space:nowrap;font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--t-fast), border-color var(--t-fast), color var(--t-fast);padding:0 10px;font-size:12px;text-decoration:none}.chip:hover{border-color:var(--line-strong);color:var(--ink-900);text-decoration:none}.chip[aria-pressed=true]{background:var(--seal-soft);border-color:var(--seal-ring);color:var(--seal);font-weight:600}.chip:focus-visible{border-color:var(--seal);box-shadow:var(--ring-focus);outline:none}.kin-empty{color:var(--ink-500);margin-top:10px;font-size:12.5px;line-height:1.7}.kin-quick{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.kin-quick button{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);height:26px;font:inherit;color:var(--ink-700);cursor:pointer;padding:0 10px;font-size:12px}.kin-quick button:hover{border-color:var(--seal-ring);background:var(--seal-soft);color:var(--seal)}.kin-quick button:focus-visible{border-color:var(--seal);box-shadow:var(--ring-focus);outline:none}.kin-none{border-radius:var(--r-md);background:var(--paper-2);color:var(--ink-500);margin-top:10px;padding:11px 13px;font-size:12.5px;line-height:1.7}.kin-res{background:var(--sunken);border:1px solid var(--line);border-left:2px solid var(--seal);border-radius:var(--r-sm);animation:kinIn .16s var(--ease);margin-top:11px;padding:13px 14px 12px}@keyframes kinIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.kin-lead{color:var(--ink-500);font-size:12px}.kin-lead b,.kin-back b{color:var(--ink-700);font-weight:600}.kin-term{font-family:var(--font-serif);letter-spacing:.22em;color:var(--ink-900);flex-wrap:wrap;align-items:center;gap:9px;margin:3px -.22em 5px 0;font-size:30px;font-weight:600;line-height:1.15;display:flex}.kin-term .tag{letter-spacing:normal;font-family:var(--font-sans);white-space:normal;text-align:left;height:auto;min-height:20px;padding:2px 8px}.kin-back{color:var(--ink-500);font-size:12.5px}.kin-chain{border-top:1px solid var(--line-soft);flex-wrap:wrap;align-items:center;gap:3px 4px;margin-top:11px;padding-top:11px;display:flex}.kin-node{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);max-width:100%;font:inherit;color:var(--ink-700);cursor:pointer;align-items:center;gap:5px;padding:2px 8px 2px 2px;font-size:12px;text-decoration:none;display:inline-flex}span.kin-node{cursor:default}.kin-node:hover{border-color:var(--line-strong);background:var(--paper-2);color:var(--ink-900);text-decoration:none}.kin-node:focus-visible{border-color:var(--seal);box-shadow:var(--ring-focus);outline:none}.kin-node .rel-av{border-radius:var(--r-pill);width:20px;height:20px;font-size:10px}.kin-node.is-end{border-color:var(--seal-ring);background:var(--seal-soft);color:var(--seal);font-weight:600}.kin-step{letter-spacing:.06em;color:var(--ink-500);white-space:nowrap;align-items:center;gap:1px;font-size:11px;display:inline-flex}.kin-step svg{color:var(--ink-300);transform:rotate(-90deg)}.kin-acts{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.hud-stack{left:var(--hud-gap);top:var(--hud-gap);z-index:7;max-width:min(340px, calc(100% - var(--hud-gap) * 2));flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute}.hud-stack .hud-title{max-width:none;position:static;top:auto;left:auto}.hud-filter{position:relative}.hud-filter__t{border-radius:var(--r-pill);height:32px;font:inherit;color:var(--ink-700);cursor:pointer;align-items:center;gap:7px;padding:0 12px;font-size:12.5px;display:inline-flex}.hud-filter__t:hover{color:var(--ink-900);border-color:var(--line-strong)}.hud-filter__t:focus-visible{border-color:var(--seal);box-shadow:var(--ring-focus);outline:none}.hud-filter__t.is-on{border-color:var(--seal-ring);color:var(--seal);background:#faefeaeb;font-weight:600}.hud-filter__t .n{border-radius:var(--r-pill);background:var(--seal);color:#fff;font-variant-numeric:tabular-nums;place-items:center;min-width:17px;height:17px;padding:0 5px;font-size:11px;font-weight:600;display:inline-grid}.hud-filter__p{z-index:30;width:300px;max-width:calc(100vw - var(--hud-gap) * 2);animation:menuIn .14s var(--ease);padding:14px;position:absolute;top:calc(100% + 6px);left:0}.hud-filter__p .f+.f{margin-top:12px}.hud-filter__p .flabel{letter-spacing:.08em;color:var(--ink-500);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.hud-filter__p .foot{border-top:1px solid var(--line-soft);align-items:center;gap:8px;margin-top:14px;padding-top:11px;display:flex}.hud-matches{border-radius:var(--r-pill);height:32px;color:var(--ink-700);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:3px;padding:0 5px 0 12px;font-size:12.5px;display:flex}.hud-matches b{color:var(--ink-900);font-weight:600}.hud-matches.is-none{border-color:var(--sev-mid-line);color:var(--sev-mid-ink);background:#faf3e3eb}.hud-matches button{border-radius:var(--r-sm);width:26px;height:26px;color:var(--ink-500);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.hud-matches button:hover:not(:disabled){background:var(--paper-2);color:var(--ink-900)}.hud-matches button:disabled{opacity:.35;cursor:not-allowed}.hud-matches button:focus-visible{box-shadow:var(--ring-focus);outline:none}.hud-matches button.is-prev svg{transform:rotate(180deg)}.family-tree-cont.f3.is-filtering div.card>.card-inner.ftc{opacity:.26;filter:saturate(.28);transition:opacity var(--t) var(--ease), filter var(--t) var(--ease), border-color var(--t) var(--ease), box-shadow var(--t) var(--ease)}.family-tree-cont.f3.is-filtering .links_view path,.family-tree-cont.f3.is-filtering path.link,.family-tree-cont.f3.is-filtering .link-text{opacity:.3!important}.family-tree-cont.f3.is-filtering div.card>.card-inner.ftc.is-hit{opacity:1;filter:none;border-color:var(--seal-ring)}.family-tree-cont.f3.is-filtering div.card>.card-inner.ftc.is-hit-current{border-color:var(--seal);box-shadow:0 0 0 3px var(--seal-ring), var(--sh-raise)}.family-tree-cont.f3.is-filtering div.card-main>.card-inner.ftc,.family-tree-cont.f3.is-filtering div.card>.card-inner.ftc.is-selected{opacity:1;filter:none}.family-tree-cont.f3.is-filtering div.card:hover>.card-inner.ftc{opacity:.85;filter:none}@media (width<=1080px){.tree-body{transition:grid-template-rows var(--t-slow) var(--ease);grid-template-rows:minmax(0,1fr) 0;grid-template-columns:minmax(0,1fr)}.tree-body.is-open{grid-template-rows:minmax(0,1fr) min(62vh,540px);grid-template-columns:minmax(0,1fr)}.np{border-left:0;border-top:1px solid var(--line);border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:var(--sh-sheet)}.np-inner{min-width:0;transform:translateY(12px)}.tree-body.is-open .np-inner{transform:none}.np-head:before{content:"";background:var(--line-strong);border-radius:2px;width:36px;height:4px;margin:-6px auto 10px;display:block}.hud-legend{display:none}}@media (width<=900px){.edit-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=720px){.table-wrap{display:none}.card-list{flex-direction:column;gap:10px;display:flex}.card-list .pcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-card);cursor:pointer;text-align:left;font:inherit;color:inherit;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.card-list .rel-av{border-radius:var(--r-md);width:44px;height:44px;font-size:20px}.card-list .pcard .rel-n{font-size:15px;font-weight:600}.form-grid,.np-grid2{grid-template-columns:1fr}.page{padding:20px 14px 56px}.edit-head{margin:-20px -14px 16px;padding:12px 14px}.topnav{padding:0 12px}.brand{margin-right:8px}}@media (width<=560px){.hide-sm,.brand-name,.hide-xs{display:none}.topnav-actions .btn--primary{width:var(--ctl);padding:0}.topnav{flex-wrap:nowrap;gap:2px;padding:0 10px}.topnav>*,.brand,.navlink,.topnav-actions .btn{white-space:nowrap;flex:none}.brand{margin-right:6px}.navlink{padding:0 8px;font-size:13px}.topnav-actions{gap:6px}.topnav-actions .btn{padding:0 10px}.topnav-actions .menu>.btn>svg:first-child{display:none}.hud-stack{right:var(--hud-gap);max-width:none}.hud-stack .hud-title{padding:8px 12px}.hud-stack .hud-title h2{font-size:16px}.hud-filter,.hud-filter__t,.hud-matches,.hud-filter__p{width:100%}.family-tree-cont .f3-autocomplete-cont{margin-top:106px}.tree-canvas.is-matching .family-tree-cont .f3-autocomplete-cont{margin-top:146px}}.tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.tiles--mini{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:12px}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);min-width:0;box-shadow:var(--sh-card);padding:16px 16px 14px;position:relative;overflow:hidden}.tile:before{content:"";background:var(--seal);width:3px;position:absolute;top:0;bottom:0;left:0}.tile__k{letter-spacing:.16em;color:var(--ink-500);font-size:11px;font-weight:600;display:block}.tile__v{font-family:var(--font-serif);letter-spacing:.02em;color:var(--ink-900);font-variant-numeric:tabular-nums;align-items:baseline;gap:4px;margin-top:8px;font-size:34px;font-weight:600;line-height:1;display:flex}.tile__v .u{font-family:var(--font-sans);letter-spacing:0;color:var(--ink-500);font-size:13px;font-weight:500}.tile__s{color:var(--ink-500);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;margin-top:7px;font-size:12px;display:block;overflow:hidden}.tile--mini{padding:12px 13px 11px}.tile--mini:before{display:none}.tile--mini .tile__v{margin-top:6px;font-size:24px}.charts{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;margin-top:12px;display:grid}.chart{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);min-width:0;box-shadow:var(--sh-card);padding:16px 18px 18px}.chart--wide{grid-column:1/-1}.chart__head{align-items:baseline;gap:10px;margin-bottom:14px;display:flex}.chart__head .note{color:var(--ink-500);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11.5px}.bars{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.bars li{grid-template-columns:var(--chart-gut) minmax(0, 1fr) auto;align-items:center;gap:10px;display:grid}.bars__k{color:var(--ink-700);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;font-size:12.5px;overflow:hidden}.bars__track{border-radius:var(--r-xs);background:var(--chart-track);height:14px;position:relative;overflow:hidden}.bars__fill{border-radius:var(--r-xs);background:var(--chart-fill);min-width:2px;transition:width var(--t-slow) var(--ease);position:absolute;top:0;bottom:0;left:0}.bars li:hover .bars__fill{background:var(--seal-strong)}.bars__v{text-align:right;min-width:40px;color:var(--ink-500);font-variant-numeric:tabular-nums;font-size:12.5px}.bars--seal li{grid-template-columns:24px minmax(0,1fr) auto}.bars__seal{border-radius:var(--r-xs);background:var(--paper-2);width:24px;height:24px;color:var(--ink-700);font-family:var(--font-serif);place-items:center;font-size:14px;font-weight:600;display:grid}.bars--seal li:first-child .bars__seal{background:var(--seal);color:#fff;box-shadow:0 1px 2px #93371f47}.cols{height:var(--chart-h);border-bottom:1px solid var(--line);align-items:flex-end;gap:6px;display:flex}.cols__c{flex-direction:column;flex:1 1 0;justify-content:flex-end;min-width:0;height:100%;display:flex}.cols__v{text-align:center;color:var(--ink-500);font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:11.5px;line-height:1.3}.cols__bar{border-radius:var(--r-xs) var(--r-xs) 0 0;background:var(--chart-fill);width:100%;min-height:3px;transition:height var(--t-slow) var(--ease)}.cols__c[data-zero=true] .cols__bar{background:var(--line);min-height:2px}.cols-x{gap:6px;margin-top:7px;display:flex}.cols-x span{text-align:center;min-width:0;color:var(--ink-500);font-variant-numeric:tabular-nums;flex:1 1 0;font-size:11px}.cols-x span[data-hide=true]{visibility:hidden}.split{border-radius:var(--r-xs);background:var(--chart-track);height:20px;display:flex;overflow:hidden}.split__s{min-width:0;transition:width var(--t-slow) var(--ease)}.split__s+.split__s{box-shadow:inset 1px 0 0 var(--surface)}.split__s.m{background:var(--male)}.split__s.f{background:var(--female)}.split__s.u{background:var(--un)}.split-key{color:var(--ink-500);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:14px;margin-top:10px;font-size:12px;display:flex}.split-key i{border-radius:2px;width:8px;height:8px;margin-right:6px;display:inline-block}.skel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-card);position:relative;overflow:hidden}.tile.skel{height:104px}.tile--mini.skel{height:76px}.chart.skel{height:236px}.sev-card.skel{height:74px}.skel:after{content:"";animation:skelSweep 1.3s var(--ease) infinite;background:linear-gradient(90deg,#0000,#26221a0d,#0000);position:absolute;inset:0}@keyframes skelSweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.sev-high{--sev:var(--sev-high);--sev-ink:var(--sev-high-ink);--sev-tint:var(--sev-high-tint);--sev-line:var(--sev-high-line)}.sev-mid{--sev:var(--sev-mid);--sev-ink:var(--sev-mid-ink);--sev-tint:var(--sev-mid-tint);--sev-line:var(--sev-mid-line)}.sev-low{--sev:var(--sev-low);--sev-ink:var(--sev-low-ink);--sev-tint:var(--sev-low-tint);--sev-line:var(--sev-low-line)}.sev-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.sev-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-card);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--t-fast), background var(--t-fast);align-items:center;gap:12px;padding:14px 16px;display:flex;position:relative}.sev-card:before{content:"";border-radius:var(--r-lg) 0 0 var(--r-lg);background:var(--sev);width:3px;position:absolute;top:0;bottom:0;left:0}.sev-card:hover{border-color:var(--line-strong)}.sev-card[aria-pressed=true]{border-color:var(--sev);background:var(--sev-tint)}.sev-card:focus-visible{border-color:var(--sev);box-shadow:var(--ring-focus);outline:none}.sev-card__n{min-width:46px;font-family:var(--font-serif);color:var(--sev-ink);font-variant-numeric:tabular-nums;font-size:30px;font-weight:600;line-height:1}.sev-card__m{min-width:0}.sev-card__t{color:var(--ink-900);font-size:13px;font-weight:600;display:block}.sev-card__d{color:var(--ink-500);margin-top:2px;font-size:11.5px;display:block}.issue-group{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-card);margin-bottom:14px;overflow:hidden}.issue-group__head{border:0;border-bottom:1px solid var(--line-soft);background:var(--sunken);width:100%;font:inherit;text-align:left;cursor:pointer;align-items:center;gap:11px;padding:12px 16px;display:flex}.issue-group__head:hover{background:var(--paper-2)}.issue-group__head:focus-visible{box-shadow:inset var(--ring-focus);outline:none}.issue-group[data-open=false] .issue-group__head{border-bottom-color:#0000}.issue-group__dot{background:var(--sev);width:9px;height:9px;box-shadow:0 0 0 3px var(--sev-tint);border-radius:50%;flex:none}.issue-group__m{flex:auto;min-width:0}.issue-group__t{color:var(--ink-900);font-size:13.5px;font-weight:600;display:block}.issue-group__d{color:var(--ink-500);margin-top:2px;font-size:12px;display:block}.issue-group__n{border-radius:var(--r-pill);background:var(--sev-tint);border:1px solid var(--sev-line);min-width:24px;height:20px;color:var(--sev-ink);font-variant-numeric:tabular-nums;flex:none;place-items:center;padding:0 7px;font-size:11.5px;font-weight:600;display:inline-grid}.issue-group__chev{color:var(--ink-300);transition:transform var(--t-fast) var(--ease);flex:none}.issue-group[data-open=false] .issue-group__chev{transform:rotate(-90deg)}.issue-list{margin:0;padding:0;list-style:none}.issue-row{border-top:1px solid var(--line-soft);transition:background var(--t-fast), box-shadow var(--t-fast);align-items:center;gap:8px;padding:0 12px 0 16px;display:flex}.issue-list li:first-child{border-top:0}.issue-row:hover{background:var(--sunken);box-shadow:inset 2px 0 0 var(--sev)}.issue-row__m{flex:auto;min-width:0;padding:10px 0;display:block}.issue-row__w{color:var(--ink-700);font-variant-numeric:tabular-nums;font-size:13px;line-height:1.6;display:block}.issue-row__who{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.issue-row__a{opacity:0;transition:opacity var(--t-fast);flex:none}.issue-row:hover .issue-row__a,.issue-row:focus-within .issue-row__a{opacity:1}@media (hover:none){.issue-row__a{opacity:1}}.health-ok{text-align:center;background:var(--surface);border:1px solid var(--ok-line);border-radius:var(--r-lg);box-shadow:var(--sh-card);place-items:center;padding:52px 20px;display:grid}.health-ok>div{max-width:520px}.health-ok .mark{border-radius:var(--r-md);background:var(--ok-tint);width:52px;height:52px;color:var(--ok);font-family:var(--font-serif);place-items:center;margin:0 auto 14px;font-size:24px;display:grid}.health-ok h2{font-family:var(--font-sans);letter-spacing:0;margin-bottom:6px;font-size:15px}.health-ok p{color:var(--ink-500);margin:0;font-size:13px;line-height:1.7}.tl-filter{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.tl{position:relative}.tl-decade{top:calc(var(--nav-h) + var(--subnav-h));z-index:10;background:var(--paper);align-items:baseline;gap:10px;margin:22px 0 8px;padding:6px 0;display:flex;position:sticky}.tl-decade:first-child{margin-top:0}.tl-decade h2{letter-spacing:.12em;font-size:17px}.tl-decade .count{color:var(--ink-500);font-variant-numeric:tabular-nums;font-size:11.5px}.tl-decade:after{content:"";background:var(--line);flex:auto;height:1px}.tl-row{grid-template-columns:46px 22px minmax(0,1fr);align-items:stretch;display:grid}.tl-yr{text-align:right;letter-spacing:.02em;color:var(--ink-500);font-variant-numeric:tabular-nums;padding-top:14px;font-size:12.5px}.tl-rail{position:relative}.tl-rail:before{content:"";background:var(--line);width:1px;margin-left:-.5px;position:absolute;top:0;bottom:0;left:50%}.tl-row:last-child .tl-rail:before{background:linear-gradient(var(--line), transparent)}.tl-dot{background:var(--surface);border:1.5px solid var(--line-strong);width:11px;height:11px;box-shadow:0 0 0 3px var(--paper);border-radius:50%;margin-left:-5.5px;position:absolute;top:13px;left:50%}.tl-row[data-kind=birth] .tl-dot{background:var(--seal);border-color:var(--seal)}.tl-row[data-kind=union] .tl-dot{border-color:var(--ink-500);border-radius:2px;transform:rotate(45deg)}.tl-row[data-kind=death] .tl-dot{background:var(--paper-2);border-color:var(--ink-300)}.tl-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);width:100%;box-shadow:var(--sh-card);color:inherit;transition:border-color var(--t-fast), box-shadow var(--t-fast), transform var(--t-fast) var(--ease);align-items:center;gap:11px;margin:4px 0 4px 6px;padding:9px 12px;text-decoration:none;display:flex}.tl-card:hover{border-color:var(--line-strong);box-shadow:var(--sh-raise);color:inherit;text-decoration:none;transform:translate(2px)}.tl-card:focus-visible{border-color:var(--seal);box-shadow:var(--ring-focus);outline:none}.tl-pair{flex:none;display:flex}.tl-pair .rel-av+.rel-av{outline:2px solid var(--surface);margin-left:-10px}.tl-main{flex:auto;min-width:0}.tl-n{color:var(--ink-900);white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;display:block;overflow:hidden}.tl-n em{color:var(--ink-500);font-style:normal;font-weight:500}.tl-s{color:var(--ink-500);font-variant-numeric:tabular-nums;margin-top:1px;font-size:12px;display:block}.tl-meta{flex:none;align-items:center;gap:7px;display:flex}.tl-undated{border-top:1px solid var(--line);margin-top:28px;padding-top:16px}.tl-undated .chips{margin-top:10px}@media (width<=1080px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.tiles--mini{grid-template-columns:repeat(3,minmax(0,1fr))}.charts{grid-template-columns:minmax(0,1fr)}.charts .chart--wide{grid-column:auto}}@media (width<=720px){.subnav{margin:-20px -14px 16px;padding:0 14px}.sev-cards{grid-template-columns:minmax(0,1fr);gap:8px}.sev-card{padding:11px 13px}.sev-card__n{min-width:38px;font-size:24px}}@media (width<=560px){.tiles,.tiles--mini{grid-template-columns:repeat(2,minmax(0,1fr))}.tile{padding:13px 13px 12px}.tile__v{font-size:28px}.tile__s{white-space:normal}.chart{padding:14px 14px 16px}.chart__head{flex-wrap:wrap;gap:4px 10px}.chart__head .note{flex-basis:100%;margin-left:0}.bars li{grid-template-columns:52px minmax(0,1fr) auto}.bars__v{min-width:34px}.cols,.cols-x{gap:3px}.cols-x span{font-size:10.5px}.tl-row{grid-template-columns:38px 20px minmax(0,1fr)}.tl-yr{font-size:12px}.tl-meta{display:none}}@page{size:A4 portrait;margin:16mm}@page tree{size:A4 landscape;margin:12mm}.print-sheet,.print-only{display:none}.print-head h1{letter-spacing:.1em;text-align:center;margin:0 0 3mm;font-size:22pt}.print-head .meta{text-align:center;color:#5d6875;font-variant-numeric:tabular-nums;border-bottom:.6pt solid #c8c4b8;margin-bottom:6mm;padding-bottom:3mm;font-size:9pt}@media print{:root{--paper:#fff;--paper-2:#f2f0eb}html,body,#root{background:#fff;height:auto}body{font-size:10.5pt}.topnav,.subnav,.hud,.np,.toast,.tree-status,.modal-scrim,.list-toolbar,.form-actions,.edit-head,.menu,.card-list,.f3-nav-cont,.btn,.sev-card,.tl-filter,.issue-row__a,.kin-acts,.no-print{display:none!important}.app-main{min-height:0}.page{max-width:none;margin:0;padding:0}.panel,.tile,.chart,.issue-group,.tl-card{break-inside:avoid;border-color:#d8d4cb;box-shadow:none!important}.tiles{break-inside:avoid}.charts{break-inside:auto}.tile__s{white-space:normal}.tl-row{break-inside:avoid}.tl-decade{break-after:avoid;background:0 0;position:static}.tl-card:hover{transform:none}.sev-cards,.skel{display:none}a{color:inherit!important;text-decoration:none!important}.print-only{display:block}.table-wrap{break-inside:auto;border:0;display:block!important;overflow:visible!important}.ptable{width:100%;font-size:9.5pt}.ptable thead{display:table-header-group}.ptable tr{break-inside:avoid}.ptable th,.ptable td{padding:4px 6px}.ptable .rel-av,body.printing-tree>#root{display:none}body.printing-tree .print-sheet{page:tree;place-items:center;height:100vh;display:grid}.print-sheet svg{width:100%;height:auto;max-height:100vh;display:block}body.printing-lineage>#root{display:none}body.printing-lineage .print-sheet{display:block}}.lineage-sheet{font-family:var(--font-serif);color:#16202b}.lineage-sheet h1{letter-spacing:.1em;text-align:center;margin:0 0 2mm;font-size:22pt}.lineage-sheet .meta{text-align:center;font-family:var(--font-sans);color:#5d6875;font-variant-numeric:tabular-nums;border-bottom:.6pt solid #c8c4b8;margin-bottom:7mm;padding-bottom:4mm;font-size:9pt}.lineage-sheet .gen{letter-spacing:.16em;break-inside:avoid;break-after:avoid;margin:6mm 0 2.5mm;font-size:13pt}.lineage-sheet .gen:after{content:"";background:#e5e2da;height:.6pt;margin-top:1.5mm;display:block}.lineage-sheet ol{font-family:var(--font-sans);margin:0;padding:0;font-size:10pt;list-style:none}.lineage-sheet li{break-inside:avoid;border-bottom:.4pt dotted #d9d5cb;grid-template-columns:8mm 26mm 30mm 1fr;gap:2mm;padding:1.3mm 0;display:grid}.lineage-sheet .no{text-align:right;color:#8a8578;font-variant-numeric:tabular-nums}.lineage-sheet .nm{letter-spacing:.04em;font-weight:600}.lineage-sheet .dt{color:#3c4650;font-variant-numeric:tabular-nums}.lineage-sheet .pa{color:#5d6875}.lineage-sheet .gone:after{content:"　故";font-family:var(--font-serif);color:#8a8578}
