.viewer-shell{--bt-canvas:#fbfcf7;--bt-grid:#364c410e;--bt-grid-strong:#364c4129;--bt-grid-size:28px;--bt-grid-strong-size:280px;--bt-grid-offset-x:0px;--bt-grid-offset-y:0px;--bt-text:#26342e;--bt-text-muted:#6d7f74;--bt-surface:#fffdf7;--bt-surface-warm:#fbf2cf;--bt-border:#667469;--bt-brand:#315d49;--bt-selected:#c77932;--bt-danger:#9a463a;--bt-female:#b75f86;--bt-group-fill:#e4eee7;--bt-note-text:#6a6048;--bt-relation-default:#2f3833;--bt-relation-marriage:#258a62;--bt-relation-direct:#5f6a63;--bt-relation-special:#b65a3b;min-height:0;position:relative;overflow:hidden}.viewport{touch-action:none;background:linear-gradient(var(--bt-grid-strong) 1px, transparent 1px), linear-gradient(90deg, var(--bt-grid-strong) 1px, transparent 1px), linear-gradient(var(--bt-grid) 1px, transparent 1px), linear-gradient(90deg, var(--bt-grid) 1px, transparent 1px), var(--bt-canvas);background-position:var(--bt-grid-offset-x) var(--bt-grid-offset-y);background-size:var(--bt-grid-strong-size) var(--bt-grid-strong-size), var(--bt-grid-strong-size) var(--bt-grid-strong-size), var(--bt-grid-size) var(--bt-grid-size), var(--bt-grid-size) var(--bt-grid-size);position:absolute;inset:0;overflow:hidden}.world{transform-origin:0 0;position:absolute;top:0;left:0}.chart-legend-pair{z-index:4;pointer-events:none;align-items:stretch;gap:12px;display:flex;position:absolute;top:68px;left:68px}.chart-legend,.chart-legend-note{box-sizing:border-box;color:#22362c;pointer-events:none;background:linear-gradient(145deg,#ffffffe6,#f6faf7cc),#fffce6a3;border:1px solid #374e4229;border-radius:6px;flex:0 0 200px;width:200px;padding:10px 12px 12px;font-size:16px;line-height:1.15;box-shadow:0 8px 18px #29423324,inset 0 1px #ffffffc7}.viewport,.topbar,.minimap-panel,.info-panel,.mobile-section-menu{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.topbar,.minimap-panel,.info-panel,.mobile-section-menu{touch-action:manipulation}.chart-legend-header{border-bottom:1px solid #374e4224;justify-content:flex-start;align-items:flex-end;gap:8px;margin-bottom:8px;padding-bottom:6px;display:flex}.chart-legend-header strong{color:var(--bt-text);font-size:12px;font-weight:900}.chart-legend-note p{color:#354c40;word-break:keep-all;margin:0;font-weight:700;line-height:1.45}.chart-legend-note-meta{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.chart-legend-note .chart-legend-note-author{color:var(--bt-text-muted);white-space:nowrap}.chart-legend-note .chart-legend-note-revision{color:#9b7147;text-align:right;white-space:nowrap}.chart-legend-note-report{border-top:1px solid #374e421f;margin-top:10px;padding-top:8px}.chart-legend-note-help{border-top:1px solid #374e421f;margin-top:8px;padding-top:7px}.chart-legend-note-help-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 9px;margin:0;padding:0;list-style:none;display:grid}.chart-legend-note-help-group{min-width:0}.chart-legend-note-help-group>strong{color:#2d473a;word-break:keep-all;margin-bottom:5px;font-weight:900;display:block}.chart-legend-note-help-methods{gap:5px;margin:0;padding:0;list-style:none;display:grid}.chart-legend-note-help-item{color:#354c40;grid-template-columns:45px minmax(0,1fr);align-items:center;gap:5px;min-width:0;display:grid}.chart-legend-note-help-item>span{min-width:0;color:var(--bt-text-muted);word-break:keep-all;font-weight:850;line-height:1.2;display:block}.gesture-icon{box-sizing:border-box;background:#ffffff7a;border:1px solid #374e422e;border-radius:5px;width:40px;height:40px;padding:2px;display:block}.gesture-icon-line{fill:none;stroke:#315d49;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.gesture-icon-fill{fill:#315d49}.gesture-icon-mouse{fill:#fffdf7b8;stroke:#315d49;stroke-width:2px}.gesture-icon-mouse-button{fill:#0000;stroke:none}.gesture-icon-mouse-click{fill:#315d492e;stroke:none}.chart-legend-note-report h3{color:#4f6659;margin:0 0 5px;font-weight:900}.chart-legend-note-report div{display:flex}.chart-report-button{border:1px solid var(--bt-brand);background:var(--bt-brand);color:#fff;cursor:pointer;pointer-events:auto;border-radius:7px;width:80px;margin-left:auto;font-weight:900}.chart-legend-section+.chart-legend-section{margin-top:10px}.chart-legend-section h3{color:#4f6659;margin:0 0 5px;font-weight:900}.chart-legend ul{flex-wrap:wrap;gap:6px;padding:0;list-style:none;display:flex}.chart-legend ul>li{flex-grow:1}.legend-person-chip{box-sizing:border-box;background:var(--bt-surface);width:100%;color:var(--bt-text);white-space:nowrap;border:2px solid #6674696b;border-radius:5px;justify-content:center;align-items:center;padding:5px 8px;font-weight:900;display:inline-flex;box-shadow:inset 0 1px #ffffffb8,0 2px 6px #2a3f3414}.legend-person-male,.legend-person-female{border-color:var(--bt-border)}.legend-person-female{color:var(--bt-female)}.legend-person-group{background:var(--bt-group-fill);color:var(--bt-text);border-color:#374e4275}.legend-person-major{color:#223f2d;background:linear-gradient(#e7f1e8 0%,#9bbfa1 100%);border-color:#537e5b94}.legend-person-special1{color:#f8fbfc;background:#6f8da8;border-color:#46678485}.legend-person-special2{color:#2f3f24;background:#8ba76a;border-color:#5c7a4385}.legend-person-king{color:#4b3a17;background:linear-gradient(#f5e8bd 0%,#c7a34f 100%);border-color:#8b69258f}.legend-person-king-judah{color:#54351f;background:linear-gradient(#f1dac2 0%,#bf8651 100%);border-color:#7e4f2b8a}.legend-person-king-israel{color:#263f5b;background:linear-gradient(#dbe7ef 0%,#7f9bb5 100%);border-color:#425e7c8a}.legend-person-judge{color:#463551;background:linear-gradient(#e7deec 0%,#a690b8 100%);border-color:#67527e8a}.legend-person-prophet{color:#4d284f;background:linear-gradient(#efd4f0 0%,#b85aa9 100%);border-color:#7b3a7f8f}.legend-person-tribe{color:#24464c;text-underline-offset:2px;background:#9fcbd2;border-color:#437b848a;text-decoration:underline;text-decoration-thickness:1px}.chart-legend-relations ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px;display:grid}.chart-legend-footnote{color:var(--bt-text-muted);word-break:keep-all;border-top:1px solid #66746929;margin:9px 0 0;padding-top:7px;font-weight:800;line-height:1.35}.legend-relation-item{min-height:16px;color:var(--bt-text);white-space:nowrap;grid-template-columns:80px minmax(0,auto);align-items:center;gap:5px;font-weight:850;display:grid}.legend-line-sample{border-top:1px solid var(--bt-relation-default);width:70px;height:0;display:inline-block}.legend-line-marriage{border-top-style:solid;border-top-color:var(--bt-relation-marriage);border-top-width:1.4px}.legend-line-parent{border-top-style:solid}.legend-line-direct{border-top-style:dashed;border-top-color:var(--bt-relation-direct)}.legend-line-special{border-top:1px dashed var(--bt-relation-special);position:relative}.legend-line-special:after{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;border-left:9px solid var(--bt-relation-special);width:0;height:0;position:absolute;top:-6px;right:-2px}.background-element-layer,.connection-layer,.element-layer{position:absolute;inset:0}.background-element-layer{z-index:1;pointer-events:none}.connection-layer{z-index:2;pointer-events:auto}.element-layer{z-index:3;pointer-events:none}.background-element-layer .chart-element{pointer-events:none}.chart-element{color:var(--bt-text);cursor:pointer;white-space:nowrap;pointer-events:auto;background:#fffdf7f5;border:1px solid #6674693d;border-radius:3px;padding:2px 4px;font-size:9px;font-weight:800;line-height:1.25;position:absolute}.chart-element.is-match{box-shadow:0 0 0 2px #c7793285}.chart-element.is-current-match{outline:3px solid var(--bt-selected);outline-offset:3px}.chart-element-person.person-type-female{color:var(--bt-female)}.chart-element-person.person-type-major{--person-role-bg:linear-gradient(180deg, #e7f1e8 0%, #9bbfa1 100%);--person-role-border:#537e5b94;--person-role-shadow:#3d644429;--person-role-text:#223f2d}.chart-element-person.person-type-special1{--person-role-bg:linear-gradient(180deg, #dce8f2 0%, #6f8da8 100%);--person-role-border:#46678485;--person-role-shadow:#3a5b7729;--person-role-text:#243d52}.chart-element-person.person-type-special2{--person-role-bg:linear-gradient(180deg, #e7eed8 0%, #8ba76a 100%);--person-role-border:#5c7a4385;--person-role-shadow:#536f3e26;--person-role-text:#2f3f24}.chart-element-person.person-type-tribe{--person-role-bg:linear-gradient(180deg, #d8edf0 0%, #9fcbd2 100%);--person-role-border:#437b848a;--person-role-shadow:#36687126;--person-role-text:#24464c;text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.chart-element-person.person-type-prophet{--person-role-bg:linear-gradient(180deg, #efd4f0 0%, #b85aa9 100%);--person-role-border:#7b3a7f8f;--person-role-shadow:#5e2d6229;--person-role-text:#4d284f}.chart-element-person.person-type-king{--person-role-bg:linear-gradient(180deg, #f5e8bd 0%, #c7a34f 100%);--person-role-border:#8b69258f;--person-role-shadow:#7d5d1e2e;--person-role-text:#4b3a17;--person-role-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.25 10.75h7.5l.55-5.1-2.45 2.15L8 4.05 6.15 7.8 3.7 5.65l.55 5.1Z' fill='%23a66600'/%3E%3Cpath d='M4.7 12h6.6' stroke='%23a66600' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E")}.chart-element-person.person-type-king-judah{--person-role-bg:linear-gradient(180deg, #f1dac2 0%, #bf8651 100%);--person-role-border:#7e4f2b8a;--person-role-shadow:#7e4f2b29;--person-role-text:#54351f;--person-role-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.25 10.75h7.5l.55-5.1-2.45 2.15L8 4.05 6.15 7.8 3.7 5.65l.55 5.1Z' fill='%238f4b16'/%3E%3Cpath d='M4.7 12h6.6' stroke='%238f4b16' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E")}.chart-element-person.person-type-king-israel{--person-role-bg:linear-gradient(180deg, #dbe7ef 0%, #7f9bb5 100%);--person-role-border:#425e7c8a;--person-role-shadow:#39547026;--person-role-text:#263f5b;--person-role-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.25 10.75h7.5l.55-5.1-2.45 2.15L8 4.05 6.15 7.8 3.7 5.65l.55 5.1Z' fill='%232b5f9f'/%3E%3Cpath d='M4.7 12h6.6' stroke='%232b5f9f' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E")}.chart-element-person.person-type-judge{--person-role-bg:linear-gradient(180deg, #e7deec 0%, #a690b8 100%);--person-role-border:#67527e8a;--person-role-shadow:#503d6429;--person-role-text:#463551;--person-role-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 3.2 11.4 4.4v3c0 2.2-1.4 3.9-3.4 5.1-2-1.2-3.4-2.9-3.4-5.1v-3L8 3.2Z' fill='%237057a3'/%3E%3Cpath d='M8 5.2v4.2M5.9 7.3h4.2' stroke='%23fff8db' stroke-width='1.15' stroke-linecap='round'/%3E%3C/svg%3E")}.chart-element-person.person-type-major,.chart-element-person.person-type-special1,.chart-element-person.person-type-special2,.chart-element-person.person-type-tribe,.chart-element-person.person-type-prophet,.chart-element-person.person-type-king,.chart-element-person.person-type-king-judah,.chart-element-person.person-type-king-israel,.chart-element-person.person-type-judge{border-color:var(--person-role-border);color:var(--person-role-text);box-shadow:inset 0 1px 0 #ffffffb8, 0 1px 3px var(--person-role-shadow);font-weight:900;background:var(--person-role-bg)!important}.chart-element-person.person-type-king:before,.chart-element-person.person-type-king-judah:before,.chart-element-person.person-type-king-israel:before,.chart-element-person.person-type-judge:before{content:attr(data-role-no);border:1px solid var(--person-role-border,#374e4247);background:var(--person-role-icon) no-repeat left / 8px 8px, #ffffffeb;width:auto;height:8px;color:var(--person-role-text,#24372e);pointer-events:none;border-radius:999px;justify-content:flex-start;align-items:center;padding:0 2px 0 7px;font-size:6px;font-weight:600;line-height:1;display:flex;position:absolute;top:-6px;left:-5px;box-shadow:0 1px 2px #23372e24,inset 0 1px #ffffff9e}.person-annotation{box-sizing:border-box;max-width:180px;color:var(--bt-note-text);cursor:pointer;pointer-events:auto;text-align:left;white-space:pre-line;background:0 0;border:0;gap:0;padding:0;font-size:9px;font-weight:800;line-height:1.25;display:grid;position:absolute}.person-annotation.has-manual-width{max-width:none}.person-annotation-alias{width:max-content;max-width:100%;color:var(--bt-note-text);text-align:center;background:#fbf2cfeb;border-radius:2px;padding:1px 2px;font-size:7px;font-weight:700}.person-annotation-callout{box-sizing:border-box;color:var(--bt-note-text);overflow-wrap:anywhere;white-space:pre-line;background:#fbf2cff0;border-radius:2px;padding:2px;font-size:7px;font-weight:700}.person-annotation-resize-handle{cursor:ew-resize;opacity:0;background:#42614f38;border-radius:999px;width:9px;transition:opacity .12s;position:absolute;top:0;bottom:0;right:-5px}.person-annotation:hover .person-annotation-resize-handle,.person-annotation.is-resizing .person-annotation-resize-handle{opacity:1}.person-annotation.is-match{box-shadow:0 0 0 2px #c779326b}.person-annotation.is-related,.person-annotation.is-related-target{box-shadow:0 0 0 2px #466f584d}.person-annotation.is-family-move-included:not(.is-selected){box-shadow:0 0 0 2px #2d86d34d}.person-annotation.is-family-move-manual-included:not(.is-selected){outline-offset:2px;outline:2px solid #637fa8}.person-annotation.is-family-move-excluded-root,.person-annotation.is-family-move-excluded-descendant{outline-offset:2px;opacity:.58;outline:2px dashed #616d66b8;box-shadow:none!important}.person-annotation.is-family-move-excluded-root{outline-color:#9a463acc}.world.is-family-exclude-picking .person-annotation.is-family-move-exclude-candidate{cursor:copy}.person-annotation.is-current-match,.person-annotation.is-selected{outline:2px solid var(--bt-selected);outline-offset:2px}.chart-element-group,.chart-element-note,.chart-element-freeText{text-align:left;white-space:pre-line}.chart-element-group{box-shadow:inset 0 1px #ffffffb8,0 2px 6px #2a3f3414;background:var(--bt-group-fill)!important;color:var(--bt-text)!important;border-color:#62756880!important}.chart-element-note,.chart-element-freeText{color:var(--bt-note-text);background:#fbf2cff0;border-color:#0000;font-size:8px;font-weight:500}.chart-element-backgroundRegion,.chart-element-shape{background:#9cb4a41f;border-style:dashed;min-width:80px;min-height:45px}.chart-connection{pointer-events:none}
