:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#080b12;--color-surface-search:#414a5edb;--color-surface-search-active:#58667ff5;--color-surface-panel:#3e4659f0;--color-surface-state:#232b3cf0;--color-text:#edf2f7;--color-text-muted:#bdc5d2;--color-text-subtle:#919aaa;--color-accent:#70c7ec;--color-border:#edf2f724;--color-border-active:#edf2f747;--color-hover:#edf2f71a;--color-focus:#d8e9a3;--color-shadow:#00020e61;--font-ui:"Avenir Next", "Segoe UI", sans-serif;--font-size-caption:.6875rem;--font-size-small:.8125rem;--font-size-body:.9375rem;--font-size-title:1.5rem;--font-size-section:1.0625rem;--font-size-mobile-title:1.25rem;--font-size-mobile-footer:.5625rem;--line-height-tight:1.2;--line-height-body:1.5;--tracking-tight:.015em;--tracking-normal:.025em;--tracking-title:.035em;--tracking-wide:.08em;--tracking-wider:.1em;--tracking-widest:.12em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--radius-control:.375rem;--radius-panel:.625rem;--radius-mobile-panel:.75rem;--border-width:1px;--icon-stroke-width:1.7;--shadow-overlay:0 .5rem 2rem var(--color-shadow);--transition-fast:.16s cubic-bezier(.22, 1, .36, 1);--shell-gutter:var(--space-8);--search-top:var(--space-8);--search-width:min(42vw, 40.5rem);--control-height:2.75rem;--panel-width:clamp(400px, calc(28vw + 40px), 500px);--panel-gutter:var(--space-8);--footer-offset:var(--space-3);--mobile-panel-max-height:58dvh;--fact-label-width:5.5rem;--state-width:26rem;--mobile-results-max-height:32dvh;--spinner-duration:.9s;--graph-loading-opacity:.3;--focus-ring-width:.125rem}html,body,#root{background:var(--color-canvas);width:100%;height:100%;margin:0;overflow:hidden}*{box-sizing:border-box}body,button,input{font-family:var(--font-ui)}button,input{color:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:var(--focus-ring-width)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.surface{background:var(--color-surface-panel);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-overlay)}.app-shell{isolation:isolate;min-width:0;color:var(--color-text);background:var(--color-canvas);position:fixed;inset:0;overflow:hidden}.icon-button{width:var(--control-height);height:var(--control-height);color:var(--color-text);border-radius:var(--radius-control);cursor:pointer;transition:background-color var(--transition-fast);background:0 0;border:0;place-items:center;padding:0;display:grid}.icon-button:not(:disabled):hover{background:var(--color-hover)}.icon-button svg{width:var(--space-5);height:var(--space-5);fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:var(--icon-stroke-width)}.icon-button:disabled,.primary-button:disabled,.secondary-button:disabled,.text-button:disabled{cursor:not-allowed;opacity:.45}.icon-button>svg,.icon-button>.state-spin{grid-area:1/1}.icon-button[aria-busy=true]>svg{opacity:0}.primary-button{justify-content:center;gap:var(--space-2);align-items:center;display:inline-flex}.secondary-button,.primary-button,.text-button{min-height:var(--control-height);padding:0 var(--space-4);color:var(--color-text);font:inherit;cursor:pointer;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);transition:background-color var(--transition-fast), border-color var(--transition-fast)}.secondary-button{background:0 0}.primary-button{border-color:var(--color-border-active);background:#5dc5ff33;font-weight:600}.text-button{min-height:auto;padding:var(--space-2) var(--space-3);background:0 0;border-color:#0000;justify-self:start}.secondary-button:not(:disabled):hover,.primary-button:not(:disabled):hover,.text-button:not(:disabled):hover{background:var(--color-hover)}.secondary-button:focus-visible,.primary-button:focus-visible,.text-button:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:var(--space-1)}.destructive-button{color:var(--color-text-muted)}.not-found-page{z-index:20;background:var(--color-canvas);position:fixed;inset:0}.not-found-page img{object-fit:contain;width:100%;min-width:0;height:100%;min-height:0;display:block;position:absolute;inset:0}.not-found-page .not-found-back{z-index:1;top:calc(var(--space-4) + env(safe-area-inset-top));left:calc(var(--space-4) + env(safe-area-inset-left));gap:var(--space-2);color:var(--color-text);background:var(--color-surface-panel);box-shadow:var(--shadow-overlay);align-items:center;display:inline-flex;position:absolute}.not-found-back svg{width:var(--space-5);height:var(--space-5);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:var(--icon-stroke-width)}.reference-page{z-index:10;pointer-events:auto;background:var(--color-canvas);flex-direction:column;min-width:0;display:flex;position:fixed;inset:0;overflow:hidden}.reference-page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.reference-page-header h1{font-size:var(--font-size-title);line-height:var(--line-height-tight);letter-spacing:var(--tracking-tight);margin:0}.reference-page-close{flex:0 0 var(--control-height)}.reference-page-scroll{min-width:0;min-height:0;padding:var(--space-8) calc(var(--space-6) + env(safe-area-inset-right)) calc(var(--space-10) + env(safe-area-inset-bottom)) calc(var(--space-6) + env(safe-area-inset-left));overscroll-behavior:contain;flex:auto;overflow:hidden auto}.reference-page-content{width:min(72rem,100%);padding:var(--space-8);border-radius:var(--radius-panel);margin:0 auto}.reference-page-content>p{margin:0 0 var(--space-6);color:var(--color-text-muted);font-size:var(--font-size-body);line-height:var(--line-height-body)}.reference-sections{gap:var(--space-4);display:grid}.reference-sections>section{padding:var(--space-5) var(--space-6);background:var(--color-surface-search);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control)}.reference-sections h2{padding-bottom:var(--space-3);margin:0 0 var(--space-4);font-size:1.125rem;line-height:var(--line-height-tight);border-bottom:var(--border-width) solid var(--color-border)}.reference-sections p,.reference-sections ul,.reference-sections ol{font-size:var(--font-size-body);line-height:var(--line-height-body);margin:0}.reference-sections ul,.reference-sections ol{padding-inline-start:var(--space-6)}.reference-sections li+li{margin-top:var(--space-2)}.reference-sections p+p,.reference-sections p+ul,.reference-sections p+ol,.reference-sections ul+p,.reference-sections ol+p{margin-top:var(--space-3)}.settings-page-content{width:min(42rem,100%)}.settings-form{gap:var(--space-5);display:grid}.settings-form .new-person-field{align-items:center;column-gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);max-width:none}.settings-form .surface-alert{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.settings-success{color:var(--color-text);margin:0}.settings-actions{justify-content:flex-end;display:flex}.metrics-page-content{width:min(80rem,100%)}.metrics-controls,.metrics-periods{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.metrics-controls{margin-bottom:var(--space-6);align-items:flex-end}.metrics-controls fieldset{border:0;min-width:0;margin:0;padding:0}.metrics-controls legend{margin-bottom:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-small)}.metrics-periods button[aria-pressed=true]{color:var(--color-accent);border-color:var(--color-accent);box-shadow:inset 0 0 0 var(--border-width) var(--color-accent)}.metrics-dashboard>section,.metrics-limitations{padding-top:var(--space-6);margin-top:var(--space-6);border-top:var(--border-width) solid var(--color-border)}.metrics-page h2{margin:0 0 var(--space-4);font-size:var(--font-size-section);line-height:var(--line-height-tight)}.metrics-page p{line-height:var(--line-height-body)}.metrics-dashboard section>p,.metrics-limitations p,.metrics-updated{color:var(--color-text-muted);font-size:var(--font-size-small)}.metrics-totals{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));margin:0;display:grid}.metrics-totals>div{padding:var(--space-4);background:var(--color-surface-state);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control)}.metrics-totals dt{color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-body)}.metrics-totals dd{margin:var(--space-2) 0 0;font-size:var(--font-size-title);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-weight:600}.metrics-table-wrap{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);scrollbar-color:var(--color-text-subtle) transparent;scrollbar-width:thin;max-width:100%;overflow-x:auto}.metrics-table-wrap:focus-visible{outline:var(--focus-ring-width) solid var(--color-accent);outline-offset:var(--focus-ring-width)}.metrics-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:28rem}.metrics-daily-table{min-width:56rem}.metrics-table caption{padding:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-small);text-align:left}.metrics-table th,.metrics-table td{padding:var(--space-3);font-size:var(--font-size-small);line-height:var(--line-height-body);text-align:left;vertical-align:top;overflow-wrap:anywhere;border-bottom:var(--border-width) solid var(--color-border)}.metrics-table thead th{color:var(--color-text-muted);background:var(--color-surface-state)}.metrics-table tbody th{font-weight:500}.metrics-table tbody tr:last-child>*{border-bottom:0}.metrics-code{margin-top:var(--space-2);color:var(--color-text-muted);font-size:inherit;font-weight:400;display:block}.metrics-notice,.metrics-error{padding:var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-state)}.metrics-error p{overflow-wrap:anywhere}@media (width<=600px){.metrics-page .reference-page-scroll{padding-top:var(--space-4);padding-right:calc(var(--space-3) + env(safe-area-inset-right));padding-left:calc(var(--space-3) + env(safe-area-inset-left))}.metrics-page-content{padding:var(--space-4)}.metrics-controls{flex-direction:column;align-items:flex-start}}.clans-directory{background:linear-gradient(145deg, #5dc5ff12, transparent 55%), var(--color-surface-search)}.reference-sections .clans-list{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.reference-sections .clans-list>li{min-width:0;margin:0}.clan-action{width:100%;min-height:8rem;padding:var(--space-4) calc(var(--space-8) + var(--space-2)) var(--space-4) var(--space-4);color:var(--color-text);text-align:left;cursor:pointer;background:var(--color-surface-panel);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);gap:var(--space-2);transition:background-color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);grid-template-rows:auto auto 1fr;display:grid;position:relative;overflow:hidden}.clan-action:hover{background:var(--color-hover);border-color:var(--color-border-active);transform:translateY(-1px)}.clan-action:active{transform:translateY(0)}.clan-action-name{overflow-wrap:anywhere;font-size:var(--font-size-section);font-weight:700;line-height:var(--line-height-tight)}.clan-action-founder,.clan-action-count{overflow-wrap:anywhere;color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-body)}.clan-action-count{align-self:end}.clan-action svg{top:50%;right:var(--space-4);width:var(--space-5);height:var(--space-5);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:var(--icon-stroke-width);transition:transform var(--transition-fast);position:absolute;transform:translateY(-50%)}.clan-action:hover svg{transform:translate(var(--space-1), -50%)}.clans-directory-state{gap:var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;min-height:4rem;display:flex}.clans-directory-state p,.clans-directory-empty{color:var(--color-text-muted);margin:0}.clans-directory-loading{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.clans-directory-loading .skeleton-block{border-radius:var(--radius-control);height:5rem}.clan-information-copy{white-space:pre-wrap;overflow-wrap:anywhere}.clan-tree-page{z-index:20;min-width:0;min-height:0;color:var(--color-text);background:var(--color-canvas);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.clan-tree-header{z-index:2;gap:var(--space-4);padding:calc(var(--space-4) + env(safe-area-inset-top)) calc(var(--space-5) + env(safe-area-inset-right)) var(--space-4) calc(var(--space-5) + env(safe-area-inset-left));border-width:0 0 var(--border-width);box-shadow:none;flex:none;justify-content:space-between;align-items:flex-start;display:flex;position:relative}.clan-tree-heading{min-width:0}.clan-tree-heading>p{color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-tight);margin:0}.clan-tree-heading h1{margin:var(--space-1) 0 0;overflow-wrap:anywhere;font-size:var(--font-size-section);line-height:var(--line-height-tight)}.clan-tree-heading .clan-tree-founder{margin-top:var(--space-2);overflow-wrap:anywhere}.clan-tree-close{flex:0 0 var(--control-height)}.clan-tree-surface{background:radial-gradient(circle at 50% 30%, #5dc5ff14, transparent 45%), var(--color-canvas);flex:auto;place-items:stretch stretch;min-width:0;min-height:0;display:grid;position:relative}.clan-tree-state{width:min(32rem, calc(100% - 2 * var(--space-5)));padding:var(--space-6);text-align:center;border-radius:var(--radius-panel);margin:auto}.clan-tree-state h2,.clan-tree-state p{margin:0}.clan-tree-state p+.secondary-button,.clan-tree-state h2+p{margin-top:var(--space-3)}.clan-tree-state .state-spin{margin:0 auto var(--space-3)}.clan-tree-ready,.clan-tree-chart,.clan-family-tree-host{min-width:0;min-height:0;position:absolute;inset:0}.clan-tree-ready[data-panel=true] .clan-tree-help,.clan-tree-ready[data-panel=true] .clan-tree-controls{visibility:hidden;opacity:0}.clan-tree-surface>.person-panel{z-index:8;position:absolute}.clan-tree-help{z-index:5;top:var(--space-3);max-width:calc(100% - 2 * var(--space-5));padding:var(--space-2) var(--space-3);gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-tight);text-align:center;pointer-events:none;border-radius:999px;flex-wrap:wrap;display:flex;position:absolute;left:50%;transform:translate(-50%)}.clan-family-tree-host.f3{width:100%;height:100%;max-height:none;color:var(--color-text);--background-color:var(--color-canvas);--text-color:var(--color-text);--male-color:#355d82;--female-color:#80556f;--genderless-color:var(--color-surface-panel);background:0 0;outline:none;overflow:hidden}.clan-family-tree-host.f3:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:calc(-1 * var(--focus-ring-width))}.clan-family-tree-host.f3 #f3Canvas,.clan-family-tree-host.f3 svg.main_svg{width:100%;height:100%}.clan-family-tree-host.f3 .f3-nav-cont,.clan-family-tree-host.f3 .mini-tree{display:none}.clan-family-tree-host.f3 div.card{font-family:var(--font-ui);letter-spacing:var(--tracking-normal);outline:none}.clan-family-tree-host.f3 div.card-rect{width:220px;height:88px;min-height:88px;max-height:88px;padding:var(--space-3);gap:var(--space-1);border:var(--border-width) solid #edf2f733;border-radius:var(--radius-control);overflow:hidden;box-shadow:0 .5rem 1.5rem #00020e4d}.clan-family-tree-host.f3 div.card-rect>div:first-child{overflow-wrap:anywhere;font-size:var(--font-size-body);font-weight:700;line-height:var(--line-height-tight);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.clan-family-tree-host.f3 div.card-rect>div:nth-child(2){text-overflow:ellipsis;white-space:nowrap;color:#edf2f7d1;min-height:1em;font-size:var(--font-size-small);overflow:hidden}.clan-family-tree-host.f3 div.card-main .card-inner{box-shadow:none;outline:none}.clan-family-tree-host.f3 div.card:hover>div{transform:translateY(-2px)}.clan-family-tree-host.f3 div.card:hover .card-inner{box-shadow:var(--shadow-overlay)}.clan-family-tree-host.f3 div.card:focus-visible .card-inner,.clan-family-tree-host.f3 div.card[aria-current=true] .card-inner{outline:3px solid var(--color-focus);outline-offset:3px;box-shadow:0 0 .5rem #d8e9a359, var(--shadow-overlay)}.clan-tree-controls{z-index:7;right:calc(var(--space-4) + env(safe-area-inset-right));bottom:calc(var(--space-4) + env(safe-area-inset-bottom));padding:var(--space-1);gap:var(--space-1);border-radius:var(--radius-control);transition:visibility var(--transition-fast), opacity var(--transition-fast);display:flex;position:absolute}.clan-tree-controls .icon-button{width:var(--control-height);height:var(--control-height)}.clan-tree-chart-state{z-index:6;width:min(28rem, calc(100% - 2 * var(--space-5)));padding:var(--space-4);justify-content:center;align-items:center;gap:var(--space-3);text-align:center;border-radius:var(--radius-panel);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.clan-tree-chart-state p{margin:0}.history-sections .history-table-summary{margin-top:var(--space-4)}.history-table-wrap{max-width:100%;margin-top:var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);scrollbar-color:var(--color-text-subtle) transparent;scrollbar-width:thin;overflow-x:auto}.history-table-wrap:focus-visible{outline:var(--focus-ring-width) solid var(--color-accent);outline-offset:var(--focus-ring-width)}.history-table{table-layout:fixed;font-variant-numeric:tabular-nums;border-collapse:collapse;width:100%}.history-table th,.history-table td{padding:var(--space-3);overflow-wrap:anywhere;font-size:var(--font-size-small);line-height:var(--line-height-body);text-align:left;vertical-align:top;border-bottom:var(--border-width) solid var(--color-border)}.history-table th{color:var(--color-text-muted);background:var(--color-surface-state);font-weight:600}.history-table tbody th{color:var(--color-text);background:0 0}.history-table tbody tr:last-child>*{border-bottom:0}.history-sections .history-subheading{margin:var(--space-6) 0 var(--space-3);color:var(--color-text);font-size:var(--font-size-section);line-height:var(--line-height-tight)}.history-video-message{white-space:pre-wrap;overflow-wrap:anywhere}.history-video-player{aspect-ratio:16/9;border-radius:var(--radius-control);background:#000;border:0;width:100%;display:block}.history-gallery{align-items:start;gap:var(--space-4);display:grid}.history-gallery-top{margin-bottom:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.history-gallery-church{margin-top:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr))}.history-gallery-period{margin-top:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}.history-gallery-post-revolution{margin-top:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr))}.history-photo{gap:var(--space-2);min-width:0;margin:0;display:grid}.history-photo figcaption{color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-body)}.history-image-button{aspect-ratio:4/3;cursor:zoom-in;background:var(--color-canvas);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);justify-content:center;align-items:center;width:100%;min-width:0;padding:0;display:flex;overflow:hidden}.history-image-button:focus-visible{outline:var(--focus-ring-width) solid var(--color-accent);outline-offset:var(--focus-ring-width)}.history-image-button img{object-fit:contain;width:100%;height:100%;display:block}.history-lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;padding:var(--space-6);background:var(--color-canvas);border:0;overflow:hidden}.history-lightbox::backdrop{background:#000000d1}.history-lightbox>img{object-fit:contain;width:100%;height:100%;display:block}.history-lightbox-close{z-index:1;top:calc(var(--space-4) + env(safe-area-inset-top));right:calc(var(--space-4) + env(safe-area-inset-right));position:absolute}.necropolis-page-title{gap:var(--space-2);display:grid}.necropolis-page-title>p{color:var(--color-text-muted);font-size:var(--font-size-body);line-height:var(--line-height-body);margin:0}.necropolis-register-header>p{color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-body);margin:0}.necropolis-table-wrap{margin-top:var(--space-3)}.necropolis-table thead th:first-child{width:46%}.necropolis-table td{overflow-wrap:normal;white-space:nowrap}.necropolis-table .necropolis-year-row th{color:var(--color-text-muted);font-size:var(--font-size-small);letter-spacing:var(--tracking-wide);background:var(--color-surface-state);font-weight:600}.about-project-content{position:relative;overflow:hidden}.about-project-header{padding-bottom:var(--space-8);margin-bottom:var(--space-8);border-bottom:var(--border-width) solid var(--color-border);position:relative}.about-project-header .reference-page-close{z-index:2;position:absolute;top:0;right:0}.about-project-card{padding:var(--space-8) var(--space-10);background:var(--color-surface-search);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control)}.about-project-card h2,.about-team h2{color:var(--color-text);font-size:1.5rem;line-height:var(--line-height-tight);letter-spacing:var(--tracking-tight);margin:0}.about-project-card h2{padding-bottom:var(--space-4);margin-bottom:var(--space-5);border-bottom:var(--border-width) solid var(--color-border)}.about-project-story-copy{max-width:62rem}.about-project-story-copy p{color:var(--color-text-muted);font-size:var(--font-size-body);margin:0;line-height:1.65}.about-project-story-copy p+p{margin-top:var(--space-5)}.about-project-story-copy .about-project-closing{padding-top:var(--space-5);color:var(--color-text);font-size:var(--font-size-section);border-top:var(--border-width) solid var(--color-border);font-weight:600}.project-video-card{margin-top:var(--space-8)}.project-video-tabs{gap:var(--space-2);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.project-video-tabs button{padding:var(--space-2) var(--space-4);color:var(--color-text-muted);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);cursor:pointer;font:inherit;background:0 0}.project-video-tabs button[aria-selected=true]{color:var(--color-text);background:var(--color-hover);border-color:var(--color-border-active)}.project-video-tabs button:focus-visible,.project-video-panel:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:2px}.project-video-player{aspect-ratio:16/9;border-radius:var(--radius-control);background:#000;border:0;width:100%;display:block}.project-video-panel>p{padding-block:var(--space-5);color:var(--color-text-muted);margin:0}.about-team{margin-top:4rem}.about-project-contacts,.about-project-support{margin-top:var(--space-8)}.about-project-contacts>p,.about-project-support>p{margin:0 0 var(--space-6);color:var(--color-text-muted);font-size:var(--font-size-body);line-height:var(--line-height-body)}.about-contact-links{gap:var(--space-2);max-width:30rem;display:grid}.about-contact-link{align-items:center;gap:var(--space-4);min-width:0;padding:var(--space-2) var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);text-decoration:none;display:flex}.about-contact-link:hover{background:var(--color-hover);border-color:var(--color-border-active)}.about-contact-link:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:2px}.about-contact-icon{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-panel);flex:none;place-items:center;width:3rem;height:3rem;display:grid}.about-contact-icon svg{width:1.75rem;height:1.75rem}.about-contact-label{overflow-wrap:anywhere;min-width:0;font-size:var(--font-size-section);flex:1;font-weight:600}.about-contact-arrow{width:1.5rem;height:1.5rem;color:var(--color-text-muted);flex:none}.about-support-form{gap:var(--space-5);max-width:30rem;display:grid}.about-support-note{color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-body);margin:0}.about-team-graph{margin-top:var(--space-6)}.about-team-canvas{aspect-ratio:7/5;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-panel);background:0 0;width:100%;margin-inline:auto;position:relative;overflow:hidden}.about-team-canvas.is-dragging{cursor:grabbing}.icon-button.about-team-reset{z-index:1001;top:var(--space-3);right:var(--space-3);pointer-events:auto;touch-action:manipulation;background:var(--color-surface-search);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-overlay);position:absolute}.about-team-links{z-index:0;pointer-events:none;fill:none;stroke:#fff;stroke-linecap:round;stroke-opacity:.62;stroke-width:1px;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.about-team-link{stroke-width:1px;vector-effect:non-scaling-stroke}.about-team-members{z-index:1;pointer-events:none;margin:0;padding:0;list-style:none;position:absolute;inset:0}.about-team-links,.about-team-members{transform:translateY(-3rem)}.about-team-member{pointer-events:auto;text-align:center;cursor:grab;width:min(14.0625rem,26.25vw);position:absolute;transform:translate(-50%,-4.0625rem)}.about-team-member.is-dragging{cursor:grabbing}.about-team-portrait{border-radius:50%;width:8.125rem;height:8.125rem;margin:0 auto;overflow:hidden}.about-team-portrait img{object-fit:cover;pointer-events:none;background:var(--color-surface-state);width:100%;height:100%;box-shadow:0 .625rem 1.875rem #00000047, var(--shadow-overlay);border:.078125rem solid #ffffffb8;border-radius:50%;display:block}.about-team-copy{box-sizing:border-box;background:var(--color-surface-panel);border:var(--border-width) solid var(--color-border);border-radius:.625rem;flex-direction:column;justify-content:center;width:100%;min-height:4.375rem;margin:.78125rem auto 0;padding:.625rem .78125rem;display:flex;box-shadow:0 .625rem 1.875rem #00020e3d}.about-team-copy h3{color:var(--color-text);font-size:1.09375rem;line-height:var(--line-height-tight);margin:0}.about-team-copy p{color:var(--color-text-muted);margin:.390625rem 0 0;font-size:.859375rem;line-height:1.3}.about-team-mobile-list{display:none}.project-statistics-card{min-width:0;margin-top:var(--space-8);overflow-wrap:anywhere}.project-statistics-card p{color:var(--color-text-muted);font-size:var(--font-size-body);line-height:var(--line-height-body)}.project-statistics-content h3{margin-top:var(--space-6);font-size:var(--font-size-section)}.project-statistics-totals{gap:var(--space-3);margin:var(--space-4) 0;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.project-statistics-totals>div{min-width:0;padding:var(--space-3);background:var(--color-surface-state);border-radius:var(--radius-control)}.project-statistics-totals dt{color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-body)}.project-statistics-totals dd{margin:var(--space-2) 0 0;color:var(--color-text);font-size:var(--font-size-title);font-variant-numeric:tabular-nums}@media (width<=640px){.project-statistics-card{padding:var(--space-4)}.project-statistics-totals{grid-template-columns:repeat(2,minmax(0,1fr))}}.content-block-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.content-block-heading h2{overflow-wrap:anywhere;min-width:0;margin-bottom:0}.content-block-heading>button{flex-shrink:0}.content-block-editor{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);gap:16px;min-width:0;margin-bottom:24px;padding:18px;display:grid}.content-block-editor .new-person-field,.content-block-editor input,.content-block-editor textarea{width:100%;min-width:0}.content-block-editor textarea{resize:vertical}.content-block-editor-actions{flex-wrap:wrap;gap:12px;display:flex}@media (width<=600px){.content-block-heading{flex-wrap:wrap}.content-block-editor{padding:12px}}.about-project-story-copy p,.about-project-contacts>p,.about-project-support>p,.about-support-note,.about-contact-label,.project-statistics-card>p,.project-statistics-content>p,.project-statistics-content h3,.about-team-copy h3,.about-team-copy p{white-space:pre-wrap;overflow-wrap:anywhere}.project-landing{z-index:20;color:#f2f1eb;background:radial-gradient(circle at 78% 4%,#70c7ec1f,#0000 30rem),#090b0c;font-family:Avenir Next,Segoe UI,sans-serif;position:fixed;inset:0;overflow:hidden}.project-landing-scroll{scroll-behavior:smooth;overscroll-behavior:contain;width:100%;height:100%;overflow:hidden auto}.project-nav{z-index:100;-webkit-backdrop-filter:blur(1.25rem);backdrop-filter:blur(1.25rem);background:#090b0cc7;border-bottom:1px solid #ffffff1a;grid-template-columns:1fr auto 1fr;align-items:center;min-height:5rem;padding:0 clamp(1.25rem,4vw,4.5rem);display:grid;position:sticky;top:0}.project-wordmark{color:#f8f7f2;letter-spacing:-.06em;justify-self:start;font-size:1.35rem;font-weight:700;text-decoration:none}.project-wordmark span{color:#70c7ec}.project-nav-links{gap:clamp(1.25rem,3vw,3rem);display:flex}.project-nav-links a,.project-nav-cta{color:#c7c9c5;letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:600;text-decoration:none;transition:color .18s}.project-nav-links a:hover,.project-nav-links a:focus-visible,.project-nav-cta:hover,.project-nav-cta:focus-visible{color:#fff}.project-nav-cta{justify-self:end}.project-nav-cta span,.project-button span{color:#70c7ec;margin-left:.4rem}.project-close{color:#f2f1eb;cursor:pointer;background:#171a1a;border:1px solid #ffffff26;border-radius:50%;width:3rem;height:3rem;padding:.8rem;display:none;position:absolute;top:1rem;right:1rem}.project-landing.is-embedded .project-nav-cta{margin-right:4rem}.project-landing.is-embedded .project-close{display:block}.project-close svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.7px;width:100%}.project-hero{align-items:center;max-width:100rem;min-height:calc(100dvh - 5rem);margin:0 auto;padding:clamp(5rem,10vw,9rem) clamp(1.25rem,7vw,7rem);display:flex}.project-hero-copy{width:100%}.project-kicker,.project-section-label{color:#70c7ec;letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.project-hero h1{color:#f7f6f1;letter-spacing:-.065em;max-width:14ch;margin:1.6rem 0 2rem;font-size:clamp(3.6rem,7.2vw,8rem);font-weight:500;line-height:.9}.project-hero h1 span{color:#70c7ec}.project-hero-intro{color:#a8aca8;max-width:39rem;margin:0;font-size:clamp(1rem,1.4vw,1.25rem);line-height:1.65}.project-hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:2.6rem;display:flex}.project-button{color:#f2f1eb;letter-spacing:.02em;background:#ffffff0a;border:1px solid #ffffff29;border-radius:999px;justify-content:space-between;align-items:center;gap:1.25rem;min-height:3.25rem;padding:.85rem 1.25rem;font-size:.82rem;font-weight:650;text-decoration:none;transition:color .18s,background .18s,border-color .18s,transform .18s;display:inline-flex}.project-button:hover,.project-button:focus-visible{color:#090b0c;background:#f2f1eb;border-color:#f2f1eb;transform:translateY(-2px)}.project-button.is-primary{color:#0a0d0a;background:#70c7ec;border-color:#70c7ec}.project-button.is-primary span{color:inherit}.project-metrics{border-top:1px solid #ffffff1c;border-bottom:1px solid #ffffff1c;grid-template-columns:repeat(3,1fr);display:grid}.project-metrics div{border-right:1px solid #ffffff1c;min-height:11rem;padding:2rem clamp(1.25rem,4vw,4.5rem)}.project-metrics div:last-child{border-right:0}.project-metrics strong,.project-metrics span{display:block}.project-metrics strong{color:#f5f4ef;letter-spacing:-.055em;margin-bottom:1rem;font-size:clamp(2rem,4vw,4.5rem);font-weight:500}.project-metrics span{color:#969a96;max-width:16rem;font-size:.85rem;line-height:1.5}.project-story,.project-product,.project-principles,.project-team{max-width:100rem;margin:0 auto;padding:clamp(6rem,11vw,11rem) clamp(1.25rem,7vw,7rem)}.project-story-heading{grid-template-columns:1.35fr .65fr;align-items:end;gap:4rem;margin:2.5rem 0 6rem;display:grid}.project-story h2,.project-section-heading h2,.project-principles h2,.project-final h2{color:#f4f3ee;letter-spacing:-.06em;margin:0;font-size:clamp(2.65rem,5.7vw,6.25rem);font-weight:500;line-height:.98}.project-story-heading>p,.project-section-heading>p:last-child{color:#9da19d;margin:0;font-size:1rem;line-height:1.7}.project-story-grid{border-top:1px solid #ffffff21;grid-template-columns:repeat(3,1fr);display:grid}.project-story-grid article{padding:2.25rem 2.25rem 1rem 0}.project-story-grid article+article{border-left:1px solid #ffffff21;padding-left:2.25rem}.project-story-grid span{color:#70c7ec;font-size:.7rem}.project-story-grid h3{color:#f3f2ed;margin:3rem 0 1rem;font-size:1.25rem;font-weight:550}.project-story-grid p{color:#929692;margin:0;font-size:.9rem;line-height:1.65}.project-product{background:#f1f0e9;max-width:none;padding-left:0;padding-right:0}.project-product>.project-section-heading,.project-view-list{max-width:100rem;margin-inline:auto;padding-left:clamp(1.25rem,7vw,7rem);padding-right:clamp(1.25rem,7vw,7rem)}.project-section-heading{grid-template-columns:1fr 1.55fr .75fr;align-items:end;gap:3rem;margin-bottom:clamp(4rem,8vw,8rem);display:grid}.project-product .project-section-label{color:#2d657c}.project-product .project-section-heading h2{color:#101310;grid-column:2/-1}.project-view-list{gap:clamp(6rem,11vw,12rem);display:grid}.project-view{grid-template-columns:minmax(15rem,.68fr) minmax(0,1.32fr);align-items:center;gap:clamp(2rem,7vw,8rem);display:grid}.project-view.is-reversed .project-view-copy{order:2}.project-view-copy>span{color:#777d76;border-bottom:1px solid #c9cbc4;padding-bottom:1rem;font-size:.72rem;display:block}.project-view-copy>p{color:#2d657c;letter-spacing:.13em;text-transform:uppercase;margin:2rem 0 .8rem;font-size:.7rem;font-weight:700}.project-view-copy h3{color:#111411;letter-spacing:-.055em;margin:0 0 1.6rem;font-size:clamp(2rem,3.7vw,4rem);font-weight:500;line-height:1}.project-view-copy>div{color:#5b615b;font-size:.95rem;line-height:1.65}.project-preview{aspect-ratio:16/10;background:#080c13;border:1px solid #0e120f24;border-radius:1rem;margin:0;position:relative;overflow:hidden;box-shadow:0 2.5rem 5rem #262b252b}.project-preview img{object-fit:cover;width:100%;height:100%;display:block}.project-principles>h2{max-width:10ch;margin:2rem 0 5rem}.project-principles>div{background:#ffffff1f;border:1px solid #ffffff1f;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.project-principles article{background:#090b0c;min-height:16rem;padding:2.25rem}.project-principles strong{color:#f0f0ea;font-size:1.15rem;font-weight:550}.project-principles article:before{content:"";background:#70c7ec;border-radius:50%;width:.7rem;height:.7rem;margin-bottom:5rem;display:block}.project-principles p{color:#8f948f;max-width:20rem;margin:1rem 0 0;font-size:.86rem;line-height:1.6}.project-team .project-section-heading{margin-bottom:4rem}.project-team-graph{margin-top:var(--space-6)}.project-team-canvas{aspect-ratio:7/4.2;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:radial-gradient(circle,#70c7ec14,#0000 46%),#101414;border:1px solid #ffffff1c;border-radius:1rem;width:100%;margin-inline:auto;position:relative;overflow:hidden}.project-team-canvas.is-dragging{cursor:grabbing}.icon-button.project-team-reset{z-index:1001;color:#dfe3dc;pointer-events:auto;touch-action:manipulation;width:2.75rem;height:2.75rem;box-shadow:none;background:#242b28;border:1px solid #ffffff1f;border-radius:50%;padding:.72rem;position:absolute;top:1rem;right:1rem}.project-team-links{z-index:0;pointer-events:none;fill:none;stroke:#70c7ec;stroke-linecap:round;stroke-opacity:.34;stroke-width:1px;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.project-team-link{stroke-width:1px;vector-effect:non-scaling-stroke}.project-team-members{z-index:1;pointer-events:none;margin:0;padding:0;list-style:none;position:absolute;inset:0}.project-team-member{pointer-events:auto;text-align:center;cursor:grab;width:min(14rem,25vw);position:absolute;transform:translate(-50%,-4rem)}.project-team-member.is-dragging{cursor:grabbing}.project-team-portrait{background:#222a27;border:1px solid #70c7ec66;border-radius:50%;width:7.5rem;height:7.5rem;margin:0 auto;overflow:hidden}.project-team-portrait img{object-fit:cover;pointer-events:none;filter:saturate(.82);border-radius:50%;width:100%;height:100%;display:block}.project-team-copy{box-sizing:border-box;background:#1f2623f0;border:1px solid #ffffff1c;border-radius:.65rem;flex-direction:column;justify-content:center;width:100%;min-height:4.3rem;margin:.7rem auto 0;padding:.65rem .8rem;display:flex;box-shadow:0 .75rem 2rem #00000047}.project-team-copy h3{color:#f0f1ec;margin:0;font-size:1rem;line-height:1.2}.project-team-copy p{color:#929b94;margin:.35rem 0 0;font-size:.77rem;line-height:1.3}.project-team-copy span{display:block}.project-team-mobile-list{display:none}.project-final{color:#11140f;text-align:center;background:#70c7ec;flex-direction:column;justify-content:center;align-items:center;min-height:80dvh;padding:6rem 1.25rem;display:flex}.project-final .project-section-label{color:#244f61}.project-final h2{color:#10130e;margin:2rem 0 3rem}.project-button.is-light{color:#f6f5f0;background:#11140f;border-color:#11140f}.project-button.is-light span{color:#70c7ec}.project-footer{border-top:1px solid #ffffff1a;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;min-height:8rem;padding:2rem clamp(1.25rem,4vw,4.5rem);display:grid}.project-footer p{color:#858a85;margin:0;font-size:.7rem}.project-footer p:last-child{justify-self:end}@media (width<=62rem){.project-nav{grid-template-columns:1fr 1fr}.project-nav-links{display:none}.project-story-heading,.project-section-heading{grid-template-columns:1fr;align-items:start}.project-product .project-section-heading h2{grid-column:auto}.project-section-heading{gap:1.5rem}.project-story-heading{gap:2rem}.project-view,.project-view.is-reversed{grid-template-columns:1fr;gap:2.5rem}.project-view.is-reversed .project-view-copy{order:0}}@media (width<=47.5rem){.project-nav{min-height:4.25rem;padding-left:1.1rem;padding-right:1.1rem}.project-nav-cta{font-size:.65rem}.project-landing.is-embedded .project-nav-cta{display:none}.project-close{top:.62rem;right:.8rem}.project-hero{min-height:auto;padding-top:5rem}.project-hero h1{font-size:clamp(3.25rem,16vw,5.5rem)}.project-hero-actions{flex-direction:column;align-items:stretch}.project-metrics{grid-template-columns:1fr}.project-metrics div{border-bottom:1px solid #ffffff1c;border-right:0;min-height:auto}.project-metrics div:last-child{border-bottom:0}.project-story-grid,.project-principles>div{grid-template-columns:1fr}.project-story-grid article,.project-story-grid article+article{border-bottom:1px solid #ffffff21;border-left:0;padding:2rem 0}.project-story-grid h3{margin-top:1.5rem}.project-principles article{min-height:13rem}.project-principles article:before{margin-bottom:3rem}.project-team-canvas{aspect-ratio:1}.project-team-member{width:4.6875rem;transform:translate(-50%,-2.34375rem)}.project-team-portrait{width:4.6875rem;height:4.6875rem}.project-team-member .project-team-copy{display:none}.project-team-mobile-list{gap:.7rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.project-team-mobile-list .project-team-copy{min-height:4.75rem;margin:0;transition:background-color .16s,border-color .16s}.project-team-mobile-list>li.is-highlighted .project-team-copy{background:#25343b;border-color:#70c7ec}.project-footer{text-align:left;grid-template-columns:1fr}.project-footer p:last-child{justify-self:start}}@media (prefers-reduced-motion:reduce){.project-landing-scroll{scroll-behavior:auto}.project-button{transition:none}}.archive-codes-table-wrap{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);scrollbar-color:var(--color-text-subtle) transparent;scrollbar-width:thin;max-width:100%;overflow-x:auto}.archive-codes-table-wrap:focus-visible{outline:var(--focus-ring-width) solid var(--color-accent);outline-offset:var(--focus-ring-width)}.archive-codes-table{font-variant-numeric:tabular-nums;border-collapse:collapse;width:100%;min-width:44rem}.archive-codes-table th,.archive-codes-table td{padding:var(--space-3) var(--space-4);line-height:var(--line-height-body);text-align:left;vertical-align:top;border-bottom:var(--border-width) solid var(--color-border)}.archive-codes-table th{color:var(--color-text-muted);font-size:var(--font-size-small);letter-spacing:var(--tracking-wide);background:var(--color-surface-search);font-weight:600}.archive-codes-table a{color:var(--color-accent);text-underline-offset:var(--space-1)}.archive-codes-table a:hover{color:var(--color-text)}.archive-codes-table a:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:var(--space-1)}.archive-codes-table td:not(:nth-child(2)){white-space:nowrap}.archive-codes-table tbody tr:last-child td{border-bottom:0}.archive-code-create-row{background:var(--color-surface-search)}.archive-code-create-row input,.archive-code-create-row select{width:100%;min-width:6rem}.archive-code-create-row td:nth-child(2){min-width:18rem}.archive-code-create-row .primary-button{min-width:max-content}.archive-code-create-error .surface-alert{white-space:normal;margin:0}.archive-code-form{gap:var(--space-4);margin-block:var(--space-4);display:grid}.archive-code-fields{gap:var(--space-3);min-width:0;display:grid}.archive-code-category{align-items:center;gap:var(--space-2);margin-block:var(--space-2);display:flex}.archive-code-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.graph-host{visibility:visible;opacity:1;width:100%;height:100%;transition:opacity var(--transition-fast);position:absolute;inset:0}.app-shell[data-state=loading] .graph-host{visibility:hidden;opacity:0}.app-shell[data-state=loading] .graph-host,.app-shell[data-state=error] .graph-host{pointer-events:none}.overlay-stack{z-index:2;pointer-events:none;position:absolute;inset:0}.icon-button.graph-reset,.icon-button.graph-mode{z-index:4;top:calc(var(--search-top) + env(safe-area-inset-top));right:calc(var(--panel-gutter) + env(safe-area-inset-right));pointer-events:auto;background:var(--color-surface-search);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-overlay);position:absolute}.icon-button.graph-mode{top:calc(var(--search-top) + env(safe-area-inset-top) + var(--control-height) + var(--space-3))}.icon-button.graph-reset:not(:disabled):hover,.icon-button.graph-mode:not(:disabled):hover{background:var(--color-hover)}.search-region{z-index:4;top:calc(var(--search-top) + env(safe-area-inset-top));width:var(--search-width);column-gap:var(--space-2);pointer-events:auto;grid-template-columns:minmax(0,1fr);display:grid;position:absolute;left:50%;transform:translate(-50%)}.search-region[data-can-create=true]{width:calc(var(--search-width) + var(--control-height) + var(--space-2));grid-template-columns:minmax(0, var(--search-width)) var(--control-height)}.search-field{height:var(--control-height);color:var(--color-text);background:var(--color-surface-search);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);box-shadow:var(--shadow-overlay);transition:background-color var(--transition-fast), border-color var(--transition-fast);align-items:center;display:flex;position:relative;overflow:hidden}.search-field:focus-within{background:var(--color-surface-search-active);border-color:var(--color-border-active)}.search-icon{width:var(--space-5);height:var(--space-5);margin-left:var(--space-3);color:var(--color-text-muted);fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:var(--icon-stroke-width);flex:none}.search-field input{min-width:0;height:100%;padding:0 var(--space-3);font-size:var(--font-size-body);appearance:none;background:0 0;border:0;outline:0;flex:1;line-height:1}.search-field input::placeholder{color:var(--color-text-muted);opacity:1}.search-field:focus-within input::placeholder{color:var(--color-text)}.search-field input::-webkit-search-cancel-button{display:none}.search-clear{flex:0 0 var(--control-height)}.search-loading-indicator{flex:0 0 var(--control-height);place-items:center;height:100%;display:grid}.icon-button.search-add{background:var(--color-surface-search);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-overlay);grid-area:1/2}.icon-button.search-add:not(:disabled):hover{background:var(--color-hover)}.search-results{margin-top:var(--space-2);padding:var(--space-2);color:var(--color-text);background:var(--color-surface-search-active);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);box-shadow:var(--shadow-overlay);grid-column:1}.search-results ul{max-height:min(28rem, calc(100vh - var(--search-top) - var(--control-height) - var(--space-10)));overscroll-behavior:contain;scrollbar-color:var(--color-text-subtle) transparent;scrollbar-width:thin;margin:0;padding:0;list-style:none;overflow-y:auto}.search-results li{gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--font-size-small);letter-spacing:var(--tracking-tight);border-radius:var(--radius-control);cursor:pointer;touch-action:manipulation;flex-wrap:wrap;align-items:baseline;display:flex}.search-results li[data-active=true]{background:var(--color-hover)}.search-result-name{flex:auto;min-width:0}.search-results .search-no-results,.search-results .search-error{padding:var(--space-3);color:var(--color-text-muted);cursor:default;margin:0;display:block}.search-result-year{color:var(--color-text);white-space:nowrap}.person-panel{z-index:3;top:calc(var(--panel-gutter) + env(safe-area-inset-top));bottom:calc(var(--panel-gutter) + env(safe-area-inset-bottom));left:var(--panel-gutter);width:var(--panel-width);pointer-events:auto;border-radius:var(--radius-panel);flex-direction:column;min-width:0;display:flex;position:fixed;overflow:hidden}.person-header{gap:var(--space-3);padding:var(--space-6);border-bottom:var(--border-width) solid var(--color-border);flex:none;align-items:flex-start;display:flex}.person-title{flex:auto;min-width:0}.person-header h1{overflow-wrap:anywhere;font-size:var(--font-size-title);font-weight:600;line-height:var(--line-height-tight);letter-spacing:var(--tracking-tight);margin:0}.person-actions{margin:calc(0px - var(--space-2));flex:none;display:flex}.person-panel-scroll{min-width:0;min-height:0;padding:0 var(--space-6) var(--space-6);overscroll-behavior:contain;scrollbar-color:var(--color-text-subtle) transparent;scrollbar-width:thin;flex:auto;overflow:hidden auto}.person-panel-scroll:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:calc(0px - var(--focus-ring-width))}.person-panel-scroll>.person-content-block{margin:var(--space-3) 0 0}.person-panel-scroll>.person-content-block+.person-content-block{padding-top:var(--space-5);margin-top:var(--space-5);border-top:var(--border-width) solid var(--color-border)}.person-facts{gap:var(--space-2);margin:0;display:grid}.person-facts div{grid-template-columns:var(--fact-label-width) minmax(0, 1fr);gap:var(--space-2);font-size:var(--font-size-small);line-height:var(--line-height-body);display:grid}.person-facts dt{color:var(--color-text-subtle);font-size:var(--font-size-caption);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.person-facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.person-fact-place{color:var(--color-text-muted);display:block}.person-section>h2{margin:0 0 var(--space-4);font-size:var(--font-size-section);letter-spacing:var(--tracking-title);font-weight:600}.person-comment{overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.relationship-group+.relationship-group{margin-top:var(--space-3)}.relationship-group h3{margin:0 0 var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-small);font-weight:500}.person-links{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.person-links button:disabled{cursor:not-allowed;opacity:.45}.person-links button,.person-link-static{gap:var(--space-1) var(--space-2);width:100%;color:var(--color-text);font-size:var(--font-size-small);line-height:var(--line-height-body);text-align:left;background:0 0;border:0;flex-wrap:wrap;padding:0;display:flex}.person-links button{cursor:pointer}.person-link-static{color:var(--color-text-muted);cursor:default}.person-links button span:first-child,.person-link-static span:first-child{overflow-wrap:anywhere;flex:12rem;min-width:0}.person-links button:not(:disabled):hover span:first-child{text-underline-offset:.16em;text-decoration:underline}.person-year{color:var(--color-text-muted);white-space:nowrap;font-size:var(--font-size-caption);flex:none}.source-record h3{overflow-wrap:anywhere;font-size:var(--font-size-small);font-weight:600;line-height:var(--line-height-body);margin:0}.source-record+.source-record{padding-top:var(--space-4);margin-top:var(--space-4);border-top:var(--border-width) solid var(--color-border)}.source-fields{gap:var(--space-3);margin:var(--space-3) 0 0;display:grid}.source-fields>div{gap:var(--space-2);grid-template-columns:6.5rem minmax(0,1fr);display:grid}.source-fields dt{color:var(--color-text-subtle);font-size:var(--font-size-caption);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.source-fields dd{overflow-wrap:anywhere;min-width:0;color:var(--color-text-muted);font-size:var(--font-size-caption);line-height:var(--line-height-body);margin:0}.source-field-multiline{white-space:pre-wrap}.archive-image-link{color:var(--color-accent);font:inherit;line-height:inherit;text-align:left;text-underline-offset:.16em;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline;text-decoration-thickness:from-font}.archive-image-link:hover{color:var(--color-text)}.archive-image-link:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:var(--focus-ring-width)}.archive-image-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;padding:var(--space-4);color:var(--color-text);background:var(--color-canvas);border:0}.archive-image-dialog[open]{gap:var(--space-3);flex-direction:column;display:flex}.archive-image-dialog::backdrop{background:#000000d1}.archive-image-dialog-header{gap:var(--space-3);align-items:flex-start;display:flex}.archive-image-dialog-header>div{flex:auto;min-width:0}.archive-image-dialog-header p,.archive-image-dialog-header h2,.archive-image-reference,.archive-image-state p{margin:0}.archive-image-dialog-header p,.archive-image-reference{color:var(--color-text-muted);font-size:var(--font-size-caption)}.archive-image-dialog-header h2{overflow-wrap:anywhere;font-size:var(--font-size-section)}.archive-image-state{place-content:center;gap:var(--space-3);text-align:center;min-height:12rem;display:grid}.archive-image-toolbar{gap:var(--space-2);display:flex}.archive-image-toolbar button[aria-pressed=true]{border-color:var(--color-accent)}.archive-image-viewport{overscroll-behavior:contain;scrollbar-color:var(--color-text-subtle) transparent;scrollbar-width:thin;background:#111;flex:auto;min-width:0;min-height:0;overflow:auto}.archive-image-viewport canvas{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:none;max-height:none;margin:auto;display:block}.archive-image-viewport[data-fit=true]{place-items:center;display:grid}.archive-image-viewport[data-fit=true] canvas{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%}.mentioned-documents{margin-top:var(--space-4);padding-top:var(--space-4);border-top:var(--border-width) solid var(--color-border)}.mentioned-documents-toggle{width:100%}.mentioned-documents-content{margin-top:var(--space-4)}.documents-empty{overflow-wrap:anywhere;color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-body);margin:0}.person-skeleton{gap:var(--space-5);padding-top:var(--space-3);display:grid}.skeleton-block{min-width:0;height:var(--space-3);background:linear-gradient(90deg, var(--color-hover), var(--color-border-active), var(--color-hover));border-radius:var(--radius-control);animation:skeleton-pulse var(--spinner-duration) linear infinite alternate;display:block}.skeleton-heading{width:100%;height:var(--space-6)}.skeleton-facts{grid-template-columns:var(--fact-label-width) minmax(0, 1fr);gap:var(--space-3) var(--space-2);display:grid}.skeleton-section{gap:var(--space-3);padding-top:var(--space-5);border-top:var(--border-width) solid var(--color-border);display:grid}.skeleton-section-title{width:50%;height:var(--space-4)}.skeleton-document{height:calc(var(--space-10) + var(--space-4))}.person-state-error{gap:var(--space-3);padding-top:var(--space-5);display:grid}.person-state-error h2,.form-state-error h2{font-size:var(--font-size-section);line-height:var(--line-height-tight);margin:0}.person-state-error p,.form-state-error p{color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-body);margin:0}.person-panel-scroll>.person-content-block+.person-management-actions{padding-top:var(--space-6);margin-top:var(--space-6)}.person-management-actions{gap:var(--space-3);display:grid}.person-management-buttons{justify-content:space-between;align-items:center;display:flex}.person-mutation-error{width:100%;margin:0}.person-delete-button{gap:var(--space-2);align-items:center;display:inline-flex}.graph-state{z-index:2;width:min(var(--state-width), calc(100% - var(--space-8) - var(--space-8)));gap:var(--space-4);padding:var(--space-5);pointer-events:auto;background:var(--color-surface-state);border-radius:var(--radius-panel);align-items:flex-start;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.state-mark{width:var(--space-3);height:var(--space-3);margin-top:var(--space-1);background:var(--color-accent);border:var(--border-width) solid var(--color-text);border-radius:50%;flex:none}.state-mark[data-loading=true]{border-color:var(--color-text-subtle);border-top-color:var(--color-text);animation:state-spin var(--spinner-duration) linear infinite;background:0 0}.graph-state h1{font-size:var(--font-size-body);letter-spacing:var(--tracking-normal);margin:0;font-weight:600}.graph-state p{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--font-size-small);line-height:var(--line-height-body)}.state-retry{margin-top:var(--space-4)}.state-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.surface-alert{padding:var(--space-3);overflow-wrap:anywhere;color:var(--color-text);font-size:var(--font-size-small);line-height:var(--line-height-body);background:var(--color-hover);border:var(--border-width) solid var(--color-border-active);border-radius:var(--radius-control);margin:0}.login-submit:disabled,.product-note button:disabled{cursor:not-allowed;opacity:.45}.product-note{z-index:5;pointer-events:auto;bottom:calc(var(--footer-offset) + env(safe-area-inset-bottom));max-width:calc(100% - var(--space-8) - var(--space-8));gap:var(--space-6);color:var(--color-text-subtle);letter-spacing:var(--tracking-normal);font-size:1rem;line-height:var(--line-height-tight);text-align:center;white-space:nowrap;justify-content:center;align-items:center;display:flex;position:absolute;left:50%;transform:translate(-50%)}.product-note button,.global-admin-link{min-height:1.75rem;padding:0 var(--space-1);color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;transition:color var(--transition-fast);background:0 0;border:0;align-items:center;display:inline-flex}.global-admin-link{text-decoration:none}.product-note button[hidden],.global-admin-link[hidden]{display:none}.product-note button:not(:disabled):hover,.global-admin-link:hover{color:var(--color-text)}.product-note button:focus-visible,.global-admin-link:focus-visible{color:var(--color-text);outline:var(--focus-ring-width) solid var(--color-accent);outline-offset:var(--space-1)}.product-note button:not(:disabled):active,.global-admin-link:active{color:var(--color-accent)}.auth-skeleton{width:calc(var(--space-10) + var(--space-6));min-height:var(--space-5);align-items:center;display:inline-flex}.auth-skeleton .skeleton-block{width:100%}.auth-feedback{bottom:calc(100% + var(--space-2));width:max-content;max-width:calc(100vw - var(--space-6));gap:var(--space-2);white-space:normal;align-items:center;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.auth-feedback button{color:var(--color-text);flex:none}.login-page{z-index:10;padding:calc(var(--space-10) + env(safe-area-inset-top)) calc(var(--space-4) + env(safe-area-inset-right)) calc(var(--space-10) + env(safe-area-inset-bottom)) calc(var(--space-4) + env(safe-area-inset-left));pointer-events:auto;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0003;place-items:center;display:grid;position:fixed;inset:0}.login-form{gap:var(--space-5);width:min(23.75rem,100%);display:grid;position:relative;transform:translateY(-3.5rem)}.login-form input,.login-submit{width:100%;height:calc(var(--control-height) + var(--border-width));padding:0 var(--space-3);color:var(--color-text);border:var(--border-width) solid transparent;border-radius:var(--space-2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#daebff33;font-size:1rem;line-height:1;overflow:hidden}.login-form input{appearance:none;min-width:0;transition:background-color var(--transition-fast), border-color var(--transition-fast);outline:0}.login-form input::placeholder{color:#fff9;opacity:1}.login-form input:not(:disabled):hover,.login-form input:not(:disabled):focus{border-color:var(--color-border-active);background:#daebff47}.login-submit{font:inherit;letter-spacing:var(--tracking-wide);text-transform:uppercase;cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);background:#5dc5ff33}.login-submit:not(:disabled):hover{background:#5dc5ff4d}.login-submit:not(:disabled):active{color:var(--color-accent);background:#5dc5ff3d}.login-submit,.product-note button{justify-content:center;gap:var(--space-2)}.login-submit{align-items:center;display:inline-flex}.login-error{width:100%}.icon-button.login-close{top:calc(-1 * (var(--space-8) + var(--space-6)));width:var(--space-6);height:var(--space-6);border-radius:var(--space-1);position:absolute;right:0}.icon-button.login-close svg{width:var(--space-4);height:var(--space-4)}.admin-page form{margin-block:var(--space-6)}.admin-page fieldset{gap:var(--space-4);min-width:0;padding:var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);margin:0;display:grid}.admin-page input:not([type=checkbox]){box-sizing:border-box;width:100%;min-width:0}.admin-page input:disabled{cursor:not-allowed;opacity:.45}.admin-page input[type=checkbox]:focus-visible{outline:var(--focus-ring-width) solid var(--color-accent);outline-offset:var(--space-1)}.admin-page fieldset>button{justify-self:start}.admin-area-list{padding:0;list-style:none}.admin-area-list>li{padding-block:var(--space-4);border-top:1px solid var(--color-text-muted)}.new-person-page{z-index:10;pointer-events:auto;background:var(--color-canvas);flex-direction:column;min-width:0;display:flex;position:fixed;inset:0;overflow:hidden}.new-person-page-header{padding:calc(var(--space-3) + env(safe-area-inset-top)) calc(var(--space-8) + env(safe-area-inset-right)) var(--space-3) calc(var(--space-8) + env(safe-area-inset-left));background:var(--color-surface-panel);border-bottom:var(--border-width) solid var(--color-border);flex:none;justify-content:space-between;align-items:center;display:flex}.new-person-section-heading p{margin:0 0 var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-small);letter-spacing:var(--tracking-wide);text-transform:uppercase}.new-person-page-header h1{font-size:var(--font-size-title);line-height:var(--line-height-tight);letter-spacing:var(--tracking-tight);margin:0}.new-person-page-header>:first-child{min-width:0}.new-person-page-header-actions{gap:var(--space-2);flex:none;align-items:center;display:flex}.new-person-header-save{padding-inline:var(--space-3)}.new-person-close{flex:0 0 var(--control-height)}.new-person-page-scroll{min-width:0;min-height:0;padding:var(--space-8) calc(var(--space-6) + env(safe-area-inset-right)) calc(var(--space-10) + env(safe-area-inset-bottom)) calc(var(--space-6) + env(safe-area-inset-left));overscroll-behavior:contain;flex:auto;overflow:hidden auto}.new-person-form,.form-skeleton{gap:var(--space-8);width:min(64rem,100%);padding:var(--space-8);border-radius:var(--radius-panel);margin:0 auto;display:grid}.form-skeleton-title{width:min(var(--state-width), calc(100% - var(--control-height) - var(--space-3)));height:var(--space-6)}.form-skeleton-section{gap:var(--space-5);display:grid}.form-skeleton-section+.form-skeleton-section{padding-top:var(--space-8);border-top:var(--border-width) solid var(--color-border)}.form-skeleton-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-skeleton-grid .skeleton-block{height:var(--control-height)}.form-skeleton-actions{grid-template-columns:repeat(2, minmax(0, var(--state-width)));gap:var(--space-3);padding-top:var(--space-6);border-top:var(--border-width) solid var(--color-border);justify-content:end;display:grid}.form-skeleton-actions .skeleton-block{height:var(--control-height)}.form-state-error{width:min(var(--state-width), 100%);gap:var(--space-4);padding:var(--space-6);margin:var(--space-8) auto;border-radius:var(--radius-panel);display:grid}.new-person-section{gap:var(--space-6);border:0;min-width:0;padding:0;display:grid}.new-person-section+.new-person-section{padding-top:var(--space-8);border-top:var(--border-width) solid var(--color-border)}.new-person-section-heading{min-width:0}.new-person-section-heading h2{line-height:var(--line-height-tight);font-size:var(--font-size-section);margin:0}.new-person-section-heading-actions{gap:var(--space-4);justify-content:space-between;align-items:center;display:flex}.new-person-section-actions,.new-person-section-content{gap:var(--space-6);display:grid}.new-person-section-actions{gap:var(--space-3);grid-auto-flow:column}.new-person-section-content[hidden]{display:none}.new-person-empty{color:var(--color-text-muted);font-size:var(--font-size-small);margin:0}.new-person-form-actions{gap:var(--space-3);padding-top:var(--space-6);border-top:var(--border-width) solid var(--color-border);justify-content:flex-end;display:flex}.new-person-field{gap:var(--space-2);min-width:0;color:var(--color-text-muted);font-size:var(--font-size-small);font-weight:600;display:grid}.new-person-field-wide{grid-column:1/-1}.new-person-field input,.new-person-field select,.new-person-field textarea{width:100%;min-width:0;color:var(--color-text);font:inherit;font-size:var(--font-size-body);background:var(--color-surface-search);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);transition:background-color var(--transition-fast), border-color var(--transition-fast);outline:0;font-weight:400}.new-person-field input,.new-person-field select{height:var(--control-height);padding:0 var(--space-3)}.new-person-field input[type=number]{appearance:textfield}.new-person-field input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.new-person-field input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.new-person-field textarea{min-height:calc(var(--control-height) * 2);padding:var(--space-3);resize:vertical}.new-person-field input:hover,.new-person-field select:hover,.new-person-field textarea:hover,.new-person-field input:focus,.new-person-field select:focus,.new-person-field textarea:focus{background:var(--color-surface-search-active);border-color:var(--color-border-active)}.new-person-field input:focus-visible,.new-person-field select:focus-visible,.new-person-field textarea:focus-visible{outline:var(--focus-ring-width) solid var(--color-accent);outline-offset:var(--space-1)}.new-person-field small{color:var(--color-text-subtle);font-size:var(--font-size-small);font-weight:400}.new-person-seniority-toggle{min-height:var(--control-height);gap:var(--space-3);cursor:pointer;align-items:center;display:flex}.new-person-seniority-toggle input{width:var(--space-5);height:var(--space-5);accent-color:var(--color-accent);margin:0}.new-person-field-grid{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}.new-person-source-name-grid{gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;display:grid}.new-person-name-grid{gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;min-width:0;display:grid}.new-person-name-column{gap:var(--space-5);align-content:start;min-width:0;display:grid}.new-person-sex{gap:var(--space-2);min-width:0;color:var(--color-text-muted);font-size:var(--font-size-small);border:0;margin:0;padding:0;font-weight:600;display:grid}.new-person-sex legend{padding:0}.new-person-radio-group{gap:var(--space-3);flex-wrap:wrap;display:flex}.new-person-radio-group label{min-height:var(--control-height);gap:var(--space-3);padding:0 var(--space-3);color:var(--color-text);font-size:var(--font-size-body);cursor:pointer;background:var(--color-surface-search);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);flex:10rem;align-items:center;font-weight:400;display:flex}.new-person-radio-group label:has(input:checked){background:var(--color-surface-search-active);border-color:var(--color-border-active)}.new-person-radio-group input{width:var(--space-5);height:var(--space-5);accent-color:var(--color-accent);margin:0}.new-person-radio-group input:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:var(--space-1)}.new-person-composite-field{gap:var(--space-2);min-width:0;color:var(--color-text-muted);font-size:var(--font-size-small);border:0;margin:0;padding:0;font-weight:600;display:grid}.new-person-composite-parts{gap:var(--space-2);min-width:0;display:grid}.new-person-date-parts{grid-template-columns:repeat(3,minmax(0,1fr))}.new-person-archive-reference-parts{grid-template-columns:repeat(5,minmax(0,1fr))}.new-person-archive-reference-parts--without-family{grid-template-columns:repeat(4,minmax(0,1fr))}.new-person-composite-part{gap:var(--space-1);min-width:0;display:grid}.new-person-composite-part input{width:100%;min-width:0;height:var(--control-height);padding:0 var(--space-2);color:var(--color-text);font:inherit;font-size:var(--font-size-body);background:var(--color-surface-search);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);transition:background-color var(--transition-fast), border-color var(--transition-fast);outline:0;font-weight:400}.new-person-composite-part input::placeholder{color:var(--color-text-muted);opacity:.65}.new-person-composite-part input:hover,.new-person-composite-part input:focus{background:var(--color-surface-search-active);border-color:var(--color-border-active)}.new-person-composite-part input:focus-visible{outline:var(--focus-ring-width) solid var(--color-accent);outline-offset:var(--space-1)}.new-person-repeatable{gap:var(--space-3);min-width:0;display:grid}.relative-person-search{min-width:0;position:relative}.relative-person-search input[type=search]::-webkit-search-cancel-button{display:none}.relative-person-search input[aria-invalid=true]{border-color:var(--color-accent)}.relative-search-error{margin-top:var(--space-2);color:var(--color-text);font-size:var(--font-size-small);font-weight:400;display:block}.relative-search-results{z-index:3;top:calc(100% + var(--space-2));padding:var(--space-2);color:var(--color-text);background:var(--color-surface-search-active);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);box-shadow:var(--shadow-overlay);position:absolute;left:0;right:0}.relative-search-results ul{overscroll-behavior:contain;scrollbar-width:thin;max-height:16rem;margin:0;padding:0;list-style:none;overflow-y:auto}.relative-search-results li{gap:var(--space-1) var(--space-3);min-width:0;padding:var(--space-3);cursor:pointer;border-radius:var(--radius-control);grid-template-columns:minmax(0,1fr) auto;display:grid}.relative-search-results li[role=option]:not([aria-disabled=true]):hover,.relative-search-results li[role=option]:not([aria-disabled=true])[data-active=true]{background:var(--color-hover)}.relative-search-results li[role=option][aria-disabled=true]{cursor:not-allowed;opacity:.5}.relative-search-result-name{overflow-wrap:anywhere;min-width:0}.relative-search-result-years{color:var(--color-text-muted);white-space:nowrap}.relative-search-empty{color:var(--color-text-muted);cursor:default}.new-person-subsection-header h3{font-size:var(--font-size-body);line-height:var(--line-height-tight);margin:0}.new-person-subsection-header{gap:var(--space-4);justify-content:space-between;align-items:center;display:flex}.new-person-entry{gap:var(--space-5);min-width:0;padding:var(--space-5);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);background:#ffffff08;margin:0;display:grid}.new-person-entry legend{padding:0 var(--space-2);font-weight:600}.new-person-document{gap:var(--space-5);min-width:0;padding:var(--space-5);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);background:#ffffff08;margin:0;display:grid}.new-person-document legend{padding:0 var(--space-2);font-weight:600}.new-person-document+.new-person-document{margin-top:var(--space-5)}.document-specific-fields{padding-top:var(--space-5);border-top:var(--border-width) solid var(--color-border)}.new-person-checkbox{min-height:var(--control-height);gap:var(--space-3);cursor:pointer;grid-column:1/-1;align-items:center;display:flex}.new-person-checkbox input{width:var(--space-5);height:var(--space-5);accent-color:var(--color-accent);margin:0}.person-merge-dialog{border:1px solid var(--color-border-active);border-radius:var(--radius-panel);background:var(--color-surface-state);width:min(48rem,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--color-text);box-shadow:var(--shadow-overlay);padding:0}.person-merge-dialog[open]{flex-direction:column;display:flex}.person-merge-dialog::backdrop{background:#00020eb8}.merge-header,.merge-footer{padding:var(--space-5) var(--space-6);flex:none}.merge-header h2{margin:0 0 var(--space-2);font-size:var(--font-size-title)}.merge-header p,.merge-explanation p{color:var(--color-text-muted);line-height:var(--line-height-body);margin:0}.merge-scroll{overscroll-behavior:contain;padding:var(--space-1) var(--space-6) var(--space-5);overflow-y:auto}.merge-picker{min-width:0;margin:0 0 var(--space-5);border:0;padding:0}.merge-comparison{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.merge-person-card{min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);overflow-wrap:anywhere}.merge-person-card[data-keep=true]{border-color:var(--color-accent);background:#70c7ec0f}.merge-person-role{margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-small)}.merge-person-card[data-keep=true] .merge-person-role{color:var(--color-accent)}.merge-person-card h3{margin:0 0 var(--space-4);font-size:var(--font-size-section);line-height:var(--line-height-body)}.merge-person-card dl{gap:var(--space-3);margin:0;display:grid}.merge-person-card dt{color:var(--color-text-muted);font-size:var(--font-size-small)}.merge-person-card dd{margin:var(--space-1) 0 0;white-space:pre-wrap}.merge-swap{margin-top:var(--space-4)}.merge-explanation{gap:var(--space-2);margin-top:var(--space-5);font-size:var(--font-size-small);display:grid}.merge-error{color:#ffc5c5;overflow-wrap:anywhere}.merge-footer{justify-content:flex-end;gap:var(--space-3);border-top:1px solid var(--color-border);display:flex}@media (width<=600px){.merge-header,.merge-footer{padding:var(--space-4)}.merge-scroll{padding-inline:var(--space-4)}.merge-header h2{font-size:var(--font-size-mobile-title)}.merge-comparison{grid-template-columns:minmax(0,1fr)}.merge-footer .primary-button{flex:1}}.state-spin{width:var(--space-4);height:var(--space-4);flex:0 0 var(--space-4);border:var(--border-width) solid var(--color-text-subtle);border-top-color:var(--color-text);animation:state-spin var(--spinner-duration) linear infinite;border-radius:50%;display:inline-block}@keyframes skeleton-pulse{0%{opacity:var(--graph-loading-opacity)}}@keyframes state-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.state-mark[data-loading=true],.state-spin,.skeleton-block{animation:none!important}}@media (width>=47.501rem){.app-shell[data-panel=true] .search-region{right:calc(var(--panel-gutter) + env(safe-area-inset-right) + var(--control-height) + var(--space-2));left:calc(var(--panel-gutter) + var(--panel-width) + var(--space-3));width:auto;max-width:var(--search-width);margin-left:auto;margin-right:auto;transform:none}.app-shell[data-panel=true] .search-region[data-can-create=true]{width:auto;max-width:calc(var(--search-width) + var(--control-height) + var(--space-2))}.app-shell[data-panel=true] .product-note{right:calc(var(--panel-gutter) + env(safe-area-inset-right));left:calc(var(--panel-gutter) + var(--panel-width) + var(--space-4));gap:var(--space-2) var(--space-4);white-space:normal;flex-wrap:wrap;max-width:none;transform:none}.app-shell[data-panel=true] .product-note button{white-space:nowrap}}@media (width<=47.5rem){.reference-page-header{margin-bottom:var(--space-4)}.reference-page-header h1{font-size:var(--font-size-mobile-title)}.reference-page-scroll{padding:var(--space-4) calc(var(--space-3) + env(safe-area-inset-right)) calc(var(--space-8) + env(safe-area-inset-bottom)) calc(var(--space-3) + env(safe-area-inset-left))}.reference-page-content{padding:var(--space-4)}.settings-form .new-person-field{grid-template-columns:minmax(0,1fr);align-items:stretch}.reference-sections{gap:var(--space-3)}.reference-sections>section{padding:var(--space-4)}.reference-sections .clans-list,.clans-directory-loading{grid-template-columns:minmax(0,1fr)}.clan-action{min-height:7rem}.clan-tree-header{padding:calc(var(--space-3) + env(safe-area-inset-top)) calc(var(--space-3) + env(safe-area-inset-right)) var(--space-3) calc(var(--space-3) + env(safe-area-inset-left))}.clan-tree-heading h1{font-size:1.125rem}.clan-tree-surface{padding:0}.clan-tree-state{padding:var(--space-5) var(--space-4)}.clan-tree-help{top:var(--space-2);width:calc(100% - 2 * var(--space-3));max-width:none;padding:var(--space-2);font-size:var(--font-size-caption);border-radius:var(--radius-control);justify-content:center}.clan-tree-help span[aria-hidden=true]{display:none}.clan-tree-ready[data-panel=true] .clan-tree-help,.clan-tree-ready[data-panel=true] .clan-tree-controls{visibility:hidden;opacity:0}.clan-tree-controls{right:calc(var(--space-3) + env(safe-area-inset-right));bottom:calc(var(--space-3) + env(safe-area-inset-bottom))}.clan-tree-surface>.person-panel{inset:auto 0 0}.history-gallery-top,.history-gallery-church,.history-gallery-period,.history-gallery-post-revolution{gap:var(--space-3);grid-template-columns:minmax(0,1fr)}.history-lightbox{padding:var(--space-3)}.history-table th,.history-table td{padding:var(--space-2)}.about-project-header{padding-bottom:var(--space-6)}.about-project-header h1{padding-right:calc(var(--control-height) + var(--space-3))}.about-project-card{padding:var(--space-5) var(--space-4)}.about-project-card h2,.about-team h2{font-size:var(--font-size-mobile-title)}.about-project-story-copy p{font-size:var(--font-size-small)}.about-team{margin-top:var(--space-8)}.about-team-graph{margin-top:var(--space-4)}.about-team-links,.about-team-members{transform:none}.about-team-member{width:4.6875rem;transform:translate(-50%,-2.34375rem)}.about-team-portrait{width:4.6875rem;height:4.6875rem}.icon-button.about-team-reset{top:var(--space-2);right:var(--space-2)}.about-team-member .about-team-copy{display:none}.about-team-mobile-list{gap:var(--space-3);margin:var(--space-4) 0 0;padding:0;list-style:none;display:grid}.about-team-mobile-list .about-team-copy{height:5.25rem;padding:var(--space-2) var(--space-3);transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);margin:0}.about-team-mobile-list>li.is-highlighted .about-team-copy{background:var(--color-hover);border-color:var(--color-accent);box-shadow:0 0 0 .125rem #70c7ec2e, var(--shadow-overlay)}.about-team-copy h3{font-size:var(--font-size-small)}.about-team-copy p{font-size:var(--font-size-caption)}.icon-button.graph-reset,.icon-button.graph-mode{top:calc(var(--space-3) + env(safe-area-inset-top));right:calc(var(--space-3) + env(safe-area-inset-right))}.icon-button.graph-mode{top:calc(var(--space-3) + env(safe-area-inset-top) + var(--control-height) + var(--space-3))}.search-region{top:calc(var(--space-3) + env(safe-area-inset-top));right:calc(var(--space-3) + env(safe-area-inset-right) + var(--control-height) + var(--space-2));left:calc(var(--space-3) + env(safe-area-inset-left));grid-template-columns:minmax(0,1fr);width:auto;transform:none}.search-region[data-can-create=true]{grid-template-columns:minmax(0, 1fr) var(--control-height);width:auto}.search-results{max-height:var(--mobile-results-max-height);padding:var(--space-3) var(--space-4);overflow:clip}.search-results ul{max-height:calc(var(--mobile-results-max-height) - var(--space-3) - var(--space-3) - var(--border-width) - var(--border-width))}.person-panel{width:auto;max-height:var(--mobile-panel-max-height);border-radius:var(--radius-mobile-panel) var(--radius-mobile-panel) 0 0;border-bottom:0;border-left:0;border-right:0;inset:auto 0 0}.person-header{padding:var(--space-5) var(--space-4)}.person-panel-scroll{padding:0 var(--space-4) calc(var(--space-10) + env(safe-area-inset-bottom))}.person-header h1{font-size:var(--font-size-mobile-title)}.person-facts div,.source-fields>div{grid-template-columns:1fr;gap:0}.graph-state{width:calc(100% - var(--space-6));padding:var(--space-4);top:46%}.product-note{width:calc(100% - var(--space-6));gap:var(--space-2);row-gap:var(--space-1);font-size:var(--font-size-small);white-space:normal;flex-wrap:wrap}.product-note button{white-space:nowrap}.login-form{transform:translateY(-2rem)}.icon-button.login-close{top:calc(-1 * (var(--space-8) + var(--space-4)))}.app-shell[data-panel=true] .product-note{display:none}.new-person-page-header{padding:calc(var(--space-3) + env(safe-area-inset-top)) calc(var(--space-4) + env(safe-area-inset-right)) var(--space-3) calc(var(--space-4) + env(safe-area-inset-left))}.new-person-page-header h1{font-size:var(--font-size-mobile-title)}.new-person-page-scroll{padding:0}.new-person-form,.form-skeleton{gap:var(--space-6);padding:var(--space-5) var(--space-4) calc(var(--space-8) + env(safe-area-inset-bottom));box-shadow:none;border:0;border-radius:0}.form-skeleton-grid{grid-template-columns:minmax(0,1fr)}.form-state-error{width:calc(100% - var(--space-8));padding:var(--space-5);margin:var(--space-5) auto}.new-person-section+.new-person-section{padding-top:var(--space-6)}.new-person-section-heading-actions{flex-direction:column;align-items:flex-start}.new-person-form-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.new-person-field-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.new-person-archive-reference-parts{grid-template-columns:repeat(3,minmax(0,1fr))}.new-person-name-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.new-person-field-wide{grid-column:1}.new-person-entry{padding:var(--space-4)}.new-person-checkbox{grid-column:1}.new-person-document{padding:var(--space-4)}}:root{--analytics-space:0px}.analytics-consent{z-index:100;overscroll-behavior:contain;border-top:1px solid var(--color-border-active);max-height:48dvh;color:var(--color-text);background:var(--color-surface-state);font-family:var(--font-ui);font-size:var(--font-size-small);line-height:var(--line-height-body);position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.analytics-consent__panel{align-items:center;gap:var(--space-6);max-width:76rem;padding:var(--space-4) max(var(--space-4), env(safe-area-inset-right)) max(var(--space-4), env(safe-area-inset-bottom));margin:0 auto;display:flex}.analytics-consent__copy{flex:1;min-width:0}.analytics-consent__copy h2{margin:0 0 var(--space-2);font-size:var(--font-size-section)}.analytics-consent__copy p{margin:0 0 var(--space-2)}.analytics-consent__actions{gap:var(--space-2);flex-direction:column;min-width:13rem;display:flex}.analytics-consent button{min-height:2.75rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-active);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface-panel);cursor:pointer;font:inherit}.analytics-consent button:hover{background:var(--color-surface-search-active)}.analytics-consent button:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:-.25rem}.app-shell,.login-page,.clan-tree-page,.new-person-page,.reference-page,.project-landing,.not-found-page{bottom:var(--analytics-space)}.person-panel{bottom:calc(var(--panel-gutter) + env(safe-area-inset-bottom) + var(--analytics-space))}@media (width<=640px){.analytics-consent__panel{align-items:stretch;gap:var(--space-2);padding-top:var(--space-3);flex-direction:column}.analytics-consent__actions{grid-template-columns:1fr 1fr;min-width:0;display:grid}.analytics-consent__actions button{min-width:0}}.clan-tree-surface>.person-panel{bottom:calc(var(--panel-gutter) + env(safe-area-inset-bottom))}@media (width<=47.5rem){.overlay-stack>.person-panel{bottom:var(--analytics-space);max-height:min(var(--mobile-panel-max-height), calc(100dvh - var(--analytics-space) - env(safe-area-inset-top) - 2 * var(--control-height) - 3 * var(--space-3)))}.clan-tree-surface>.person-panel{bottom:0}}
