:root{--ft-node-bg-male: #ffffff;--ft-node-bg-female: #ffffff;--ft-node-bg-deceased: #f9fafb;--ft-node-border-male: transparent;--ft-node-border-female: transparent;--ft-node-border-deceased: transparent;--ft-node-border-width: 0px;--ft-node-border-radius: 16px;--ft-avatar-bg-male: #ffffff;--ft-avatar-bg-female: #ffffff;--ft-avatar-bg-deceased: #e5e7eb;--ft-avatar-border-male: #d1d5db;--ft-avatar-border-female: #d1d5db;--ft-avatar-border-deceased: #9ca3af;--ft-avatar-border-width-male: 1px;--ft-avatar-border-width-female: 1px;--ft-avatar-border-width-deceased: 1px;--ft-avatar-glow-male: transparent;--ft-avatar-glow-female: transparent;--ft-avatar-glow-deceased: transparent;--ft-avatar-glow-enabled-male: 0;--ft-avatar-glow-enabled-female: 0;--ft-avatar-glow-enabled-deceased: 0;--ft-avatar-glow-opacity-male: 0;--ft-avatar-glow-opacity-female: 0;--ft-avatar-glow-opacity-deceased: 0;--ft-avatar-glow-radius-male: 0px;--ft-avatar-glow-radius-female: 0px;--ft-avatar-glow-radius-deceased: 0px;--ft-avatar-initials-male: #0369a1;--ft-avatar-initials-female: #be185d;--ft-avatar-initials-deceased: #6b7280;--ft-text-primary: #1f2937;--ft-text-secondary: #4b5563;--ft-text-dates: #6b7280;--ft-text-male: #374151;--ft-text-female: #374151;--ft-text-male-date: #6b7280;--ft-text-female-date: #6b7280;--ft-text-firstname-family: "Inter", system-ui, sans-serif;--ft-text-firstname-size: 13px;--ft-text-firstname-weight: 600;--ft-text-middlename-family: "Inter", system-ui, sans-serif;--ft-text-middlename-size: 10px;--ft-text-middlename-weight: 400;--ft-text-middlename-color: #4b5563;--ft-text-middlename-style: italic;--ft-text-lastname-family: "Inter", system-ui, sans-serif;--ft-text-lastname-size: 12px;--ft-text-lastname-weight: 500;--ft-text-birthdata-family: "Inter", system-ui, sans-serif;--ft-text-birthdata-size: 10px;--ft-text-birthdata-weight: 400;--ft-text-initials-family: "Inter", system-ui, sans-serif;--ft-text-initials-size: 24px;--ft-text-initials-weight: 700;--ft-text-initials-color: #000000;--ft-connection-parent-child: #e5e7eb;--ft-connection-spouse: #94a3b8;--ft-connection-spouse-dash: 0;--ft-connection-stroke-width: 2px;--ft-connection-line-cap: round;--ft-connection-spouse-stroke-width: 2.5px;--ft-connection-parent-child-style: solid;--ft-connection-parent-child-dash-pattern: 5, 5;--ft-connection-parent-child-opacity: 1;--ft-connection-spouse-style: solid;--ft-connection-spouse-opacity: 1;--ft-connection-spouse-line-cap: round;--ft-connection-dot-shape: circle;--ft-connection-dot-size: 4px;--ft-connection-dot-color: #e5e7eb;--ft-connection-dot-stroke-color: none;--ft-connection-dot-stroke-width: 0px;--ft-background: transparent;--ft-border-radius: inherit;--ft-hover-highlight-opacity: 1;--ft-hover-dim-opacity: .4}[data-theme=dark]:root,:root[data-theme=dark]{--ft-node-bg-male: #1f2937;--ft-node-bg-female: #1f2937;--ft-node-bg-deceased: #111827;--ft-node-border-male: transparent;--ft-node-border-female: transparent;--ft-node-border-deceased: transparent;--ft-avatar-bg-male: #374151;--ft-avatar-bg-female: #374151;--ft-avatar-bg-deceased: #1f2937;--ft-avatar-border-male: #6b7280;--ft-avatar-border-female: #6b7280;--ft-avatar-border-deceased: #4b5563;--ft-avatar-initials-male: #0369a1;--ft-avatar-initials-female: #be185d;--ft-avatar-initials-deceased: #9ca3af;--ft-text-primary: #f9fafb;--ft-text-secondary: #d1d5db;--ft-text-dates: #9ca3af;--ft-text-male: #f9fafb;--ft-text-female: #f9fafb;--ft-text-male-date: #9ca3af;--ft-text-female-date: #9ca3af;--ft-text-middlename-color: #d1d5db;--ft-connection-parent-child: #374151;--ft-connection-spouse: #94a3b8;--ft-connection-dot-color: #374151}.ft-connection-line{stroke:var(--ft-connection-parent-child);stroke-width:var(--ft-connection-stroke-width);stroke-linecap:var(--ft-connection-line-cap);opacity:var(--ft-connection-parent-child-opacity);fill:none}.ft-connection-line[stroke]{stroke-width:var(--ft-connection-stroke-width);stroke-linecap:var(--ft-connection-line-cap);opacity:var(--ft-connection-parent-child-opacity);fill:none}.ft-connection-line[data-style=dashed]{stroke-dasharray:var(--ft-connection-parent-child-dash-pattern)}.ft-connection-line[data-style=dotted]{stroke-dasharray:2,2}.ft-connection-line-double{stroke:var(--ft-connection-parent-child);stroke-width:calc(var(--ft-connection-stroke-width) * 1.5);stroke-linecap:var(--ft-connection-line-cap);opacity:var(--ft-connection-parent-child-opacity);fill:none}.ft-connection-line-double-inner{stroke:#fff;stroke-width:calc(var(--ft-connection-stroke-width) * .5);stroke-linecap:var(--ft-connection-line-cap);opacity:var(--ft-connection-parent-child-opacity);fill:none}.ft-spouse-line{stroke:var(--ft-connection-spouse);stroke-width:var(--ft-connection-spouse-stroke-width);stroke-linecap:var(--ft-connection-spouse-line-cap);opacity:var(--ft-connection-spouse-opacity);fill:none}.ft-spouse-line[stroke]{stroke-width:var(--ft-connection-spouse-stroke-width);stroke-linecap:var(--ft-connection-spouse-line-cap);opacity:var(--ft-connection-spouse-opacity);fill:none}.ft-spouse-line[data-style=dashed]{stroke-dasharray:var(--ft-connection-spouse-dash)}.ft-spouse-line[data-style=dotted]{stroke-dasharray:2,2}.ft-spouse-line[data-style=solid]{stroke-dasharray:none}.ft-spouse-line-double{stroke:var(--ft-connection-spouse);stroke-width:calc(var(--ft-connection-spouse-stroke-width) * 1.5);stroke-linecap:var(--ft-connection-spouse-line-cap);opacity:var(--ft-connection-spouse-opacity);fill:none}.ft-connection-dot{fill:var(--ft-connection-dot-color);stroke:var(--ft-connection-dot-stroke-color);stroke-width:var(--ft-connection-dot-stroke-width)}.ft-family-unit-line{stroke:var(--ft-connection-parent-child);stroke-width:var(--ft-connection-stroke-width);stroke-linecap:var(--ft-connection-line-cap);opacity:var(--ft-connection-parent-child-opacity);fill:none}.ft-family-unit-line[stroke]{stroke-width:var(--ft-connection-stroke-width);stroke-linecap:var(--ft-connection-line-cap);opacity:var(--ft-connection-parent-child-opacity);fill:none}.ft-family-unit-line[data-style=dashed]{stroke-dasharray:var(--ft-connection-parent-child-dash-pattern)}.ft-family-unit-line[data-style=dotted]{stroke-dasharray:2,2}.ft-adoptive-line{stroke:var(--ft-connection-parent-child);stroke-width:var(--ft-connection-stroke-width);stroke-linecap:var(--ft-connection-line-cap);opacity:.7;stroke-dasharray:5,3;fill:none}.ft-sibling-line{stroke:var(--ft-connection-parent-child);stroke-width:var(--ft-connection-stroke-width);stroke-linecap:var(--ft-connection-line-cap);opacity:.6;stroke-dasharray:3,3;fill:none}.ft-text-family-label{font-family:Georgia,serif;font-size:12px;font-weight:600;fill:var(--ft-text-primary);text-anchor:middle;dominant-baseline:central}.ft-text-married-name{font-family:var(--ft-text-firstname-family);font-size:calc(var(--ft-text-firstname-size) - 2px);font-weight:var(--ft-text-firstname-weight);font-style:italic;fill:var(--ft-text-secondary);text-anchor:middle;dominant-baseline:central}.ft-text-title{font-family:var(--ft-text-firstname-family);font-size:calc(var(--ft-text-firstname-size) - 3px);font-weight:400;font-style:italic;fill:var(--ft-text-secondary);text-anchor:middle;dominant-baseline:central}.ft-text-dates{font-family:var(--ft-text-birthdata-family);font-size:var(--ft-text-birthdata-size);font-weight:var(--ft-text-birthdata-weight);font-style:italic;letter-spacing:.3px;fill:var(--ft-text-dates);opacity:.85}.ft-text-marriage{font-family:Georgia,serif;font-size:8px;fill:var(--ft-connection-spouse);opacity:.7}.ft-text-firstname{font-family:var(--ft-text-firstname-family);font-weight:var(--ft-text-firstname-weight);font-size:var(--ft-text-firstname-size);fill:var(--ft-text-primary);text-anchor:middle}.ft-text-middlename-node{font-family:var(--ft-text-middlename-family);font-weight:var(--ft-text-middlename-weight);font-size:var(--ft-text-middlename-size);fill:var(--ft-text-middlename-color);text-anchor:middle;font-style:var(--ft-text-middlename-style)}.ft-text-lastname-node{font-family:var(--ft-text-lastname-family);font-weight:var(--ft-text-lastname-weight);font-size:var(--ft-text-lastname-size);fill:var(--ft-text-secondary);text-anchor:middle}.ft-text-lifespan{font-family:var(--ft-text-birthdata-family);font-size:var(--ft-text-birthdata-size);font-weight:var(--ft-text-birthdata-weight);fill:var(--ft-text-dates);text-anchor:middle}.ft-text-initials{font-family:var(--ft-text-initials-family);font-weight:var(--ft-text-initials-weight);font-size:var(--ft-text-initials-size)}.ft-text-initials-male{fill:var(--ft-avatar-initials-male)}.ft-text-initials-female{fill:var(--ft-avatar-initials-female)}.ft-text-initials-deceased{fill:var(--ft-avatar-initials-deceased)}.ft-text-initials-small{font-family:var(--ft-text-initials-family);font-weight:var(--ft-text-initials-weight);font-size:calc(var(--ft-text-initials-size) - 4px)}.ft-text-fallback-name{font-family:var(--ft-text-firstname-family);font-weight:600;font-size:14px;fill:var(--ft-text-primary)}.ft-text-fallback-middle{font-family:var(--ft-text-middlename-family);font-weight:var(--ft-text-middlename-weight);font-size:var(--ft-text-middlename-size);fill:var(--ft-text-middlename-color);font-style:var(--ft-text-middlename-style)}.ft-text-fallback-dates{font-family:var(--ft-text-birthdata-family);font-size:11px;font-weight:400;fill:var(--ft-text-dates)}.ft-text-vintage-corner{font-family:serif;font-size:10px;fill:var(--ft-text-dates);opacity:.4}.ft-text-vintage-initials{font-family:Georgia,serif;font-weight:500;font-size:13px;letter-spacing:.3px;opacity:.9}.ft-text-vintage-name{font-family:Georgia,serif;font-weight:600;font-size:14px;fill:var(--ft-text-primary);text-shadow:0 1px 3px rgba(0,0,0,.3);letter-spacing:.4px}.ft-text-vintage-middle{font-family:Georgia,Times New Roman,serif;font-weight:400;font-size:11px;fill:var(--ft-text-middlename-color);text-shadow:0 1px 2px rgba(0,0,0,.2);letter-spacing:.2px;font-style:italic;opacity:.9}.ft-text-vintage-lastname{font-family:Georgia,serif;font-weight:600;font-size:13px;fill:var(--ft-text-secondary);text-shadow:0 1px 3px rgba(0,0,0,.3);letter-spacing:.3px}.ft-text-vintage-dates{font-family:Georgia,serif;font-size:10px;font-style:italic;letter-spacing:.3px;fill:var(--ft-text-dates);opacity:.85}.ft-avatar-background-male{fill:var(--ft-avatar-bg-male);stroke:var(--ft-avatar-border-male);stroke-width:var(--ft-avatar-border-width-male)}.ft-avatar-background-female{fill:var(--ft-avatar-bg-female);stroke:var(--ft-avatar-border-female);stroke-width:var(--ft-avatar-border-width-female)}.ft-avatar-background-deceased{fill:var(--ft-avatar-bg-deceased);stroke:var(--ft-avatar-border-deceased);stroke-width:var(--ft-avatar-border-width-deceased)}.ft-avatar-fill-male{fill:var(--ft-avatar-bg-male)}.ft-avatar-fill-female{fill:var(--ft-avatar-bg-female)}.ft-avatar-fill-deceased{fill:var(--ft-avatar-bg-deceased)}.ft-avatar-glow-male{fill:var(--ft-avatar-glow-male);opacity:var(--ft-avatar-glow-opacity-male);stroke:none}.ft-avatar-glow-female{fill:var(--ft-avatar-glow-female);opacity:var(--ft-avatar-glow-opacity-female);stroke:none}.ft-avatar-glow-deceased{fill:var(--ft-avatar-glow-deceased);opacity:var(--ft-avatar-glow-opacity-deceased);stroke:none}.ft-node-background-male{fill:var(--ft-node-bg-male);stroke:var(--ft-node-border-male);stroke-width:var(--ft-node-border-width);rx:var(--ft-node-border-radius);ry:var(--ft-node-border-radius)}.ft-node-background-female{fill:var(--ft-node-bg-female);stroke:var(--ft-node-border-female);stroke-width:var(--ft-node-border-width);rx:var(--ft-node-border-radius);ry:var(--ft-node-border-radius)}.ft-node-background-deceased{fill:var(--ft-node-bg-deceased);stroke:var(--ft-node-border-deceased);stroke-width:var(--ft-node-border-width);rx:var(--ft-node-border-radius);ry:var(--ft-node-border-radius)}.ft-connection-line-double-inner,.ft-family-unit-line-double-inner{stroke:#fff;stroke-width:calc(var(--ft-connection-stroke-width) * .5);stroke-linecap:var(--ft-connection-line-cap);opacity:var(--ft-connection-parent-child-opacity);fill:none}.ft-spouse-line-double-inner{stroke:#fff;stroke-width:calc(var(--ft-connection-spouse-stroke-width) * .5);stroke-linecap:var(--ft-connection-spouse-line-cap);opacity:var(--ft-connection-spouse-opacity);fill:none}
