:root{--accent: #086383;--accent-dark: #06526c;--accent-darker: #043f54;--accent-soft: #d7eaf1;--accent-softer: #eef6f9;--green: #276b00;--green-dark: #1f5600;--green-soft: #e4efd8;--ink: #1a1a1a;--ink-soft: #5a5a5a;--ink-faint: #8a8a8a;--panel: #ffffff;--panel-soft: #f7f7f5;--line: #e5e5e5;--hover: #f3f3f3;--canvas: #f7f7f5;--canvas-dot: #e5e5e5;--tree-line: #b0b0b0;--male: #b7e4f4;--male-border: #0b9bcf;--female: #f7bfd4;--female-border: #e2187a;--neutral: #f3f3f1;--neutral-border: #cfcfcf;--error: #b3261e;--error-soft: #fdecea;--warning: #a33b12;--warning-soft: #f6e8e1;--info: #086383;--info-soft: #d7eaf1;--topbar: 56px;--text-body: 15px;--text-small: 14px;--text-label: 15px;--text-title-page: 1.75rem;--text-title: 1.25rem;--text-title-sm: 1.05rem;--text-lead: 15px}@media(max-width:1023px){:root{--text-body: 14px;--text-small: 13px;--text-label: 14px;--text-title-page: 1.35rem;--text-title: 1.125rem;--text-title-sm: 1rem;--text-lead: 14px;--topbar: 52px}}*,*:before,*:after{letter-spacing:0!important}html{font-size:16px}body{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,Arial,sans-serif;--tw-text-opacity: 1;color:rgb(26 26 26 / var(--tw-text-opacity, 1));font-size:var(--text-body);line-height:1.5}input,select,textarea,button,label,th,td{font-size:var(--text-body)}.page-title{margin:0;font-size:var(--text-title-page);font-weight:700;line-height:1.25;color:var(--ink)}.modal-title,.empty-title,.panel-title{margin:0;font-size:var(--text-title);font-weight:700;line-height:1.3;color:var(--ink)}.person-heading{margin:0;font-size:var(--text-title);font-weight:700;line-height:1.3;color:var(--ink);word-break:break-word}.page-subtitle,.modal-subtitle{margin:0;font-size:var(--text-body);line-height:1.45;color:var(--ink-soft)}.text-meta{font-size:var(--text-small);line-height:1.4;color:var(--ink-soft)}.text-3xl,.text-2xl,.text-xl,.text-lg{font-size:var(--text-title)!important;line-height:1.3!important}h1.page-title,h1.text-3xl{font-size:var(--text-title-page)!important}.stat-value{font-size:1.5rem!important;line-height:1.2!important;font-variant-numeric:tabular-nums}@media(max-width:1023px){.stat-value{font-size:1.25rem!important}}a:hover,button:hover{box-shadow:none!important;filter:none;transform:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}html.drawer-open .leaflet-container{pointer-events:none!important}html:has(.app-modal-panel) #tree-canvas,html:has(.relative-picker) #tree-canvas{pointer-events:none!important}@media(max-width:1023px){.btn{padding:.55rem 1.1rem}.panel{border-radius:12px}}.tooltip-bubble{position:fixed;z-index:9000;max-width:320px;padding:10px 14px;border-radius:10px;background:#2a2e26;color:#f6f7f3;font-size:var(--text-body);line-height:1.45;box-shadow:0 10px 30px #14181047;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity .13s ease,transform .13s ease}.tooltip-bubble.is-visible{opacity:1;transform:translateY(0)}.tooltip-bubble .tooltip-title{font-weight:700;display:block}.tooltip-bubble .tooltip-meta{color:#c9cec0;display:block}.tooltip-bubble:after{content:"";position:absolute;width:10px;height:10px;background:inherit;transform:rotate(45deg)}.tooltip-bubble[data-side=top]:after{bottom:-5px;left:var(--arrow-x, 50%);margin-left:-5px}.tooltip-bubble[data-side=bottom]:after{top:-5px;left:var(--arrow-x, 50%);margin-left:-5px}.toast-stack{position:fixed;z-index:9500;right:20px;bottom:max(20px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px;width:min(400px,calc(100vw - 32px))}@media(max-width:640px){.toast-stack{right:12px;left:12px;width:auto}}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:4px;border:0;color:#fff;box-shadow:0 8px 24px #0f172a47;animation:toast-in .28s cubic-bezier(.22,1,.36,1)}.toast[data-type=success],.toast[data-type=info]{background:var(--green)}.toast[data-type=error],.toast[data-type=warning]{background:var(--error)}.toast.is-leaving{animation:toast-out .24s ease forwards}@keyframes toast-in{0%{opacity:0;transform:translate(120%)}to{opacity:1;transform:translate(0)}}@keyframes toast-out{to{opacity:0;transform:translate(120%)}}#tree-canvas{background-color:var(--neutral);background-image:none;touch-action:none;cursor:grab}#tree-canvas.is-panning{cursor:grabbing}.tree-link{fill:none;stroke:var(--tree-line);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.tree-link-union{stroke:var(--tree-line);stroke-width:2}.tree-link-sibling{stroke:var(--ink-faint);stroke-width:1.5;stroke-dasharray:4 3;fill:none}.tree-link-adopted{stroke-dasharray:7 6}.node-card{cursor:pointer;outline:none}.node-card:focus,.node-card:focus-visible{outline:none}.node-box{fill:#fff;stroke:var(--neutral-border);stroke-width:1.75;filter:drop-shadow(0 2px 6px rgba(0,0,0,.08))}.node-avatar-ring{fill:none;stroke:var(--line);stroke-width:1.5}.node-select-ring{stroke:transparent;stroke-width:2.5}.node-card[data-root="1"] .node-select-ring,.node-card.is-focused .node-select-ring{stroke:var(--accent)}.node-card[data-gender=m] .node-box{fill:#fff;stroke:var(--male-border)}.node-card[data-gender=f] .node-box{fill:#fff;stroke:var(--female-border)}.node-card[data-gender=n] .node-box{fill:#fff;stroke:var(--neutral-border)}html.tree-tile-fills .node-card[data-gender=m] .node-box{fill:var(--male)}html.tree-tile-fills .node-card[data-gender=f] .node-box{fill:var(--female)}html.tree-tile-fills .node-card[data-gender=n] .node-box{fill:var(--neutral)}.node-card:hover .node-box,.node-card.is-hovered .node-box,.node-card[data-gender=m]:hover .node-box,.node-card[data-gender=f]:hover .node-box,.node-card[data-gender=m].is-hovered .node-box,.node-card[data-gender=f].is-hovered .node-box{filter:drop-shadow(0 8px 18px rgba(15,23,42,.22))}.node-card[data-root="1"] .node-box{stroke-width:1.75}.node-card[data-root="1"]:hover .node-box,.node-card[data-root="1"].is-hovered .node-box{filter:drop-shadow(0 8px 18px rgba(15,23,42,.22))}.node-name{font-weight:700;font-size:16px;fill:var(--ink)}.node-meta{font-size:15px;fill:var(--ink-soft)}.node-date-line{font-size:15px;font-weight:500}.node-symbol{font-size:17px;font-weight:700;fill:var(--ink-soft)}.node-add,.node-branch-siblings{color:var(--neutral-border)}.node-card[data-gender=m] .node-add,.node-card[data-gender=m] .node-branch-siblings{color:var(--male-border)}.node-card[data-gender=f] .node-add,.node-card[data-gender=f] .node-branch-siblings{color:var(--female-border)}.node-card[data-gender=n] .node-add,.node-card[data-gender=n] .node-branch-siblings{color:var(--neutral-border)}.node-add-tab{stroke:none}.node-add-tab,.node-sib-tab{filter:drop-shadow(0 3px 5px rgba(15,23,42,.12))}.node-text,.node-avatar-image,.node-avatar-bg,.node-add-plus,.node-sib-count{pointer-events:none}.node-branch-chip{fill:#9aa3ae}.node-branch-stem{stroke:#6b7280}.node-card[data-ghost="1"]{cursor:pointer}.node-ghost-box{filter:drop-shadow(0 2px 6px rgba(0,0,0,.06))}.node-issue circle{fill:var(--warning)}.tree-svg[data-lod="1"] .node-line-2,.tree-svg[data-lod="1"] .node-line-3,.tree-svg[data-lod="1"] .node-line-4,.tree-svg[data-lod="1"] .node-line-5,.tree-svg[data-lod="1"] .node-line-6,.tree-svg[data-lod="1"] .node-ui,.tree-svg[data-lod="1"] .node-issue{display:none}.tree-svg[data-lod="1"] .node-name{font-size:17px}.tree-svg[data-lod="2"] .node-line-4,.tree-svg[data-lod="2"] .node-line-5,.tree-svg[data-lod="2"] .node-line-6,.tree-svg[data-lod="2"] .node-branch-siblings{display:none}.node-card[data-selected="1"] .node-select-ring{stroke:var(--accent);stroke-width:2.5}.tree-minimap{position:absolute;left:14px;bottom:14px;width:190px;height:130px;background:#fffffff0;border:1px solid var(--line);border-radius:10px;overflow:hidden}@media(max-width:1023px){.tree-minimap{left:10px;bottom:10px;width:118px;height:82px}}.tree-minimap-view{fill:#08638324;stroke:var(--accent);stroke-width:1.5}.tree-minimap-node{fill:var(--ink-faint)}.tree-person-dimmer{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:4999}.tree-person-dimmer.is-visible{display:block}.tree-person-dimmer.is-blocked{pointer-events:none}.tree-person-panel{background:#fff;border-color:var(--line);display:none;flex-direction:column;overflow:hidden}.tree-person-panel--visible{display:flex}.tree-person-panel--desktop{position:relative;flex:none;width:480px;height:100%;border-right:1px solid var(--line)}.tree-person-panel--mobile{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;z-index:5000!important;width:100%!important;max-width:none!important;height:100%!important;border:0!important;border-radius:0!important}.tree-person-reopen{position:absolute;left:0;top:calc(50% - 28px);z-index:25;box-sizing:border-box;width:28px;height:56px;margin:0;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-left:0;border-radius:0 10px 10px 0;background:#fff;color:var(--ink-soft);box-shadow:2px 0 10px #0f172a0f;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transition:color .15s ease,opacity .15s ease,visibility .15s ease}.tree-person-reopen.is-visible{opacity:1;visibility:visible;pointer-events:auto}.tree-person-reopen:hover,.tree-person-reopen:focus-visible{color:var(--accent);background:#fff}.tree-person-reopen svg{display:block;flex:none}.gens-slider{padding:.15rem .5rem .35rem}.gens-slider-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.gens-slider-value{font-weight:700;color:var(--accent);font-size:1.05rem;line-height:1}.gens-slider-wrap{position:relative;height:28px;--g: 1}.gens-track{position:absolute;left:9px;right:9px;top:12px;height:4px;border-radius:99px;background:var(--line);pointer-events:none}.gens-track-fill{height:100%;border-radius:99px;background:var(--accent);width:calc((var(--g) - 1) / 9 * 100%)}.gens-dots{position:absolute;left:9px;right:9px;top:9px;display:flex;justify-content:space-between;align-items:center;pointer-events:none;z-index:1}.gens-dot{width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--line);box-sizing:border-box;flex:none}.gens-dot.is-on{background:var(--accent);border-color:var(--accent)}.gens-slider-wrap input[type=range]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:pointer;z-index:2}.gens-slider-wrap input[type=range]:focus{outline:none}.gens-slider-wrap input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--accent-soft)}.gens-slider-wrap input[type=range]::-webkit-slider-runnable-track{height:28px;background:transparent}.gens-slider-wrap input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;margin-top:5px;border-radius:50%;background:var(--accent);border:2px solid #ffffff;box-shadow:0 1px 4px #11182747}.gens-slider-wrap input[type=range]::-moz-range-track{height:28px;background:transparent;border:0}.gens-slider-wrap input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--accent);border:2px solid #ffffff;box-shadow:0 1px 4px #11182747}.gens-nums{display:flex;justify-content:space-between;margin-top:.2rem;padding:0 4px}.gens-num{width:1.35rem;height:1.35rem;padding:0;border:0;background:transparent;color:var(--ink-faint);font-size:11px;font-variant-numeric:tabular-nums;line-height:1.35rem;text-align:center;border-radius:99px;cursor:pointer}.gens-num.is-current{color:var(--accent);font-weight:700;background:var(--accent-softer)}.tree-link-grid{stroke:#e4e4e2;stroke-width:1;fill:none}.fan-wedge-body{fill:#fff;stroke:var(--neutral-border);stroke-width:1.2;filter:drop-shadow(0 1px 2px rgba(24,30,18,.08))}.fan-node[data-ghost="1"] .fan-wedge-body{fill:#fafaf8;stroke-dasharray:5 4}.fan-node[data-ghost="1"][data-gender=m] .fan-wedge-body{fill:#f4fafd}.fan-node[data-ghost="1"][data-gender=f] .fan-wedge-body{fill:#fdf6f9}.fan-node[data-selected="1"] .fan-wedge-body{stroke:var(--accent);stroke-width:2.25}.fan-node[data-root="1"] .fan-root-ring{stroke:var(--accent);stroke-width:2.5}.fan-node[data-selected="1"] .fan-root-ring{stroke:var(--accent);stroke-width:3}.tree-svg[data-lod="1"] .fan-dates,.tree-svg[data-lod="1"] .fan-root-dates,.tree-svg[data-lod="1"] .fan-root-name,.tree-svg[data-lod="1"] .fan-wedge-photo,.tree-svg[data-lod="1"] .fan-ghost-label,.tree-svg[data-lod="2"] .fan-dates{display:none}.tree-gens-btn{height:42px;padding-inline:.75rem;font-weight:600;font-size:var(--text-small)}@media(max-width:639px){.tree-gens-btn{min-width:42px;padding-inline:.5rem;justify-content:center}}.tree-gens-n{color:#85b940;font-weight:800;min-width:1.05em;text-align:center}.tree-gens-btn.is-open{background:var(--green-soft);border-color:#85b940;color:var(--ink)}.tree-action-menu{position:absolute;right:0;top:46px;z-index:40;background:#fff;border:1px solid var(--line);border-radius:.75rem;padding:.5rem;box-shadow:0 14px 34px #181e1229;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;max-height:min(70vh,calc(100dvh - 6rem))}@media(max-width:639px){.tree-action-menu{position:fixed;left:.5rem;right:.5rem;top:calc(var(--topbar) + 56px + .35rem);width:auto!important;max-width:none;max-height:calc(100dvh - var(--topbar) - 56px - 1.25rem)}}.place-marker span{display:flex;align-items:center;justify-content:center;border-radius:9999px;background:var(--accent);border:2px solid #ffffff;color:#fff;font-size:var(--text-small);font-weight:700}.leaflet-container{font-size:var(--text-body);font-family:inherit;position:relative;z-index:0;isolation:isolate}.leaflet-popup-content{margin:12px 14px;line-height:1.45;font-size:var(--text-body)}.places-map-host{position:relative;z-index:0;isolation:isolate}#nprogress,#nprogress .bar,#nprogress .spinner{display:none!important}.app-loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;background:#f7f7f5e6;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,visibility .15s ease}.app-loader.is-visible{opacity:1;visibility:visible;pointer-events:auto}.app-spinner{font-size:56px;position:relative;display:inline-block;width:1em;height:1em}.app-spinner-blade{position:absolute;left:.4629em;bottom:0;width:.074em;height:.2777em;border-radius:.0555em;background-color:transparent;transform-origin:center -.2222em;animation:app-spinner-fade 1s infinite linear;animation-delay:calc(var(--i) * 83ms);transform:rotate(calc(var(--i) * 30deg))}@keyframes app-spinner-fade{0%{background-color:#69717d}to{background-color:transparent}}@media(prefers-reduced-motion:reduce){.app-spinner-blade{animation:none}.app-spinner-blade:nth-child(1){background-color:#69717d}.sk-bone:after{animation:none;display:none}}.skeleton-overlay{display:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;overflow:auto;background:var(--canvas);padding:0;width:100%}.sk-bone{display:block;background:#e8e8e6;border-radius:8px;position:relative;overflow:hidden}.sk-bone:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.22) 50%,transparent 100%);transform:translate(-100%);animation:sk-shine 3.2s ease-in-out infinite;pointer-events:none}@keyframes sk-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.sk-line{height:13px;border-radius:6px}.sk-line-sm{height:10px;border-radius:5px}.sk-avatar{width:40px;height:40px;border-radius:999px;flex:none}.sk-thumb-doc{width:78px;height:78px;border-radius:10px;flex:none}.sk-photo{width:100%;aspect-ratio:1 / 1;border-radius:0}.sk-map{width:100%;height:14rem;border-radius:0}@media(min-width:640px){.sk-map{height:420px}}.photo-stage{position:relative;display:inline-block;max-width:100%;line-height:0}.photo-stage img{display:block;max-width:100%}.photo-overlay{position:absolute;pointer-events:none;overflow:visible}.photo-mark-badge{position:absolute;top:8px;left:8px;display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 8px;background:#121510b8;color:#fff;font-size:12px;line-height:1.2;pointer-events:none}.photo-mark-badge.is-hidden{background:#12151073}.gallery-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8000;display:flex;flex-direction:column;overflow:hidden;background:#121510eb;padding:max(.75rem,env(safe-area-inset-top)) 3.25rem max(.75rem,env(safe-area-inset-bottom))}.gallery-lightbox-close{position:absolute;top:max(.75rem,env(safe-area-inset-top));right:max(.75rem,env(safe-area-inset-right));z-index:20}.gallery-lightbox-frame{flex:1 1 auto;min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.gallery-lightbox-frame img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:.75rem}.gallery-lightbox-nav{position:absolute;top:0;bottom:0;z-index:15;display:flex;align-items:center;padding:0 .35rem}.gallery-lightbox-nav.is-prev{left:max(.25rem,env(safe-area-inset-left))}.gallery-lightbox-nav.is-next{right:max(.25rem,env(safe-area-inset-right))}.gallery-lightbox-nav .icon-btn{touch-action:manipulation}.gallery-lightbox-caption{flex:none;text-align:center;color:#fff;padding:.75rem .5rem .25rem}.photo-annotator{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8100;display:flex;flex-direction:column;background:#121510;color:#f3f3f1}.photo-annotator-bar,.photo-annotator-tools{display:flex;align-items:center;gap:8px;flex:none;padding:10px 12px;background:#1b1e18;border-bottom:1px solid #2c3028}.photo-annotator-bar{padding-top:max(10px,env(safe-area-inset-top))}.photo-annotator-actions{display:flex;align-items:center;gap:8px;flex:none}.photo-annotator-tools{flex-wrap:wrap;overflow-x:auto;gap:10px 14px}.photo-annotator-stage{position:relative;flex:1;min-height:0;overflow:hidden;padding:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;cursor:crosshair}.photo-annotator-stage.is-select{cursor:default}.photo-annotator-stage.is-pan{cursor:grab}.photo-annotator-stage.is-panning,.photo-annotator-stage.is-panning .photo-overlay{cursor:grabbing}.photo-annotator-stage .photo-stage{position:absolute;left:0;top:0;display:block;max-width:none;max-height:none;min-width:0;min-height:0;will-change:transform}.photo-annotator-stage img{display:block;max-width:none;max-height:none;width:auto;height:auto;pointer-events:none}.photo-annotator-stage .photo-overlay{pointer-events:none;touch-action:none}.photo-zoom-fab{position:absolute;right:10px;bottom:max(10px,env(safe-area-inset-bottom));z-index:3;display:flex;flex-direction:column;gap:6px}.photo-zoom-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;border:1px solid #2c3028;background:#1b1e18eb;color:#f3f3f1}.photo-zoom-btn:hover:not(:disabled){background:#ffffff1f}.photo-zoom-btn:disabled{opacity:.35}.photo-mode-bar{position:absolute;left:50%;bottom:max(10px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:3;display:flex;gap:4px;padding:4px;border-radius:14px;border:1px solid #2c3028;background:#1b1e18f0}.photo-mode-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:44px;padding:0 16px;border-radius:10px;color:#f3f3f1d1;font-size:14px;font-weight:600;white-space:nowrap}.photo-mode-btn.is-on{background:var(--accent);color:#fff}.photo-annotator.is-touch .photo-zoom-fab{top:10px;bottom:auto}.photo-annotator.is-touch .photo-annotator-stage.is-draw{cursor:crosshair}.photo-annotator-hint{font-size:13px;color:#f3f3f1b3}.photo-tool{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 10px;border-radius:10px;border:1px solid transparent;color:#f3f3f1d1;background:transparent;flex:none}.photo-tool:hover{background:#ffffff14}.photo-tool.is-on{background:var(--accent);border-color:var(--accent);color:#fff}.photo-tool:disabled{opacity:.35}.photo-swatch{width:22px;height:22px;border-radius:999px;border:2px solid transparent;box-shadow:inset 0 0 0 1px #0003;flex:none}.photo-swatch.is-on{border-color:#fff}.photo-annotator label.photo-ctrl{display:flex;align-items:center;gap:8px;font-size:13px;color:#f3f3f1cc;white-space:nowrap}.photo-annotator input[type=range]{width:92px;accent-color:var(--accent)}.photo-annotator input[type=color]{width:34px;height:28px;padding:0;border:0;background:transparent}.photo-annotator .btn-quiet.photo-annotator-cancel{color:#f3f3f1;border-color:#4a4e46}.photo-annotator .btn-quiet.photo-annotator-cancel:hover{background:#ffffff1f;color:#f3f3f1;border-color:#5c6158}.photo-annotator .icon-btn.photo-annotator-close{color:#f3f3f1}.photo-annotator .icon-btn.photo-annotator-close:hover{background:#ffffff1f;color:#f3f3f1}.photo-peek{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8050;display:flex;flex-direction:column;align-items:stretch;justify-content:stretch;gap:12px;background:#121510eb;padding:16px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}.photo-peek-viewport{position:relative;flex:1 1 auto;min-height:0;width:100%;overflow:hidden;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;cursor:grab}.photo-peek-viewport.is-panning,.photo-peek-viewport.is-panning .photo-overlay{cursor:grabbing}.photo-peek-viewport .photo-stage{position:absolute;left:0;top:0;display:block;max-width:none;max-height:none;min-width:0;min-height:0;will-change:transform}.photo-peek-viewport img{display:block;max-width:none;max-height:none;width:auto;height:auto;pointer-events:none}.photo-peek-pdf{display:block;border:0;background:#fff;pointer-events:none}.photo-peek-kind{display:inline-block;margin-bottom:6px;padding:3px 10px;border-radius:999px;background:#ffffff24;font-size:13px;font-weight:600;letter-spacing:.01em}.photo-peek-file{display:flex;align-items:center;justify-content:center;width:min(92vw,280px);height:160px;border-radius:16px;background:#ffffff14;color:#f3f3f1d9}@media(max-width:700px){.photo-annotator-bar{gap:10px;padding:8px 10px;padding-top:max(8px,env(safe-area-inset-top))}.photo-annotator-bar .btn-primary{padding:8px 14px;font-size:14px}.photo-annotator-sub,.photo-annotator-guide,.photo-annotator-cancel{display:none}.photo-annotator-tools{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;padding:8px 10px}.photo-annotator-tools::-webkit-scrollbar{display:none}.photo-tool{min-width:40px;height:40px;padding:0 8px}.photo-annotator input[type=range]{width:72px}.photo-annotator-stage{padding:0}.photo-zoom-btn{width:40px;height:40px}}.scroll-thin::-webkit-scrollbar{width:11px;height:11px}.scroll-thin::-webkit-scrollbar-thumb{background:#c4c4c4;border-radius:6px}.scroll-thin::-webkit-scrollbar-track{background:transparent}.scroll-thin{scrollbar-color:#c4c4c4 transparent;-webkit-overflow-scrolling:touch}[x-cloak]{display:none!important}.login-page{min-height:100dvh;margin:0;font-family:Inter,Segoe UI,sans-serif;color:var(--ink);background:linear-gradient(#f9f7f2,#f9f7f2 52%,#eae6e1 52%,#eae6e1)}.login-shell{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 16px 48px}.login-card{width:100%;max-width:440px;background:#fff;border:1px solid #e5e5e5;border-radius:4px;box-shadow:0 2px 10px #00000014;padding:32px 36px 36px}.login-title{margin:0 0 28px;font-size:22px;line-height:1.3;font-weight:700;color:#1a1a1a}.login-field{margin-bottom:28px}.login-label-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.login-label{font-size:15px;font-weight:600;color:#333}.login-show{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#086383;font-size:15px;font-weight:600;cursor:pointer;padding:0}.login-show:hover{color:#06526c}.login-input{width:100%;height:44px;border:1px solid #cfcfcf;border-radius:4px;padding:0 12px;font-size:15px;background:#fff;color:#1a1a1a}.login-input:focus{outline:2px solid #086383;outline-offset:1px;border-color:#086383}.login-submit{display:inline-flex;align-items:center;justify-content:center;min-width:140px;height:44px;padding:0 28px;border:0;border-radius:9999px;background:#086383;color:#fff;font-size:15px;font-weight:700;cursor:pointer}.login-submit:hover{background:#06526c}@media(max-width:520px){.login-card{padding:24px 20px 28px}.login-title{font-size:20px}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:480px){.container{max-width:480px}}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:9999px;border-width:1px;padding:.625rem 1.5rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;line-height:1.25;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}@media(max-width:1023px){.btn-primary{padding:.55rem 1.1rem}}.btn-primary{background:var(--accent);border-color:var(--accent)}.btn-primary.is-file-target{background:var(--accent-dark);border-color:var(--accent-dark);box-shadow:0 0 0 3px var(--accent-soft)}.btn-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:9999px;border-width:1px;padding:.625rem 1.5rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;line-height:1.25;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}@media(max-width:1023px){.btn-ghost{padding:.55rem 1.1rem}}.btn-ghost{background:var(--green);border-color:var(--green)}.btn-ghost:hover{background:var(--green-dark);border-color:var(--green-dark)}.btn-quiet{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:9999px;border-width:1px;padding:.625rem 1.5rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;line-height:1.25;background-color:transparent}@media(max-width:1023px){.btn-quiet{padding:.55rem 1.1rem}}.btn-quiet{color:var(--ink-soft);border-color:var(--line)}.btn-quiet:hover{background:var(--hover);color:var(--ink)}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:9999px;border-width:1px;padding:.625rem 1.5rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;line-height:1.25;background-color:transparent}@media(max-width:1023px){.btn-danger{padding:.55rem 1.1rem}}.btn-danger{color:var(--error);border-color:var(--error)}.btn-danger:hover{background:var(--error-soft)}.btn-mini{display:inline-flex;align-items:center;gap:.375rem;border-radius:.5rem;border-width:1px;padding:.375rem .75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-color:var(--line);color:var(--ink);background:var(--panel)}.btn-mini:hover{background:var(--hover);border-color:var(--ink-faint)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:.5rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;width:42px;height:42px;color:var(--ink-soft)}.icon-btn:hover{background:var(--hover);color:var(--ink)}.icon-btn-active{background:transparent;color:var(--accent)}.btn-icon-label{position:relative}.fact-row{display:grid;grid-template-columns:minmax(6.5rem,8.25rem) minmax(0,1fr);-moz-column-gap:.75rem;column-gap:.75rem;align-items:baseline}.fact-row dt{color:var(--ink-soft)}.fact-row dd{min-width:0;overflow-wrap:anywhere}.person-hero-photo{width:72px!important;height:72px!important}@media(min-width:640px){.person-hero-photo{width:96px!important;height:96px!important}}.link{font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;color:var(--ink);text-decoration:underline;text-underline-offset:2px}.link:hover{color:var(--accent-dark)}.field{width:100%;border-radius:.5rem;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.5rem .75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-color:#c5cdd0;color:var(--ink)}.field:hover{border-color:var(--ink-faint)}.field:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #08638329}.field[disabled]{background:var(--panel-soft);color:var(--ink-faint)}.flabel{margin-bottom:.25rem;display:block;font-weight:500;color:var(--ink-soft);font-size:var(--text-label)}.fhint{color:var(--ink-faint);font-size:var(--text-small)}.ferror{color:var(--error);font-size:var(--text-small)}.checkbox{border-radius:.25rem;border-width:1px;width:18px;height:18px;border-color:#b6bcab;accent-color:var(--accent)}.date-row{display:flex;flex-wrap:wrap;gap:.5rem}.date-row>.field{flex:1 1 5.5rem;min-width:0}.date-row>.field.date-day{flex:0 1 5rem}.date-row>.field.date-year{flex:0 1 5.75rem}@media(max-width:480px){.date-row>.field.date-day,.date-row>.field.date-year,.date-row>.field{flex:1 1 100%}}.page-btn{display:inline-flex;align-items:center;gap:.375rem;border-radius:.5rem;border-width:1px;padding:.5rem .75rem;font-weight:500;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;min-width:42px;justify-content:center;border-color:var(--line);background:var(--panel);color:var(--ink)}.page-btn:hover{background:var(--hover);border-color:var(--ink-faint)}.page-btn-active,.page-btn-active:hover{background:var(--accent);border-color:var(--accent);color:#fff}.page-btn-disabled,.page-btn-disabled:hover{background:var(--panel-soft);border-color:var(--line);color:var(--ink-faint);cursor:default}.panel{border-radius:10px;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));border-color:var(--line)}.divider{border-top-width:1px;border-color:var(--line)}.section-label{font-weight:600;color:var(--ink-soft);font-size:var(--text-body);letter-spacing:0!important;text-transform:none}.doc-folder-list{display:flex;flex-direction:column;padding:6px}.doc-folder-item{display:flex;width:100%;align-items:center;gap:.5rem;border-radius:.5rem;padding-left:.625rem;padding-right:.625rem;text-align:left;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;min-height:42px;color:var(--ink);background:transparent;border:0}.doc-folder-item:hover{background:var(--hover)}.doc-folder-item.is-active{background:var(--accent-softer);color:var(--accent-dark);font-weight:700}.doc-folder-item__count{margin-left:auto;flex:none;color:var(--ink-faint);font-variant-numeric:tabular-nums;font-weight:600}.doc-folder-item.is-active .doc-folder-item__count{color:var(--accent)}.doc-folder-item.is-quiet{color:var(--ink-soft)}.doc-file-row{display:flex;align-items:center;gap:.5rem;border-radius:.5rem;padding-left:.625rem;padding-right:.625rem;min-height:42px;margin-top:12px;background:var(--panel-soft);border:1px solid var(--line)}.doc-file-select{min-width:0px;flex:1 1 0%;border-width:0px;background-color:transparent;padding-top:.5rem;padding-bottom:.5rem;font-weight:600;color:var(--ink)}.doc-file-select:focus{outline:none}.doc-preview{display:flex;align-items:center;justify-content:center;min-height:280px;background:var(--panel-soft);border-radius:.75rem;overflow:hidden}.doc-preview img{width:100%;max-height:min(72vh,820px);-o-object-fit:contain;object-fit:contain}.doc-preview iframe{width:100%;height:min(72vh,820px);border:0;background:#fff}.doc-attachment{display:flex;align-items:center;gap:.75rem;border-radius:10px;border-width:1px;padding:.5rem .75rem;text-align:left;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-color:var(--line)}.doc-attachment:hover,.doc-attachment.is-active{background:var(--hover)}.app-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#181c1480}.app-modal-panel{max-height:100dvh;overscroll-behavior:contain}.app-modal-panel.is-compact{max-width:min(var(--modal-max, 480px),100%)}@media(min-width:640px){.app-modal-panel{max-width:min(var(--modal-max, 780px),100%);max-height:min(100dvh - 12px,920px)}}.navtab{display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap;border-radius:.5rem;padding:.5rem .625rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;justify-content:flex-start;text-align:left;color:var(--ink-soft);background:transparent}.navtab:hover,.navtab-active{background:transparent;color:var(--accent)}.nav-drawer-link{display:flex;align-items:center;justify-content:flex-start;gap:12px;width:100%;padding:11px 12px;border:0;border-radius:8px;background:transparent;color:var(--ink-soft);font-size:var(--text-body);font-weight:600;line-height:1.25;text-align:left;cursor:pointer}.nav-drawer-link>svg{flex:none;width:18px;height:18px}.nav-drawer-link>span:first-of-type{min-width:0}.nav-drawer-link:hover,.nav-drawer-link-active{color:var(--accent);background:transparent}.nav-drawer-link .badge{margin-left:auto;flex:none}.badge{display:inline-flex;align-items:center;gap:.375rem;border-radius:9999px;border-width:1px;padding:.125rem .625rem;font-weight:500;font-size:var(--text-label);border-color:var(--line);background:var(--panel-soft);color:var(--ink-soft)}.badge-warning{border-color:transparent;background:var(--warning-soft);color:var(--warning)}.union-card{border:1px solid var(--line);border-radius:.75rem;padding:.75rem}.union-card-actions{display:flex;flex:none;margin-left:auto}.union-card-actions .icon-btn{width:36px;height:36px}.union-card-person{display:flex;align-items:flex-start;gap:.75rem;min-width:0}.event-pick{display:flex;align-items:flex-start;gap:.75rem;width:100%;padding:.55rem .5rem;margin-left:-.5rem;margin-right:-.5rem;border-radius:.75rem;text-align:left;transition:background-color .15s ease}.event-pick:hover,.event-pick--on{background:var(--hover)}.event-pick__mark{color:var(--accent);width:1.25rem;height:1.25rem;margin-top:.2rem}@media(min-width:640px){.union-card{padding:1rem}.union-card-actions .icon-btn{width:42px;height:42px}}.table{width:100%;border-collapse:collapse}.table th{border-bottom-width:1px;padding:.75rem 1rem;text-align:left;font-weight:600;border-color:var(--line);background:#fff;color:var(--ink-soft)}.table td{border-bottom-width:1px;padding:.75rem 1rem;vertical-align:middle;border-color:var(--line)}.table tbody tr{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.table tbody tr:hover{background:var(--hover)}.avatar-fallback{display:flex;align-items:center;justify-content:center;font-weight:600;background:var(--hover);color:var(--ink-soft);border-radius:9999px}.avatar-photo{border-radius:9999px!important}.list-controls{margin-bottom:1.25rem}.list-controls__bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.list-controls__search{flex:1 1 12rem;min-width:0;max-width:22rem}.filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.75rem}.filter-chip{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;padding:.28rem .45rem .28rem .7rem;border:1px solid var(--line);border-radius:999px;background:var(--panel-soft);color:var(--ink);font-size:var(--text-small);font-weight:600;line-height:1.25;text-align:left}.filter-chip>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-chip>svg{flex:none;color:var(--ink-soft)}.filter-chip:hover{background:var(--hover);border-color:var(--ink-faint)}.filter-chips-clear{padding:.28rem .4rem;color:var(--ink-soft);font-size:var(--text-small);font-weight:600;background:transparent;border:0}.filter-chips-clear:hover{color:var(--accent)}.filter-drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5500}.filter-drawer{position:absolute;top:0;right:0;bottom:0;z-index:1;display:flex;flex-direction:column;width:min(400px,100vw);background:#fff;box-shadow:-12px 0 40px #181e1229}.filter-drawer-header{display:flex;align-items:center;flex:none;min-height:56px;padding:0 .75rem 0 1.25rem;padding-top:env(safe-area-inset-top);border-bottom:1px solid var(--line)}.filter-drawer-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:1rem}.filter-drawer-body .relative>div.absolute{position:static;margin-top:.5rem;max-height:240px;box-shadow:none}.filter-drawer-footer{display:flex;align-items:center;gap:.5rem;flex:none;padding:.85rem 1.25rem max(.85rem,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff}.relative-picker{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8000}.relative-picker-backdrop{position:absolute;top:0;right:0;bottom:0;left:0}.relative-picker-backdrop.is-blocked{pointer-events:none}.relative-picker-close{position:fixed;top:max(.75rem,env(safe-area-inset-top));right:max(.75rem,env(safe-area-inset-right));z-index:8010;display:inline-flex;align-items:center;gap:.5rem;color:#fff;padding:.5rem;-webkit-tap-highlight-color:transparent}.relative-picker-scroll{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8001;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;display:flex;justify-content:center;align-items:flex-start;padding:max(3.5rem,calc(env(safe-area-inset-top) + 2.5rem)) 1rem max(1.5rem,env(safe-area-inset-bottom))}.relative-picker-stage{position:relative;width:min(720px,100%);display:flex;flex-direction:column;align-items:center;gap:.85rem;margin:auto 0;padding:.5rem 0 1rem}.relative-picker-title{color:#fff;font-weight:600;text-align:center;font-size:var(--text-title);margin:0 0 .35rem;text-wrap:balance}.relative-picker-row{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;width:100%}.relative-picker-middle{display:grid;grid-template-columns:1fr;gap:.75rem;width:100%;align-items:stretch;justify-items:center}.relative-picker-side{display:flex;flex-direction:column;gap:.75rem;width:min(270px,100%);align-items:stretch}.relative-picker-person{display:flex;align-items:center;gap:.75rem;width:min(270px,100%);min-height:88px;padding:.75rem 1rem;border-radius:.75rem;border:2px solid;color:var(--ink);order:-1}.relative-btn{display:flex;align-items:center;gap:.75rem;width:100%;min-height:72px;padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--ink);background:#fff;border:2px solid var(--line);border-radius:.75rem;transition:background-color .15s ease;-webkit-tap-highlight-color:transparent}.relative-btn:hover,.relative-btn:active{background:var(--hover);border-color:var(--line);color:var(--ink)}@media(min-width:768px){.relative-picker-scroll{align-items:center;padding-top:max(2rem,env(safe-area-inset-top))}.relative-picker-middle{grid-template-columns:minmax(220px,260px) minmax(220px,270px) minmax(220px,260px);justify-content:center;justify-items:stretch}.relative-picker-side{width:100%;height:100%}.relative-picker-side .relative-btn{flex:1 1 auto;min-height:0}.relative-picker-person{order:0;width:100%;height:100%;min-height:100%}.relative-picker-row .relative-btn{width:260px}}.file-drop{border:1px dashed var(--line);background:var(--panel);cursor:default}.file-drop--active{border-color:var(--accent);background:var(--hover)}.file-drop__icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:9999px;background:var(--panel-soft);color:var(--accent)}.upload-progress{margin-top:.75rem;max-width:22rem}.upload-progress-track{height:8px;border-radius:9999px;overflow:hidden;background:var(--line)}.upload-progress-fill{height:100%;background:var(--accent);transition:width .16s ease}.upload-progress-text{margin-top:.4rem;color:var(--ink-soft);font-variant-numeric:tabular-nums}.upload-progress-text strong{color:var(--ink);font-size:1.05em}.upload-queue{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1rem;padding:0;list-style:none;text-align:left}.upload-queue__item{position:relative;display:flex;flex-direction:column;width:104px;min-width:0}.upload-queue__thumb,.upload-queue__file{width:104px;height:104px;border-radius:.5rem;border:1px solid var(--line);background:var(--panel-soft)}.upload-queue__thumb{-o-object-fit:cover;object-fit:cover;display:block}.upload-queue__file{display:flex;align-items:center;justify-content:center;color:var(--ink-soft)}.upload-queue__name{margin-top:.35rem;font-size:.75rem;line-height:1.3;color:var(--ink-soft);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}.upload-queue__remove{position:absolute;top:-.4rem;right:-.4rem;width:1.5rem;height:1.5rem;background:#fff;border:1px solid var(--line)}.timeline{display:flex;flex-direction:column}.timeline-item{display:grid;grid-template-columns:36px minmax(0,1fr);-moz-column-gap:14px;column-gap:14px;position:relative;padding-bottom:1.35rem}.timeline-item:last-child{padding-bottom:0}.timeline-item:not(:last-child):before{content:"";position:absolute;left:17px;top:36px;bottom:0;width:2px;background:var(--line)}.timeline-icon{width:36px;height:36px;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;background:var(--panel-soft);color:var(--ink-soft);flex:none}.timeline-body{min-width:0;padding-top:2px}.timeline-when{font-weight:600;color:var(--ink-soft);font-size:var(--text-small);margin-bottom:.15rem}.timeline-title{font-weight:700;line-height:1.35}.timeline-detail{color:var(--ink-soft);margin-top:.15rem;line-height:1.45}.timeline-people{display:flex;flex-direction:column;gap:.35rem;margin-top:.55rem}.timeline-person{display:flex;align-items:center;gap:.55rem;min-width:0;text-align:left;font-weight:600;border-radius:.65rem;padding:.15rem .25rem;margin-left:-.25rem;color:inherit;transition:background-color .15s ease}.timeline-person:hover{background:var(--hover)}.person-vital{display:flex;align-items:flex-start;gap:.4rem;line-height:1.45}.person-vital-mark{flex:none;width:1.1em;text-align:center;color:var(--ink-soft)}.person-vital-age{color:var(--ink-soft);padding-left:1.5rem}.person-note-block{min-width:0}.person-note{margin:0;font-family:inherit;font-size:inherit;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;color:var(--ink);background:var(--panel-soft);border:1px solid var(--line);border-radius:.85rem;padding:.85rem 1rem}.person-note.is-collapsed{max-height:8.25em;overflow:hidden;position:relative}.person-note.is-collapsed:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2.4em;background:linear-gradient(to bottom,transparent,var(--panel-soft));pointer-events:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-right-2{right:-.5rem}.-top-2{top:-.5rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.left-0{left:0}.left-2\.5{left:.625rem}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-1{right:.25rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-4{top:1rem}.top-\[42px\]{top:42px}.top-\[46px\]{top:46px}.top-\[max\(12px\,env\(safe-area-inset-top\)\)\]{top:max(12px,env(safe-area-inset-top))}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[6000\]{z-index:6000}.z-\[8000\]{z-index:8000}.z-\[8200\]{z-index:8200}.m-0{margin:0}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.-mt-2{margin-top:-.5rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-\[max\(0\.25rem\,env\(safe-area-inset-bottom\)\)\]{margin-bottom:max(.25rem,env(safe-area-inset-bottom))}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-56{height:14rem}.h-auto{height:auto}.h-full{height:100%}.max-h-\[30vh\]{max-height:30vh}.max-h-\[40vh\]{max-height:40vh}.max-h-\[50vh\]{max-height:50vh}.max-h-\[60vh\]{max-height:60vh}.max-h-\[min\(70vh\,560px\)\]{max-height:min(70vh,560px)}.max-h-\[min\(80dvh\,560px\)\]{max-height:min(80dvh,560px)}.min-h-0{min-height:0px}.min-h-\[240px\]{min-height:240px}.min-h-\[280px\]{min-height:280px}.w-\[min\(84vw\,320px\)\]{width:min(84vw,320px)}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-\[220px\]{min-width:220px}.max-w-\[110px\]{max-width:110px}.max-w-\[140px\]{max-width:140px}.max-w-\[1600px\]{max-width:1600px}.max-w-\[340px\]{max-width:340px}.max-w-\[36rem\]{max-width:36rem}.max-w-\[460px\]{max-width:460px}.max-w-\[520px\]{max-width:520px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-none{flex:none}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-7{-moz-column-gap:1.75rem;column-gap:1.75rem}.gap-y-2{row-gap:.5rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:14px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-none{border-radius:0}.rounded-xl{border-radius:10px}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.bg-\[var\(--panel-soft\)\]{background-color:var(--panel-soft)}.bg-paper-soft{--tw-bg-opacity: 1;background-color:rgb(247 247 245 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1\.5{padding:.375rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-8{padding-bottom:2rem}.pb-\[max\(1rem\,env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.pl-1{padding-left:.25rem}.pl-2{padding-left:.5rem}.pl-9{padding-left:2.25rem}.pr-2{padding-right:.5rem}.pr-2\.5{padding-right:.625rem}.pt-1{padding-top:.25rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-\[max\(1rem\,env\(safe-area-inset-top\)\)\]{padding-top:max(1rem,env(safe-area-inset-top))}.text-left{text-align:left}.text-center{text-align:center}.font-bold{font-weight:700}.font-normal{font-weight:400}.font-semibold{font-weight:600}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-tight{line-height:1.25}.text-inherit{color:inherit}.text-ink{--tw-text-opacity: 1;color:rgb(26 26 26 / var(--tw-text-opacity, 1))}.text-ink-faint{--tw-text-opacity: 1;color:rgb(138 138 138 / var(--tw-text-opacity, 1))}.text-ink-soft{--tw-text-opacity: 1;color:rgb(90 90 90 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.no-underline{text-decoration-line:none}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@media(min-width:1280px){.filter-drawer-body .relative>div.xl\:absolute{position:static;margin-top:.5rem;max-height:240px;box-shadow:none}}.first\:border-t-0:first-child{border-top-width:0px}.first\:pt-0:first-child{padding-top:0}.last\:mb-0:last-child{margin-bottom:0}.last\:border-b-0:last-child{border-bottom-width:0px}.hover\:bg-\[var\(--hover\)\]:hover{background-color:var(--hover)}.hover\:text-\[var\(--accent-dark\)\]:hover{color:var(--accent-dark)}@media(min-width:640px){.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:mb-6{margin-bottom:1.5rem}.sm\:ml-auto{margin-left:auto}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:h-\[420px\]{height:420px}.sm\:h-auto{height:auto}.sm\:w-auto{width:auto}.sm\:max-w-\[48\%\]{max-width:48%}.sm\:flex-none{flex:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:gap-1\.5{gap:.375rem}.sm\:gap-3{gap:.75rem}.sm\:gap-4{gap:1rem}.sm\:rounded-2xl{border-radius:14px}.sm\:border-0{border-width:0px}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:px-3{padding-left:.75rem;padding-right:.75rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-8{padding-top:2rem;padding-bottom:2rem}.sm\:pb-4{padding-bottom:1rem}.sm\:pt-5{padding-top:1.25rem}}@media(min-width:1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1280px){.xl\:absolute{position:absolute}.xl\:inset-auto{inset:auto}.xl\:left-auto{left:auto}.xl\:right-0{right:0}.xl\:top-0{top:0}.xl\:top-\[46px\]{top:46px}.xl\:z-40{z-index:40}.xl\:col-span-2{grid-column:span 2 / span 2}.xl\:block{display:block}.xl\:flex{display:flex}.xl\:inline-flex{display:inline-flex}.xl\:hidden{display:none}.xl\:w-\[420px\]{width:420px}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.xl\:grid-cols-\[240px_minmax\(0\,1fr\)_320px\]{grid-template-columns:240px minmax(0,1fr) 320px}}
