@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Caprasimo&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;1,6..72,400&family=JetBrains+Mono:wght@400;500&display=swap";.user-context-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:var(--s-8) var(--s-4);text-align:center;font-family:var(--font-body);background:var(--paper);color:var(--ink-2)}.user-context-error{max-width:var(--content-max-width-small);padding:var(--s-6);border:1px solid var(--hairline-strong);border-radius:var(--r-3);background:var(--surface);box-shadow:var(--shadow-1)}.user-context-error-title{margin:0 0 var(--s-3);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-section);color:var(--danger)}.user-context-error-text{margin:0 0 var(--s-4);font-size:var(--text-body);line-height:1.5;color:var(--ink-2)}.user-context-retry-button{padding:9px 16px;background:var(--brand-forest);color:var(--surface);border:none;border-radius:var(--r-2);cursor:pointer;font-family:var(--font-body);font-size:var(--text-body);font-weight:600;transition:background .12s ease}.user-context-retry-button:hover{background:var(--brand-forest-deep)}.user-context-loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;text-align:center;font-family:var(--font-body);background:var(--paper)}.user-context-spinner{width:40px;height:40px;border:3px solid var(--hairline);border-top-color:var(--brand-forest);border-radius:50%;animation:user-context-spin .8s linear infinite;margin-bottom:var(--s-4)}.user-context-loading-text{margin:0;font-size:var(--text-body);color:var(--ink-3)}@keyframes user-context-spin{to{transform:rotate(360deg)}}.tour{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;pointer-events:none}.tour__scrim{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:auto;background:transparent}.tour__spot{position:absolute;border-radius:var(--r-3);box-shadow:0 0 0 9999px #2a1f178c;transition:top .25s ease,left .25s ease,width .25s ease,height .25s ease;pointer-events:none}.tour__pop{position:absolute;z-index:502;width:320px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-3);pointer-events:auto;overflow:hidden;transition:top .25s ease,left .25s ease}.tour__pop:before{content:"";display:block;height:4px;background:var(--brand-stripe)}.tour__pop-body{padding:var(--s-4) var(--s-5) var(--s-3)}.tour__step-num{font-family:var(--font-mono);font-size:var(--text-micro);font-weight:600;letter-spacing:.12em;color:var(--brand-bark);text-transform:uppercase;margin-bottom:6px}.tour__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-subhead);line-height:1.2;margin:0 0 6px;color:var(--ink)}.tour__copy{font-family:var(--font-editorial);font-size:var(--text-body);line-height:1.5;color:var(--ink-2);margin:0}.tour__pop-foot{display:flex;justify-content:space-between;align-items:center;padding:var(--s-3) var(--s-4) var(--s-4);border-top:1px solid var(--hairline);gap:var(--s-3)}.tour__dots{display:inline-flex;gap:6px}.tour__dot{width:7px;height:7px;border-radius:50%;background:var(--hairline-strong)}.tour__dot--active{background:var(--brand-quince);width:16px;border-radius:var(--r-pill)}.tour__nav{display:inline-flex;gap:6px}.tour__skip{background:transparent;border:0;color:var(--ink-3);font:inherit;font-size:var(--text-caption);cursor:pointer;padding:4px 8px;border-radius:var(--r-1)}.tour__skip:hover{background:var(--paper-2);color:var(--ink)}.help-anchor{position:relative;display:inline-flex}.help-button{width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;border-radius:50%;background:var(--paper-2);border:1px solid var(--hairline-strong);color:var(--ink-3);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--font-editorial);font-style:italic;font-weight:500;font-size:var(--text-caption);line-height:1;padding:0;box-sizing:border-box;flex-shrink:0;transition:all .12s}.help-button:hover{background:var(--brand-quince);border-color:var(--brand-quince);color:var(--surface)}.help-pop{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);width:280px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-3);padding:var(--s-4) var(--s-4) var(--s-3);z-index:100;pointer-events:auto}.help-pop--fixed{position:fixed;bottom:auto;transform:none;z-index:600;max-height:min(320px,calc(100vh - 24px));overflow-y:auto;overscroll-behavior:contain}.help-pop--fixed:after{display:none}.help-pop:after{content:"";position:absolute;bottom:-7px;left:50%;transform:translate(-50%) rotate(45deg);width:12px;height:12px;background:var(--surface);border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.help-pop__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-body-lg);color:var(--ink);margin:0 0 6px}.help-pop__body{font-family:var(--font-editorial);font-size:var(--text-small);line-height:1.5;color:var(--ink-2);margin:0 0 var(--s-3)}.help-pop__more{margin:0 0 var(--s-3)}.help-pop__dismiss{display:flex;align-items:center;gap:6px;font-size:var(--text-caption);color:var(--ink-3);padding-top:var(--s-3);border-top:1px solid var(--hairline);margin-top:var(--s-3)}.help-pop__dismiss input{margin:0}.show-around{display:inline-flex;align-items:center;gap:6px;background:var(--quince-50);border:1px solid var(--quince-100);border-radius:var(--r-pill);padding:6px 12px;color:var(--brand-bark);font-family:var(--font-body);font-weight:500;font-size:var(--text-small);cursor:pointer;transition:all .12s;--show-around-icon-size: 13px;flex-shrink:0}.show-around svg{width:var(--show-around-icon-size);height:var(--show-around-icon-size);flex-shrink:0}.show-around:hover{background:var(--quince-100);border-color:var(--brand-quince)}@media (max-width: 900px){.show-around{font-size:var(--text-caption);padding:5px 10px;gap:5px;--show-around-icon-size: 12px}}@media (max-width: 600px){.show-around{padding:4px 9px;gap:4px;--show-around-icon-size: 11px}}@media (max-width: 480px){.show-around{font-size:var(--text-micro);padding:4px 8px;--show-around-icon-size: 10px}}@media (max-width: 360px){.show-around{padding:3px 7px;gap:3px;--show-around-icon-size: 9px}}.welcome-banner{display:flex;align-items:center;gap:var(--s-4);background:var(--surface);border:1px solid var(--quince-100);border-radius:var(--r-3);padding:var(--s-4) var(--s-5);margin-bottom:var(--s-4);box-shadow:var(--shadow-1)}.welcome-banner__stripe{width:4px;align-self:stretch;background:var(--brand-stripe);border-radius:var(--r-pill);flex-shrink:0}.welcome-banner__body{flex:1}.welcome-banner__title{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-subhead);color:var(--ink);margin:0 0 2px}.welcome-banner__sub{font-size:var(--text-small);color:var(--ink-3);margin:0}.welcome-banner__actions{display:flex;gap:8px;flex-shrink:0}.page-tour-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap;margin:calc(-1 * var(--s-2)) 0 var(--s-5)}.page-tour-intro__text{flex:1;min-width:min(100%,280px)}.page-tour-intro__text>:first-child{margin-top:0}.page-tour-intro__text>:last-child{margin-bottom:0}.contextual-help-link{font-family:var(--font-body);font-size:var(--text-small);font-weight:500;color:var(--brand-forest);text-decoration:none;white-space:nowrap}.contextual-help-link:hover{color:var(--ink);text-decoration:underline}.contextual-help-link:focus-visible{outline:2px solid var(--brand-forest);outline-offset:2px;border-radius:2px}.families-page{display:flex;flex-direction:column;width:100%;box-sizing:border-box}.families-page__main{flex:1;padding:0 0 var(--s-16);max-width:1180px;width:100%;margin:0 auto}.fl-header{padding:var(--s-3) 0 var(--s-8)}.fl-header__row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--s-4)}.fl-header__title-block{flex:1;min-width:200px}.fl-header__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display-xl);line-height:1.02;letter-spacing:-.015em;color:var(--ink);margin:0 0 8px}.fl-header__sub-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fl-header__sub{margin:0;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);color:var(--ink-2)}.fl-header__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.families-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;align-items:stretch}.families-grid>.family-card,.families-grid>.create-card{width:100%;min-width:0;box-sizing:border-box}.family-card{position:relative;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);padding:var(--s-5) var(--s-5) var(--s-4);box-shadow:var(--shadow-1);cursor:pointer;display:flex;flex-direction:column;gap:var(--s-3);text-align:left;font:inherit;color:inherit;width:100%;transition:all .15s ease;overflow:hidden}.family-card:hover{border-color:var(--brand-quince);box-shadow:var(--shadow-2);transform:translateY(-1px)}.family-card:focus-visible{outline:none;box-shadow:var(--shadow-focus),var(--shadow-2);border-color:var(--brand-quince)}.family-card__accent{position:absolute;top:0;left:0;right:0;height:4px;background:var(--brand-stripe);opacity:0;transition:opacity .15s}.family-card:hover .family-card__accent{opacity:1}.family-card__toolbar{display:flex;justify-content:flex-end;align-items:center;min-height:28px;margin:calc(-1 * var(--s-2)) calc(-1 * var(--s-2)) 0 0}.family-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s-3)}.family-card__name{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display-sm);letter-spacing:-.01em;line-height:1.05;margin:0;color:var(--ink);flex:1}.role-pill{display:inline-flex;align-items:center;padding:var(--chip-pill-py) var(--chip-pill-px);border-radius:var(--r-pill);font-family:var(--font-body);font-size:var(--chip-pill-font);font-weight:600;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.role-pill--owner{background:var(--quince-50);color:var(--brand-bark)}.role-pill--admin,.role-pill--editor{background:var(--forest-50);color:var(--brand-forest)}.role-pill--contributor{background:var(--bark-50);color:var(--brand-bark-deep)}.role-pill--viewer{background:var(--paper-2);color:var(--ink-3)}.family-card__stats{display:flex;flex-direction:column;gap:4px}.family-card__stat{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.family-card__stat strong{font-family:var(--font-body);color:var(--ink);font-weight:600}.family-card__foot{display:flex;justify-content:flex-start;align-items:flex-start;gap:var(--s-3);padding-top:var(--s-3);border-top:1px solid var(--hairline)}.family-card__meta{display:flex;flex-direction:column;align-items:flex-start;gap:2px;font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3);text-align:left;line-height:1.5}.family-card__meta-line{display:block}.family-card__meta-by{display:block;padding-left:11ch}.family-card__meta strong{color:var(--ink-2);font-weight:500}.create-card{background:transparent;border:1.5px dashed var(--hairline-strong);border-radius:var(--r-3);padding:var(--s-8) var(--s-6);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-3);cursor:pointer;font:inherit;text-align:center;color:var(--ink-2);min-height:200px;width:100%;transition:all .15s ease}.create-card:hover:not(:disabled){border-color:var(--brand-quince);background:var(--quince-50);color:var(--ink);transform:translateY(-1px)}.create-card:disabled{opacity:.5;cursor:not-allowed;transform:none}.create-card:disabled:hover{border-color:var(--hairline-strong);background:transparent}.create-card__icon{width:56px;height:56px;background:var(--surface);border:1px solid var(--hairline);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--brand-forest);transition:all .15s}.create-card:hover:not(:disabled) .create-card__icon{background:var(--brand-forest);color:var(--surface);border-color:var(--brand-forest)}.create-card__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-subhead);margin:0;color:var(--ink)}.create-card__sub{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3);max-width:22ch;line-height:1.5;margin:0}.empty-hero{text-align:center;padding:var(--s-16) var(--s-6);max-width:540px;margin:0 auto}.empty-hero__stripe{display:inline-block;width:80px;height:8px;background:var(--brand-stripe);border-radius:4px;margin-bottom:var(--s-6)}.empty-hero__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display-xl);margin:0 0 var(--s-3);color:var(--ink)}.empty-hero__title em{font-style:italic;color:var(--brand-bark)}.empty-hero__body{font-family:var(--font-editorial);font-size:var(--text-lede);color:var(--ink-2);line-height:1.5;margin:0 0 var(--s-6)}.invite-hint{text-align:center;margin-top:var(--s-8);padding:var(--s-4);font-family:var(--font-editorial);font-style:italic;font-size:var(--text-body);color:var(--ink-3)}.families-loading{display:flex;justify-content:center;padding:var(--s-16) var(--s-6)}.gedcom-upload-page{display:flex;flex-direction:column;width:100%;max-width:var(--content-max-width-medium);margin:0 auto;box-sizing:border-box}.gedcom-upload-page--centered{max-width:var(--content-max-width-small)}.gedcom-upload-page__header{margin-bottom:var(--s-5)}.gedcom-upload-page__title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);line-height:1.05;letter-spacing:-.01em;color:var(--ink)}.gedcom-upload-page__lede{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.gedcom-upload-page__section{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);padding:var(--s-5)}.gedcom-upload-page__section--message{text-align:center}.gedcom-upload-page__section-title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-title);line-height:1.1;color:var(--ink)}.gedcom-upload-page__body{margin:0 0 var(--s-4);font-family:var(--font-body);font-size:var(--text-body);line-height:1.45;color:var(--ink-2)}.gedcom-upload-page__field{display:flex;flex-direction:column;gap:var(--s-1)}.gedcom-upload-page__label{font-family:var(--font-mono);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.gedcom-upload-page__input{font-family:var(--font-body);border:1px solid var(--hairline-strong);border-radius:var(--r-2);color:var(--ink);background:var(--surface)}.gedcom-upload-page__input:focus{outline:none;border-color:var(--brand-bark);box-shadow:var(--shadow-focus)}.gedcom-upload-page__file-info{margin-top:var(--s-3);padding:var(--s-3);border-radius:var(--r-2);border:1px solid var(--hairline);background:var(--paper-2);font-family:var(--font-body);font-size:var(--text-small);line-height:1.5;color:var(--ink-2)}.gedcom-upload-page__file-info strong{color:var(--ink);font-weight:600}.gedcom-upload-page__message{margin-top:var(--s-3);font-family:var(--font-body);font-size:var(--text-small);padding:var(--s-2) var(--s-3);border-radius:var(--r-2);line-height:1.4}.gedcom-upload-page__message--success{color:var(--brand-forest-deep);background:var(--forest-50);border:1px solid var(--forest-100)}.gedcom-upload-page__message--error{color:var(--danger);background:var(--danger-bg);border:1px solid var(--danger-border)}.gedcom-upload-page__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);margin-top:var(--s-4)}.gedcom-upload-page__upload-btn{min-width:calc(14ch + 2rem);justify-content:center}.gedcom-upload-page__status-text{text-transform:capitalize}.gedcom-upload-page__auth-message{max-width:var(--content-max-width-medium);margin:0 auto;padding:var(--s-6) var(--s-4);text-align:center}.gedcom-upload-page__auth-message h2{margin:0;font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display-sm);color:var(--ink)}@media (max-width: 600px){.gedcom-upload-page__section{padding:var(--s-4)}.gedcom-upload-page__actions{flex-direction:column;align-items:stretch}.gedcom-upload-page__actions .btn{width:100%;justify-content:center}}.pedigree-screen{width:100%;display:flex;flex-direction:column;padding:2rem;max-width:var(--content-max-width);margin:0 auto;box-sizing:border-box}.pedigree-container{display:flex;flex-direction:column;gap:max(1rem,calc(var(--pedigree-line-vertical-space-px, 50) * 1px - 1rem));padding:1rem;width:100%;flex:1 1 auto;min-height:min-content;box-sizing:border-box;position:relative;z-index:0}.generation-grandparents{margin-bottom:.75rem}.generation-parents,.generation-root{margin-top:.25rem;margin-bottom:.75rem}.generation-children{margin-top:.25rem}.generation{display:flex;justify-content:space-around;align-items:center;gap:20px;position:relative;flex:0 0 auto;min-height:max(132px,calc(var(--pedigree-card-height-px, 120) * 1px + 12px))}.generation-label{position:absolute;left:50%;top:-.35rem;transform:translate(-50%,-100%);z-index:5;text-shadow:2px 0 0 var(--surface),-2px 0 0 var(--surface),0 2px 0 var(--surface),0 -2px 0 var(--surface);font-family:var(--font-body);font-size:var(--text-micro);font-weight:500;color:var(--ink-4);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;pointer-events:none}.generation-grandparents{display:grid;grid-template-columns:1fr 1fr;gap:2rem;justify-items:center;align-items:center}.partnership,.grandparent-partnership{display:flex;gap:2rem;justify-content:center;align-items:center}.generation-children{flex-wrap:wrap}.generation-children__content{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:2rem}.generation-children__loading{font-size:var(--text-caption);color:var(--ink-4)}.spouse-pair{display:flex;gap:20px;justify-content:center;align-items:center}.spouse-switcher{position:relative;z-index:10}.spouse-switcher-toggle{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-body);font-size:var(--text-caption);font-weight:400;line-height:1.3;color:var(--ink-2);background:var(--paper-2);border:1px solid var(--hairline);border-radius:var(--r-pill);padding:2px 7px 2px 8px;cursor:pointer;transition:all .12s ease;box-shadow:none}.spouse-switcher-toggle:hover{border-color:var(--ink-3);color:var(--ink);background:var(--paper-2);box-shadow:none}.spouse-switcher-caret{flex-shrink:0;color:currentColor;opacity:.85}.spouse-switcher-dropdown{font-family:var(--font-body);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-2);box-shadow:var(--shadow-2);z-index:20;min-width:180px;max-width:240px;padding:4px 0}.spouse-option{display:block;width:100%;padding:6px 12px;border:none;background:transparent;color:var(--ink);cursor:pointer;font-family:var(--font-body);font-size:var(--text-small);line-height:1.4;text-align:left;transition:background-color .12s ease;outline:none}.spouse-option[data-highlighted]{background-color:var(--paper-2)}.spouse-option[data-state=checked]{background-color:var(--quince-50);color:var(--ink)}.spouse-option:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.spouse-option:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.relationship-line{transition:stroke .2s ease}.pedigree-tree-scope .relationship-line{transition:none}.connection-point{transition:fill .2s ease}@media (max-height: 850px){.pedigree-screen{padding:1rem 2rem}.pedigree-container{gap:.5rem;padding:.5rem}.generation{gap:12px}.generation-grandparents{margin-bottom:.5rem;gap:1rem}.generation-parents,.generation-root{margin-top:.25rem;margin-bottom:.5rem}.generation-children{margin-top:.25rem}.partnership{gap:1rem}}@media (max-height: 550px){.pedigree-container{gap:.25rem;padding:.25rem}.generation{gap:8px}.generation-grandparents{margin-bottom:.25rem}.generation-parents,.generation-root{margin-top:.125rem;margin-bottom:.25rem}.generation-children{margin-top:.125rem}}@media (max-width: 768px){.pedigree-container{gap:32px;padding:12px}.generation{gap:12px;min-height:132px}.spouse-pair{gap:12px}.generation-grandparents{margin-bottom:.5rem;gap:.5rem}.grandparent-partnership,.partnership{gap:.5rem}.generation-parents{margin-top:.25rem;margin-bottom:.625rem}.generation-root{margin-top:.375rem;margin-bottom:.625rem}.generation-children{margin-top:.375rem}}@media (max-width: 480px){.pedigree-screen{padding:1rem}.pedigree-container{gap:22px;padding:8px}.generation,.spouse-pair{gap:8px}.generation-grandparents{display:none}.generation-parents{margin-top:var(--s-3);margin-bottom:.625rem}.generation-root{margin-top:.375rem;margin-bottom:.625rem}.generation-children{margin-top:.375rem}.grandparent-partnership,.partnership{gap:.5rem}}@media (orientation: landscape) and (max-height: 500px){.pedigree-container{gap:18px;padding:6px}.generation{gap:8px;justify-content:center}.generation-grandparents{display:none}.spouse-pair,.partnership,.generation-children__content{gap:8px}.generation-parents{margin-top:var(--s-2);margin-bottom:.625rem}.generation-root{margin-top:.375rem;margin-bottom:.625rem}.generation-children{margin-top:.375rem}}.tree-page{display:flex;flex-direction:column;width:100%;max-width:1200px;min-width:0;margin:0 auto;box-sizing:border-box}.tree-page__header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s-4);flex-wrap:wrap;margin-bottom:var(--s-5)}.tree-page__header .family-section-heading{margin-bottom:0}.tree-page__header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-shrink:0}.tree-page__lede{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.tree-meta-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);flex-wrap:wrap;margin-bottom:var(--s-4)}.tree-meta-row__left,.tree-meta-row__right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tree-meta__chip{display:inline-flex;align-items:center;gap:var(--filter-pill-gap);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-pill);padding:var(--chip-pill-py) var(--chip-pill-px);font-size:var(--chip-pill-font);color:var(--ink-2)}.tree-meta__chip svg{width:var(--filter-pill-icon-size);height:var(--filter-pill-icon-size);flex-shrink:0}.tree-meta__chip strong{color:var(--ink);font-weight:600}.tree-legend{display:inline-flex;align-items:center;gap:var(--s-3);font-size:var(--chip-pill-font);color:var(--ink-3);flex-wrap:wrap}.tree-legend__heading{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:var(--ink-2)}.tree-legend__item{display:inline-flex;align-items:center;gap:6px}.tree-legend__swatch{width:22px;height:2px;background:#9a8e7c;display:inline-block}.tree-legend__swatch--dashed{background-image:linear-gradient(90deg,#9a8e7c 50%,transparent 50%);background-size:6px 100%;background-color:transparent}.tree-show-pets{display:inline-flex;align-items:center;gap:var(--filter-pill-gap);font-size:var(--filter-pill-font);color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none}.tree-show-pets__switch{width:34px;height:20px;min-width:34px;background:var(--hairline-strong);border-radius:var(--r-pill);border:none;position:relative;cursor:pointer;padding:0;transition:background .15s ease}.tree-show-pets__switch[data-state=checked]{background:var(--brand-forest)}.tree-show-pets__switch-thumb{display:block;position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--surface);border-radius:50%;box-shadow:var(--shadow-1);transition:transform .15s ease;pointer-events:none}.tree-show-pets__switch[data-state=checked] .tree-show-pets__switch-thumb{transform:translate(14px)}.tree-recents{position:relative;display:inline-block}.tree-recents__btn{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-pill);padding:5px 11px;font-size:var(--text-caption);color:var(--ink-2);cursor:pointer;font-family:inherit;transition:border-color .12s ease}.tree-recents__btn:hover{border-color:var(--hairline-strong)}.tree-recents__btn strong{color:var(--ink);font-weight:600}.tree-recents__menu{position:absolute;top:calc(100% + 6px);left:0;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-2);box-shadow:var(--shadow-3);min-width:240px;padding:4px;z-index:30;max-height:320px;overflow-y:auto}.tree-recents__heading{font-size:var(--text-micro);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);padding:8px 10px 6px}.tree-recents__item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--r-1);border:0;background:transparent;cursor:pointer;width:100%;text-align:left;font:inherit;font-size:var(--text-small);color:var(--ink)}.tree-recents__item:hover{background:var(--paper-2)}.tree-recents__av{width:26px;height:26px;border-radius:50%;background:var(--quince-100);color:var(--brand-bark);font-size:var(--text-micro);font-weight:600;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.tree-recents__name{flex:1;font-weight:500;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-recents__dates{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--ink-3);flex-shrink:0}.tree-recents__empty{padding:16px;font-size:var(--text-small);color:var(--ink-3);text-align:center;font-style:italic;font-family:var(--font-editorial);margin:0}.tree-page__main{display:flex;flex-direction:column;min-width:0;max-width:100%}.tree-stage{background:var(--paper-2);border-radius:var(--r-3);border:1px solid var(--hairline);position:relative;min-height:540px;display:flex;flex-direction:column;width:100%;min-width:0;max-width:100%;overflow-x:hidden}.tree-stage__scroll{--tree-stage-scroll-padding-top: var(--s-8);padding:var(--tree-stage-scroll-padding-top) var(--s-6) var(--s-8);min-width:0;max-width:100%;overflow-x:hidden}.tree-stage .pedigree-container{padding:0;margin:0 auto;max-width:100%;min-width:0}.pedigree-tree-scope .generation{position:relative;z-index:2}.pedigree-tree-scope .generation-label{font-family:var(--font-editorial);font-style:italic;font-weight:400;font-size:var(--text-body-lg);letter-spacing:.01em;color:var(--ink-3);text-transform:none;text-shadow:none;top:-.35rem;left:50%;transform:translate(-50%,-100%);z-index:10;background:var(--paper-2);padding:2px 10px;border-radius:var(--r-pill);line-height:1.4;white-space:nowrap;pointer-events:none}.pedigree-tree-scope .generation-root .generation-label{color:var(--brand-bark);font-weight:500}.pedigree-tree-scope .person-card--tree,.pedigree-tree-scope .pet-card-host .person-card--pet.members-list-pet{width:var(--v01-card-width);min-height:var(--v01-card-min-height);padding:var(--v01-card-padding);box-sizing:border-box}.pedigree-tree-scope .pet-card-host .person-card--pet.members-list-pet{height:auto;border:1px solid var(--hairline-strong);border-radius:var(--r-3);background-color:var(--surface);background-size:calc(72px * var(--v01-card-width) / 220px);box-shadow:var(--shadow-1);display:flex;flex-direction:column;transition:all .2s ease}.pedigree-tree-scope .pet-card-host .person-card--pet.members-list-pet:hover{border-color:var(--ink-3);box-shadow:var(--shadow-2);transform:translateY(-1px)}.pedigree-tree-scope .pet-card-host .person-card--pet.members-list-pet .person-card-photo{background:var(--paper-2);border:1px solid var(--hairline)}.pedigree-tree-scope .pet-card-host .person-card--pet.members-list-pet .person-card-photo-placeholder{background:transparent;border:none}.pedigree-tree-scope .pet-card-host .person-card--pet.members-list-pet.person-card--deceased .person-card-photo-img{filter:saturate(.55)}.pedigree-tree-scope .person-card--tree{height:auto;padding-bottom:8px;border:1px solid var(--hairline-strong);border-radius:var(--r-3);background:var(--surface);box-shadow:var(--shadow-1);display:flex;flex-direction:column}.pedigree-tree-scope .person-card--tree .person-card-name-container{order:0}.pedigree-tree-scope .person-card--tree .person-card-body{order:1;flex:1}.pedigree-tree-scope .person-card--tree .person-card-bottom-row{order:2}.pedigree-tree-scope .person-card--tree:hover{border-color:var(--ink-3);box-shadow:var(--shadow-2);transform:translateY(-1px)}.pedigree-tree-scope .person-card--tree.person-card--not-clickable:hover{transform:none;border-color:var(--hairline-strong);box-shadow:var(--shadow-1)}.pedigree-tree-scope .person-card--tree-anchor{border:1.5px solid var(--brand-quince);background:linear-gradient(180deg,#fffaf2 0%,var(--surface) 100%);box-shadow:0 0 0 3px #eca66a38,var(--shadow-2)}.pedigree-tree-scope .person-card--tree-anchor:hover{border-color:var(--brand-quince);box-shadow:0 0 0 3px #eca66a47,var(--shadow-2);transform:translateY(-1px)}.pedigree-tree-scope .person-card--tree-you{border:1.5px solid var(--brand-quince);background:linear-gradient(180deg,#fffaf2 0%,var(--surface) 100%);box-shadow:0 0 0 3px #eca66a38,var(--shadow-2)}.pedigree-tree-scope .person-card--tree-you:hover{border-color:var(--brand-quince);box-shadow:0 0 0 3px #eca66a47,var(--shadow-2);transform:translateY(-1px)}.pedigree-tree-scope .person-card--tree-spouse{border:1px solid var(--brand-quince);box-shadow:var(--shadow-1)}.pedigree-tree-scope .person-card--tree-spouse:hover{border-color:var(--brand-quince-deep);box-shadow:var(--shadow-2);transform:translateY(-1px)}.pedigree-tree-scope .person-card--tree.person-card--gray-border{border:1px dashed var(--hairline-strong)}.pedigree-tree-scope .person-card--tree .person-card-name{font-size:var(--text-body);color:var(--ink);min-height:2.5em;line-height:1.25;padding-right:32px}.pedigree-tree-scope .person-card--tree .person-card-photo,.pedigree-tree-scope .pet-card-host .person-card--pet.members-list-pet .person-card-photo{width:var(--v01-card-photo-size);height:var(--v01-card-photo-size);border-radius:var(--r-2)}.pedigree-tree-scope .person-card--tree .person-card-photo{background:var(--paper-2);border:1px solid var(--hairline)}.pedigree-tree-scope .person-card--tree .person-card-photo-placeholder{border:none;background:transparent;border-radius:var(--r-2)}.pedigree-tree-scope .person-card--tree .person-card-photo-initials{font-family:var(--font-body);font-weight:600;font-size:var(--text-caption);letter-spacing:.02em;color:var(--brand-bark);background:var(--quince-100);width:100%;height:100%;display:flex;align-items:center;justify-content:center;border-radius:inherit}.pedigree-tree-scope .person-card--tree .person-card-years{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-2);font-weight:400}.pedigree-tree-scope .person-card--tree .person-card-age{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--ink-3)}.pedigree-tree-scope .person-card--tree .person-card-place{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-caption);line-height:1.35;min-height:1.35em;color:var(--ink-3);margin-top:2px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:100%}.pedigree-tree-scope .person-card--tree .person-card-bottom-row{min-height:0}.pedigree-tree-scope .person-card--tree.person-card--deceased .person-card-photo-img{filter:saturate(.55)}.pedigree-tree-scope .person-card-you-badge{position:absolute;top:8px;right:10px;background:var(--brand-quince);color:#fff;font-size:var(--text-micro);font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:var(--r-pill);box-shadow:var(--shadow-1);line-height:1.3}.pedigree-tree-scope .generation-children__content .pet-card-host{z-index:2;flex-shrink:0}.pedigree-screen__error{padding:2rem;text-align:center;max-width:1200px;margin:0 auto}.pedigree-screen__error-title{color:var(--danger);font-family:var(--font-body)}.pedigree-screen__error-hint{margin:1rem 0 0;color:var(--ink-2)}.pedigree-screen__refresh-link{color:var(--brand-forest);text-decoration:underline;cursor:pointer}.pedigree-screen__loading{display:flex;justify-content:center;align-items:center;min-height:400px}.pedigree-screen__loading-content{text-align:center}.pedigree-screen__spinner{width:40px;height:40px;border:3px solid var(--hairline);border-top-color:var(--brand-forest);border-radius:50%;animation:tree-page-spin 1s linear infinite;margin:0 auto var(--s-4)}.pedigree-screen__loading-text{color:var(--ink-2);font-family:var(--font-body)}@keyframes tree-page-spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.tree-stage{min-height:460px}.tree-stage__scroll{--tree-stage-scroll-padding-top: var(--s-8);padding:var(--tree-stage-scroll-padding-top) var(--s-4) var(--s-6)}}@media (max-width: 600px){.tree-meta-row__right{width:100%}.tree-legend{gap:10px}}@media (max-width: 480px){.tree-page__header{align-items:flex-start}.tree-meta-row{flex-direction:column;align-items:stretch;gap:var(--s-3)}.tree-meta-row__left,.tree-meta-row__right{width:100%}.tree-meta-row__right{justify-content:space-between}.tree-stage{min-height:380px;border-radius:var(--r-2)}.tree-stage__scroll{--tree-stage-scroll-padding-top: var(--s-8);padding:var(--tree-stage-scroll-padding-top) var(--s-3) var(--s-4)}.pedigree-tree-scope .person-card--tree .person-card-name{font-size:var(--v01-card-name-font);min-height:2.4em;padding-right:28px}.pedigree-tree-scope .person-card-you-badge{top:6px;right:8px;padding:2px 6px}.pedigree-tree-scope .generation-label{font-size:var(--text-caption);padding:2px 8px}}@media (max-width: 320px){.tree-stage__scroll{--tree-stage-scroll-padding-top: var(--s-8);padding:var(--tree-stage-scroll-padding-top) var(--s-2) var(--s-3)}}@media (orientation: landscape) and (max-height: 500px){.tree-stage{min-height:0}.tree-stage__scroll{--tree-stage-scroll-padding-top: var(--s-8);padding:var(--tree-stage-scroll-padding-top) var(--s-2) var(--s-3)}.pedigree-tree-scope .generation{justify-content:center}.pedigree-tree-scope .person-card--tree .person-card-name{font-size:var(--v01-card-name-font);min-height:2.4em;padding-right:28px}.pedigree-tree-scope .person-card-you-badge{top:6px;right:8px;padding:2px 6px}.pedigree-tree-scope .generation-label{font-size:var(--text-caption);padding:2px 8px}}.person-card{padding:8px 8px 36px;border-radius:8px;width:180px;min-height:148px;height:148px;font-family:var(--font-body);box-shadow:var(--shadow-1);cursor:default;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;position:relative;z-index:2;background-color:var(--surface)}.person-card--tree{cursor:pointer;transition:all .2s ease}.person-card--tree:hover{box-shadow:var(--shadow-3)}.person-card--tree.person-card--not-clickable{cursor:default}.person-card--tree.person-card--not-clickable:hover{box-shadow:var(--shadow-1)}.person-card--not-clickable{cursor:default}.person-card-error{border:2px dashed var(--paper);background-color:var(--paper);color:var(--ink-2);font-size:var(--text-caption)}.person-card-error-id{font-size:var(--text-micro);margin-top:4px}.person-card-name-container{display:flex;align-items:flex-start;gap:6px;width:100%;margin-bottom:6px}.person-card-name{font-weight:600;font-size:var(--text-small);color:var(--brand-quince);line-height:1.35;text-align:left;flex:1;min-width:0;min-height:2.7em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.person-card-name--deceased{color:var(--ink-2)}.person-card-indicator{font-size:var(--text-body);line-height:1;flex-shrink:0;width:20px;text-align:center}.person-card-body{display:flex;flex-direction:row;align-items:flex-start;gap:8px;flex:1;width:100%}.person-card-photo{width:40px;height:40px;flex-shrink:0;overflow:hidden;border-radius:6px}.person-card-photo-img{width:100%;height:100%;object-fit:cover;display:block}.person-card--pet{border-radius:30px;background-repeat:no-repeat;background-position:center center;background-size:72px 72px;overflow:hidden}.person-card--pet .person-card-body,.person-card--pet .person-card-name-container{position:relative;z-index:1}.person-card--pet-category-dog,.person-card--pet-category-cat,.person-card--pet-category-bird,.person-card--pet-category-reptile,.person-card--pet-category-aquatic,.person-card--pet-category-mammal,.person-card--pet-category-other,.person-card--pet-category-equine,.person-card--pet-category-amphibian,.person-card--pet-category-invertebrate,.person-card--pet-category-exotic{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cellipse fill='%23f2f2f2' cx='32' cy='42' rx='12' ry='14'/%3E%3Cellipse fill='%23f2f2f2' cx='16' cy='24' rx='8' ry='10'/%3E%3Cellipse fill='%23f2f2f2' cx='48' cy='24' rx='8' ry='10'/%3E%3Cellipse fill='%23f2f2f2' cx='26' cy='10' rx='7' ry='9'/%3E%3Cellipse fill='%23f2f2f2' cx='38' cy='10' rx='7' ry='9'/%3E%3C/svg%3E")}.person-card:not(.person-card--members-list):not(.person-card--tree):not(.members-list-pet) .person-card-photo-placeholder{width:100%;height:100%;border-radius:6px;background-color:var(--paper-2);border:2px solid var(--hairline);display:flex;align-items:center;justify-content:center;overflow:hidden}.person-card-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.person-card-photo-icon{font-size:var(--text-subhead);opacity:.5}.person-card-metadata{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:2px;flex:1;min-width:0}.person-card:not(.person-card--members-list):not(.person-card--tree):not(.members-list-pet) .person-card-bottom-row{position:absolute;bottom:8px;left:8px;right:8px;display:flex;align-items:center;justify-content:space-between;gap:4px;z-index:15}.person-card-bottom-row{display:flex;align-items:center;justify-content:flex-end;gap:6px}.person-card-actions{display:flex;gap:4px;margin-left:auto;flex-shrink:0;justify-content:flex-end}.person-card:not(.person-card--members-list):not(.person-card--tree):not(.members-list-pet) .person-card-action{width:24px;height:24px;padding:0;border:1px solid var(--hairline);border-radius:4px;background-color:var(--surface);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--text-body);line-height:1;transition:all .2s ease;box-shadow:var(--shadow-1)}.person-card:not(.person-card--members-list):not(.person-card--tree):not(.members-list-pet) .person-card-action:hover{background-color:var(--paper-2);border-color:var(--brand-quince);transform:scale(1.1);box-shadow:var(--shadow-2)}.person-card:not(.person-card--members-list):not(.person-card--tree):not(.members-list-pet) .person-card-action:active{transform:scale(.95)}.person-card-action-wrap{position:relative}.person-card-action-wrap--add{display:flex;align-items:center}.person-card:not(.person-card--members-list):not(.person-card--tree):not(.members-list-pet) .person-card-action--add{font-size:var(--text-subhead);font-weight:600;line-height:1;color:var(--brand-forest)}.person-card:not(.person-card--members-list):not(.person-card--tree):not(.members-list-pet) .person-card-action--add:hover{border-color:var(--brand-forest)}.person-card-add-dropdown{min-width:100px;padding:4px 0;background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;box-shadow:var(--shadow-2);z-index:20;display:flex;flex-direction:column}.person-card-add-dropdown__item{padding:6px 12px;font-family:var(--font-body);font-size:var(--text-body);text-align:left;background:none;border:none;cursor:pointer;color:var(--brand-quince);outline:none}.person-card-add-dropdown__item:hover:not(:disabled){background-color:var(--paper-2)}.person-card-add-dropdown__item--disabled{color:var(--ink-2);opacity:.6;cursor:not-allowed}.person-card-years{font-size:var(--text-caption);color:var(--ink-2);margin-bottom:2px;font-weight:400}.person-card-age{font-size:var(--text-micro);color:var(--ink-2);margin-bottom:2px}.person-card--tree-anchor{border:2px solid var(--brand-quince)}.person-card--generation-0{border:2px solid var(--brand-bark)}.person-card--generation-parents{border:2px solid var(--brand-forest)}.person-card--generation-children{border:2px solid var(--brand-bark-deep)}.person-card--gray-border{border:2px solid var(--hairline)}.person-card--deceased{background-color:var(--paper)}@media (max-width: 820px){.person-card{width:160px;min-height:153px;height:153px;padding:8px 8px 36px}.person-card-photo{width:40px;height:40px}.person-card-name{font-size:var(--text-body)}.person-card-years,.person-card-age{font-size:var(--text-micro)}}@media (max-width: 480px){.person-card{width:140px;min-height:146px;height:146px;padding:6px 6px 34px;gap:4px}.person-card-photo{width:40px;height:40px;margin-bottom:2px}.person-card:not(.person-card--members-list):not(.person-card--tree):not(.members-list-pet) .person-card-action{width:20px;height:20px;font-size:var(--text-small)}.person-card:not(.person-card--members-list):not(.person-card--tree):not(.members-list-pet) .person-card-actions{gap:2px}.person-card-name{font-size:var(--text-caption)}.person-card-years,.person-card-age{font-size:var(--text-micro)}}.relationship-lines-svg{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.pedigree-tree-scope .relationship-line{fill:none;stroke:#9a8e7c;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.pedigree-tree-scope .relationship-line.dashed{stroke-dasharray:5 4}.pedigree-tree-scope .relationship-line:hover{stroke-width:1.4}.family-section-heading{margin:0 0 var(--s-5)}.family-section-heading__eyebrow{margin:0 0 var(--s-2)}.family-section-heading__eyebrow-btn{background:none;border:0;padding:2px 6px;margin-left:-6px;font-family:var(--font-body);font-size:var(--text-body);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-quince);cursor:pointer;border-radius:var(--r-1);display:inline-flex;align-items:center;gap:6px;transition:background .12s,color .12s}.family-section-heading__eyebrow-btn:hover{background:var(--quince-50);color:var(--brand-quince-deep)}.family-section-heading__eyebrow-btn:hover .family-section-heading__edit{opacity:1}.family-section-heading__edit{opacity:0;color:var(--ink-3);transition:opacity .12s;display:inline-flex}.family-section-heading__title{margin:0;font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);line-height:1.02;letter-spacing:-.015em;color:var(--ink)}.edit-family-name-modal-actions-primary{display:flex;gap:var(--s-2);margin-left:auto}.edit-family-name-modal-actions{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s-2);margin-top:var(--s-4)}@media (max-width: 600px){.edit-family-name-modal-actions{flex-direction:column;align-items:stretch}.edit-family-name-modal-actions-primary{margin-left:0;width:100%}.edit-family-name-modal-actions-primary .btn,.edit-family-name-modal-actions>.btn{width:100%;justify-content:center}}.error-boundary{padding:2rem;text-align:center}.error-boundary-details{white-space:pre-wrap}.create-family-page{display:flex;flex-direction:column;width:100%;max-width:var(--content-max-width-medium);margin:0 auto;box-sizing:border-box}.create-family-page__header{margin-bottom:var(--s-5)}.create-family-page__title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);line-height:1.05;letter-spacing:-.01em;color:var(--ink)}.create-family-page__lede{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.create-family-page__sections{display:flex;flex-direction:column;gap:var(--s-4)}.create-family-page__section{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);padding:var(--s-5)}.create-family-page__section-title{margin:0 0 var(--s-4);font-family:var(--font-editorial);font-weight:500;color:var(--ink)}.create-family-page__notice{padding:var(--s-3) var(--s-4);border-radius:var(--r-2);border:1px solid var(--hairline);background:var(--paper-2);font-family:var(--font-body);font-size:var(--text-body);line-height:1.45;color:var(--ink-2)}.create-family-page__form{display:flex;flex-direction:column;gap:var(--s-4)}.create-family-page__field{display:flex;flex-direction:column;gap:var(--s-1)}.create-family-page__label{font-family:var(--font-mono);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.create-family-page__input{font-family:var(--font-body);border:1px solid var(--hairline-strong);border-radius:var(--r-2);color:var(--ink);background:var(--surface);transition:border-color .12s ease,box-shadow .12s ease}.create-family-page__input:focus{outline:none;border-color:var(--brand-bark);box-shadow:var(--shadow-focus)}.create-family-page__input:disabled{background:var(--paper-2);color:var(--ink-3);cursor:not-allowed}.create-family-page__message{font-family:var(--font-body);font-size:var(--text-small);padding:var(--s-2) var(--s-3);border-radius:var(--r-2);line-height:1.4}.create-family-page__message--success{color:var(--brand-forest-deep);background:var(--forest-50);border:1px solid var(--forest-100)}.create-family-page__message--error{color:var(--danger);background:var(--danger-bg);border:1px solid var(--danger-border)}.create-family-page__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--s-2)}.create-family-page__next-steps{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--s-2)}.create-family-page__next-step{margin:0;font-family:var(--font-body);font-size:var(--text-body);line-height:1.45;color:var(--ink-2)}.create-family-page__next-step strong{color:var(--ink);font-weight:600}.create-family-page__auth-message{max-width:var(--content-max-width-medium);margin:0 auto;padding:var(--s-6) var(--s-4);text-align:center}.create-family-page__auth-message h2{margin:0;font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display-sm);color:var(--ink)}@media (max-width: 600px){.create-family-page__section{padding:var(--s-4)}}.members-page{display:flex;flex-direction:column;width:100%;max-width:1200px;margin:0 auto;box-sizing:border-box}.members-page__intro{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.members-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3) var(--s-4);margin-bottom:var(--s-5)}.members-filter-bar__start{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3) var(--s-4);flex:1 1 auto;min-width:0}.members-filter-bar .list-seg{flex-shrink:0}.members-people-filters{display:flex;flex-direction:column;gap:var(--s-3);flex:1 1 100%;padding:var(--s-4);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1)}.members-people-filters__divider{display:none}.members-people-filters__row{display:flex;align-items:center;gap:var(--s-3);flex-wrap:wrap}.members-people-filters__label{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);min-width:72px}.members-people-filters__living,.members-people-filters__toggles{display:inline-flex;flex-wrap:wrap;gap:var(--filter-pill-gap)}.members-search-row{margin-bottom:var(--s-4)}.members-results-bar{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--s-4);font-size:var(--text-small);color:var(--ink-3);gap:var(--s-3);flex-wrap:wrap}.members-results-bar__count{font-family:var(--font-mono);font-size:var(--filter-pill-count-font)}.members-page .members-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--v01-card-width),1fr));gap:var(--v01-card-grid-gap);padding-bottom:var(--s-12)}.members-section-heading{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-subhead);color:var(--ink-3);padding:var(--s-4) 0 var(--s-2)}.members-empty{margin:var(--s-12) 0;padding:var(--s-12) var(--s-6);background:var(--paper-2);border:1px dashed var(--hairline-strong);border-radius:var(--r-3);text-align:center}.members-empty__title{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-section);color:var(--ink-2);margin:0 0 var(--s-3)}.members-empty__body{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-3);margin:0}.members-loading{display:flex;justify-content:center;padding:var(--s-16)}.members-error{padding:var(--s-6);border-radius:var(--r-3);background:var(--danger-bg);border:1px solid var(--danger)}.members-error__title{margin:0;color:var(--danger);font-family:var(--font-body)}@media (max-width: 767px){.members-filter-bar__start{display:contents}.members-filter-bar .list-seg{flex:0 1 auto}.members-people-filters{flex:1 1 100%}}@media (min-width: 768px){.members-people-filters{flex:1 1 auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px var(--s-2);padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}.members-people-filters__row{display:flex;align-items:center;gap:6px}.members-people-filters__label{display:none}.members-people-filters__divider{display:inline-flex;align-items:center;color:var(--ink-4);font-size:var(--text-body);line-height:1;-webkit-user-select:none;user-select:none;padding:0 2px}}.media-tag-modal__shell{width:min(90vw,360px);padding:0;display:flex;flex-direction:column;overflow:hidden}.media-tag-modal__header{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--hairline)}.media-tag-modal__body{padding:var(--s-5);display:flex;flex-direction:column;gap:var(--s-4)}.media-tag-modal__hint{margin:0;font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2);line-height:1.45}.media-tag-modal__tag-list{display:flex;flex-direction:column;gap:var(--s-2)}.media-tag-modal__tag-list-label{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.media-tag-modal__tag-item{display:flex;align-items:center;gap:var(--s-2);font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);cursor:pointer}.media-tag-modal__tag-item input{margin:0;accent-color:var(--brand-bark)}.media-tag-modal__create{display:flex;flex-direction:column;gap:var(--s-2)}.media-tag-modal__create-label{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.media-tag-modal__create-row{display:flex;gap:var(--s-2)}.media-tag-modal__create-input{flex:1;min-width:0;font-family:var(--font-body);font-size:var(--text-body);padding:10px 12px;border:1px solid var(--hairline-strong);border-radius:var(--r-2);color:var(--ink);background:var(--surface)}.media-tag-modal__create-input:focus{outline:none;border-color:var(--brand-bark);box-shadow:var(--shadow-focus)}.media-tag-modal__footer{padding:var(--s-4) var(--s-5);border-top:1px solid var(--hairline)}@media (max-width: 600px){.media-tag-modal__footer .btn{width:100%;justify-content:center}}.media-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);overflow:hidden;cursor:default;transition:border-color .12s ease,box-shadow .12s ease}.media-card[role=button]{cursor:pointer}.media-card[role=button]:hover{border-color:var(--hairline-strong);box-shadow:var(--shadow-2)}.media-card__thumb{position:relative;aspect-ratio:1;background:var(--paper-2);display:flex;align-items:center;justify-content:center;min-height:140px}.media-card__img{width:100%;height:100%;object-fit:cover;display:block}.media-card__placeholder{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3);text-align:center;padding:var(--s-2)}.media-card__tag-toggle-wrap{position:absolute;bottom:var(--s-1);right:var(--s-1)}.media-card__tag-toggle{padding:2px 6px;font-size:var(--text-caption);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-1);cursor:pointer;box-shadow:var(--shadow-1)}.media-card__tag-toggle:hover{background:var(--paper-2)}.media-card__tag-menu{position:absolute;top:100%;right:0;margin-top:var(--s-1);padding:var(--s-2);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-2);box-shadow:var(--shadow-2);z-index:10;min-width:140px}.media-card__tag-menu-section{display:flex;flex-direction:column;gap:var(--s-1)}.media-card__tag-menu-item{display:flex;align-items:center;gap:var(--s-2);font-family:var(--font-body);font-size:var(--text-small);color:var(--ink);cursor:pointer}.media-card__tag-menu-item input{margin:0}.media-card--masonry .media-card__thumb{aspect-ratio:4 / 3;min-height:0;max-height:none}.media-card--masonry .media-card__img{object-fit:contain;background:var(--paper-2)}.media-card--masonry .media-card__placeholder{min-height:120px}.media-card--small{width:48px;height:48px;min-width:48px;min-height:48px}.media-card--small .media-card__thumb{min-height:0;height:100%;width:100%}.media-card--small .media-card__tag-toggle-wrap{display:none}.tag-filter-dropdown{position:relative}.tag-filter-dropdown__bar{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap}.tag-filter-dropdown__mode-slider{display:inline-flex;background:var(--paper-2);border-radius:var(--r-pill);padding:var(--filter-pill-seg-inset);gap:0;flex-shrink:0}.tag-filter-dropdown__mode-option{border:0;background:transparent;padding:var(--filter-pill-btn-py) var(--filter-pill-btn-px-tight);border-radius:var(--r-pill);font-family:var(--font-body);font-size:var(--filter-pill-font);font-weight:500;color:var(--ink-2);cursor:pointer;transition:all .12s ease;width:auto;flex:none}.tag-filter-dropdown__mode-option:hover{color:var(--ink)}.tag-filter-dropdown__mode-option[data-state=on]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.tag-filter-dropdown__mode-option:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.tag-filter-dropdown__trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--filter-pill-gap);min-width:var(--filter-pill-tag-trigger-min-w);max-width:320px;padding:var(--filter-pill-trigger-py) var(--filter-pill-trigger-px);font-family:var(--font-body);font-size:var(--filter-pill-trigger-font);font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease;box-sizing:border-box}.tag-filter-dropdown__trigger-arrow{flex-shrink:0;color:var(--ink-3);display:inline-flex;width:var(--filter-pill-icon-size);height:var(--filter-pill-icon-size)}.tag-filter-dropdown__trigger:hover{border-color:var(--ink-3)}.tag-filter-dropdown__trigger:focus-visible{outline:none;border-color:var(--brand-forest);box-shadow:var(--shadow-focus)}.tag-filter-dropdown__trigger-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.tag-filter-dropdown__panel{min-width:240px;max-width:300px;max-height:320px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-2);z-index:200;overflow:hidden}.tag-filter-dropdown__search-wrap{padding:var(--s-3);border-bottom:1px solid var(--hairline)}.tag-filter-dropdown__search{width:100%;padding:var(--filter-pill-trigger-py) var(--filter-pill-trigger-px);font-family:var(--font-body);font-size:var(--filter-pill-trigger-font);color:var(--ink);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease}.tag-filter-dropdown__search::placeholder{color:var(--ink-4)}.tag-filter-dropdown__search:hover{border-color:var(--ink-3)}.tag-filter-dropdown__search:focus{outline:none;border-color:var(--brand-forest);box-shadow:var(--shadow-focus)}.tag-filter-dropdown__clear-link{display:block;width:100%;padding:var(--s-2) var(--s-3);font-family:var(--font-body);font-size:var(--filter-pill-font);font-weight:500;color:var(--brand-bark);background:none;border:none;cursor:pointer;text-align:left;text-decoration:none}.tag-filter-dropdown__clear-link:hover{background:var(--bark-50);color:var(--brand-bark-deep)}.tag-filter-dropdown__empty{padding:var(--s-4);font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3)}.tag-filter-dropdown__list{padding:var(--s-2) 0;overflow-y:auto;max-height:220px}.tag-filter-dropdown__option{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-4);font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);cursor:pointer;transition:background .12s ease}.tag-filter-dropdown__option:hover{background:var(--paper-2)}.tag-filter-dropdown__checkbox{flex-shrink:0;width:1rem;height:1rem;margin:0;cursor:pointer;accent-color:var(--brand-forest)}.tag-filter-dropdown__option-label{overflow:hidden;text-overflow:ellipsis}.media-page{display:flex;flex-direction:column;width:100%;max-width:1200px;margin:0 auto;box-sizing:border-box}.media-page__lede{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-3);max-width:52ch}.media-page__filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3) var(--s-4);margin-bottom:var(--s-5)}.media-page__filter-bar__start{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3) var(--s-4);flex:1 1 auto;min-width:0}.media-page__filter-bar .list-seg{flex-shrink:0}.media-page__filter-selects{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--s-2)}.media-page__filter-select{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--filter-pill-gap);min-width:var(--filter-pill-trigger-min-w);max-width:220px;padding:var(--filter-pill-trigger-py) var(--filter-pill-trigger-px);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);background:var(--surface);font-family:var(--font-body);font-size:var(--filter-pill-trigger-font);font-weight:500;color:var(--ink);cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease;box-sizing:border-box}.media-page__filter-select-icon svg{width:var(--filter-pill-icon-size);height:var(--filter-pill-icon-size)}.media-page__filter-select:hover{border-color:var(--ink-3)}.media-page__filter-select:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.media-page__filter-select-icon{display:inline-flex;flex-shrink:0;color:var(--ink-3)}.media-page__filter-select-menu{min-width:var(--radix-select-trigger-width);max-width:280px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-2);padding:var(--s-1);z-index:200;overflow:hidden}.media-page__filter-select-option{display:flex;align-items:center;padding:8px 12px;border-radius:var(--r-2);font-family:var(--font-body);font-size:var(--text-small);font-weight:500;color:var(--ink-2);cursor:pointer;outline:none;-webkit-user-select:none;user-select:none}.media-page__filter-select-option[data-highlighted]{background:var(--paper-2);color:var(--ink)}.media-page__filter-select-option[data-state=checked]{background:var(--forest-50);color:var(--brand-forest-deep)}.media-page__tag-filter{display:flex;align-items:center;justify-content:flex-end;flex:0 1 auto;margin-left:auto;min-width:min(100%,360px)}.media-page__results{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--s-4);font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3)}.media-page__grid{column-count:3;column-gap:var(--s-4);padding-bottom:var(--s-12)}.media-page__grid-item{break-inside:avoid;margin-bottom:var(--s-4);display:inline-block;width:100%}.media-page__loading{display:flex;justify-content:center;padding:var(--s-16)}.media-page__empty{margin:var(--s-12) 0;padding:var(--s-12) var(--s-6);background:var(--paper-2);border:1px dashed var(--hairline-strong);border-radius:var(--r-3);text-align:center}.media-page__empty-title{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-section);color:var(--ink-2);margin:0 0 var(--s-3)}.media-page__empty-body{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-3);margin:0}.media-page__error{padding:var(--s-6);border-radius:var(--r-3);background:var(--danger-bg);border:1px solid var(--danger)}.media-page__error-title{margin:0 0 var(--s-3);color:var(--danger);font-family:var(--font-body)}.media-page__error-inline{padding:var(--s-5);border-radius:var(--r-3);text-align:center;border:1px solid var(--danger);background:var(--danger-bg)}.media-page__error-inline p{margin:0 0 var(--s-3);font-family:var(--font-body);font-size:var(--text-body);color:var(--danger)}@media (max-width: 900px){.media-page__grid{column-count:2}}@media (max-width: 600px){.media-page__filter-bar{flex-direction:column;align-items:stretch}.media-page__filter-bar__start,.media-page__filter-selects{width:100%}.media-page__filter-select{flex:1 1 calc(50% - var(--s-1));max-width:none}.media-page__tag-filter{width:100%;min-width:0;margin-left:0;justify-content:stretch}.media-page__tag-filter .tag-filter-dropdown{width:100%}.media-page__tag-filter .tag-filter-dropdown__bar{width:100%;justify-content:space-between}.media-page__tag-filter .tag-filter-dropdown__trigger{flex:1;max-width:none}}.media-upload-form{display:flex;flex-direction:column;gap:.5rem}.media-upload-form__dropzone{display:flex;align-items:center;justify-content:center;min-height:120px;padding:1.5rem;background:var(--paper-2);border:2px dashed var(--hairline);border-radius:8px;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.media-upload-form__dropzone:hover:not(.media-upload-form__dropzone--uploading){border-color:var(--brand-quince);background:var(--quince-50)}.media-upload-form__dropzone--active{border-color:var(--brand-quince);background:var(--quince-50)}.media-upload-form__dropzone--uploading{cursor:wait}.media-upload-form__file-input{position:absolute;width:0;height:0;opacity:0;overflow:hidden;clip:rect(0,0,0,0)}.media-upload-form__prompt{display:flex;flex-direction:column;align-items:center;gap:.25rem}.media-upload-form__prompt-icon{font-size:var(--text-display);opacity:.6}.media-upload-form__prompt-text{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2);text-align:center}.media-upload-form__prompt-hint{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-4)}.media-upload-form__progress{position:relative;width:100%;max-width:240px;height:24px;background:var(--hairline);border-radius:4px;overflow:hidden}.media-upload-form__progress-bar{position:absolute;left:0;top:0;height:100%;background:var(--brand-forest);transition:width .2s ease}.media-upload-form__progress-text{position:relative;z-index:1;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink)}.media-upload-form__error{display:flex;align-items:center;gap:.5rem;padding:.5rem 0}.media-upload-form__error p{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--danger)}.media-upload-form__retry-button{padding:.25rem .75rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--brand-quince);background:transparent;border:1px solid var(--brand-quince);border-radius:4px;cursor:pointer}.media-upload-form__retry-button:hover{background:var(--quince-50)}.media-upload-form__success{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--brand-forest)}.media-upload-form--compact .media-upload-form__dropzone{min-height:80px;padding:1rem}.media-upload-form--compact .media-upload-form__prompt-icon{font-size:var(--text-title)}.media-upload-form--compact .media-upload-form__prompt-text{font-size:var(--text-small)}.change-photo-modal__shell{width:min(92vw,720px);max-height:85vh;padding:0;display:flex;flex-direction:column;overflow:hidden}.change-photo-modal__header{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--hairline);flex-shrink:0}.change-photo-modal__tabs{display:flex;padding:var(--s-3) var(--s-5) 0;flex-shrink:0}.change-photo-modal__tabs .list-seg{width:100%}.change-photo-modal__tabs .list-seg__btn{flex:1;justify-content:center}.change-photo-modal__upload-panel{padding:var(--s-5);overflow-y:auto}.change-photo-modal__gallery-panel{display:flex;flex-direction:column;overflow:hidden;min-height:0}.change-photo-modal__filter-bar{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-5);border-bottom:1px solid var(--hairline);flex-wrap:wrap}.change-photo-modal__tag-filter{margin-left:auto}.change-photo-modal__count{padding:var(--s-2) var(--s-5);margin:0;font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2)}.change-photo-modal__loading,.change-photo-modal__empty{padding:var(--s-6) var(--s-5);font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.change-photo-modal__grid{display:grid;grid-template-columns:repeat(auto-fill,120px);gap:var(--s-3);padding:var(--s-4) var(--s-5);overflow-y:auto;flex:1;min-height:200px}.change-photo-modal__grid--small{grid-template-columns:repeat(auto-fill,48px);grid-auto-rows:48px;gap:var(--s-2);align-content:start}.change-photo-modal__citation-upload{display:flex;flex-direction:column;gap:var(--s-3)}.change-photo-modal__citation-upload-input{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.change-photo-modal__citation-upload-error{margin:0;font-family:var(--font-body);font-size:var(--text-small);color:var(--danger)}@media (max-width: 600px){.change-photo-modal__header{padding:var(--s-3) var(--s-4)}.change-photo-modal__tabs,.change-photo-modal__filter-bar,.change-photo-modal__upload-panel,.change-photo-modal__grid{padding-left:var(--s-4);padding-right:var(--s-4)}}.image-enlarge-overlay{--image-enlarge-overlay-max-height: calc(100vh - 11rem) ;--image-enlarge-overlay-max-width: 95vw;--image-enlarge-overlay-wrap-max-width: 90vw;--image-enlarge-overlay-edge-padding: 0}.image-enlarge-overlay__content{position:fixed;top:50%;left:50%;z-index:1001;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:var(--image-enlarge-overlay-max-width);max-width:var(--image-enlarge-overlay-max-width);max-height:var(--image-enlarge-overlay-max-height);min-height:0;margin:0;padding:0 var(--image-enlarge-overlay-edge-padding);border:none;background:transparent;box-shadow:none;box-sizing:border-box}.image-enlarge-overlay__content[data-state=closed]{display:none}.image-enlarge-overlay__close{position:absolute;top:var(--s-2);right:var(--s-2);z-index:2}.image-enlarge-overlay__image-wrap{position:relative;width:100%;max-width:var(--image-enlarge-overlay-wrap-max-width);max-height:var(--image-enlarge-overlay-max-height);min-height:0;display:flex;align-items:center;justify-content:center}.image-enlarge-overlay__image{display:block;max-width:100%;max-height:var(--image-enlarge-overlay-max-height);width:auto;height:auto;object-fit:contain;border-radius:var(--r-2);box-shadow:var(--shadow-3)}.image-enlarge-overlay__loading,.image-enlarge-overlay__error{padding:var(--s-6);font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.image-enlarge-overlay__loading{display:flex;flex-direction:column;align-items:center;gap:var(--s-3)}.image-enlarge-overlay__error{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-2);color:var(--ink)}@media (max-width: 768px){.image-enlarge-overlay{--image-enlarge-overlay-max-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 3.5rem) ;--image-enlarge-overlay-max-width: 100%;--image-enlarge-overlay-wrap-max-width: 100%;--image-enlarge-overlay-edge-padding: var(--s-2)}.image-enlarge-overlay__content{top:50%;left:var(--image-enlarge-overlay-edge-padding);right:var(--image-enlarge-overlay-edge-padding);width:auto;max-width:none;transform:translateY(-50%)}.image-enlarge-overlay__image{width:100%;max-height:var(--image-enlarge-overlay-max-height)}}@media (max-width: 480px){.image-enlarge-overlay{--image-enlarge-overlay-max-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 2.75rem) ;--image-enlarge-overlay-edge-padding: var(--s-1)}.image-enlarge-overlay__close{top:var(--s-1);right:var(--s-1)}.image-enlarge-overlay__image{border-radius:var(--r-1)}}@media (max-width: 360px){.image-enlarge-overlay{--image-enlarge-overlay-edge-padding: 0;--image-enlarge-overlay-max-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 2.5rem) }.image-enlarge-overlay__image{border-radius:0;box-shadow:none}}.sources-page{display:flex;flex-direction:column;width:100%;max-width:1200px;margin:0 auto;box-sizing:border-box}.sources-page__lede{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-3);max-width:60ch}.sources-page__control-row{display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);flex-wrap:wrap;margin-bottom:var(--s-5)}.sources-page__control-row--actions-only{justify-content:flex-end}.sources-page__control-row .list-seg{flex-wrap:wrap;max-width:100%}.sources-page__add-btn{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto}.sources-results-bar{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--s-4);font-size:var(--text-small);color:var(--ink-3);gap:var(--s-3);flex-wrap:wrap}.sources-results-bar__count{font-family:var(--font-mono);font-size:var(--filter-pill-count-font)}.sources-page__list{display:flex;flex-direction:column;gap:var(--s-3)}.sources-card{--sources-header-gap: var(--s-3);--sources-chevron-size: 14px;--sources-type-icon-size: 36px;--sources-citations-indent: calc( var(--s-1) + var(--sources-chevron-size) + var(--sources-header-gap) + var(--sources-type-icon-size) + var(--sources-header-gap) );background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);padding:var(--s-2) var(--s-3);box-shadow:var(--shadow-1);transition:background .12s ease,border-color .12s ease}.sources-card:has(.sources-card__trigger:hover),.sources-card:has(.sources-card__trigger:focus-visible){background:var(--paper-2);border-color:var(--hairline-strong)}.sources-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s-3);min-height:44px}.sources-card__trigger{display:flex;align-items:center;gap:var(--sources-header-gap);flex:1;min-width:0;background:none;border:none;padding:var(--s-2) var(--s-1);margin:0;border-radius:var(--r-2);font:inherit;color:inherit;text-align:left;cursor:pointer}.sources-card__trigger .collapsible-chevron-wrap{width:var(--sources-chevron-size);height:var(--sources-chevron-size)}.sources-card__trigger .collapsible-chevron-wrap svg{width:var(--sources-chevron-size);height:var(--sources-chevron-size)}.sources-card__type-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--sources-type-icon-size);height:var(--sources-type-icon-size);border-radius:var(--r-2)}.sources-card__type-icon--quince{background:var(--quince-50);color:var(--brand-bark)}.sources-card__type-icon--teal{background:var(--teal-50);color:var(--brand-teal)}.sources-card__type-icon--forest{background:var(--forest-50);color:var(--brand-forest)}.sources-card__type-icon--bark{background:var(--bark-50);color:var(--brand-bark)}.sources-card__type-icon--neutral{background:var(--paper-2);color:var(--ink-2)}.sources-card__heading{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.sources-card__title{margin:0;font-family:var(--font-editorial);font-size:var(--text-lede);font-weight:500;color:var(--ink);line-height:1.25;letter-spacing:-.01em}.sources-card__meta-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-family:var(--font-body);font-size:var(--text-caption);color:var(--ink-3);line-height:1.35}.sources-card__type-pill{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:var(--text-micro);font-weight:500;line-height:1.2;padding:3px 10px;border-radius:var(--r-pill);white-space:nowrap;text-transform:uppercase;letter-spacing:.08em}.sources-card__type-pill--quince{background:var(--quince-50);color:var(--brand-bark)}.sources-card__type-pill--teal{background:var(--teal-50);color:var(--brand-teal)}.sources-card__type-pill--forest{background:var(--forest-50);color:var(--brand-forest)}.sources-card__type-pill--bark{background:var(--bark-50);color:var(--brand-bark)}.sources-card__type-pill--neutral{background:var(--paper-2);color:var(--ink-2)}.sources-card__count-pill{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:var(--text-micro);font-weight:500;line-height:1.2;padding:3px 10px;border-radius:var(--r-pill);white-space:nowrap;text-transform:uppercase;letter-spacing:.08em;background:var(--paper-2);color:var(--ink-2)}.sources-card__count-pill--loading{color:var(--ink-4);letter-spacing:.12em}.sources-card__meta-sep{color:var(--ink-4)}.sources-card__url{color:var(--brand-bark);text-decoration:none;word-break:break-all}.sources-card__url:hover{color:var(--brand-forest);text-decoration:underline}.sources-card__header-meta{display:flex;flex-direction:column;align-items:flex-end;gap:var(--s-2);flex-shrink:0}.sources-card__header-meta-row{display:flex;justify-content:flex-end;width:100%}.sources-card__header-meta-row--actions{min-height:28px;align-items:center}.sources-card__actions{flex-shrink:0}.sources-card__content{overflow:hidden}.sources-card__content[data-state=open]{animation:sources-slide-down .2s ease}@keyframes sources-slide-down{0%{opacity:0}to{opacity:1}}.sources-form--card{margin:var(--s-3) 0 var(--s-2);max-width:100%}.sources-form{margin-bottom:var(--s-5);padding:var(--s-5);background:var(--paper-2);border:1px solid var(--hairline);border-radius:var(--r-3);display:flex;flex-direction:column;gap:var(--s-4);max-width:520px}.sources-form--inline{max-width:100%;margin-top:var(--s-3)}.sources-form__row{display:flex;flex-direction:column;gap:var(--s-1)}.sources-form__label{font-family:var(--font-body);font-size:var(--text-small);font-weight:500;color:var(--ink-2)}.sources-form__input,.sources-form__textarea{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r-2);padding:9px 12px;transition:border-color .12s ease,box-shadow .12s ease}.sources-form__textarea{min-height:4.5rem;resize:vertical}.sources-form__input:hover,.sources-form__textarea:hover{border-color:var(--ink-3)}.sources-form__input:focus,.sources-form__textarea:focus{outline:none;border-color:var(--brand-forest);box-shadow:var(--shadow-focus)}.sources-form__hint{font-family:var(--font-body);font-size:var(--text-caption);color:var(--ink-3)}.sources-form__actions{display:flex;gap:var(--s-2);flex-wrap:wrap}.sources-citations{margin-top:var(--s-2);padding-top:var(--s-3);padding-left:var(--sources-citations-indent);border-top:1px solid var(--hairline)}.sources-citations__empty{margin:0;font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3)}.sources-citations__list{margin:0;padding:0;list-style:none}.sources-citation{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-3) var(--s-2);margin:0 calc(-1 * var(--s-2));border-bottom:1px solid var(--hairline)}.sources-citation__body{display:flex;align-items:center;gap:var(--s-3);flex:1;min-width:0}@media (min-width: 1100px){.media-page__grid{column-count:4}}.sources-citation__thumb{flex-shrink:0;width:52px;height:52px;border-radius:var(--r-2);border:1px solid var(--hairline);background:var(--paper-2);overflow:hidden;display:inline-flex;align-items:center;justify-content:center}.sources-citation__thumb--button{padding:0;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease}.sources-citation__thumb--button:hover{border-color:var(--hairline-strong);box-shadow:var(--shadow-1)}.sources-citation__thumb--button:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.sources-citation__thumb-img{width:100%;height:100%;object-fit:cover;display:block}.sources-citation__thumb-placeholder{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--ink-4);font-family:var(--font-mono);font-size:var(--text-caption)}.sources-citation__icon{flex-shrink:0;color:var(--ink-4)}.sources-citation__trailing{display:flex;align-items:center;gap:var(--s-3);flex-shrink:0}.sources-citation:last-child{border-bottom:none;padding-bottom:0}.sources-citation__text{margin:0;min-width:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);line-height:1.45}.sources-citation__detail{font-weight:600;color:var(--ink)}.sources-citation__confidence{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:var(--text-micro);font-weight:500;line-height:1.2;padding:3px 10px;border-radius:var(--r-pill);white-space:nowrap;text-transform:uppercase;letter-spacing:.08em;background:var(--forest-50);color:var(--brand-forest);cursor:default}.sources-citation__actions{display:flex;gap:var(--s-2);flex-shrink:0;flex-wrap:wrap}.sources-citation__media-row{display:flex;align-items:center;gap:var(--s-3);flex-wrap:wrap}.sources-citation__media-label{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3)}.sources-page__loading{display:flex;justify-content:center;padding:var(--s-16)}.sources-page__empty{margin:var(--s-12) 0;padding:var(--s-12) var(--s-6);background:var(--paper-2);border:1px dashed var(--hairline-strong);border-radius:var(--r-3);text-align:center}.sources-page__empty-title{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-section);color:var(--ink-2);margin:0 0 var(--s-3)}.sources-page__empty-body{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-3);margin:0}.sources-page__error{padding:var(--s-6);border-radius:var(--r-3);background:var(--danger-bg);border:1px solid var(--danger)}.sources-page__error-inline{margin-bottom:var(--s-4);padding:var(--s-4);border-radius:var(--r-3);border:1px solid var(--danger);background:var(--danger-bg)}.sources-page__error-inline p{margin:0 0 var(--s-2);font-size:var(--text-body);color:var(--danger)}@media (max-width: 768px) and (orientation: portrait){.sources-card{--sources-header-gap: var(--s-2);--sources-chevron-size: 12px;--sources-type-icon-size: 32px;padding:var(--s-2)}.sources-card__header{gap:var(--s-2)}}@media (max-width: 480px) and (orientation: portrait){.sources-card{--sources-header-gap: var(--s-1);--sources-type-icon-size: 28px;padding:var(--s-2) var(--s-2)}.sources-citations{padding-top:var(--s-2)}}@media (max-width: 600px){.sources-card__header{flex-wrap:wrap}.sources-citation{flex-direction:column;align-items:stretch}.sources-citation__trailing{align-self:flex-end}}.member-filter-typeahead{position:relative;min-width:var(--filter-pill-trigger-min-w);max-width:220px;flex:0 1 220px}.member-filter-typeahead__wrapper{position:relative}.member-filter-typeahead__input{width:100%;padding:var(--filter-pill-trigger-py) 38px var(--filter-pill-trigger-py) var(--filter-pill-trigger-px);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);background:var(--surface);font-family:var(--font-body);font-size:var(--filter-pill-trigger-font);font-weight:500;color:var(--ink);box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease}.member-filter-typeahead__input::placeholder{color:var(--ink-4);font-weight:500}.member-filter-typeahead__input:hover{border-color:var(--ink-3)}.member-filter-typeahead__input:focus{outline:none;border-color:var(--brand-forest);box-shadow:var(--shadow-focus)}.member-filter-typeahead__clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:0;background:transparent;color:var(--ink-3);border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.member-filter-typeahead__clear:hover{background:var(--paper-2);color:var(--ink)}.member-filter-typeahead__menu{position:absolute;top:calc(100% + 6px);left:0;z-index:200;min-width:100%;width:max(100%,220px);max-width:320px;max-height:min(280px,40vh);overflow-y:auto;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-2);padding:var(--s-1)}.member-filter-typeahead__option{display:flex;align-items:center;width:100%;padding:8px 12px;border:0;border-radius:var(--r-2);background:transparent;font-family:var(--font-body);font-size:var(--text-small);font-weight:500;color:var(--ink-2);text-align:left;cursor:pointer}.member-filter-typeahead__option:hover,.member-filter-typeahead__option--highlighted{background:var(--paper-2);color:var(--ink)}.member-filter-typeahead__option--selected{background:var(--forest-50);color:var(--brand-forest-deep)}.member-filter-typeahead__empty{padding:8px 12px;font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3)}.member-filter-typeahead__menu--limited{max-height:none;overflow:hidden}.member-filter-typeahead__footer{padding:8px 12px;border-top:1px solid var(--hairline);font-family:var(--font-body);font-size:var(--text-caption);color:var(--ink-3);text-align:center;background:var(--paper-2)}@media (max-width: 600px){.member-filter-typeahead{flex:1 1 calc(50% - var(--s-1));max-width:none}}.member-filter-typeahead--full-width{min-width:0;max-width:none;flex:1 1 100%;width:100%}.member-filter-typeahead--full-width .member-filter-typeahead__menu{width:100%;max-width:none}.list-search-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3) var(--s-4)}.list-search-row__start{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3);flex:1 1 auto;min-width:0}.list-search-row__sort{display:inline-flex;align-items:center;gap:var(--s-2);margin-left:auto;flex-shrink:0}@media (max-width: 600px){.list-search-row__sort{margin-left:0;flex:1 1 100%;justify-content:flex-end}}.list-search-field{position:relative;min-width:280px;max-width:360px;flex:0 1 360px}.list-search-field__icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--ink-3);pointer-events:none;display:inline-flex}.list-search-field__input{font-family:var(--font-body);font-size:var(--filter-pill-trigger-font);color:var(--ink);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);padding:var(--filter-pill-trigger-py) 38px;width:100%;transition:border-color .12s ease,box-shadow .12s ease;box-sizing:border-box}.list-search-field__input::placeholder{color:var(--ink-4)}.list-search-field__input:hover{border-color:var(--ink-3)}.list-search-field__input:focus{outline:none;border-color:var(--brand-forest);box-shadow:var(--shadow-focus)}.list-search-field__input::-webkit-search-cancel-button,.list-search-field__input::-webkit-search-decoration{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.list-search-field__clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:0;background:transparent;color:var(--ink-3);border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.list-search-field__clear:hover{background:var(--paper-2);color:var(--ink)}@media (max-width: 600px){.list-search-field{min-width:100%;max-width:100%;flex:1 1 100%}}.list-filter-toggle{border:1px solid var(--hairline);background:var(--paper-2);color:var(--ink-2);padding:var(--filter-pill-btn-py) var(--filter-pill-btn-px-tight);border-radius:var(--r-pill);font-family:var(--font-body);font-size:var(--filter-pill-font);font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.list-filter-toggle:hover{color:var(--ink);border-color:var(--hairline-strong)}.list-filter-toggle--active{background:var(--forest-50);border-color:var(--forest-100);color:var(--brand-forest-deep)}.memories-filter-bar{display:flex;flex-direction:column;gap:var(--s-3);margin-bottom:var(--s-5)}.memories-filter-bar__chips{display:flex;flex-wrap:wrap;gap:var(--s-2);align-items:center}.memories-filter-bar__chip{font-family:var(--font-mono);font-size:var(--text-micro);text-transform:uppercase;letter-spacing:.06em;background:var(--quince-50);color:var(--brand-bark);border-radius:var(--r-pill);padding:4px 10px}.memories-filter-bar__clear{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--ink-3);font-size:var(--text-caption);cursor:pointer}.memories-filter-bar__clear:hover{color:var(--ink)}.memory-more-menu{position:relative}.memory-more-menu__trigger{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid transparent;border-radius:var(--r-2);background:transparent;color:var(--ink-3);cursor:pointer}.memory-more-menu__trigger:hover{background:var(--paper-2);border-color:var(--hairline);color:var(--ink)}.memory-more-menu__panel{position:absolute;top:calc(100% + 4px);right:0;z-index:20;min-width:160px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-2);box-shadow:var(--shadow-2);padding:4px}.memory-more-menu__item{display:block;width:100%;text-align:left;border:0;background:transparent;padding:8px 12px;border-radius:var(--r-1);font-size:var(--text-small);color:var(--ink);cursor:pointer}.memory-more-menu__item:hover{background:var(--paper-2)}.memory-more-menu__item--danger{color:var(--danger)}.memory-more-menu__divider{height:1px;background:var(--hairline);margin:4px 0}.story-media-thumb{overflow:hidden;border-radius:var(--r-2);border:1px solid var(--hairline);background:var(--paper-2);display:flex;align-items:center;justify-content:center}.story-media-thumb--40x40{width:40px;height:40px}.story-media-thumb--200x200{width:100%;aspect-ratio:1}.story-media-thumb--button{padding:0;cursor:pointer}.story-media-thumb--button:hover{border-color:var(--brand-quince)}.story-media-thumb__img{width:100%;height:100%;object-fit:cover}.story-media-thumb__placeholder{color:var(--ink-3);display:flex;align-items:center;justify-content:center}.memory-card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);padding:var(--s-5);position:relative;cursor:pointer;transition:border-color .15s,box-shadow .15s}.memory-card:hover{border-color:var(--hairline-strong);box-shadow:var(--shadow-1)}.memory-card--pending{border-color:var(--warning);border-style:dashed}.memory-card__head{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.memory-card__member-chip{font-family:var(--font-mono);font-size:var(--text-micro);text-transform:uppercase;letter-spacing:.06em;background:var(--quince-50);color:var(--brand-bark);border-radius:var(--r-pill);padding:2px 8px}.memory-card__badge{font-family:var(--font-mono);font-size:var(--text-micro);text-transform:uppercase;letter-spacing:.06em;border-radius:var(--r-pill);padding:2px 8px}.memory-card__badge--pending{background:var(--warning-bg);color:var(--warning)}.memory-card__menu{margin-left:auto}.memory-card__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-section);margin:0 0 8px;color:var(--ink)}.memory-card__excerpt{font-size:var(--text-body);line-height:1.55;color:var(--ink-2);margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.memory-card__meta{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3);display:flex;align-items:center;gap:6px}.memory-card__sep{opacity:.6}.memory-card__attachments{display:flex;align-items:center;gap:8px;margin-top:12px}.memory-card__attachment-more{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3)}.family-memory-card--compact{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;text-align:left;padding:var(--s-4);border:1px solid var(--hairline);border-radius:var(--r-2);background:var(--surface);cursor:pointer}.family-memory-card--compact:hover{border-color:var(--brand-quince)}.family-memory-card__compact-title{font-family:var(--font-editorial);font-size:var(--text-body-lg);color:var(--ink)}.family-memory-card__compact-meta{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em}.memories-feed{display:flex;flex-direction:column;gap:var(--s-4)}.memories-feed__loading{padding:var(--s-8);text-align:center;color:var(--ink-3)}.memories-feed__empty{padding:var(--s-10) var(--s-6);text-align:center;background:var(--paper);border:1.5px dashed var(--hairline-strong);border-radius:var(--r-3)}.memories-feed__empty-title{font-family:var(--font-editorial);font-size:var(--text-section);margin:0 0 8px}.memories-feed__empty-body{color:var(--ink-3);margin:0;max-width:48ch;margin-inline:auto}.tone-callout{display:grid;grid-template-columns:32px 1fr auto;gap:var(--s-3);align-items:start;background:var(--bark-50);border-left:3px solid var(--brand-bark);border-radius:var(--r-2);padding:var(--s-4) var(--s-5);margin-bottom:var(--s-5)}.tone-callout__icon{width:32px;height:32px;background:var(--surface);border:1px solid var(--hairline);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--brand-bark);margin-top:2px}.tone-callout__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-body-lg);color:var(--brand-bark);margin:0 0 4px}.tone-callout__body{font-size:var(--text-small);color:var(--ink-2);line-height:1.5;margin:0;max-width:64ch}.tone-callout__close{background:transparent;border:0;color:var(--ink-3);cursor:pointer;padding:4px;border-radius:var(--r-1)}.tone-callout__close:hover{background:var(--bark-hover);color:var(--brand-bark)}.story-form{display:flex;flex-direction:column;gap:var(--s-4);padding:var(--s-5);background:var(--paper);border:1px solid var(--hairline);border-radius:var(--r-3);margin-bottom:var(--s-5)}.story-form__error{padding:var(--s-3) var(--s-4);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--r-2);color:var(--danger);font-size:var(--text-small)}.story-form__field{display:flex;flex-direction:column;gap:var(--s-2)}.story-form__label{font-family:var(--font-mono);font-size:var(--form-label-font);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.story-form__input,.story-form__textarea{width:100%;border:1px solid var(--hairline);border-radius:var(--r-2);padding:10px 12px;font:inherit;color:var(--ink);background:var(--surface)}.story-form__textarea{resize:vertical;min-height:160px;line-height:1.55}.story-form__char-count{margin:0;font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.04em;text-align:right;color:var(--ink-3)}.story-form__char-count--near-limit{color:var(--warning)}.story-form__char-count--at-limit{color:var(--danger)}.story-form__field-hint{margin:0;font-size:var(--text-caption);color:var(--ink-3)}.story-form__tips{border:1px solid var(--hairline);border-radius:var(--r-2);overflow:hidden}.story-form__tips-trigger{width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;border:0;background:var(--paper-2);font-size:var(--text-small);font-weight:500;color:var(--ink-2);cursor:pointer;text-align:left}.story-form__tips-body{padding:12px 16px 16px;font-size:var(--text-small);color:var(--ink-2);line-height:1.5}.story-form__tips-body ul{margin:8px 0 0;padding-left:1.2rem}.story-form__attachments-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3)}.story-form__attachments{display:flex;flex-wrap:wrap;gap:var(--s-2)}.story-form__attachment{position:relative}.story-form__attachment-remove{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;border:1px solid var(--hairline);background:var(--surface);color:var(--ink-3);display:flex;align-items:center;justify-content:center;cursor:pointer}.story-form__footer-copy{font-size:var(--text-caption);color:var(--ink-3);margin:0}.story-form__actions{display:flex;justify-content:flex-end;gap:var(--s-3)}.family-memories-screen{display:flex;flex-direction:column;width:100%;max-width:1200px;margin:0 auto;box-sizing:border-box}.family-memories-screen__lede{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-3);max-width:60ch}.family-memories-screen__control-row{display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);flex-wrap:wrap;margin-bottom:var(--s-5)}.family-memories-screen__control-row--actions-only{justify-content:flex-end}.family-memories-screen__add-btn{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto}.family-memories-screen__compose{margin-bottom:var(--s-5)}.family-memories-screen__member-picker{margin-bottom:var(--s-4)}.family-memories-screen__error{padding:var(--s-3) var(--s-4);margin-bottom:var(--s-4);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--r-2);color:var(--danger);font-size:var(--text-small)}.memory-detail-screen{max-width:900px;margin:0 auto;padding:0 var(--s-6) var(--s-16)}.memory-detail-screen__back-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);margin-bottom:var(--s-5);flex-wrap:wrap}.memory-detail-screen__back{border:0;background:transparent;color:var(--ink-2);font-size:var(--text-body);cursor:pointer;padding:0}.memory-detail-screen__back:hover{color:var(--ink)}.memory-detail-screen__actions{display:flex;flex-wrap:wrap;gap:var(--s-2)}.memory-detail-screen__delete{color:var(--danger)}.memory-detail-screen__lede{font-size:var(--text-body);color:var(--ink-2);margin:0 0 var(--s-5);max-width:64ch}.memory-detail-screen__about{display:flex;align-items:center;gap:var(--s-3);width:100%;text-align:left;padding:var(--s-4);margin-bottom:var(--s-6);border:1px solid var(--hairline);border-radius:var(--r-3);background:var(--surface);cursor:pointer}.memory-detail-screen__about:hover{border-color:var(--brand-quince)}.memory-detail-screen__about-photo{width:48px;height:48px;border-radius:var(--r-2);overflow:hidden;background:var(--quince-100);display:flex;align-items:center;justify-content:center;color:var(--brand-bark);font-family:var(--font-editorial);font-size:var(--text-subhead)}.memory-detail-screen__about-photo img{width:100%;height:100%;object-fit:cover}.memory-detail-screen__about-text{flex:1;min-width:0}.memory-detail-screen__about-label{display:block;font-family:var(--font-mono);font-size:var(--text-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.memory-detail-screen__about-name{display:block;font-family:var(--font-editorial);font-size:var(--text-subhead);color:var(--ink)}.memory-detail-screen__article{margin-bottom:var(--s-8)}.memory-detail-screen__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);line-height:1.1;margin:0 0 var(--s-4)}.memory-detail-screen__meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3);margin-bottom:var(--s-6)}.memory-detail-screen__pending{background:var(--warning-bg);color:var(--warning);border-radius:var(--r-pill);padding:2px 8px;text-transform:uppercase;letter-spacing:.06em}.memory-detail-screen__body{font-size:var(--text-prose);line-height:1.65;color:var(--ink);max-width:64ch;white-space:pre-wrap}.memory-detail-screen__section-title{font-family:var(--font-editorial);font-size:var(--text-section);margin:0 0 var(--s-4)}.memory-detail-screen__attachment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-3)}@media (max-width: 640px){.memory-detail-screen__attachment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.memory-detail-screen__related{margin-top:var(--s-8);padding-top:var(--s-6);border-top:1px solid var(--hairline)}.memory-detail-screen__related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-3);margin-bottom:var(--s-4)}@media (max-width: 768px){.memory-detail-screen__related-grid{grid-template-columns:1fr}}.memory-detail-screen__add-related{width:100%;padding:var(--s-4);border:1.5px dashed var(--hairline-strong);border-radius:var(--r-2);background:transparent;color:var(--ink-2);cursor:pointer;font-size:var(--text-body)}.memory-detail-screen__add-related:hover{border-color:var(--brand-quince);color:var(--ink)}.memory-detail-screen__error{padding:var(--s-4);margin-bottom:var(--s-4);color:var(--danger);font-size:var(--text-small)}.claim-profile-modal-content{width:min(90vw,var(--content-max-width-small));max-height:80vh;overflow:auto;padding:var(--s-5)}.claim-profile-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--s-4)}.claim-profile-modal-header-actions{display:flex;align-items:center;gap:var(--s-1)}.claim-profile-modal-title{margin:0;font-family:var(--font-editorial);font-weight:500;font-size:var(--text-heading);color:var(--ink)}.claim-profile-modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid transparent;border-radius:var(--r-pill);color:var(--ink-3);cursor:pointer;font-size:var(--text-section);line-height:1}.claim-profile-modal-close:hover{background:var(--paper-2);color:var(--ink)}.claim-profile-modal-search{margin-bottom:var(--s-4)}.claim-profile-modal-search-input{width:100%;box-sizing:border-box;font-family:var(--font-body);font-size:var(--text-body);padding:10px 12px;border:1px solid var(--hairline-strong);border-radius:var(--r-2);color:var(--ink);background:var(--surface)}.claim-profile-modal-search-input:focus{outline:none;border-color:var(--brand-bark);box-shadow:var(--shadow-focus)}.claim-profile-modal-loading{text-align:center;padding:var(--s-6)}.claim-profile-modal-loading-text{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.claim-profile-modal-empty{padding:var(--s-6);text-align:center;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.claim-profile-modal-results{display:flex;flex-direction:column;gap:var(--s-2)}.claim-profile-modal-person{padding:var(--s-3);border:1px solid var(--hairline);border-radius:var(--r-2);display:flex;justify-content:space-between;align-items:center;gap:var(--s-3);background:var(--paper-2)}.claim-profile-modal-person-info{flex:1;min-width:0}.claim-profile-modal-person-name{font-family:var(--font-body);font-size:var(--text-body);font-weight:600;color:var(--ink);margin-bottom:var(--s-1)}.claim-profile-modal-person-birth{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2)}.claim-profile-modal-footer{margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--hairline);display:flex;justify-content:flex-end}@media (max-width: 600px){.claim-profile-modal-content{padding:var(--s-4)}.claim-profile-modal-person{flex-direction:column;align-items:stretch}.claim-profile-modal-footer .btn{width:100%;justify-content:center}}.family-user-details-modal-list{display:flex;flex-direction:column;gap:var(--s-3);margin-bottom:var(--s-4);overflow-y:auto;max-height:min(50vh,20rem);-webkit-overflow-scrolling:touch}.family-user-details-modal-row{padding:var(--s-3);border:1px solid var(--hairline);border-radius:var(--r-2);background:var(--paper-2)}.family-user-details-modal-row-primary{display:flex;flex-direction:column;gap:var(--s-1)}.family-user-details-modal-nickname{font-family:var(--font-body);font-size:var(--text-body);font-weight:600;color:var(--ink)}.family-user-details-modal-email{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2)}.family-user-details-modal-row-secondary{margin-top:var(--s-2);font-family:var(--font-body);font-size:var(--text-caption);color:var(--ink-3)}.family-user-details-modal-actions{display:flex;justify-content:flex-end;flex-shrink:0}@media (max-width: 600px){.family-user-details-modal-list{max-height:min(45vh,18rem)}.family-user-details-modal-actions .btn{width:100%;justify-content:center}}@media (max-height: 480px){.family-user-details-modal-list{max-height:min(40vh,14rem)}}.activity-item{display:flex;align-items:flex-start;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--hairline);text-align:left;width:100%;background:transparent;border-left:0;border-right:0;border-top:0;font:inherit;color:inherit}.activity-item:last-child{border-bottom:0}.activity-item--clickable{cursor:pointer;transition:background .12s}.activity-item--clickable:hover,.activity-item--clickable:focus-visible{background:var(--paper-2);outline:none}.activity-item__icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--r-1);flex-shrink:0;margin-top:1px}.activity-item__icon--people{background:color-mix(in srgb,var(--brand-quince) 12%,transparent);color:var(--brand-quince)}.activity-item__icon--media{background:color-mix(in srgb,var(--accent-teal, #0d9488) 12%,transparent);color:var(--accent-teal, #0d9488)}.activity-item__icon--invites{background:color-mix(in srgb,var(--accent-purple, #7c3aed) 12%,transparent);color:var(--accent-purple, #7c3aed)}.activity-item__icon--tree{background:color-mix(in srgb,var(--accent-amber, #d97706) 12%,transparent);color:var(--accent-amber, #d97706)}.activity-item__icon--imports{background:color-mix(in srgb,var(--ink-3) 12%,transparent);color:var(--ink-2)}.activity-item__icon--account{background:var(--paper-2);color:var(--ink-2)}.activity-item__icon--default{background:var(--paper-2);color:var(--ink-3)}.activity-item__body{min-width:0;flex:1}.activity-item__summary{font-family:var(--font-body);font-size:var(--text-small);line-height:1.4;color:var(--ink-1)}.activity-item__meta{margin-top:2px;font-family:var(--font-mono);font-size:var(--text-micro);color:var(--ink-3)}.overview-page{display:flex;flex-direction:column;width:100%;max-width:1200px;margin:0 auto;box-sizing:border-box}.overview-page__intro{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.overview-page__tour-intro .overview-page__intro{max-width:none}.claim-banner{margin-bottom:var(--s-5);padding:var(--s-4) var(--s-5);background:linear-gradient(95deg,var(--quince-50),var(--bark-50));border:1px solid var(--quince-100);border-radius:var(--r-3);display:flex;align-items:center;gap:var(--s-4)}.claim-banner__icon{width:var(--icon-btn-size);height:var(--icon-btn-size);border-radius:50%;background:var(--brand-quince);color:var(--surface);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.claim-banner__icon svg{width:var(--icon-btn-glyph-size);height:var(--icon-btn-glyph-size)}.claim-banner__body{flex:1}.claim-banner__title{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);color:var(--ink);margin:0 0 2px}.claim-banner__sub{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2);margin:0}.overview-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:var(--s-5)}.stat-tile{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);padding:var(--s-5);cursor:pointer;transition:all .15s;text-align:left;font:inherit;color:inherit;position:relative;overflow:hidden;width:100%;min-width:0;box-sizing:border-box}.stat-tile:hover:not(:disabled){border-color:var(--brand-quince);box-shadow:var(--shadow-2);transform:translateY(-1px)}.stat-tile:disabled{opacity:.55;cursor:not-allowed;transform:none}.stat-tile__icon{position:absolute;top:var(--s-5);right:var(--s-5);opacity:.8;color:var(--ink-3)}.stat-tile--members .stat-tile__icon{color:var(--brand-quince)}.stat-tile--memories .stat-tile__icon{color:var(--brand-forest)}.stat-tile--photos .stat-tile__icon{color:var(--brand-bark)}.stat-tile--sources .stat-tile__icon{color:var(--brand-teal)}.stat-tile__value{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);color:var(--ink);line-height:1;margin-bottom:6px;letter-spacing:-.01em}.stat-tile__label{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2);font-weight:500}.overview-quick-actions{display:flex;gap:4px;margin-bottom:var(--s-8);flex-wrap:wrap;--quick-link-btn-size: 42px;--quick-link-icon-size: 27px}.quick-link-btn-wrap{display:inline-flex;flex-shrink:0}.quick-link-btn{width:var(--quick-link-btn-size);height:var(--quick-link-btn-size);min-width:var(--quick-link-btn-size);min-height:var(--quick-link-btn-size);padding:0;border:1px solid transparent;border-radius:var(--r-2);background:transparent;color:var(--ink-3);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;transition:background .12s ease,border-color .12s ease,color .12s ease}.quick-link-btn svg{width:var(--quick-link-icon-size);height:var(--quick-link-icon-size);flex-shrink:0}.quick-link-btn:hover:not(:disabled){background:var(--paper-2);border-color:var(--hairline);color:var(--brand-forest)}.quick-link-btn--accent:hover:not(:disabled){background:var(--forest-50);border-color:var(--forest-100);color:var(--brand-forest-deep)}.quick-link-btn:disabled{opacity:.45;cursor:not-allowed}.quick-link-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.overview-dashboard{display:grid;grid-template-columns:1fr;gap:var(--s-5);margin-bottom:var(--s-5)}@media (min-width: 900px){.overview-dashboard{grid-template-columns:1fr 1fr}}.overview-card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);overflow:hidden}.overview-card__head{display:flex;justify-content:space-between;align-items:center;padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--hairline);gap:var(--s-3)}.overview-card__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-subhead);margin:0;color:var(--ink);display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px}.overview-card__count{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3);background:var(--paper-2);padding:2px 8px;border-radius:var(--r-pill)}.overview-card__more{font-size:var(--text-caption);color:var(--brand-bark);text-decoration:none;background:transparent;border:0;cursor:pointer;padding:4px 8px;border-radius:var(--r-1);font-family:var(--font-body);white-space:nowrap}.overview-card__more:hover{background:var(--bark-50)}.overview-card__body{padding:var(--s-2) var(--s-3) var(--s-3)}.overview-card__empty{padding:var(--s-5);font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3);text-align:center}.invite-item{display:flex;justify-content:space-between;align-items:center;padding:var(--s-3);gap:var(--s-3);border-bottom:1px solid var(--hairline)}.invite-item:last-child{border-bottom:0}.invite-item__email{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink);word-break:break-all}.invite-item__meta{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3);margin-top:2px}.invite-item__actions{display:flex;gap:4px;flex-shrink:0}.btn-text{background:transparent;border:0;font:inherit;font-size:var(--text-caption);color:var(--brand-bark);cursor:pointer;padding:4px 8px;border-radius:var(--r-1);font-family:var(--font-body)}.btn-text:hover{background:var(--bark-50)}.overview-photos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:var(--s-3)}.photo-thumb{aspect-ratio:1;border-radius:var(--r-2);background:var(--paper-2);position:relative;cursor:pointer;overflow:hidden;border:1px solid var(--hairline);transition:all .15s;padding:0;width:100%}.photo-thumb:hover{border-color:var(--brand-quince);transform:scale(1.02)}.photo-thumb__img{width:100%;height:100%;object-fit:cover;display:block}.photo-thumb__overlay{position:absolute;bottom:0;left:0;right:0;padding:4px 6px;background:linear-gradient(to top,rgba(42,31,23,.65),transparent);color:var(--surface);font-size:var(--text-micro);font-family:var(--font-mono);opacity:0;transition:opacity .15s;text-align:left}.photo-thumb:hover .photo-thumb__overlay{opacity:1}.overview-activity-list .activity-item{padding-left:var(--s-3);padding-right:var(--s-3)}.overview-activity-list .activity-item:first-child{padding-top:var(--s-2)}.overview-activity-card .overview-card__body{padding:0}.overview-role-card{margin-bottom:0}.role-grid{display:flex;flex-direction:column;gap:6px;padding:var(--s-3)}.role-row{display:grid;grid-template-columns:120px 1fr 40px;align-items:center;gap:var(--s-3);padding:6px 8px;border-radius:var(--r-1);cursor:pointer;transition:background .12s;border:0;background:transparent;font:inherit;text-align:left;width:100%}.role-row:hover{background:var(--paper-2)}.role-row .role-pill{display:inline-flex;align-items:center;padding:var(--chip-pill-py) var(--chip-pill-px);border-radius:var(--r-pill);font-family:var(--font-body);font-size:var(--chip-pill-font);font-weight:600;letter-spacing:.1em;text-transform:uppercase;justify-self:start}.role-row .role-pill--owner{background:var(--quince-50);color:var(--brand-bark)}.role-row .role-pill--admin{background:var(--bark-50);color:var(--brand-bark-deep)}.role-row .role-pill--editor{background:var(--forest-50);color:var(--brand-forest)}.role-row .role-pill--contributor{background:var(--teal-50);color:var(--brand-teal)}.role-row .role-pill--viewer{background:var(--paper-2);color:var(--ink-3)}.role-row__bar{background:var(--paper-2);height:6px;border-radius:var(--r-pill);overflow:hidden}.role-row__fill{height:100%;background:var(--hairline-strong);transition:width .3s}.role-row--owner .role-row__fill{background:var(--brand-quince)}.role-row--admin .role-row__fill{background:var(--brand-bark)}.role-row--editor .role-row__fill{background:var(--brand-forest)}.role-row--contributor .role-row__fill{background:var(--brand-teal)}.role-row--viewer .role-row__fill{background:var(--ink-3)}.role-row__count{font-family:var(--font-mono);font-size:var(--text-small);font-weight:600;color:var(--ink);text-align:right}.overview-meta-row{display:flex;justify-content:space-between;gap:var(--s-4);padding:var(--s-4) 0 0;font-family:var(--font-body);font-size:var(--text-caption);color:var(--ink-3);margin-top:var(--s-5);border-top:1px solid var(--hairline);flex-wrap:wrap}.overview-meta-row strong{color:var(--ink-2);font-weight:500}.overview-empty-hero{text-align:center;padding:var(--s-16) var(--s-6);max-width:540px;margin:0 auto}.overview-empty-hero__stripe{display:inline-block;width:80px;height:8px;background:var(--brand-stripe);border-radius:4px;margin-bottom:var(--s-6)}.overview-empty-hero__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display-sm);margin:0 0 var(--s-3);color:var(--ink)}.overview-empty-hero__title em{font-style:italic;color:var(--brand-bark)}.overview-empty-hero__body{font-family:var(--font-editorial);font-size:var(--text-body-lg);color:var(--ink-2);line-height:1.5;margin:0 0 var(--s-6)}.overview-empty-hero__cta{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.overview-empty-hero__cta .btn{display:inline-flex;align-items:center;gap:8px}.overview-error,.overview-not-found{padding:var(--s-6);border-radius:var(--r-3);background:var(--surface);border:1px solid var(--hairline)}.overview-error{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);border-color:var(--danger);background:var(--danger-bg)}.overview-error__title{margin:0;color:var(--danger);font-family:var(--font-body)}.overview-error__dismiss{background:transparent;border:0;font-size:var(--nav-icon-font-size);cursor:pointer;padding:.25rem}.overview-not-found__title{margin:0;text-align:center;font-family:var(--font-body);color:var(--ink)}.overview-loading{display:flex;justify-content:center;padding:var(--s-16)}@media (max-width: 900px){.overview-quick-actions{--quick-link-btn-size: 38px;--quick-link-icon-size: 24px;gap:3px}.overview-stats-grid{gap:10px}.stat-tile{padding:var(--s-4)}.stat-tile__icon{top:var(--s-4);right:var(--s-4)}.stat-tile__value{font-size:var(--text-display-sm)}}@media (max-width: 600px){.overview-quick-actions{--quick-link-btn-size: 34px;--quick-link-icon-size: 22px;margin-bottom:var(--s-6)}.overview-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.stat-tile{padding:var(--s-3) var(--s-2)}.stat-tile__icon{top:var(--s-2);right:var(--s-2);transform:scale(.82);transform-origin:top right}.stat-tile__value{font-size:var(--text-section);margin-bottom:4px}.stat-tile__label{font-size:var(--text-caption);line-height:1.25}}@media (max-width: 480px){.overview-quick-actions{--quick-link-btn-size: 30px;--quick-link-icon-size: 19px;gap:2px}.overview-stats-grid{gap:6px}.stat-tile{padding:var(--s-2) var(--s-1)}.stat-tile__icon{transform:scale(.72)}.stat-tile__value{font-size:var(--text-subhead)}.stat-tile__label{font-size:var(--text-micro);font-weight:500}}@media (max-width: 360px){.overview-quick-actions{--quick-link-btn-size: 28px;--quick-link-icon-size: 18px}.overview-stats-grid{gap:4px}.stat-tile{padding:var(--s-2) var(--s-1)}.stat-tile__icon{transform:scale(.65)}.stat-tile__value{font-size:var(--text-body-lg);margin-bottom:var(--s-1)}}.activity-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3) var(--s-4);margin-bottom:var(--s-5)}.activity-filter-bar__start{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3) var(--s-4);flex:1 1 auto;min-width:0}.activity-filter-bar .list-seg{flex-shrink:0;flex-wrap:wrap}.activity-filter-bar__selects{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--s-2)}.activity-filter-bar__member-filter{display:inline-flex;align-items:center;gap:var(--s-1)}.activity-filter-bar__date-pill{display:inline-flex;align-items:center;gap:var(--filter-pill-gap);min-width:var(--filter-pill-trigger-min-w);padding:var(--filter-pill-trigger-py) var(--filter-pill-trigger-px);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);background:var(--surface);box-sizing:border-box;cursor:pointer;transition:border-color .12s ease}.activity-filter-bar__date-pill:hover,.activity-filter-bar__date-pill:focus-within{border-color:var(--ink-3)}.activity-filter-bar__date-label{font-family:var(--font-body);font-size:var(--filter-pill-trigger-font);font-weight:500;color:var(--ink-3);white-space:nowrap}.activity-filter-bar__date-input{border:none;background:transparent;padding:0;margin:0;min-width:0;font-family:var(--font-body);font-size:var(--filter-pill-trigger-font);font-weight:500;color:var(--ink);cursor:pointer}.activity-filter-bar__date-input:focus{outline:none}.activity-filter-bar__date-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.65}@media (max-width: 600px){.activity-filter-bar{flex-direction:column;align-items:stretch}.activity-filter-bar__start,.activity-filter-bar__selects{width:100%}.activity-filter-bar__date-pill{flex:1 1 calc(50% - var(--s-1));max-width:none}}.list-sort-controls{display:inline-flex;align-items:center;gap:var(--s-2)}.list-sort-controls__heading{font-family:var(--font-mono);font-size:var(--filter-pill-count-font);font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.list-sort-controls__group{display:inline-flex;align-items:stretch;background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);overflow:hidden;box-shadow:var(--shadow-1)}.list-sort-controls__trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--filter-pill-gap);min-width:0;width:auto;max-width:min(240px,42vw);padding:var(--filter-pill-btn-py) var(--filter-pill-btn-px-tight) var(--filter-pill-btn-py) var(--filter-pill-btn-px);border:0;border-radius:0;background:transparent;font-family:var(--font-body);font-size:var(--filter-pill-font);font-weight:500;color:var(--ink);cursor:pointer;transition:background .12s ease,color .12s ease}.list-sort-controls__icon svg{width:var(--filter-pill-icon-size);height:var(--filter-pill-icon-size)}.list-sort-controls__trigger:hover{background:var(--paper-2)}.list-sort-controls__trigger:focus-visible{outline:none;box-shadow:inset var(--shadow-focus)}.list-sort-controls__trigger [data-placeholder]{color:var(--ink-3)}.list-sort-controls__icon{display:inline-flex;flex-shrink:0;color:var(--ink-3)}.list-sort-controls__static-field{display:inline-flex;align-items:center;padding:var(--filter-pill-btn-py) var(--filter-pill-btn-px);border:0;border-right:1px solid var(--hairline-strong);background:transparent;font-family:var(--font-body);font-size:var(--filter-pill-font);font-weight:500;color:var(--ink);white-space:nowrap}.list-sort-controls__menu{min-width:var(--radix-select-trigger-width);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-2);padding:var(--s-1);z-index:200;overflow:hidden}.list-sort-controls__option{display:flex;align-items:center;padding:8px 12px;border-radius:var(--r-2);font-family:var(--font-body);font-size:var(--text-small);font-weight:500;color:var(--ink-2);cursor:pointer;outline:none;-webkit-user-select:none;user-select:none}.list-sort-controls__option[data-highlighted]{background:var(--paper-2);color:var(--ink)}.list-sort-controls__option[data-state=checked]{background:var(--forest-50);color:var(--brand-forest-deep)}.list-sort-controls__direction{width:var(--filter-pill-sort-direction-size);min-width:var(--filter-pill-sort-direction-size);height:auto;min-height:var(--filter-pill-sort-direction-size);padding:0;border:0;border-left:1px solid var(--hairline-strong);border-radius:0;background:transparent;color:var(--ink-2);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .12s ease,color .12s ease}.list-sort-controls__direction svg{width:var(--filter-pill-icon-size);height:var(--filter-pill-icon-size)}.list-sort-controls__direction:hover{background:var(--paper-2);color:var(--ink)}.list-sort-controls__direction:focus-visible{outline:none;box-shadow:inset var(--shadow-focus)}.activity-page{display:flex;flex-direction:column;width:100%;max-width:1200px;margin:0 auto;box-sizing:border-box}.activity-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-4)}.activity-page__lede{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-3);max-width:60ch}.activity-results-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);flex-wrap:wrap;padding-bottom:var(--s-4)}.activity-results-bar__count{font-family:var(--font-mono);font-size:var(--filter-pill-count-font);color:var(--ink-3)}.activity-page__list{border:1px solid var(--hairline);border-radius:var(--r-2);background:var(--paper);overflow:hidden}.activity-page__loading{display:flex;justify-content:center;padding:var(--s-8)}.activity-page__empty,.activity-page__error{margin:0;padding:var(--s-6);font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3);text-align:center;background:var(--paper-2);border:1px dashed var(--hairline-strong);border-radius:var(--r-2)}.activity-page__error{color:var(--danger);border-style:solid;margin-bottom:var(--s-4)}.activity-page__pagination{display:flex;align-items:center;justify-content:center;gap:var(--s-4);margin-top:var(--s-5)}.activity-page__page-label{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--ink-3)}.family-member-typeahead{position:relative;width:100%}.family-member-typeahead-label{display:block;margin-bottom:.5rem;font-weight:600;font-family:var(--font-body);font-size:var(--text-body);color:var(--brand-quince)}.family-member-typeahead-input-wrapper{position:relative;display:flex;align-items:center}.family-member-typeahead-input{width:100%;padding:.5rem;border:1px solid var(--hairline);border-radius:4px;font-size:var(--text-body);font-family:var(--font-body);color:var(--brand-quince)}.family-member-typeahead-input:disabled{background-color:var(--paper-2);cursor:not-allowed;opacity:.6}.family-member-typeahead-clear{position:absolute;right:.5rem;background:none;border:none;font-size:var(--text-title);color:var(--ink-2);cursor:pointer;padding:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;line-height:1;transition:color .2s ease}.family-member-typeahead-clear:hover:not(:disabled){color:var(--brand-quince)}.family-member-typeahead-clear:disabled{cursor:not-allowed;opacity:.5}.family-member-typeahead-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;box-shadow:var(--shadow-2);z-index:1000;max-height:12rem;overflow-y:auto;overflow-x:hidden}.family-member-typeahead-option{width:100%;padding:.75rem;border:none;background:none;text-align:left;font-family:var(--font-body);font-size:var(--text-body);color:var(--brand-quince);cursor:pointer;transition:background-color .15s ease}.family-member-typeahead-option-content{display:flex;flex-direction:column;gap:.25rem}.family-member-typeahead-option-name{font-weight:500;color:var(--brand-quince)}.family-member-typeahead-option-details{font-size:var(--text-body);color:var(--ink-2);font-weight:400}.family-member-typeahead-option:hover:not(:disabled),.family-member-typeahead-option--highlighted{background-color:var(--paper-2)}.family-member-typeahead-option:disabled{cursor:not-allowed;opacity:.6}.family-member-typeahead-empty{padding:.75rem;text-align:center;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.family-member-typeahead-footer{padding:.5rem .75rem;border-top:1px solid var(--hairline);font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2);text-align:center;background-color:var(--paper-2)}.family-member-typeahead-help-text{margin-top:.25rem;font-size:var(--text-body);color:var(--ink-2);font-family:var(--font-body)}.invite-form{display:flex;flex-direction:column;gap:var(--s-4)}.invite-form-success{padding:var(--s-3);background:var(--forest-50);border:1px solid var(--forest-100);border-radius:var(--r-2);display:flex;justify-content:space-between;align-items:center;gap:var(--s-2)}.invite-form-success-text{margin:0;color:var(--brand-forest-deep);font-family:var(--font-body);font-size:var(--text-body);flex:1}.invite-form-success-close{background:none;border:none;font-size:var(--text-subhead);color:var(--brand-forest-deep);cursor:pointer;padding:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;line-height:1;opacity:.7}.invite-form-success-close:hover{opacity:1}.invite-form-error{padding:var(--s-2) var(--s-3);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--r-2);color:var(--danger);font-family:var(--font-body);font-size:var(--text-small);line-height:1.4}.invite-form-field{display:flex;flex-direction:column;gap:var(--s-1)}.invite-form-label{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.invite-form-input{width:100%;font-family:var(--font-body);font-size:var(--text-body);padding:10px 12px;border:1px solid var(--hairline-strong);border-radius:var(--r-2);color:var(--ink);background:var(--surface);line-height:1.35;transition:border-color .12s ease,box-shadow .12s ease}.invite-form-input:focus{outline:none;border-color:var(--brand-bark);box-shadow:var(--shadow-focus)}.invite-form-input:disabled{background:var(--paper-2);color:var(--ink-3);cursor:not-allowed}.invite-form-help-text{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3)}.invite-form-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--s-2);padding-top:var(--s-2)}@media (max-width: 600px){.invite-form-actions{flex-direction:column;align-items:stretch}.invite-form-actions .btn{width:100%;justify-content:center}}.invitations-list{width:100%}.invitations-list-title{margin:0 0 var(--s-4);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-section);color:var(--ink)}.invitations-list-loading,.invitations-list-empty{padding:var(--s-4);text-align:center;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.invitations-list-error{padding:var(--s-2) var(--s-3);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--r-2);color:var(--danger);font-family:var(--font-body);font-size:var(--text-small);line-height:1.4}.invitations-list-table{width:100%;border-collapse:collapse;table-layout:fixed;overflow-x:auto;display:block}@media (min-width: 768px){.invitations-list-table{display:table}}.invitations-list-table thead tr{border-bottom:1px solid var(--hairline-strong)}.invitations-list-table th{padding:var(--s-2) var(--s-2) var(--s-3);text-align:left;font-family:var(--font-mono);font-size:var(--text-micro);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.invitations-list-table th:nth-child(1){width:30%}.invitations-list-table th:nth-child(2){width:15%}.invitations-list-table th:nth-child(3){width:20%}.invitations-list-table th:nth-child(4){width:35%}.invitations-list-table tbody tr{border-bottom:1px solid var(--hairline)}.invitations-list-table td{padding:var(--s-3) var(--s-2);font-family:var(--font-body);font-size:var(--text-small);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}.invitations-list-name{font-weight:600;margin-bottom:var(--s-1);color:var(--ink)}.invitations-list-email{color:var(--ink-2);font-size:var(--text-caption)}.invitations-list-status{padding:3px 8px;border-radius:var(--r-pill);font-size:var(--text-micro);font-weight:600;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;display:inline-block}.invitations-list-status--pending{background:var(--warning-bg);color:var(--brand-bark-deep)}.invitations-list-status--accepted{background:var(--forest-50);color:var(--brand-forest-deep)}.invitations-list-status--expired{background:var(--paper-2);color:var(--ink-3)}.invitations-list-status--cancelled{background:var(--danger-bg);color:var(--danger)}.invitations-list-actions{display:flex;gap:var(--s-1);flex-wrap:wrap}.invitations-list-button{padding:5px 10px;border-radius:var(--r-2);background:var(--surface);cursor:pointer;font-size:var(--text-caption);font-family:var(--font-body);font-weight:500;transition:all .12s ease;white-space:nowrap;border:1px solid var(--hairline-strong);color:var(--ink)}.invitations-list-button:hover{background:var(--paper-2);border-color:var(--ink-3)}.invitations-list-button--resend,.invitations-list-button--copy{border-color:var(--brand-forest);color:var(--brand-forest)}.invitations-list-button--copy{background:var(--brand-forest);color:var(--surface)}.invitations-list-button--copy:hover{background:var(--brand-forest-deep);border-color:var(--brand-forest-deep);color:var(--surface)}.invitations-list-button--cancel,.invitations-list-button--delete{border-color:var(--danger-border);color:var(--danger)}@media (max-width: 768px){.invitations-list-table{display:block}.invitations-list-table thead{display:none}.invitations-list-table tbody{display:block}.invitations-list-table tbody tr{display:flex;flex-direction:column;border:1px solid var(--hairline);border-radius:var(--r-2);margin-bottom:var(--s-3);padding:var(--s-4);background:var(--paper-2)}.invitations-list-table tbody tr:last-child{margin-bottom:0}.invitations-list-table tbody tr td:first-child{display:block;width:100%;padding:0 0 var(--s-3);border-bottom:1px solid var(--hairline);margin-bottom:var(--s-3);white-space:normal;overflow:visible;text-overflow:unset}.invitations-list-table tbody tr td:nth-child(2),.invitations-list-table tbody tr td:nth-child(3),.invitations-list-table tbody tr td:nth-child(4){display:block;width:100%;padding:var(--s-1) 0;border:none;white-space:normal;overflow:visible;text-overflow:unset}.invitations-list-table tbody tr td:nth-child(2){margin-bottom:var(--s-2)}.invitations-list-table tbody tr td:nth-child(3){margin-bottom:var(--s-3);font-size:var(--text-caption);color:var(--ink-2)}.invitations-list-table tbody tr td:nth-child(4){padding-top:var(--s-3);border-top:1px solid var(--hairline)}.invitations-list-table tbody tr td:nth-child(4) .invitations-list-actions{gap:var(--s-2)}}@media (max-width: 480px){.invitations-list-table tbody tr{padding:var(--s-3)}.invitations-list-button{padding:6px 10px;font-size:var(--text-caption)}}.invite-page{display:flex;flex-direction:column;width:100%;max-width:var(--content-max-width-medium);margin:0 auto;box-sizing:border-box;gap:var(--s-4)}.invite-page--centered{max-width:var(--content-max-width-small)}.invite-page__header{margin-bottom:var(--s-1)}.invite-page__title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);line-height:1.05;letter-spacing:-.01em;color:var(--ink)}.invite-page__lede{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.invite-page__section{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);padding:var(--s-5)}.invite-page__section--message{text-align:center}.invite-page__section-title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-title);line-height:1.1;color:var(--ink)}.invite-page__body{margin:0;font-family:var(--font-body);font-size:var(--text-body);line-height:1.45;color:var(--ink-2)}.invite-page__loading{display:flex;justify-content:center;padding:var(--s-8) var(--s-4)}@media (max-width: 600px){.invite-page__section{padding:var(--s-4)}}.auth-brand__logo{width:48px;height:48px;background-image:url(/favicon.png);background-size:contain;background-position:center;background-repeat:no-repeat;flex-shrink:0}.accept-invitation-form-card .accept-invitation-banner{margin:var(--s-5) var(--s-6) 0;padding:var(--s-4);text-align:left;background:var(--quince-50);border:1px solid var(--quince-100);border-radius:var(--r-2);box-shadow:none;box-sizing:border-box}.accept-invitation-loading,.accept-invitation-error{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:var(--s-8) var(--s-4);background:var(--paper);text-align:center}.accept-invitation-error h1{margin:0 0 var(--s-3);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display-sm);color:var(--ink)}.accept-invitation-error p{margin:var(--s-2) 0;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2);line-height:1.5}.accept-invitation-error-message{max-width:42ch;color:var(--ink-3)}.accept-invitation-error-button{margin-top:var(--s-6);padding:9px 16px;background:var(--brand-forest);color:var(--surface);border:none;border-radius:var(--r-2);cursor:pointer;font-family:var(--font-body);font-size:var(--text-body);font-weight:600}.accept-invitation-error-button:hover{background:var(--brand-forest-deep)}.accept-invitation-banner h2{margin:0 0 var(--s-2);font-family:var(--font-body);font-weight:600;font-size:var(--text-caption);color:var(--brand-bark);line-height:1.3}.accept-invitation-banner-family-name{color:inherit}.accept-invitation-banner-text{margin:0;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-caption);line-height:1.45;color:var(--ink-2)}.accept-invitation-handler{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--s-8);background:var(--paper);font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.accept-invitation-handler-success{color:var(--brand-forest)}.accept-invitation-handler-error{color:var(--danger)}.changelog-page{display:flex;flex-direction:column;width:100%;max-width:var(--content-max-width-medium);margin:0 auto;box-sizing:border-box}.changelog-page__header{margin-bottom:var(--s-6)}.changelog-page__title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);line-height:1.05;letter-spacing:-.01em;color:var(--ink)}.changelog-page__lede{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.changelog-page__releases{display:flex;flex-direction:column;gap:var(--s-4)}.changelog-page__release{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);padding:var(--s-5);scroll-margin-top:var(--s-6);transition:box-shadow .2s ease}.changelog-page__release--highlighted{box-shadow:0 0 0 2px var(--brand-bark);animation:changelog-highlight 2s ease-out}@keyframes changelog-highlight{0%{box-shadow:0 0 0 4px var(--brand-bark)}to{box-shadow:0 0 0 2px var(--brand-bark)}}.changelog-page__release-header{margin-bottom:var(--s-3);padding-bottom:var(--s-3);border-bottom:1px solid var(--hairline)}.changelog-page__version-link{display:inline-flex;align-items:baseline;gap:var(--s-2);text-decoration:none}.changelog-page__version-link:hover .changelog-page__date,.changelog-page__version-link:hover .changelog-page__version{color:var(--brand-bark)}.changelog-page__date{font-family:var(--font-editorial);font-size:var(--text-subhead);font-weight:500;color:var(--ink);transition:color .12s ease}.changelog-page__version{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3);transition:color .12s ease}.changelog-page__changes{margin:0;padding-left:var(--s-5);list-style-type:disc}.changelog-page__change{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2);line-height:1.55;margin-bottom:var(--s-2)}.changelog-page__change:last-child{margin-bottom:0}@media (max-width: 600px){.changelog-page__release{padding:var(--s-4)}}.list-seg{display:inline-flex;background:var(--paper-2);border-radius:var(--r-pill);padding:var(--filter-pill-seg-inset);gap:0}.list-seg__btn{border:0;background:transparent;padding:var(--filter-pill-btn-py) var(--filter-pill-btn-px);border-radius:var(--r-pill);color:var(--ink-2);cursor:pointer;font-family:var(--font-body);font-size:var(--filter-pill-font);font-weight:500;transition:all .12s;display:inline-flex;align-items:center;gap:var(--filter-pill-gap);width:auto}.list-seg__btn svg{width:var(--filter-pill-icon-size);height:var(--filter-pill-icon-size);flex-shrink:0}.list-seg__btn:hover{color:var(--ink)}.list-seg__btn--active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.list-seg__count{font-family:var(--font-mono);font-size:var(--filter-pill-count-font);color:var(--ink-3);font-weight:400}.list-seg__btn--active .list-seg__count{color:var(--ink-2)}.help-page{display:flex;flex-direction:column;width:100%;max-width:var(--content-max-width-medium);margin:0 auto;box-sizing:border-box}.help-page__header{margin-bottom:var(--s-5)}.help-page__title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);line-height:1.05;letter-spacing:-.01em;color:var(--ink)}.help-page__lede{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.help-page__tabs{margin-bottom:var(--s-5)}.help-page__tabs .list-seg__btn[data-state=active]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.help-page__panel{display:flex;flex-direction:column;gap:var(--s-3)}.help-page__faq-toolbar{margin-bottom:var(--s-4)}.help-page__search{position:relative;width:100%;max-width:360px}.help-page__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--ink-3);pointer-events:none;display:inline-flex}.help-page__search-input{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);padding:9px 38px;width:100%;transition:all .12s;box-sizing:border-box}.help-page__search-input::placeholder{color:var(--ink-4)}.help-page__search-input:hover{border-color:var(--ink-3)}.help-page__search-input:focus{outline:none;border-color:var(--brand-forest);box-shadow:var(--shadow-focus)}.help-page__search-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:0;background:transparent;color:var(--ink-3);border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.help-page__search-clear:hover{background:var(--paper-2);color:var(--ink)}.help-page__faqs-empty{margin:0;padding:var(--s-6) var(--s-4);text-align:center;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-3);background:var(--surface);border:1px dashed var(--hairline-strong);border-radius:var(--r-3)}.help-page__faqs{display:flex;flex-direction:column;gap:var(--s-3)}.help-page__faq{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);overflow:hidden;transition:background .12s ease,border-color .12s ease}.help-page__faq:has(.help-page__faq-trigger:hover),.help-page__faq:has(.help-page__faq-trigger:focus-visible){background:var(--paper-2);border-color:var(--hairline-strong)}.help-page__faq-header{margin:0;display:flex;width:100%}.help-page__faq-trigger{flex:1;width:100%;min-width:0;display:flex;align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-5);background:transparent;border:0;font:inherit;color:inherit;text-align:left;cursor:pointer;box-sizing:border-box}.help-page__faq-question{flex:1;min-width:0;font-family:var(--font-body);font-size:var(--text-body-lg);font-weight:500;color:var(--ink);line-height:1.35}.help-page__faq-answer{padding:0 var(--s-5) var(--s-4);font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2);line-height:1.55}.help-page__faq-answer[data-state=open]{border-top:1px solid var(--hairline);padding-top:var(--s-4)}.help-page__docs-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:var(--s-8);align-items:start}.help-page__chapter-nav{position:sticky;top:var(--s-6);font-family:var(--font-body);font-size:var(--text-small)}.help-page__chapter-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.help-page__chapter-btn{display:block;width:100%;padding:6px 10px;margin-left:-10px;background:transparent;border:0;border-radius:var(--r-1);box-shadow:none;cursor:pointer;text-align:left;font:inherit;font-weight:400;color:var(--ink-2);line-height:1.4;transition:background .12s ease,color .12s ease}.help-page__chapter-btn:hover{background:var(--paper-2);color:var(--ink)}.help-page__chapter-btn--active{background:var(--quince-50);color:var(--brand-bark);font-weight:600}.help-page__chapter-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.help-page__chapter-panel{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);overflow:hidden}.help-page__chapter-header{padding:var(--s-5);border-bottom:1px solid var(--hairline);background:var(--paper-2)}.help-page__chapter-title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-section);color:var(--ink)}.help-page__chapter-summary{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2);line-height:1.45;max-width:60ch}.help-page__chapter-body{display:flex;flex-direction:column;gap:var(--s-4);padding:var(--s-5)}.help-page__docs{display:flex;flex-direction:column;gap:var(--s-4)}.help-page__doc-section{padding:var(--s-5);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);scroll-margin-top:var(--s-8);scroll-margin-bottom:var(--s-8)}.help-page__chapter-body .help-page__doc-section{padding:0;background:transparent;border:0;border-radius:0;border-bottom:1px solid var(--hairline);padding-bottom:var(--s-5)}.help-page__chapter-body .help-page__doc-section:last-child{border-bottom:0;padding-bottom:0}.help-page__chapter-body .help-page__doc-section--targeted{padding:var(--s-4);margin-inline:calc(-1 * var(--s-2));background:var(--quince-50);border-radius:var(--r-2);border-bottom-color:transparent;box-shadow:0 0 0 2px var(--brand-bark);animation:help-doc-section-target 2.5s ease-out}.help-page__chapter-body .help-page__doc-section--targeted .help-page__doc-title{color:var(--brand-bark)}@keyframes help-doc-section-target{0%{background:var(--quince-100);box-shadow:0 0 0 4px var(--brand-bark)}to{background:var(--quince-50);box-shadow:0 0 0 2px var(--brand-bark)}}.help-page__doc-title{margin:0 0 var(--s-3);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-body-lg);color:var(--ink)}.help-page__doc-image-wrap{margin:0 0 var(--s-4);border-radius:var(--r-2);overflow:hidden;border:1px solid var(--hairline)}.help-page__doc-image{display:block;width:100%;height:auto;max-height:300px;object-fit:contain}.help-page__doc-content{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2);line-height:1.55}.help-page__doc-paragraph{margin:0 0 var(--s-4)}.help-page__doc-paragraph:last-child{margin-bottom:0}.help-page__doc-table-wrap{margin-top:var(--s-4);padding:var(--s-4);background:var(--paper-2);border:1px solid var(--hairline);border-radius:var(--r-2);overflow-x:auto}.help-page__doc-table{margin:0;font-family:var(--font-mono);font-size:var(--text-caption);line-height:1.5;color:var(--ink);white-space:pre}.help-page__placeholder{padding:var(--s-8) var(--s-6);text-align:center;background:var(--surface);border:1px dashed var(--hairline-strong);border-radius:var(--r-3)}.help-page__placeholder-title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-section);color:var(--ink)}.help-page__placeholder-body{margin:0 auto;max-width:42ch;font-family:var(--font-body);font-size:var(--text-body);line-height:1.5;color:var(--ink-3)}.help-page__contact-email{margin:var(--s-4) 0 0;font-family:var(--font-body);font-size:var(--text-body-lg)}.help-page__contact-link{color:var(--brand-bark);text-decoration:none;font-weight:500}.help-page__contact-link:hover{color:var(--brand-forest);text-decoration:underline}.help-page__footer{margin-top:var(--s-8);padding-top:var(--s-4);border-top:1px solid var(--hairline);font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3)}.help-page__version-link{color:var(--brand-bark);text-decoration:none}.help-page__version-link:hover{color:var(--brand-forest);text-decoration:underline}@media (max-width: 720px){.help-page__docs-layout{grid-template-columns:1fr}.help-page__chapter-nav{position:static}}@media (max-width: 600px){.help-page__tabs{width:100%;flex-wrap:wrap}.help-page__tabs .list-seg__btn{flex:1 1 auto;justify-content:center}.help-page__search{max-width:none}.help-page__faq-trigger,.help-page__doc-section,.help-page__chapter-header,.help-page__chapter-body,.help-page__faq-answer{padding-inline:var(--s-4)}}.sticky-tab-strip{display:flex;flex-wrap:wrap;gap:2px;position:sticky;top:calc(var(--appbar-logo-size) + var(--s-6) + 7px);z-index:50;background:var(--paper);margin:var(--s-5) 0;padding:0;border-bottom:1px solid var(--hairline)}.sticky-tab-strip__tab{display:inline-flex;align-items:center;gap:var(--filter-pill-gap);padding:var(--sticky-tab-py) var(--sticky-tab-px);margin-bottom:-1px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--ink-3);cursor:pointer;font-family:var(--font-body);font-size:var(--sticky-tab-font);font-weight:500;transition:color .12s ease,border-color .12s ease}.sticky-tab-strip__tab:hover{color:var(--ink)}.sticky-tab-strip__tab--active{color:var(--ink);border-bottom-color:var(--brand-quince);font-weight:600}.sticky-tab-strip__count{display:inline-flex;align-items:center;justify-content:center;min-width:0;height:auto;padding:1px 7px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:var(--sticky-tab-count-font);font-weight:400;line-height:1.4;color:var(--ink-3);background:var(--paper-2)}.sticky-tab-strip__tab--active .sticky-tab-strip__count{color:var(--ink-3);background:var(--paper-2)}.sticky-tab-strip__tab:focus-visible{outline:none;box-shadow:var(--shadow-focus)}@media (max-width: 600px){.sticky-tab-strip{top:calc(var(--appbar-logo-size-sm) + var(--s-4) + 7px);margin:var(--s-4) 0}}@media (max-width: 480px){.sticky-tab-strip__count{padding:0 5px}}.profile-page{display:flex;flex-direction:column;width:100%;max-width:var(--content-max-width-medium);margin:0 auto;box-sizing:border-box}.profile-page__header{margin-bottom:var(--s-5)}.profile-page__title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);line-height:1.05;letter-spacing:-.01em;color:var(--ink)}.profile-page__tabs{margin-top:0;margin-bottom:var(--s-5)}.profile-page__panel{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);overflow:hidden}.profile-page__panel-actions{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--s-2);flex-shrink:0}.profile-page__form{display:flex;flex-direction:column;gap:var(--s-4);max-width:36rem}.profile-page__field{display:flex;flex-direction:column;gap:var(--s-1)}.profile-page__label{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.profile-page__hint{margin:0;font-family:var(--font-body);font-size:var(--text-small);line-height:1.4;color:var(--ink-3)}.profile-page__input{font-family:var(--font-body);font-size:var(--filter-pill-trigger-font);padding:var(--filter-pill-trigger-py) var(--filter-pill-trigger-px);border:1px solid var(--hairline-strong);border-radius:var(--r-2);color:var(--ink);background:var(--surface);line-height:1.35;transition:border-color .12s ease,box-shadow .12s ease}.profile-page__input:focus{outline:none;border-color:var(--brand-bark);box-shadow:var(--shadow-focus)}.profile-page__message{font-family:var(--font-body);font-size:var(--text-small);padding:var(--s-2) var(--s-3);border-radius:var(--r-2);line-height:1.4}.profile-page__message--success{color:var(--brand-forest-deep);background:var(--forest-50);border:1px solid var(--forest-100)}.profile-page__message--error{color:var(--danger);background:var(--danger-bg);border:1px solid var(--danger-border)}.profile-page__placeholder{max-width:42ch}.profile-page__placeholder-text{margin:0;font-family:var(--font-body);font-size:var(--text-body);line-height:1.5;color:var(--ink-3)}.profile-page__activity{margin-top:var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--hairline)}.profile-page__activity-title{margin:0 0 var(--s-2);font-family:var(--font-display);font-size:var(--text-body);font-weight:600;color:var(--ink-1)}.profile-page__activity-empty{margin:var(--s-3) 0 0;font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3)}.profile-page__activity-list{margin-top:var(--s-3);border:1px solid var(--hairline);border-radius:var(--r-2);background:var(--paper);overflow:hidden}@media (max-width: 600px){.profile-page__panel .tab-panel-card__head{flex-direction:column;align-items:stretch}.profile-page__panel-actions{justify-content:stretch}.profile-page__panel-actions .btn{width:100%;justify-content:center}}.date-field{margin-bottom:1.5rem}.date-field:last-child{margin-bottom:0}.date-field__label{display:block;margin-bottom:.35rem;font-weight:600;font-family:var(--font-body);font-size:var(--text-body);color:var(--brand-quince)}.date-field__hint{display:block;margin-top:.25rem;font-size:var(--text-body);color:var(--ink-2);font-family:var(--font-body)}.date-field__error-message{display:block;margin-top:.25rem;font-size:var(--text-body);color:var(--danger);font-family:var(--font-body)}.date-field__date-with-clear{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.15rem;border:1px solid var(--hairline);border-radius:4px;background-color:var(--surface)}.date-field__clear-button{padding:.15rem .35rem;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2);background:none;border:1px solid var(--hairline);border-radius:4px;cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.date-field__clear-button:hover:not(:disabled){color:var(--ink);background-color:var(--paper-2);border-color:var(--hairline-strong)}.date-field__clear-button:disabled{cursor:not-allowed;opacity:.6}.date-field__date-parts{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;padding:0;position:relative}.date-field__date-parts .date-field__input{width:auto;min-width:0;padding:.15rem .25rem;border:1px solid var(--hairline);border-radius:4px;font-size:var(--text-body);font-family:var(--font-body);color:var(--ink);background-color:var(--surface);transition:border-color .2s ease;line-height:1.3}.date-field__date-parts .date-field__input:focus{outline:none;border-color:var(--brand-quince)}.date-field__date-parts .date-field__input:disabled{background-color:var(--paper-2);cursor:not-allowed;opacity:.6}.date-field__date-parts.date-field__input--error .date-field__input{border-color:var(--danger)}.date-field__date-parts .date-field__date-part--month,.date-field__date-parts .date-field__date-part--day{width:2.2rem}.date-field__date-parts .date-field__date-part--year{width:3rem}.date-field__date-parts .date-field__date-part--hidden{position:absolute;width:0;height:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;pointer-events:none}.profile-photo-upload{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}.profile-photo-upload__image-area{position:relative;width:200px;height:200px;min-height:200px;flex-shrink:0;overflow:hidden;border-radius:8px}.profile-photo-upload__placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:var(--paper-2);border:2px dashed var(--hairline);border-radius:8px;gap:.5rem}.profile-photo-upload__placeholder-icon{font-size:var(--text-display);opacity:.5}.profile-photo-upload__placeholder-text{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.profile-photo-upload__placeholder--initials{background-color:var(--quince-100);border:1px solid var(--quince-100);border-radius:var(--r-3, 8px)}.profile-photo-upload__initials{font-family:var(--font-editorial);font-weight:500;font-size:var(--size-profile-hero-initials);letter-spacing:-.01em;color:var(--brand-bark);line-height:1}.profile-photo-upload__placeholder--status .profile-photo-upload__placeholder-text{color:var(--ink-2)}.profile-photo-upload__photo-wrap{position:absolute;top:0;right:0;bottom:0;left:0}.profile-photo-upload__image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:8px;border:1px solid var(--hairline)}.profile-photo-upload__actions{position:absolute;bottom:var(--s-2);left:50%;z-index:2;display:flex;gap:4px;transform:translate(-50%);padding:4px;border-radius:var(--r-2);background:var(--surface);border:1px solid var(--hairline);box-shadow:var(--shadow-1);opacity:0;transition:opacity .12s ease}.profile-photo-upload--profile .profile-photo-upload__image-area:hover .profile-photo-upload__actions,.profile-photo-upload--profile .profile-photo-upload__image-area:focus-within .profile-photo-upload__actions{opacity:1}.profile-photo-upload--edit .profile-photo-upload__actions{opacity:1}.profile-photo-upload__actions .profile-entry-icon-btn{background:transparent}.profile-photo-upload__actions .profile-entry-icon-btn:hover:not(:disabled){background:var(--paper-2)}.profile-photo-upload__error{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--danger)}.profile-photo-upload__success{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--brand-forest)}.person-edit-form{width:100%;padding:2rem;background-color:var(--surface);border:1px solid var(--hairline);border-radius:8px;max-width:var(--content-max-width);margin:0 auto;box-sizing:border-box}.person-edit-form__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:1rem}.person-edit-form__title{margin:0;font-family:var(--font-body);font-size:var(--text-title);font-weight:600;color:var(--brand-quince)}.person-edit-form__subtitle{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.person-edit-form__header-actions{display:flex;gap:1rem;align-items:center}.person-edit-form__cancel-button{padding:.5rem 1rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--brand-quince);background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;cursor:pointer;transition:all .2s ease}.person-edit-form__cancel-button:hover:not(:disabled){background-color:var(--paper-2);border-color:var(--hairline-strong)}.person-edit-form__cancel-button:disabled{cursor:not-allowed;opacity:.6}.person-edit-form__submit-button{padding:.5rem 1rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--surface);background-color:var(--brand-forest);border:none;border-radius:4px;cursor:pointer;transition:opacity .2s ease}.person-edit-form__submit-button:hover:not(:disabled){opacity:.9}.person-edit-form__submit-button:disabled{cursor:not-allowed;opacity:.6}.person-edit-form__error{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;background-color:var(--danger-bg);border:1px solid var(--danger);border-radius:4px;margin-bottom:1rem;color:var(--danger);font-family:var(--font-body);font-size:var(--text-body)}.person-edit-form__error-dismiss{background:none;border:none;font-size:var(--nav-icon-font-size);line-height:1;cursor:pointer;padding:.25rem;opacity:.8;flex-shrink:0}.person-edit-form__error-dismiss:hover{opacity:1}.person-edit-form__photo-section,.person-edit-form__section{width:100%;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--hairline);box-sizing:border-box}.person-edit-form__section:last-of-type{border-bottom:none;margin-bottom:0}.person-edit-form__section-title{margin:0 0 1.5rem;font-family:var(--font-body);font-size:var(--text-subhead);font-weight:600;color:var(--brand-quince)}.person-edit-form__field{margin-bottom:1.5rem}.person-edit-form__field:last-child{margin-bottom:0}.person-edit-form__field--full{grid-column:1 / -1}.person-edit-form__checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:600;margin-bottom:0;line-height:1.25rem}.person-edit-form__checkbox{width:1.25rem;height:1.25rem;margin:0;flex-shrink:0;accent-color:var(--brand-quince);cursor:pointer;vertical-align:middle}.person-edit-form__checkbox:disabled{cursor:not-allowed;opacity:.6}.person-edit-form__field-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;width:100%;box-sizing:border-box}.person-edit-form__field-group:last-child{margin-bottom:0}.person-edit-form__field-group .person-edit-form__field{margin-bottom:0}.person-edit-form__label{display:block;margin-bottom:.5rem;font-weight:600;font-family:var(--font-body);font-size:var(--text-body);color:var(--brand-quince)}.person-edit-form__label.person-edit-form__checkbox-label{display:flex}.person-edit-form__input,.person-edit-form__select{width:100%;padding:.4rem .75rem;border:1px solid var(--hairline);border-radius:4px;font-size:var(--text-body);font-family:var(--font-body);color:var(--ink);background-color:var(--surface);transition:border-color .2s ease;line-height:1.3}.person-edit-form__input::placeholder{color:var(--ink-4);opacity:1}.person-edit-form__input::-webkit-input-placeholder{color:var(--ink-4)}.person-edit-form__input::-moz-placeholder{color:var(--ink-4);opacity:1}.person-edit-form__input:-ms-input-placeholder{color:var(--ink-4)}.person-edit-form__input:focus,.person-edit-form__select:focus{outline:none;border-color:var(--brand-quince)}.person-edit-form__input:disabled,.person-edit-form__select:disabled{background-color:var(--paper-2);cursor:not-allowed;opacity:.6}.person-edit-form__input--error{border-color:var(--danger)}.person-edit-form__error-message{display:block;margin-top:.25rem;font-size:var(--text-body);color:var(--danger);font-family:var(--font-body)}.person-edit-form__hint{display:block;margin-top:.25rem;font-size:var(--text-body);color:var(--ink-2);font-family:var(--font-body)}.person-edit-form__actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:2rem;margin-top:2rem}.person-edit-form__button{padding:.75rem 1.5rem;border-radius:4px;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;cursor:pointer;transition:all .2s ease}.person-edit-form__button:disabled{cursor:not-allowed;opacity:.6}.person-edit-form__button--cancel{border:1px solid var(--hairline);background-color:var(--surface);color:var(--brand-quince)}.person-edit-form__button--cancel:hover:not(:disabled){background-color:var(--paper-2);border-color:var(--hairline-strong)}.person-edit-form__button--submit{border:none;background-color:var(--brand-forest);color:var(--surface)}.person-edit-form__button--submit:hover:not(:disabled){opacity:.9}@media (max-width: 768px){.person-edit-form{padding:1.5rem}.person-edit-form__header{flex-direction:column;align-items:stretch;gap:1rem}.person-edit-form__title{font-size:var(--text-subhead)}.person-edit-form__subtitle{font-size:var(--text-small)}.person-edit-form__header-actions{gap:.5rem}.person-edit-form__cancel-button,.person-edit-form__submit-button{font-size:var(--text-body);padding:.4rem .75rem}.person-edit-form__field-group{grid-template-columns:1fr}.person-edit-form__section-title,.person-edit-form__label,.person-edit-form__input,.person-edit-form__select,.form-select-trigger,.form-select-item{font-size:var(--text-body)}.person-edit-form__actions{gap:.5rem}.person-edit-form__button{font-size:var(--text-body);padding:.4rem .75rem}}@media (max-width: 480px){.person-edit-form{padding:1rem}.person-edit-form__header{gap:.75rem}.person-edit-form__title{font-size:var(--text-subhead)}.person-edit-form__subtitle{font-size:var(--text-small)}.person-edit-form__header-actions{gap:.375rem}.person-edit-form__cancel-button,.person-edit-form__submit-button{font-size:var(--text-small);padding:.35rem .5rem}.person-edit-form__section-title{font-size:var(--text-body)}.person-edit-form__label,.person-edit-form__input,.person-edit-form__select,.form-select-trigger,.form-select-item{font-size:var(--text-small)}.person-edit-form__actions{gap:.375rem}.person-edit-form__button{font-size:var(--text-small);padding:.35rem .5rem}.person-edit-form__section{margin-bottom:1.5rem;padding-bottom:1.5rem}.person-edit-form__field{margin-bottom:1rem}.person-edit-form__hint{font-size:var(--text-small)}}.citation-links-field{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--hairline)}.citation-links-field__label{font-family:var(--font-body);font-size:var(--text-body);font-weight:600;color:var(--ink)}.citation-links-field__hint,.citation-links-field__loading{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.citation-links-field__error{font-family:var(--font-body);font-size:var(--text-body);color:var(--danger)}.citation-links-field__list{margin:0;padding:0;list-style:none}.citation-links-field__item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem 0;font-family:var(--font-body);font-size:var(--text-body);border-bottom:1px solid var(--paper-2)}.citation-links-field__item-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.citation-links-field__item:last-child{border-bottom:none}.citation-links-field__item-label{color:var(--ink);min-width:0}.citation-links-field__remove{flex-shrink:0;padding:.25rem .5rem;font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2);background:transparent;border:1px solid var(--hairline);border-radius:4px;cursor:pointer}.citation-links-field__remove:hover:not(:disabled){background:var(--paper-2);color:var(--ink)}.citation-links-field__view-image{padding:.2rem .5rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--brand-quince);background:transparent;border:1px solid var(--hairline);border-radius:4px;cursor:pointer}.citation-links-field__view-image:hover:not(:disabled){color:var(--brand-quince-deep);background:var(--quince-50);text-decoration:none}.citation-links-field__view-image:disabled{opacity:.6;cursor:not-allowed}.citation-links-field__remove:disabled{opacity:.6;cursor:not-allowed}.citation-links-field__add{display:flex;flex-direction:column;gap:.5rem;margin-top:.25rem}.citation-links-field__add-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.citation-links-field__create-form{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:var(--paper-2);border-radius:6px;border:1px solid var(--hairline)}.citation-links-field__create-row{display:flex;flex-direction:column;gap:.2rem}.citation-links-field__create-label{font-family:var(--font-body);font-size:var(--text-small);font-weight:500;color:var(--ink-2)}.citation-links-field__create-input{padding:.4rem .75rem;font-family:var(--font-body);font-size:var(--text-body);border:1px solid var(--hairline);border-radius:4px}.citation-links-field__create-select{min-width:120px}.citation-links-field__link-form{display:flex;align-items:center;gap:.5rem}.citation-links-field .form-select-trigger{min-width:180px}.citation-links-field__add-button{padding:.4rem .75rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--surface);background-color:var(--brand-forest);border:none;border-radius:4px;cursor:pointer}.citation-links-field__add-button:hover:not(:disabled){opacity:.9}.citation-links-field__add-button:disabled{opacity:.6;cursor:not-allowed}.record-info-popover{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.record-info-popover__trigger,.record-info-popover__trigger-icon{display:inline-flex;align-items:center;justify-content:center}.record-info-popover__trigger{background:none;border:none;padding:0;margin:0 0 0 .25rem;cursor:pointer;font-size:var(--text-body);color:var(--ink-2);opacity:.8;transition:opacity .2s ease}.record-info-popover__trigger:hover{opacity:1;color:var(--brand-quince)}.record-info-popover__trigger-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--ink-3);line-height:1}.record-info-popover__trigger:hover .record-info-popover__trigger-icon{color:var(--brand-bark)}.record-info-popover__panel{padding:.75rem 1rem;background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;box-shadow:var(--shadow-2);z-index:10;min-width:200px;max-width:320px;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink)}.record-info-popover__section{margin-bottom:.5rem}.record-info-popover__section:last-child{margin-bottom:0}.record-info-popover__row{display:flex;flex-wrap:wrap;gap:.25rem .5rem;margin-bottom:.25rem}.record-info-popover__row:last-child{margin-bottom:0}.record-info-popover__row strong{color:var(--ink);font-weight:600}.record-info-popover__details{padding-top:.5rem;border-top:1px solid var(--hairline)}.record-info-popover__detail-block{margin-bottom:.5rem}.record-info-popover__detail-block:last-child{margin-bottom:0}.record-info-popover__detail-block strong{color:var(--ink);font-weight:600;display:block;margin-bottom:.25rem}.record-info-popover__detail-text{color:var(--ink);line-height:1.5;font-size:var(--text-body)}.record-info-popover__media{padding-top:.5rem;border-top:1px solid var(--hairline);display:flex;flex-direction:column;gap:.5rem}.record-info-popover__media-label{font-family:var(--font-body);font-size:var(--text-body);font-weight:600;color:var(--ink)}.record-info-popover__media-actions{display:flex;flex-wrap:wrap;gap:.5rem}.record-info-popover__view-image{padding:.375rem .75rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--surface);background-color:var(--brand-forest);border:none;border-radius:4px;cursor:pointer;transition:opacity .2s ease}.record-info-popover__view-image:hover:not(:disabled){opacity:.9}.record-info-popover__view-image:disabled{opacity:.7;cursor:wait}.record-info-popover__loading{padding-top:.5rem;border-top:1px solid var(--hairline);color:var(--ink-2);font-size:var(--text-small)}.person-facts{display:flex;flex-direction:column;gap:0;margin-top:0;padding-top:0}.person-facts__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:0;padding-bottom:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.person-facts__header:hover{color:var(--brand-quince)}.person-facts__header-button{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.person-facts__title{margin:0;font-family:var(--font-body);font-size:var(--text-subhead);font-weight:600;color:var(--brand-quince)}.person-facts__add-button{padding:.5rem 1rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--surface);background-color:var(--brand-forest);border:none;border-radius:4px;cursor:pointer;transition:opacity .2s ease}.person-facts__add-button:hover:not(:disabled){opacity:.9}.person-facts__add-button:disabled{opacity:.5;cursor:not-allowed}.person-facts__error{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;margin-bottom:.75rem;background-color:var(--danger-bg);border:1px solid var(--danger);border-radius:4px;color:var(--danger);font-family:var(--font-body);font-size:var(--text-body)}.person-facts__error-dismiss{background:none;border:none;font-size:var(--nav-icon-font-size);line-height:1;cursor:pointer;padding:.25rem;opacity:.8;flex-shrink:0}.person-facts__error-dismiss:hover{opacity:1}.person-facts__loading{padding:2rem;text-align:center;color:var(--ink-2);font-family:var(--font-body)}.person-facts__empty{padding:.75rem 0 .5rem;text-align:left;color:var(--ink-2);font-family:var(--font-body);font-style:italic;font-size:var(--text-body)}.person-facts__form{padding:1rem 0 1.25rem;margin-top:.25rem;background-color:transparent;border:none;border-bottom:1px solid var(--hairline);border-radius:0;display:flex;flex-direction:column;gap:.75rem}.person-facts__form-title{margin:0;font-family:var(--font-body);font-size:var(--text-subhead);font-weight:600;color:var(--brand-quince)}.person-facts__form-field{display:flex;flex-direction:column;gap:.5rem}.person-facts__form-row{display:flex;flex-direction:column;gap:.75rem}@media (min-width: 640px){.person-facts__form-row--type-detail{flex-direction:row;align-items:flex-end;gap:1rem}.person-facts__form-row--type-detail .person-facts__form-field--type{flex:0 0 180px;min-width:180px}.person-facts__form-row--type-detail .person-facts__form-field--detail{flex:1;min-width:0}}.person-facts__form-label{font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--ink)}.person-facts__required{color:var(--danger)}.person-facts__form-type-description{margin:0 0 .25rem;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2);line-height:1.4}.person-facts__form-select,.person-facts__form-input{padding:.4rem .75rem;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;transition:border-color .2s ease;line-height:1.3}.person-facts__form-textarea{padding:.5rem;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;transition:border-color .2s ease;resize:vertical;min-height:60px}.person-facts__form-select:focus,.person-facts__form-input:focus,.person-facts__form-textarea:focus{outline:none;border-color:var(--brand-quince)}.person-facts__form-select:disabled{background-color:var(--paper-2);cursor:not-allowed}.person-facts__form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:.5rem}.person-facts__cancel-button,.person-facts__save-button{padding:.5rem 1rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s ease}.person-facts__cancel-button{color:var(--ink);background-color:var(--surface);border:1px solid var(--hairline)}.person-facts__cancel-button:hover{background-color:var(--paper-2);border-color:var(--hairline-strong)}.person-facts__save-button{color:var(--surface);background-color:var(--brand-forest)}.person-facts__save-button:hover{opacity:.9}.person-facts__body{margin-top:.25rem}.person-facts__list{display:flex;flex-direction:column;gap:0}.person-facts__item{padding:.5rem 0 .75rem;background-color:transparent;border:none;border-bottom:1px solid var(--hairline);border-radius:0}.person-facts__item:last-child{border-bottom:none}.person-facts__item-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.person-facts__item-content{display:flex;align-items:baseline;flex:1;flex-wrap:wrap;min-width:0}.person-facts__item-type-wrapper{display:inline-flex;align-items:center;gap:.25rem}.person-facts__item-type{font-family:var(--font-body);font-size:var(--text-body);font-weight:700;color:var(--ink);white-space:nowrap}.person-facts__item-separator{color:var(--ink);flex-shrink:0}.person-facts__item-detail{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);word-wrap:break-word;overflow-wrap:break-word;min-width:0;vertical-align:baseline;line-height:1.5;padding-left:.5rem}.person-facts__item-actions{display:flex;gap:.5rem;flex-shrink:0}.person-facts__item-notes-wrapper{position:relative;display:inline-flex;align-items:baseline;margin-left:.5rem;flex-shrink:0;vertical-align:baseline}.person-facts__item-notes-icon{background:none;border:none;cursor:pointer;font-size:var(--text-body);padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s ease;vertical-align:baseline;line-height:1}.person-facts__item-notes-icon:hover{opacity:1}.person-facts__item-notes-tooltip{position:absolute;top:100%;right:0;margin-top:.5rem;padding:.75rem;background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;box-shadow:var(--shadow-2);z-index:10;min-width:200px;max-width:400px}.person-facts__item-notes-content{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);margin-bottom:.75rem}.person-facts__item-notes-content:last-child{margin-bottom:0}.person-facts__item-notes-content strong{color:var(--ink);font-weight:600;display:block;margin-bottom:.25rem}.person-facts__item-notes-text{color:var(--ink);line-height:1.5}.person-facts__item-source-content{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2);padding-top:.75rem;border-top:1px solid var(--hairline)}.person-facts__item-source-content strong{color:var(--ink);font-weight:600;display:block;margin-bottom:.25rem}.person-facts__item-source-text{color:var(--ink-2);line-height:1.5}.person-facts__edit-button,.person-facts__delete-button{padding:.375rem .75rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s ease}.person-facts__edit-button{color:var(--brand-quince);background-color:var(--surface);border:1px solid var(--hairline)}.person-facts__edit-button:hover:not(:disabled){color:var(--brand-quince-deep);background-color:var(--paper-2);border-color:var(--brand-quince)}.person-facts__delete-button{color:var(--danger);background-color:var(--surface);border:1px solid var(--danger)}.person-facts__delete-button:hover:not(:disabled){background-color:var(--danger-bg);border-color:var(--danger)}.person-facts__edit-button:disabled,.person-facts__delete-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.person-facts__title{font-size:var(--text-subhead)}.person-facts__add-button{width:fit-content;max-width:100%;font-size:var(--text-body)}.person-facts__form-title,.person-facts__form-label,.person-facts__form-select,.person-facts__form-input,.person-facts__form-textarea,.person-facts__cancel-button,.person-facts__save-button,.person-facts__item-type,.person-facts__item-detail{font-size:var(--text-body)}.person-facts__edit-button,.person-facts__delete-button{font-size:var(--text-small);padding:.3rem .6rem}.person-facts__header{flex-direction:column;align-items:stretch}.person-facts__item-notes-content,.person-facts__item-source-content{font-size:var(--text-small)}.person-facts__item-notes-tooltip{right:auto;left:0}}@media (max-width: 480px){.person-facts__title{font-size:var(--text-body)}.person-facts__add-button{font-size:var(--text-small);padding:.4rem .75rem}.person-facts__form-title{font-size:var(--text-body)}.person-facts__form-label,.person-facts__form-select,.person-facts__form-input,.person-facts__form-textarea{font-size:var(--text-small)}.person-facts__cancel-button,.person-facts__save-button{font-size:var(--text-small);padding:.35rem .6rem}.person-facts__item-row{flex-wrap:wrap;align-items:baseline}.person-facts__item-content{flex:1;min-width:0}.person-facts__item-actions{flex-basis:100%;justify-content:flex-end;margin-top:.5rem}.person-facts__item-type,.person-facts__item-detail{font-size:var(--text-small)}.person-facts__edit-button,.person-facts__delete-button{font-size:var(--text-caption);padding:.25rem .5rem}.person-facts__item-notes-content,.person-facts__item-source-content{font-size:var(--text-caption)}}.person-life-events{display:flex;flex-direction:column;gap:0;margin-top:0;padding-top:0}.person-life-events__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:0;padding-bottom:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.person-life-events__header:hover{color:var(--brand-quince)}.person-life-events__header-button{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.person-life-events__title{margin:0;font-family:var(--font-body);font-size:var(--text-subhead);font-weight:600;color:var(--brand-quince)}.person-life-events__add-button{padding:.5rem 1rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--surface);background-color:var(--brand-forest);border:none;border-radius:4px;cursor:pointer;transition:opacity .2s ease;flex-shrink:0}.person-life-events__add-button:hover:not(:disabled){opacity:.9}.person-life-events__add-button:disabled{opacity:.5;cursor:not-allowed}.person-life-events__body{margin-top:.25rem}.person-life-events__form{padding:1rem 0 1.25rem;margin-top:.25rem;background-color:transparent;border:none;border-bottom:1px solid var(--hairline);border-radius:0;display:flex;flex-direction:column;gap:.75rem}.person-life-events__form-title{margin:0;font-family:var(--font-body);font-size:var(--text-subhead);font-weight:600;color:var(--brand-quince)}.person-life-events__form-field{display:flex;flex-direction:column;gap:.5rem}.person-life-events__form-row{display:flex;flex-direction:column;gap:.75rem}@media (min-width: 640px){.person-life-events__form-row--event-precision-date{flex-direction:row;flex-wrap:nowrap;align-items:flex-end;gap:1rem}.person-life-events__form-row--event-precision-date .person-life-events__form-field--event-type{flex:1 1 auto;min-width:0}.person-life-events__form-row--event-precision-date .person-life-events__form-field--event-type .person-life-events__form-select{min-width:0;width:100%}.person-life-events__form-row--event-precision-date .person-life-events__form-field--date{flex:0 0 auto;min-width:220px}.person-life-events__form-row--event-precision-date .date-field__date-with-clear{flex-wrap:nowrap}}.person-life-events__form-label{font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--ink)}.person-life-events__form-type-description{margin:0 0 .25rem;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2);line-height:1.4}.person-life-events__required{color:var(--danger)}.person-life-events__form-select,.person-life-events__form-input{padding:.4rem .75rem;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;transition:border-color .2s ease;line-height:1.3}.person-life-events__form-select:focus,.person-life-events__form-input:focus{outline:none;border-color:var(--brand-quince)}.person-life-events__participants{margin-top:.25rem}.person-life-events__participants-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.5rem}.person-life-events__participants-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.4rem .5rem;background-color:var(--paper-2);border-radius:4px}.person-life-events__participants-item--readonly{opacity:.9}.person-life-events__participants-name{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink)}.person-life-events__participants-remove{padding:.25rem .5rem;font-family:var(--font-body);font-size:var(--text-body);color:var(--danger);background:none;border:1px solid var(--danger);border-radius:4px;cursor:pointer;flex-shrink:0}.person-life-events__participants-remove:hover:not(:disabled){opacity:.9}.person-life-events__participants-remove:disabled{opacity:.5;cursor:not-allowed;color:var(--ink-2);border-color:var(--ink-2)}.person-life-events__participants-add{margin-top:.5rem}.person-life-events__form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:.5rem}.person-life-events__cancel-button,.person-life-events__save-button{padding:.5rem 1rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s ease}.person-life-events__cancel-button{color:var(--ink);background-color:var(--surface);border:1px solid var(--hairline)}.person-life-events__cancel-button:hover{background-color:var(--paper-2);border-color:var(--hairline-strong)}.person-life-events__save-button{color:var(--surface);background-color:var(--brand-forest)}.person-life-events__save-button:hover{opacity:.9}.person-life-events__loading{padding:.75rem 0 .5rem;color:var(--ink-2);font-family:var(--font-body);font-size:var(--text-body)}.person-life-events__error{padding:.5rem 0 .75rem;margin-bottom:.25rem;background-color:transparent;border:none;color:var(--danger);font-family:var(--font-body);font-size:var(--text-body)}.person-life-events__empty{padding:.75rem 0 .5rem;text-align:left;color:var(--ink-2);font-family:var(--font-body);font-style:italic;font-size:var(--text-body)}.person-life-events__list{display:flex;flex-direction:column;gap:0}.person-life-events__item{padding:.5rem 0 .75rem;background-color:transparent;border:none;border-bottom:1px solid var(--hairline);border-radius:0}.person-life-events__item:last-child{border-bottom:none}.person-life-events__item-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.person-life-events__item-main{display:flex;align-items:baseline;gap:.5rem;flex:1;flex-wrap:wrap;min-width:0}.person-life-events__item-type{font-family:var(--font-body);font-size:var(--text-body);font-weight:700;color:var(--ink);white-space:nowrap}.person-life-events__item-separator{font-family:var(--font-body);font-size:var(--text-body);font-style:italic;color:var(--ink);flex-shrink:0}.person-life-events__item-date-inline{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);white-space:nowrap}.person-life-events__item-place-inline{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink)}.person-life-events__item-detail{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);word-wrap:break-word;overflow-wrap:break-word;min-width:0}.person-life-events__item-info-wrapper{position:relative;display:inline-flex;align-items:baseline;margin-left:.25rem;flex-shrink:0;vertical-align:baseline}.person-life-events__item-info-icon{background:none;border:none;cursor:pointer;font-size:var(--text-body);padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s ease;vertical-align:baseline;line-height:1}.person-life-events__item-info-icon:hover{opacity:1}.person-life-events__item-info-tooltip{position:absolute;top:100%;right:0;margin-top:.5rem;padding:.75rem;background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;box-shadow:var(--shadow-2);z-index:10;min-width:200px;max-width:400px}.person-life-events__item-info-content{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);margin-bottom:.75rem}.person-life-events__item-info-content:last-child{margin-bottom:0}.person-life-events__item-info-content strong{color:var(--ink);font-weight:600;display:block;margin-bottom:.25rem}.person-life-events__item-info-text{color:var(--ink);line-height:1.5}.person-life-events__item-info-source{padding-top:.75rem;border-top:1px solid var(--hairline)}.person-life-events__item-actions{display:flex;gap:.5rem;flex-shrink:0}.person-life-events__edit-button,.person-life-events__delete-button{padding:.375rem .75rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:opacity .2s ease}.person-life-events__edit-button{color:var(--brand-quince);background-color:var(--surface);border:1px solid var(--hairline)}.person-life-events__edit-button:hover:not(:disabled){color:var(--brand-quince-deep);background-color:var(--paper-2);border-color:var(--brand-quince)}.person-life-events__delete-button{color:var(--danger);background-color:var(--surface);border:1px solid var(--danger)}.person-life-events__delete-button:hover:not(:disabled){background-color:var(--danger-bg);border-color:var(--danger)}.person-life-events__edit-button:disabled,.person-life-events__delete-button:disabled{opacity:.5;cursor:not-allowed}.person-life-events__item-meta{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin-top:.25rem;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.person-life-events__item-date,.person-life-events__item-place{display:flex;gap:.25rem;flex-shrink:0}.person-life-events__item-meta-label{font-weight:600;color:var(--ink)}@media (max-width: 768px){.person-life-events__title{font-size:var(--text-subhead)}.person-life-events__add-button{width:fit-content;max-width:100%;font-size:var(--text-body)}.person-life-events__form-title,.person-life-events__form-label,.person-life-events__form-select,.person-life-events__form-input,.person-life-events__cancel-button,.person-life-events__save-button,.person-life-events__item-type,.person-life-events__item-separator,.person-life-events__item-date-inline,.person-life-events__item-place-inline{font-size:var(--text-body)}.person-life-events__edit-button,.person-life-events__delete-button{font-size:var(--text-small);padding:.3rem .6rem}.person-life-events__header{flex-direction:column;align-items:stretch}.person-life-events__loading,.person-life-events__empty{font-size:var(--text-body)}.person-life-events__item-info-content,.person-life-events__item-info-source{font-size:var(--text-small)}.person-life-events__item-info-tooltip{right:auto;left:0}}@media (max-width: 480px){.person-life-events__title{font-size:var(--text-body)}.person-life-events__add-button{font-size:var(--text-small);padding:.4rem .75rem}.person-life-events__form-title{font-size:var(--text-body)}.person-life-events__form-label,.person-life-events__form-select,.person-life-events__form-input,.person-life-events__participants-name,.person-life-events__participants-remove{font-size:var(--text-small)}.person-life-events__cancel-button,.person-life-events__save-button{font-size:var(--text-small);padding:.35rem .6rem}.person-life-events__item-row{flex-wrap:wrap;align-items:baseline}.person-life-events__item-main{flex:1;min-width:0;gap:.25rem}.person-life-events__item-actions{flex-basis:100%;justify-content:flex-end;margin-top:.5rem}.person-life-events__item-type,.person-life-events__item-separator,.person-life-events__item-date-inline,.person-life-events__item-place-inline{font-size:var(--text-small)}.person-life-events__edit-button,.person-life-events__delete-button{font-size:var(--text-caption);padding:.25rem .5rem}.person-life-events__loading,.person-life-events__empty{font-size:var(--text-small)}.person-life-events__item-info-content,.person-life-events__item-info-source{font-size:var(--text-caption)}}.person-relationships{display:flex;flex-direction:column;gap:0;margin-top:0;padding-top:0}.person-relationships__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:0;padding-bottom:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.person-relationships__header:hover{color:var(--brand-quince)}.person-relationships__header-button{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.person-relationships__title{margin:0;font-family:var(--font-body);font-size:var(--text-subhead);font-weight:600;color:var(--brand-quince)}.person-relationships__header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;flex-shrink:0;cursor:default}.person-relationships__add-button{padding:.5rem 1rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--surface);background-color:var(--brand-forest);border:none;border-radius:4px;cursor:pointer;transition:opacity .2s ease}.person-relationships__add-button:hover:not(:disabled){opacity:.9}.person-relationships__content{display:flex;flex-direction:column;gap:1.5rem}.person-relationships__error{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;font-family:var(--font-body);font-size:var(--text-body);color:var(--danger);background-color:var(--danger-bg);border:1px solid var(--danger);border-radius:4px}.person-relationships__error-dismiss{background:none;border:none;font-size:var(--nav-icon-font-size);line-height:1;cursor:pointer;padding:.25rem;opacity:.8;flex-shrink:0}.person-relationships__error-dismiss:hover{opacity:1}.person-relationships__section{display:flex;flex-direction:column;gap:.75rem}.person-relationships__section-title{margin:0;font-family:var(--font-body);font-size:var(--text-body);font-weight:600;color:var(--ink)}.person-relationships__row{display:flex;flex-wrap:nowrap;align-items:center;gap:1rem}.person-relationships__type-label{flex-shrink:0;width:130px;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.person-relationships__relationship-type-static{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:flex-start;flex-shrink:0;min-width:130px;width:130px;padding:.375rem .75rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;line-height:1.25;text-align:left;color:var(--brand-quince);background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px}.person-relationships__relationship-type-select{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:space-between;gap:.5rem;flex-shrink:0;min-width:130px;width:auto;max-width:100%;padding:.375rem 2rem .375rem .75rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;line-height:1.25;text-align:left;color:var(--brand-quince);background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease,opacity .2s ease}.person-relationships__relationship-type-select:hover:not(:disabled){color:var(--brand-quince-deep);background-color:var(--paper-2);border-color:var(--brand-quince)}.person-relationships__relationship-type-select:focus{outline:none;border-color:var(--brand-quince)}.person-relationships__relationship-type-select:disabled{opacity:.5;cursor:not-allowed}.person-relationships__name{flex:1;min-width:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);text-align:left}.person-relationships__remove-button{flex-shrink:0;padding:.25rem .5rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--danger);background-color:var(--surface);border:1px solid var(--danger);border-radius:4px;cursor:pointer;transition:opacity .2s ease}.person-relationships__remove-button:hover:not(:disabled){background-color:var(--danger-bg);border-color:var(--danger)}.person-relationships__remove-button:disabled{opacity:.5;cursor:not-allowed}.person-relationships__empty-hint{margin:0;font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.person-relationships__section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.person-relationships__add-menu-content{min-width:11rem;padding:.25rem 0;background-color:var(--surface);border:1px solid var(--hairline);border-radius:4px;box-shadow:var(--shadow-2);z-index:50}.person-relationships__add-menu-item{display:block;width:100%;padding:.4rem .75rem;font-family:var(--font-body);font-size:var(--text-body);text-align:left;color:var(--ink);background:none;border:none;cursor:pointer;outline:none}.person-relationships__add-menu-item:hover,.person-relationships__add-menu-item[data-highlighted]{background-color:var(--paper-2)}@media (max-width: 768px){.person-relationships__title{font-size:var(--text-subhead)}.person-relationships__section-title{font-size:var(--text-body)}.person-relationships__type-label{width:110px;min-width:110px;font-size:var(--text-small)}.person-relationships__relationship-type-static{width:110px;min-width:110px;padding:.35rem .6rem;font-size:var(--text-small)}.person-relationships__relationship-type-select{min-width:110px;padding:.35rem 1.75rem .35rem .6rem;font-size:var(--text-small)}.form-select-trigger--compact{min-width:110px;padding:.2rem .4rem;font-size:var(--text-small)}.form-select-item{padding:.2rem .4rem;font-size:var(--text-small)}.person-relationships__name{font-size:var(--text-body)}.person-relationships__remove-button{font-size:var(--text-small);padding:.2rem .4rem}.person-relationships__empty-hint{font-size:var(--text-small)}.person-relationships__error{font-size:var(--text-body)}.person-relationships__header{flex-direction:column;align-items:stretch}.person-relationships__row{gap:.75rem;flex-wrap:wrap}}@media (max-width: 480px){.person-relationships__title{font-size:var(--text-body)}.person-relationships__add-button{font-size:var(--text-small);padding:.4rem .75rem}.person-relationships__section-title{font-size:var(--text-small)}.person-relationships__type-label{width:95px;min-width:95px;font-size:var(--text-caption)}.person-relationships__relationship-type-static{width:95px;min-width:95px;padding:.3rem .5rem;font-size:var(--text-caption)}.person-relationships__relationship-type-select{min-width:95px;padding:.3rem 1.5rem .3rem .5rem;font-size:var(--text-caption)}.form-select-trigger--compact{min-width:95px;padding:.15rem .35rem;font-size:var(--text-caption)}.form-select-item{padding:.15rem .35rem;font-size:var(--text-caption)}.person-relationships__name{font-size:var(--text-small)}.person-relationships__remove-button{font-size:var(--text-caption);padding:.15rem .35rem}.person-relationships__empty-hint{font-size:var(--text-caption)}.person-relationships__content{gap:1rem}.person-relationships__section,.person-relationships__row{gap:.5rem}}.person-stories__loading{padding:var(--s-6);color:var(--ink-3)}.person-stories__error{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-4);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--r-2);color:var(--danger);font-size:var(--text-small)}.person-stories__error-dismiss{border:0;background:transparent;color:inherit;cursor:pointer;font-size:var(--text-subhead);line-height:1}.person-stories__readonly-banner{padding:var(--s-3) var(--s-4);margin-bottom:var(--s-4);background:var(--paper-2);border:1px solid var(--hairline);border-radius:var(--r-2);font-size:var(--text-small);color:var(--ink-2)}.person-stories__add-trigger{display:flex;align-items:center;gap:var(--s-3);width:100%;text-align:left;padding:var(--s-4) var(--s-5);margin-bottom:var(--s-5);background:var(--paper);border:1.5px dashed var(--hairline-strong);border-radius:var(--r-2);cursor:pointer;font:inherit;color:inherit;transition:all .15s}.person-stories__add-trigger:hover{background:var(--quince-50);border-color:var(--brand-quince);border-style:solid}.person-stories__add-trigger-icon{width:36px;height:36px;background:var(--surface);border:1px solid var(--hairline);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--brand-bark);flex-shrink:0}.person-stories__add-trigger:hover .person-stories__add-trigger-icon{background:var(--brand-quince);color:#fff;border-color:var(--brand-quince)}.person-stories__add-trigger-primary{display:block;font-family:var(--font-editorial);font-size:var(--text-lede);color:var(--ink);line-height:1.2}.person-stories__add-trigger-secondary{display:block;font-size:var(--text-caption);color:var(--ink-3);margin-top:2px}.person-stories__empty{padding:var(--s-10) var(--s-6);text-align:center;background:var(--paper);border:1.5px dashed var(--hairline-strong);border-radius:var(--r-3)}.person-stories__empty-title{font-family:var(--font-editorial);font-size:var(--text-section);margin:0 0 8px}.person-stories__empty-body{color:var(--ink-3);margin:0 0 var(--s-5);max-width:48ch;margin-inline:auto}.person-stories__list{display:flex;flex-direction:column;gap:var(--s-4)}.v01-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--modal-overlay);z-index:1000}.v01-modal-overlay[data-state=closed]{display:none}.v01-modal-overlay--centered{display:flex;justify-content:center;align-items:center;padding:var(--s-4);overflow-y:auto}.v01-modal{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-3);color:var(--ink)}.v01-modal[data-state=closed]{display:none}.v01-modal--fixed{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1001;width:min(90vw,var(--content-max-width-medium));max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.v01-modal--panel{position:relative;z-index:1;margin:auto;width:min(100%,28rem);max-height:calc(100vh - var(--s-8));padding:var(--s-5);display:flex;flex-direction:column;overflow:hidden}.v01-modal--wide{width:min(90vw,var(--content-max-width-small))}.v01-modal__inner{display:flex;flex-direction:column;overflow:hidden;max-height:85vh}.v01-modal__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s-3);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--hairline);flex-shrink:0}.v01-modal__header--compact{padding:0 0 var(--s-3);margin-bottom:var(--s-2);border-bottom:none}.v01-modal__title{margin:0;font-family:var(--font-editorial);font-weight:500;font-size:var(--modal-title-font);line-height:1.15;color:var(--ink)}.v01-modal__desc{margin:0 0 var(--s-4);font-family:var(--font-body);font-size:var(--text-body);line-height:1.45;color:var(--ink-2)}.v01-modal__actions-row{display:flex;align-items:center;gap:var(--s-2);flex-shrink:0}.v01-modal__link{font-family:var(--font-body);font-size:var(--text-small);font-weight:500;color:var(--brand-bark);text-decoration:none}.v01-modal__link:hover{text-decoration:underline}.v01-modal__close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--modal-close-size);min-width:var(--modal-close-size);max-width:var(--modal-close-size);height:var(--modal-close-size);padding:0;font-size:var(--text-section);line-height:1;background:transparent;border:1px solid transparent;border-radius:50%;color:var(--ink-3);cursor:pointer;transition:background .12s ease,color .12s ease}.v01-modal__close:hover{background:var(--paper-2);color:var(--ink)}.v01-modal__body{padding:var(--s-5);overflow-y:auto}.v01-modal__body--flush{padding:0}.v01-modal__label{display:block;margin-bottom:var(--s-1);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.v01-modal__input{width:100%;box-sizing:border-box;font-family:var(--font-body);font-size:var(--text-body);padding:10px 12px;border:1px solid var(--hairline-strong);border-radius:var(--r-2);color:var(--ink);background:var(--surface);line-height:1.35}.v01-modal__input:focus{outline:none;border-color:var(--brand-bark);box-shadow:var(--shadow-focus)}.v01-modal__error{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);margin:var(--s-3) 0;padding:var(--s-2) var(--s-3);background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border);border-radius:var(--r-2);font-family:var(--font-body);font-size:var(--text-small)}.v01-modal__error-dismiss{background:none;border:none;font-size:var(--text-subhead);line-height:1;cursor:pointer;padding:0;color:inherit;opacity:.8}.v01-modal__error-dismiss:hover{opacity:1}.v01-modal__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--s-2);margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--hairline)}.v01-modal__footer--split{justify-content:space-between}.v01-modal__spinner{width:36px;height:36px;border:3px solid var(--paper-2);border-top-color:var(--brand-bark);border-radius:50%;animation:v01-modal-spin .8s linear infinite;margin:0 auto var(--s-3)}@keyframes v01-modal-spin{to{transform:rotate(360deg)}}@media (max-width: 600px){.v01-modal--panel{padding:var(--s-4)}.v01-modal__header{padding:var(--s-3) var(--s-4)}.v01-modal__body{padding:var(--s-4)}.v01-modal__footer .btn{width:100%;justify-content:center}}@media (max-width: 480px){.v01-modal--panel{padding:var(--s-3)}.v01-modal__header{padding:var(--s-2) var(--s-3);gap:var(--s-2)}.v01-modal__body{padding:var(--s-3)}.v01-modal__desc{font-size:var(--text-small)}}.role-explanation-modal-content{width:min(90vw,600px);max-height:80vh;overflow:auto;padding:var(--s-5)}.role-explanation-modal-header{display:flex;justify-content:space-between;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4)}.role-explanation-modal-body{margin-bottom:var(--s-4)}.role-explanation-modal-loading{text-align:center;padding:var(--s-6)}.role-explanation-modal-loading p{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink-2)}.role-explanation-modal-effective-role{display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4);padding:var(--s-3);background:var(--paper-2);border-radius:var(--r-2);border:1px solid var(--hairline)}.role-explanation-modal-effective-role-label{font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--ink)}.role-explanation-modal-role-badge{display:inline-block;padding:4px 10px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.role-explanation-modal-role-badge--owner{background:var(--brand-forest);color:var(--surface)}.role-explanation-modal-role-badge--admin{background:var(--brand-bark);color:var(--surface)}.role-explanation-modal-role-badge--editor{background:var(--bark-50);color:var(--brand-bark)}.role-explanation-modal-role-badge--contributor{background:var(--paper-2);color:var(--ink);border:1px solid var(--hairline-strong)}.role-explanation-modal-role-badge--viewer{background:var(--paper-2);color:var(--ink-2)}.role-explanation-modal-role-badge--denied{background:var(--warning-bg);color:var(--brand-bark-deep)}.role-explanation-modal-summary{margin-bottom:var(--s-4);padding:var(--s-3);background:var(--paper-2);border:1px solid var(--hairline);border-radius:var(--r-2);font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);line-height:1.45}.role-explanation-modal-summary-hint{margin-top:var(--s-2);font-size:var(--text-small);color:var(--ink-2)}.role-explanation-modal-docs-link{margin-bottom:var(--s-4)}.role-explanation-modal-docs-link-a{font-family:var(--font-body);font-size:var(--text-small);font-weight:500;color:var(--brand-bark);text-decoration:none}.role-explanation-modal-docs-link-a:hover{text-decoration:underline}.role-explanation-modal-section{margin-bottom:var(--s-4)}.role-explanation-modal-section-title{margin:0 0 var(--s-3);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-subhead);color:var(--ink)}.role-explanation-modal-sources{display:flex;flex-direction:column;gap:var(--s-3)}.role-explanation-modal-source-item{padding:var(--s-3);border:1px solid var(--hairline);border-radius:var(--r-2);background:var(--surface)}.role-explanation-modal-source-header{display:flex;justify-content:space-between;align-items:center;gap:var(--s-2);margin-bottom:var(--s-2)}.role-explanation-modal-source-type{font-family:var(--font-body);font-size:var(--text-body);font-weight:600;color:var(--ink)}.role-explanation-modal-source-description{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2);margin-bottom:var(--s-2)}.role-explanation-modal-source-details{display:flex;flex-direction:column;gap:var(--s-2);margin-top:var(--s-2);padding-top:var(--s-2);border-top:1px solid var(--hairline)}.role-explanation-modal-detail{display:flex;gap:var(--s-2);font-family:var(--font-body);font-size:var(--text-small)}.role-explanation-modal-detail-label{font-weight:600;color:var(--ink-3)}.role-explanation-modal-detail-value{color:var(--ink)}.role-explanation-modal-blocks{display:flex;flex-direction:column;gap:var(--s-2)}.role-explanation-modal-block-item{display:flex;gap:var(--s-3);padding:var(--s-3);background:var(--warning-bg);border:1px solid var(--danger-border);border-radius:var(--r-2)}.role-explanation-modal-block-icon{font-size:var(--text-subhead)}.role-explanation-modal-block-content{flex:1}.role-explanation-modal-block-source{font-family:var(--font-body);font-size:var(--text-body);font-weight:600;color:var(--brand-bark-deep);margin-bottom:var(--s-1)}.role-explanation-modal-block-reason{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2)}.role-explanation-modal-grants{display:flex;flex-direction:column;gap:var(--s-2)}.role-explanation-modal-grant-item{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3);border:1px solid var(--hairline);border-radius:var(--r-2);background:var(--paper-2)}.role-explanation-modal-grant-type{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);min-width:80px}.role-explanation-modal-grant-source{flex:1;font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2)}@media (max-width: 600px){.role-explanation-modal-content{padding:var(--s-4)}}.profile-more-menu{position:relative}.profile-more-menu__panel{position:absolute;top:calc(100% + 6px);right:0;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-2);box-shadow:var(--shadow-3);min-width:200px;padding:4px;z-index:20}.profile-more-menu__item{display:block;width:100%;text-align:left;background:transparent;border:0;padding:8px 12px;font:inherit;font-size:var(--text-small);color:var(--ink);border-radius:var(--r-1);cursor:pointer}.profile-more-menu__item:hover:not(:disabled){background:var(--paper-2)}.profile-more-menu__item--danger{color:var(--danger)}.profile-more-menu__item--danger:hover:not(:disabled){background:var(--danger-bg)}.profile-more-menu__item:disabled{opacity:.6;cursor:not-allowed}.profile-more-menu__divider{height:1px;background:var(--hairline);margin:4px}.add-pet-page{display:flex;flex-direction:column;width:100%;max-width:var(--content-max-width-medium);margin:0 auto;box-sizing:border-box}.add-pet-page--centered{max-width:var(--content-max-width-small)}.add-pet-page__header{margin-bottom:var(--s-5)}.add-pet-page__title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);line-height:1.05;letter-spacing:-.01em;color:var(--ink)}.add-pet-page__lede{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.add-pet-page__section{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);padding:var(--s-5)}.add-pet-page__section--message{text-align:center}.add-pet-page__section-title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-title);line-height:1.1;color:var(--ink)}.add-pet-page__body{margin:0 0 var(--s-4);font-family:var(--font-body);font-size:var(--text-body);line-height:1.45;color:var(--ink-2)}.add-pet-page__form.person-edit-form{max-width:none;margin:0;padding:0;background:transparent;border:none;border-radius:0;box-shadow:none}.add-pet-page .person-edit-form__section-title{margin:0 0 var(--s-4);font-family:var(--font-editorial);font-weight:500;color:var(--ink)}.add-pet-page .person-edit-form__label{margin-bottom:var(--s-1);font-family:var(--font-mono);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.add-pet-page .person-edit-form__label.person-edit-form__checkbox-label{font-family:var(--font-body);font-weight:500;letter-spacing:normal;text-transform:none;color:var(--ink)}.add-pet-page .person-edit-form__input,.add-pet-page .person-edit-form__select,.add-pet-page .form-select-trigger{font-family:var(--font-body);border:1px solid var(--hairline-strong);border-radius:var(--r-2);color:var(--ink);background:var(--surface)}.add-pet-page .person-edit-form__input:focus,.add-pet-page .person-edit-form__select:focus,.add-pet-page .form-select-trigger:focus{outline:none;border-color:var(--brand-bark);box-shadow:var(--shadow-focus)}.add-pet-page .person-edit-form__hint{font-family:var(--font-body);color:var(--ink-3)}.add-pet-page .person-edit-form__error{margin-bottom:var(--s-4);padding:var(--s-2) var(--s-3);border-radius:var(--r-2);border:1px solid var(--danger-border);background:var(--danger-bg);color:var(--danger);font-family:var(--font-body);font-size:var(--text-small)}.add-pet-page .person-edit-form__error-dismiss{color:var(--danger)}.add-pet-page .person-edit-form__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--s-2);padding-top:var(--s-4);margin-top:var(--s-4);border-top:1px solid var(--hairline)}.add-pet-page__link-existing{margin-bottom:var(--s-4)}.add-pet-screen__form{display:flex;flex-direction:column;gap:1.5rem}.add-pet-screen__form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem 2rem;align-items:start}.add-pet-screen__form-row .person-edit-form__field{margin-bottom:0}.add-pet-screen__dates-row{grid-template-columns:repeat(2,minmax(220px,1fr))}.add-pet-screen__death-section{display:flex;flex-direction:column;gap:1rem}.add-pet-screen__deceased-row{display:flex;flex-direction:column;gap:.25rem}.add-pet-screen__deceased-row .add-pet-screen__deceased-label{margin-bottom:0}.add-pet-screen__deceased-hint{margin:0}.add-pet-screen__death-date-row{grid-template-columns:minmax(220px,1fr)}.add-pet-screen__date-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.add-pet-screen__precision-select{width:auto;min-width:6rem;flex-shrink:0}.add-pet-screen__deceased-label{font-family:var(--font-body);font-weight:500;color:var(--ink)}.add-pet-screen__deceased-label span{flex:0 0 auto}.add-pet-screen__owners-section{margin-top:var(--s-2);padding-top:var(--s-4);border-top:1px solid var(--hairline)}.add-pet-screen__owners-hint{margin-bottom:1rem}.add-pet-screen__owners-list{display:flex;flex-direction:column;gap:.75rem}.add-pet-screen__owners-list .form-select-trigger{min-width:80px}.add-pet-screen__owner-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:.5rem 0}.add-pet-screen__owner-checkbox{display:flex;align-items:center;gap:.5rem;min-width:0}.add-pet-screen__owner-row--selected{padding-left:var(--s-1);border-left:2px solid var(--brand-bark)}.add-pet-screen__owner-name{font-family:var(--font-body);font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-pet-screen__owner-edit-block{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 0;border-bottom:1px solid var(--hairline)}.add-pet-screen__owner-edit-block:last-child{border-bottom:none}.add-pet-screen__owner-edit-row-1{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;min-height:2rem}.add-pet-screen__owner-edit-row-1 .add-pet-screen__owner-name{flex:1;min-width:0}.add-pet-screen__owner-edit-row-2{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding-left:0}.add-pet-screen__owner-edit-row-2 .add-pet-screen__owner-actions{margin-left:auto}.add-pet-screen__owner-dates-edit{display:flex;align-items:center;gap:.5rem}.add-pet-screen__date-input{min-width:0;max-width:140px}.add-pet-screen__date-sep{font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-3)}.add-pet-screen__owner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;flex-shrink:0}.add-pet-screen__owner-actions .add-pet-screen__save-owner-button{margin-left:auto}.add-pet-screen__save-owner-button:disabled{opacity:.5;cursor:not-allowed}.person-relationships__revert-button{flex-shrink:0;padding:.25rem .5rem;font-family:var(--font-body);font-size:var(--text-small);font-weight:500;color:var(--ink-2);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r-2);cursor:pointer;transition:opacity .2s ease}.person-relationships__revert-button:hover:not(:disabled){color:var(--ink);border-color:var(--ink-3)}.person-relationships__revert-button:disabled{opacity:.5;cursor:not-allowed}.add-pet-screen__add-owner{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--hairline)}.add-pet-screen__add-owner-title{font-size:var(--text-subhead);margin-bottom:var(--s-2)}.add-pet-screen__add-owner-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;justify-content:flex-start}.add-pet-screen__add-owner-row .add-pet-screen__add-button{margin-left:auto}.add-pet-screen__add-owner-select{min-width:180px}.add-pet-screen__role-select{min-width:120px}.add-pet-screen__owner-edit-row-1 .form-select-trigger{flex-shrink:0;min-width:80px;width:auto}@media (max-width: 600px){.add-pet-page__section{padding:var(--s-4)}.add-pet-screen__form-row{grid-template-columns:1fr}.add-pet-screen__owner-edit-row-1 .form-select-trigger{min-width:120px}}@media (max-width: 480px){.add-pet-screen__owner-row{gap:var(--s-2)}.add-pet-screen__owner-edit-row-1 .form-select-trigger{min-width:100px}}.members-cards-scope{--members-card-line-height: 1.35}.members-cards-scope .person-card--members-list,.members-cards-scope .person-card--pet.members-list-pet{position:relative;width:var(--v01-card-width);min-width:0;min-height:var(--v01-card-min-height);height:auto;padding:var(--v01-card-padding);padding-bottom:8px;border-radius:var(--r-3);border:1.5px solid var(--brand-forest);background:var(--surface);box-shadow:var(--shadow-1);transition:all .15s ease;cursor:default;box-sizing:border-box}.members-cards-scope .person-card--members-list:hover,.members-cards-scope .person-card--pet.members-list-pet:hover{border-color:var(--brand-quince);box-shadow:var(--shadow-2);transform:translateY(-1px)}.members-cards-scope .person-card--members-list.person-card--deceased,.members-cards-scope .person-card--pet.members-list-pet{background:var(--surface)}.members-cards-scope .person-card--members-list .person-card-name-container{margin-bottom:12px}.members-cards-scope .person-card--members-list .person-card-name{font-size:var(--v01-card-name-font);line-height:var(--members-card-line-height);color:var(--ink);min-height:calc(2 * var(--members-card-line-height) * 1em);padding-right:28px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.members-cards-scope .person-card--members-list .person-card-name--deceased{color:var(--ink-2)}.members-cards-scope .person-card-you-badge{position:absolute;top:8px;right:10px;background:var(--brand-quince);color:var(--surface);font-family:var(--font-body);font-size:var(--text-micro);font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:var(--r-pill);box-shadow:var(--shadow-1);line-height:1.3}.members-cards-scope .person-card--members-list .person-card-photo{width:var(--v01-card-photo-size);height:var(--v01-card-photo-size);border-radius:var(--r-2);border:1px solid var(--hairline);background:var(--paper-2)}.members-cards-scope .person-card--members-list .person-card-photo-placeholder{border:none;background:transparent;border-radius:var(--r-2)}.members-cards-scope .person-card--members-list .person-card-photo-initials{font-family:var(--font-body);font-weight:600;font-size:var(--text-caption);color:var(--brand-bark);letter-spacing:.02em;background:var(--quince-100);width:100%;height:100%;display:flex;align-items:center;justify-content:center;border-radius:inherit}.members-cards-scope .person-card--members-list .person-card-years{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-2);font-weight:400}.members-cards-scope .person-card--members-list .person-card-age{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--ink-3)}.members-cards-scope .person-card--members-list .person-card-place{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-caption);line-height:var(--members-card-line-height);min-height:calc(1 * var(--members-card-line-height) * 1em);color:var(--ink-3);margin-top:2px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:100%}.members-cards-scope .person-card--members-list .person-card-bottom-row,.members-cards-scope .person-card--pet.members-list-pet .person-card-bottom-row,.pedigree-tree-scope .person-card--tree .person-card-bottom-row{position:static;box-sizing:border-box;width:100%;margin-top:6px;padding:6px 0 0;border-top:1px dashed var(--hairline);display:flex;align-items:center;justify-content:flex-end;gap:6px}.person-card-bottom-row .spouse-switcher{margin-right:auto}.members-cards-scope .person-card--members-list .person-card-actions,.members-cards-scope .person-card--pet.members-list-pet .person-card-actions,.pedigree-tree-scope .person-card--tree .person-card-actions{display:flex;gap:6px;margin-left:0;flex-shrink:0;justify-content:flex-end;align-items:center}.members-cards-scope .person-card--members-list .person-card-action-wrap--add,.members-cards-scope .person-card--members-list .person-card-action,.members-cards-scope .person-card--pet.members-list-pet .person-card-action,.pet-card-host .person-card-action,.pedigree-tree-scope .person-card--tree .person-card-action-wrap--add,.pedigree-tree-scope .person-card--tree .person-card-action{width:26px;height:26px;min-width:26px;min-height:26px;padding:0;border-radius:var(--r-1);border:1px solid transparent;background:transparent;color:var(--ink-3);box-shadow:none;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;cursor:pointer;font-size:inherit;font-weight:inherit;line-height:1;transition:all .12s ease;transform:none}.members-cards-scope .person-card--members-list .person-card-action-wrap--add .person-card-action--add,.pedigree-tree-scope .person-card--tree .person-card-action-wrap--add .person-card-action--add{width:26px;height:26px;min-width:26px;min-height:26px}.members-cards-scope .person-card--members-list .person-card-action:hover,.members-cards-scope .person-card--pet.members-list-pet .person-card-action:hover,.pet-card-host .person-card-action:hover,.pedigree-tree-scope .person-card--tree .person-card-action:hover{background:var(--paper-2);border-color:var(--hairline);color:var(--ink);transform:none;box-shadow:none}.members-cards-scope .person-card--members-list .person-card-action--anchor:hover,.pedigree-tree-scope .person-card--tree .person-card-action--anchor:hover{color:var(--brand-quince-deep);border-color:var(--brand-quince-deep)}.members-cards-scope .person-card--members-list .person-card-action--profile:hover,.members-cards-scope .person-card--pet.members-list-pet .person-card-action--profile:hover,.pet-card-host .person-card-action--profile:hover,.pedigree-tree-scope .person-card--tree .person-card-action--profile:hover{color:var(--brand-bark);border-color:var(--brand-bark)}.members-cards-scope .person-card--members-list .person-card-action--add,.pedigree-tree-scope .person-card--tree .person-card-action--add{color:var(--ink-3)}.members-cards-scope .person-card--members-list .person-card-action--add:hover,.pedigree-tree-scope .person-card--tree .person-card-action--add:hover{color:var(--brand-forest);border-color:var(--brand-forest)}.members-cards-scope .person-card--pet.members-list-pet{border-radius:var(--r-3);background-repeat:no-repeat;background-position:center center;background-size:calc(72px * var(--v01-card-width) / 220px)}.members-cards-scope .person-card--pet.members-list-pet .person-card-name-container{margin-bottom:8px}.members-cards-scope .person-card--pet.members-list-pet .person-card-name{font-size:var(--v01-card-name-font);line-height:var(--members-card-line-height);color:var(--ink);min-height:calc(1 * var(--members-card-line-height) * 1em);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.members-cards-scope .person-card--pet.members-list-pet .person-card-photo{width:var(--v01-card-photo-size);height:var(--v01-card-photo-size);background:var(--forest-50);border:1px solid var(--forest-100)}.members-cards-scope .person-card--pet.members-list-pet .person-card-photo-placeholder{background:var(--forest-50);border:none;border-radius:var(--r-2)}.members-cards-scope .person-card--pet.members-list-pet .person-card-photo-icon{opacity:1;font-size:0}.members-cards-scope .person-card--pet.members-list-pet .person-card-kind{font-family:var(--font-body);font-size:var(--text-small);line-height:var(--members-card-line-height);min-height:calc(2 * var(--members-card-line-height) * 1em);color:var(--ink-2);font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.members-cards-scope .person-card--pet.members-list-pet .person-card-years{font-family:var(--font-mono);font-size:var(--text-caption);line-height:var(--members-card-line-height);min-height:calc(1 * var(--members-card-line-height) * 1em);color:var(--ink-2);font-weight:400}.members-cards-scope .person-card--pet.members-list-pet .person-card-age{font-family:var(--font-mono);font-size:var(--text-micro);line-height:var(--members-card-line-height);min-height:calc(1 * var(--members-card-line-height) * 1em);color:var(--ink-3)}.members-page .members-grid>.person-card--members-list,.members-page .members-grid>.pet-card-host{width:100%}.members-page .members-grid .person-card--pet.members-list-pet{width:100%;background-size:33%}.tab-panel-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-3);padding:var(--s-5) var(--s-5) var(--s-3);background:var(--surface)}.tab-panel-card__title{margin:0;font-family:var(--font-editorial);font-weight:500;font-size:var(--text-section);letter-spacing:-.005em;line-height:1.2;color:var(--ink)}.tab-panel-card__body{padding:var(--s-4) var(--s-5) var(--s-5);background:var(--surface)}.person-profile-screen{display:flex;flex-direction:column;width:100%;max-width:var(--content-max-width);margin:0 auto;padding:2rem 3rem;box-sizing:border-box}.person-profile-screen.profile-page{max-width:1100px;padding:0 var(--s-6) var(--s-16)}.profile-page__main{display:flex;flex-direction:column;width:100%}.profile-page__lede{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.profile-page .profile-page__tour-intro{margin:0 0 var(--s-5)}.profile-page__tour-intro .profile-page__lede{max-width:none}.profile-hero{margin:0 0 var(--s-8);padding:var(--s-8);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-4);box-shadow:var(--shadow-1);display:grid;grid-template-columns:auto 1fr;gap:var(--s-8);align-items:start;position:relative}.profile-hero__perm{position:absolute;top:var(--s-5);right:var(--s-6);display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--paper-2);border:1px solid var(--hairline);border-radius:var(--r-pill);font-size:var(--text-caption);color:var(--ink-2);cursor:pointer;font-family:var(--font-body)}.profile-hero__perm:hover{border-color:var(--hairline-strong);color:var(--ink)}.profile-hero__perm strong{color:var(--ink);font-weight:600}.profile-hero__photo-wrap .profile-photo-upload{gap:var(--s-2)}.profile-hero__photo-wrap .profile-photo-upload__image-area{width:180px;height:180px;min-height:180px;border-radius:var(--r-3)}.profile-hero__photo-wrap .profile-photo-upload__image,.profile-hero__photo-wrap .profile-photo-upload__placeholder{border-radius:var(--r-3)}.profile-hero__photo-wrap .profile-photo-upload__initials{font-size:var(--size-profile-hero-initials)}.profile-hero__info{min-width:0;padding-right:140px}.profile-hero__name{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display-lg);letter-spacing:-.015em;line-height:1.02;margin:0 0 var(--s-3);color:var(--ink);text-wrap:pretty}.profile-hero__name em{font-style:italic;color:var(--brand-bark);font-weight:400}.profile-hero__line{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px var(--s-3);font-family:var(--font-mono);font-size:var(--text-small);color:var(--ink-2);margin-bottom:4px}.profile-hero__sep{color:var(--ink-4)}.profile-hero__line em{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-body);color:var(--ink-3)}.profile-hero__lifespan{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3);margin-bottom:var(--s-4)}.profile-hero__chips{display:flex;flex-wrap:wrap;gap:6px;margin:var(--s-4) 0 var(--s-5)}.profile-chip{display:inline-flex;align-items:center;gap:5px;background:var(--paper-2);border:1px solid var(--hairline);border-radius:var(--r-pill);padding:var(--chip-pill-py) var(--chip-pill-px);font-size:var(--chip-pill-font);color:var(--ink-2)}.profile-chip strong{color:var(--ink);font-weight:600}.profile-chip--deceased{background:var(--bark-50);color:var(--brand-bark);border-color:transparent}.profile-chip--you{background:var(--quince-50);color:var(--brand-bark);border-color:transparent}.profile-hero__actions{display:flex;gap:8px;flex-wrap:wrap;padding-top:var(--s-3);border-top:1px solid var(--hairline)}.profile-page .person-facts,.profile-page .person-life-events,.profile-page .person-relationships{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);margin-bottom:var(--s-5);overflow:hidden}.profile-sections{margin-bottom:var(--s-8)}.profile-sections__tabs{margin-top:0;margin-bottom:var(--s-4)}.profile-sections__tabs .sticky-tab-strip__tab{font-size:var(--sticky-tab-font);padding:var(--sticky-tab-py) var(--sticky-tab-px)}.profile-sections__tabs .sticky-tab-strip__count{font-size:var(--sticky-tab-count-font)}@media (min-width: 901px){.profile-sections__tabs .sticky-tab-strip__tab{font-size:var(--text-lede);padding:var(--s-3) var(--sticky-tab-px)}.profile-sections__tabs .sticky-tab-strip__count{font-size:var(--text-small)}}.profile-section-lede{margin:0 0 var(--s-5);max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.profile-section-panel{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);overflow:hidden}.profile-section-panel .person-facts--tab-panel,.profile-section-panel .person-life-events--tab-panel,.profile-section-panel .person-relationships--tab-panel{background:transparent;border:none;border-radius:0;box-shadow:none;margin-bottom:0}.profile-section-panel .person-facts__body,.profile-section-panel .person-life-events__body,.profile-section-panel .person-relationships__body{padding:0;border-top:none}.profile-section-panel .tab-panel-card__body .person-facts__body,.profile-section-panel .tab-panel-card__body .person-life-events__body,.profile-section-panel .tab-panel-card__body .person-relationships__body{padding:0}.profile-section-panel .tab-panel-card__head .person-facts__add-button,.profile-section-panel .tab-panel-card__head .person-life-events__add-button{flex-shrink:0}.profile-section-panel .person-relationships--tab-panel .profile-rels{padding-top:var(--s-4)}.profile-page .person-facts__header,.profile-page .person-life-events__header,.profile-page .person-relationships__header{padding:var(--s-4) var(--s-5);margin-bottom:0;cursor:default}.profile-page .person-facts__header:hover,.profile-page .person-life-events__header:hover,.profile-page .person-relationships__header:hover{color:inherit}.profile-page .person-facts__title,.profile-page .person-life-events__title,.profile-page .person-relationships__title{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-section);letter-spacing:-.005em;color:var(--ink);display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;line-height:1}.profile-page .person-facts__add-button,.profile-page .person-life-events__add-button,.profile-page .person-relationships__add-button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;font-size:var(--text-caption);font-weight:600;color:var(--ink);background:transparent;border:1px solid var(--hairline-strong);border-radius:var(--r-2)}.profile-page .person-facts__add-button:hover:not(:disabled),.profile-page .person-life-events__add-button:hover:not(:disabled),.profile-page .person-relationships__add-button:hover:not(:disabled){background:var(--paper-2);opacity:1}.profile-page .person-facts__body,.profile-page .person-life-events__body,.profile-page .person-relationships__body{padding:var(--s-4) var(--s-5) var(--s-5);border-top:1px solid var(--hairline)}.profile-page .person-facts__header-button,.profile-page .person-life-events__header-button,.profile-page .person-relationships__header-button{display:inline-flex;align-items:center;gap:10px}.profile-section__count{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;min-width:24px;padding:0;border-radius:50%;font-family:var(--font-mono);font-size:var(--text-caption);font-weight:500;line-height:1;font-variant-numeric:tabular-nums;color:var(--ink-3);background:var(--paper-2)}.profile-page .person-facts--profile .person-facts__list{display:flex;flex-direction:column;gap:1px}.profile-page .person-facts--profile .person-facts__item{padding:var(--s-3) var(--s-2);border-bottom:1px solid var(--hairline)}.profile-page .person-facts--profile .person-facts__item:last-child{border-bottom:none}.profile-page .person-facts--profile .person-facts__item-row--profile{display:flex;align-items:flex-start;gap:var(--s-4)}.profile-page .person-facts--profile .person-facts__item-type{font-family:var(--font-body);font-weight:600;font-size:var(--text-small);color:var(--ink-2);min-width:140px;max-width:140px;padding-top:2px;white-space:normal}.profile-page .person-facts--profile .person-facts__item-detail-wrap{flex:1;min-width:0;display:flex;align-items:flex-start;flex-wrap:wrap;gap:4px}.profile-page .person-facts--profile .person-facts__item-detail{font-size:var(--text-body);color:var(--ink);line-height:1.5;padding-left:0;font-weight:400}.profile-page .person-facts--profile .person-facts__item-meta{display:flex;align-items:center;gap:6px;flex-shrink:0}.profile-page .person-facts--profile .person-facts__empty,.profile-page .person-life-events--profile .person-life-events__empty{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-body);color:var(--ink-3);padding:var(--s-3) var(--s-2)}.profile-page .person-life-events--profile .person-life-events__timeline{position:relative;padding-left:var(--s-12)}.profile-page .person-life-events--profile .person-life-events__timeline:before{content:"";position:absolute;left:22px;top:8px;bottom:8px;width:2px;background:var(--hairline-strong)}.profile-page .person-life-events--profile .person-life-events__timeline-item{position:relative;padding:var(--s-3) 0}.profile-page .person-life-events--profile .person-life-events__timeline-item:not(:last-child){border-bottom:1px solid var(--hairline)}.profile-page .person-life-events--profile .person-life-events__timeline-dot{position:absolute;left:calc(-1 * var(--s-12) + 16px);top:22px;width:14px;height:14px;border-radius:50%;background:var(--surface);border:2px solid var(--brand-quince);box-shadow:0 0 0 4px var(--surface)}.profile-page .person-life-events--profile .person-life-events__timeline-item--death .person-life-events__timeline-dot{border-color:var(--brand-bark)}.profile-page .person-life-events--profile .person-life-events__timeline-item--marriage .person-life-events__timeline-dot{border-color:var(--brand-forest)}.profile-page .person-life-events--profile .person-life-events__timeline-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s-3)}.profile-page .person-life-events--profile .person-life-events__timeline-main{flex:1;min-width:0}.profile-page .person-life-events--profile .person-life-events__timeline-year{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3);margin-bottom:3px}.profile-page .person-life-events--profile .person-life-events__timeline-type{font-weight:600;font-size:var(--text-body);color:var(--ink);margin-right:8px}.profile-page .person-life-events--profile .person-life-events__timeline-detail{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-body);color:var(--ink-2);line-height:1.5}.profile-page .person-life-events--profile .person-life-events__timeline-place{font-size:var(--text-caption);color:var(--ink-3);margin-top:4px;display:inline-flex;align-items:center;gap:4px}.profile-page .person-life-events--profile .person-life-events__timeline-meta{display:flex;align-items:center;gap:6px;flex-shrink:0}.profile-page .profile-rels{display:flex;flex-direction:column;gap:var(--s-4)}.profile-page .profile-rels__grid.members-grid{display:grid;grid-template-columns:repeat(auto-fill,var(--v01-card-width));gap:var(--v01-card-grid-gap);row-gap:20px;padding-bottom:0;justify-content:start}.profile-page .profile-rels__sub-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-3)}.profile-page .profile-rels__sub-title{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);color:var(--ink-2);margin:0;font-weight:400}.profile-page .profile-rels__sub-count{font-family:var(--font-mono);font-size:var(--text-caption);color:var(--ink-3);margin-left:6px;font-style:normal}.profile-page .profile-rels__empty{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-body);color:var(--ink-3);padding:var(--s-3) var(--s-2);margin:0}.profile-page .person-relationships.person-relationships--profile{overflow:visible}.profile-page .profile-rels__card-wrap{position:relative;width:var(--v01-card-width);padding-bottom:6px}.profile-page .profile-rels__card-surface{position:relative;width:100%}.profile-page .profile-rels__card-surface>.person-card{position:relative;z-index:1}.profile-page .profile-rels__card-surface .profile-rels__link-badge{position:absolute;bottom:-6px;left:12px;z-index:5;pointer-events:none}.profile-page .profile-rels__link-badge{background:var(--surface);border:1px solid var(--hairline);padding:1px 7px;border-radius:var(--r-pill);font-size:var(--text-micro);color:var(--ink-3);font-family:var(--font-mono);line-height:1.4}.profile-page .profile-rels__link-badge--dashed{color:var(--brand-bark);border-color:var(--brand-bark);background:var(--bark-50)}.profile-page .profile-rels__role-badge{background:var(--forest-50);color:var(--brand-forest);border-color:var(--forest-100)}.profile-page .profile-rels__card-wrap .card-hover-remove{position:absolute;top:6px;right:6px;z-index:3}.profile-page .profile-rels__card-wrap:has(.person-card-you-badge) .card-hover-remove{right:52px}@media (max-width: 800px){.person-profile-screen.profile-page{padding:0 var(--s-4) var(--s-10)}.profile-hero{grid-template-columns:1fr}.profile-hero__info{padding-right:0}.profile-hero__perm{position:static;align-self:flex-start;margin-bottom:8px;grid-column:1 / -1}}.person-profile-screen__back-button{padding:.5rem 1rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--brand-forest);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r-2);cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.person-profile-screen__back-button:hover{background:var(--paper);border-color:var(--hairline)}.person-profile-screen__delete-error{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-4);background:var(--danger-bg);border:1px solid var(--danger);border-radius:var(--r-2);font-family:var(--font-body);font-size:var(--text-body);color:var(--danger)}.person-profile-screen__delete-error-dismiss{background:none;border:none;font-size:var(--nav-icon-font-size);line-height:1;cursor:pointer;padding:.25rem;opacity:.8}.person-profile-screen__delete-error-dismiss:hover{opacity:1}.person-profile-screen__loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:400px;text-align:center}.person-profile-screen__spinner{width:40px;height:40px;border:3px solid var(--hairline);border-top-color:var(--brand-forest);border-radius:50%;animation:profile-screen-spin 1s linear infinite;margin:0 auto var(--s-4)}.person-profile-screen__loading-text{font-family:var(--font-body);color:var(--ink-2)}@keyframes profile-screen-spin{to{transform:rotate(360deg)}}.person-profile-screen__error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--s-12);text-align:center;gap:var(--s-4)}.person-profile-screen__error-title{margin:0;color:var(--danger);font-family:var(--font-body);font-size:var(--text-subhead)}@media (max-width: 768px){.person-profile-screen:not(.profile-page){padding:var(--s-4)}.person-profile-screen__back-button{font-size:var(--text-small);padding:.4rem .75rem}}@media (max-width: 480px){.person-profile-screen:not(.profile-page){padding:var(--s-3)}}.profile-hero--pet .profile-photo-upload__placeholder,.profile-hero--pet .profile-photo-upload__placeholder--initials{background:var(--forest-50);border:1px solid var(--forest-100);color:var(--brand-forest)}.profile-hero--pet .profile-photo-upload__initials{font-family:var(--font-editorial);font-weight:500}.profile-page .profile-rels--pet-owners.members-cards-scope .person-card--members-list{border:1px solid var(--hairline)}.profile-page .profile-rels--pet-owners.members-cards-scope .person-card--members-list:hover{border-color:var(--hairline-strong);box-shadow:var(--shadow-1);transform:none}.add-flow-entry-toggle{display:inline-flex;margin-bottom:var(--s-4);padding:3px;background:var(--paper-2);border-radius:var(--r-pill);gap:0}.add-flow-entry-toggle__item{padding:7px 18px;font-family:var(--font-body);font-size:var(--text-small);font-weight:500;border:none;border-radius:var(--r-pill);background:transparent;color:var(--ink-2);cursor:pointer;transition:all .12s ease}.add-flow-entry-toggle__item:hover{color:var(--ink)}.add-flow-entry-toggle__item[data-state=on]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.add-flow-entry-hint{margin:0 0 var(--s-3);font-family:var(--font-body);font-size:var(--text-small);color:var(--ink-2);line-height:1.45}.add-flow-link-field{margin-bottom:var(--s-4);max-width:28rem}.form-select-trigger{width:100%;min-width:0;padding:.4rem 2rem .4rem .75rem;font-family:var(--font-body);font-size:var(--form-field-font, var(--text-body));border:1px solid var(--hairline);border-radius:4px;background-color:var(--surface);cursor:pointer;display:inline-flex;align-items:center;justify-content:space-between;gap:.5rem;text-align:left;transition:border-color .2s ease}.form-select-trigger:hover:not(:disabled){border-color:var(--brand-quince)}.form-select-trigger:focus{outline:none;border-color:var(--brand-quince)}.form-select-trigger:disabled{background-color:var(--paper-2);cursor:not-allowed;opacity:.6}.form-select-trigger[data-placeholder]{color:var(--ink-2)}.form-select-content{background:var(--surface);border:1px solid var(--hairline);border-radius:4px;box-shadow:var(--shadow-2);padding:4px 0;z-index:9999;max-height:280px;overflow-y:auto}.form-select-item{padding:.4rem .75rem;font-family:var(--font-body);font-size:var(--form-field-font, var(--text-body));cursor:pointer;outline:none}.form-select-item[data-highlighted]{background:var(--paper-2)}.form-select-item[data-state=checked]{background:var(--quince-50)}.form-select-trigger--compact{width:auto;min-width:90px;flex-shrink:0;padding:.25rem .5rem}.add-member-page .person-edit-form__section-title,.add-pet-page .person-edit-form__section-title,.create-family-page__section-title{font-size:var(--form-section-title-font)}.add-member-page .person-edit-form__label,.add-pet-page .person-edit-form__label,.create-family-page__label,.gedcom-upload-page__label{font-size:var(--form-label-font)}.add-member-page .person-edit-form__label.person-edit-form__checkbox-label,.add-pet-page .person-edit-form__label.person-edit-form__checkbox-label,.add-pet-screen__deceased-label{font-size:var(--form-checkbox-label-font)}.add-member-page .person-edit-form__input,.add-member-page .person-edit-form__select,.add-member-page .form-select-trigger,.add-pet-page .person-edit-form__input,.add-pet-page .person-edit-form__select,.add-pet-page .form-select-trigger,.create-family-page__input,.gedcom-upload-page__input{font-size:var(--form-field-font);padding:var(--form-field-py) var(--form-field-px);line-height:var(--form-field-line-height)}.add-member-page .form-select-trigger,.add-pet-page .form-select-trigger{padding-right:calc(var(--form-field-px) + 1.25rem)}.form-select-content .form-select-item{padding:var(--form-select-item-py) var(--form-select-item-px);font-size:var(--form-field-font)}.add-member-page .person-edit-form__hint,.add-pet-page .person-edit-form__hint{font-size:var(--form-hint-font)}.add-member-page__additional-parent-name,.add-pet-screen__owner-name{font-size:var(--form-checkbox-label-font)}.add-member-page{display:flex;flex-direction:column;width:100%;max-width:var(--content-max-width-medium);margin:0 auto;box-sizing:border-box}.add-member-page--centered{max-width:var(--content-max-width-small)}.add-member-page__header{margin-bottom:var(--s-5)}.add-member-page__title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display);line-height:1.05;letter-spacing:-.01em;color:var(--ink)}.add-member-page__lede{margin:0;max-width:60ch;font-family:var(--font-editorial);font-style:italic;font-size:var(--text-lede);line-height:1.35;color:var(--ink-2)}.add-member-page__section{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-1);padding:var(--s-5)}.add-member-page__section--message{text-align:center}.add-member-page__section-title{margin:0 0 var(--s-2);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-title);line-height:1.1;color:var(--ink)}.add-member-page__body{margin:0 0 var(--s-4);font-family:var(--font-body);font-size:var(--text-body);line-height:1.45;color:var(--ink-2)}.add-member-page__form.person-edit-form{max-width:none;margin:0;padding:0;background:transparent;border:none;border-radius:0;box-shadow:none}.add-member-page .person-edit-form__section{margin-bottom:var(--s-5);padding-bottom:var(--s-5);border-bottom:1px solid var(--hairline)}.add-member-page .person-edit-form__section:last-of-type{margin-bottom:0;padding-bottom:0;border-bottom:none}.add-member-page .person-edit-form__section-title{margin:0 0 var(--s-4);font-family:var(--font-editorial);font-weight:500;color:var(--ink)}.add-member-page .person-edit-form__label{margin-bottom:var(--s-1);font-family:var(--font-mono);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.add-member-page .person-edit-form__label.person-edit-form__checkbox-label{font-family:var(--font-body);font-weight:500;letter-spacing:normal;text-transform:none;color:var(--ink)}.add-member-page .person-edit-form__input,.add-member-page .person-edit-form__select,.add-member-page .form-select-trigger{font-family:var(--font-body);border:1px solid var(--hairline-strong);border-radius:var(--r-2);color:var(--ink);background:var(--surface)}.add-member-page .person-edit-form__input:focus,.add-member-page .person-edit-form__select:focus,.add-member-page .form-select-trigger:focus{outline:none;border-color:var(--brand-bark);box-shadow:var(--shadow-focus)}.add-member-page .person-edit-form__hint{font-family:var(--font-body);color:var(--ink-3)}.add-member-page .person-edit-form__error{margin-bottom:var(--s-4);padding:var(--s-2) var(--s-3);border-radius:var(--r-2);border:1px solid var(--danger-border);background:var(--danger-bg);color:var(--danger);font-family:var(--font-body);font-size:var(--text-small)}.add-member-page .person-edit-form__error-dismiss{color:var(--danger)}.add-member-page .person-edit-form__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--s-2);padding-top:var(--s-4);margin-top:var(--s-4);border-top:1px solid var(--hairline)}.add-member-page__link-existing,.add-family-member-screen__link-existing{margin-bottom:var(--s-4)}.add-member-page__additional-parents{margin-top:var(--s-4)}.add-member-page__additional-parents-hint{margin-bottom:var(--s-3)}.add-member-page__additional-parents-list{display:flex;flex-direction:column;gap:var(--s-2)}.add-member-page__additional-parent-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-3);padding:var(--s-2) 0}.add-member-page__additional-parent-row--selected{padding-left:var(--s-1);border-left:2px solid var(--brand-bark)}.add-member-page__additional-parent-checkbox{display:flex;align-items:center;gap:var(--s-2);flex:1;min-width:0}.add-member-page__additional-parent-name{font-family:var(--font-body);color:var(--ink)}.add-member-page__additional-parents-list .form-select-trigger{min-width:140px}@media (max-width: 600px){.add-member-page__section{padding:var(--s-4)}.add-member-page .person-edit-form__field-group{grid-template-columns:1fr}}.profile-menu-container{position:relative}.profile-menu-button{display:flex;align-items:center;gap:var(--filter-pill-gap);padding:4px 12px 4px 4px;background:var(--paper-2);border-radius:var(--r-pill);border:1px solid transparent;cursor:pointer;transition:all .12s ease;font-size:var(--filter-pill-font);font-weight:500;font-family:var(--font-body);color:var(--ink)}.profile-menu-button:hover{background:var(--surface);border-color:var(--hairline)}.profile-menu-avatar{width:var(--icon-btn-size);height:var(--icon-btn-size);min-width:var(--icon-btn-size);min-height:var(--icon-btn-size);background-color:var(--brand-quince);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--surface);font-size:var(--filter-pill-count-font);font-weight:600;font-family:var(--font-body);letter-spacing:.02em}.profile-menu-chevron{color:var(--ink-3);transition:transform .2s ease;width:var(--filter-pill-icon-size);height:var(--filter-pill-icon-size);flex-shrink:0}.profile-menu-button[data-state=open] .profile-menu-chevron{transform:rotate(180deg)}.profile-menu-dropdown{background-color:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-3);box-shadow:var(--shadow-3);min-width:240px;z-index:1000;padding:6px}.profile-menu-header{display:flex;align-items:center;gap:10px;padding:10px 10px 12px;font-size:var(--text-body);font-family:var(--font-body)}.profile-menu-avatar--header{flex-shrink:0}.profile-menu-identity{min-width:0;flex:1}.profile-menu-name{font-weight:600;color:var(--ink);font-family:var(--font-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-menu-email{margin-top:2px;font-size:var(--text-caption);color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-menu-item{display:flex;align-items:center;gap:var(--filter-pill-gap);width:100%;padding:var(--filter-pill-btn-py) 10px;color:var(--ink);text-decoration:none;font-size:var(--filter-pill-font);font-family:var(--font-body);border-radius:var(--r-1);transition:background .12s ease;background:transparent;border:none;cursor:pointer;text-align:left}.profile-menu-item-icon{flex-shrink:0;color:var(--ink-2);width:var(--filter-pill-icon-size);height:var(--filter-pill-icon-size)}.profile-menu-item:hover,.profile-menu-item[data-highlighted]{background:var(--paper-2);color:var(--ink);outline:none}.profile-menu-separator{height:1px;background:var(--hairline);margin:4px 0}@media (max-width: 480px){.profile-menu-button span:not(.profile-menu-avatar){display:none}.profile-menu-button{padding:4px}}.appbar{background:var(--surface);border-bottom:1px solid var(--hairline);padding:var(--s-3) var(--s-5);display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);position:sticky;top:0;z-index:100;min-height:var(--header-min-height);width:100%;max-width:100%;box-sizing:border-box}.appbar__start{display:flex;align-items:center;gap:var(--s-2);min-width:0;flex-shrink:1}.appbar__brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:0}.appbar__logo{width:var(--appbar-logo-size);height:var(--appbar-logo-size);background-image:url(/favicon.png);background-size:contain;background-position:center;background-repeat:no-repeat;flex-shrink:0}.appbar__name{font-family:var(--font-display);font-size:var(--appbar-name-size);font-weight:400;color:var(--brand-quince);line-height:1;letter-spacing:-.03em;white-space:nowrap}.appbar__name-accent{color:var(--brand-bark)}.appbar__nav{display:flex;align-items:center;gap:4px;flex-shrink:0}.appbar__nav-link{font-size:var(--text-small);font-weight:500;color:var(--ink-2);padding:6px 12px;border-radius:var(--r-2);text-decoration:none;transition:background .12s ease,color .12s ease;white-space:nowrap}.appbar__nav-link:hover{color:var(--ink);background:var(--paper-2)}.appbar__nav-link--active{background:var(--quince-50);color:var(--brand-bark)}.appbar__nav-link--disabled{color:var(--ink-4);cursor:not-allowed;pointer-events:none}.appbar__end{display:flex;align-items:center;gap:var(--s-2);flex-shrink:0}.appbar__hamburger{width:36px;height:36px;border-radius:var(--r-pill);background:transparent;border:1px solid transparent;color:var(--ink);display:none;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.appbar__hamburger:hover{background:var(--paper-2)}.appbar__mobile-nav{min-width:180px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-2);padding:var(--s-2);box-shadow:var(--shadow-2);z-index:200}.appbar__mobile-nav-item{display:block;font-size:var(--text-small);font-weight:500;color:var(--ink);padding:8px 12px;border-radius:var(--r-2);text-decoration:none}.appbar__mobile-nav-item:hover{background:var(--paper-2)}.appbar__mobile-nav-item--active{background:var(--quince-50);color:var(--brand-bark)}.appbar__mobile-nav-item--disabled{color:var(--ink-4);pointer-events:none}@media (max-width: 900px){.appbar__nav{display:none}.appbar__hamburger{display:inline-flex}}@media (max-width: 768px){.appbar{padding:var(--s-3) var(--s-4)}}@media (max-width: 480px){.appbar{padding:var(--s-2) var(--s-3);min-height:56px}.appbar__logo{width:var(--appbar-logo-size-sm);height:var(--appbar-logo-size-sm)}.appbar__name{font-size:var(--appbar-name-size-sm)}}.breadcrumb{display:flex;align-items:center}.breadcrumb__list{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:.25rem}.breadcrumb__item{display:flex;align-items:center;gap:.25rem;font-family:var(--font-body);font-size:var(--text-body)}.breadcrumb__link{color:var(--ink-2)!important;text-decoration:none;transition:color .2s ease;font-weight:400!important}.breadcrumb__link:hover{color:var(--brand-bark)!important;text-decoration:underline}.breadcrumb__link--second-to-last{font-weight:700!important;color:var(--ink)!important}.breadcrumb__link--second-to-last:hover{color:var(--brand-quince)!important;text-decoration:underline}.breadcrumb__separator{color:var(--ink-3);-webkit-user-select:none;user-select:none}.breadcrumb__current{color:var(--brand-quince);font-weight:700}.page-chrome{display:flex;align-items:center;padding-bottom:var(--s-3);margin-bottom:var(--s-1);border-bottom:none}.layout .breadcrumb__link{color:var(--ink-3)!important;font-weight:400!important}.layout .breadcrumb__link:hover{color:var(--ink)!important;text-decoration:none}.layout .breadcrumb__link--second-to-last{color:var(--ink-3)!important;font-weight:400!important}.layout .breadcrumb__link--second-to-last:hover{color:var(--ink)!important}.layout .breadcrumb__separator{color:var(--ink-4)}.layout .breadcrumb__current{color:var(--ink);font-weight:500}.footer{background:var(--paper);border-top:1px solid var(--hairline);padding:var(--s-4) var(--s-6);margin-top:auto;text-align:center;color:var(--ink-2)}.footer__container{margin:0 auto;display:flex;justify-content:center;align-items:center}.footer__copyright{color:var(--ink-3);font-size:var(--text-body);font-family:var(--font-body);font-weight:500}@media (max-width: 480px){.footer{padding:var(--s-4)}.footer__copyright{font-size:var(--text-caption)}}.layout{display:flex;flex-direction:column;min-height:100vh;background-color:var(--paper);width:100%;max-width:100%;overflow-x:hidden;box-sizing:border-box}.layout>.layout__main{flex:1 1 auto;overflow-x:hidden}.layout__main{padding:var(--s-3) var(--s-6) var(--s-4);background:var(--paper);width:100%;max-width:100%;box-sizing:border-box}@media (max-width: 768px){.layout__main{padding:var(--s-3) var(--s-4) var(--s-4)}}@media (max-width: 480px){.layout__main{padding:var(--s-2) var(--s-3) var(--s-3)}}@media (max-width: 320px){.layout__main{padding:var(--s-2)}}:root{--brand-quince: #eca66a;--brand-quince-deep: #d88a5d;--brand-forest: #387d65;--brand-forest-deep: #2c6650;--brand-teal: #0b5b79;--brand-bark: #7e412e;--brand-bark-deep: #522d19;--paper: #fbf7f0;--paper-2: #f5efe4;--surface: #ffffff;--hairline: #e7dfd1;--hairline-strong: #d6cbb6;--ink: #2a1f17;--ink-2: #5a4d3f;--ink-3: #8c8071;--ink-4: #b4a999;--quince-50: #fdf3e8;--quince-100: #fae3cd;--forest-50: #e9f1ec;--forest-100: #cce0d3;--teal-50: #e5eef3;--teal-100: #c0d4dd;--bark-50: #f3e9e3;--danger: #b54141;--danger-bg: #fbe9e7;--danger-border: #e8c4c4;--warning: #b87a2a;--warning-bg: #faeed8;--modal-overlay: rgba(42, 31, 24, .42);--bark-hover: rgba(126, 65, 46, .1);--font-display: "Caprasimo", "Iowan Old Style", Georgia, serif;--font-editorial: "Newsreader", "Iowan Old Style", Georgia, serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--text-micro: 10px;--text-caption: 12px;--text-small: 13px;--text-body: 14px;--text-body-lg: 15px;--text-lede: 17px;--text-subhead: 18px;--text-section: 22px;--text-prose: 19px;--text-title: clamp(24px, 3.5vw, 28px);--text-heading: clamp(22px, 3vw, 26px);--text-display-sm: clamp(28px, 4vw, 34px);--text-display: clamp(34px, 4.5vw, 40px);--text-display-lg: clamp(40px, 5vw, 64px);--text-display-xl: clamp(38px, 5vw, 52px);--size-profile-hero-initials: 60px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10: 40px;--s-12: 48px;--s-16: 64px;--r-1: 6px;--r-2: 10px;--r-3: 14px;--r-4: 20px;--r-pill: 999px;--shadow-1: 0 1px 2px rgba(82, 45, 25, .06), 0 1px 1px rgba(82, 45, 25, .04);--shadow-2: 0 2px 4px rgba(82, 45, 25, .06), 0 6px 14px rgba(82, 45, 25, .07);--shadow-3: 0 6px 16px rgba(82, 45, 25, .09), 0 20px 36px rgba(82, 45, 25, .08);--shadow-focus: 0 0 0 3px rgba(236, 166, 106, .35);--brand-stripe: linear-gradient(90deg, #0b5b79 0%, #387d65 20%, #eca66a 100%);--appbar-logo-size: clamp(3rem, 7.5vw, 4rem);--appbar-logo-size-sm: 2.75rem;--appbar-name-size: clamp(2rem, 4vw, 4rem);--appbar-name-size-sm: 1.75rem;--filter-pill-seg-inset: 3px;--filter-pill-btn-py: 7px;--filter-pill-btn-px: 18px;--filter-pill-btn-px-tight: 14px;--filter-pill-font: var(--text-small);--filter-pill-count-font: var(--text-caption);--filter-pill-trigger-py: 9px;--filter-pill-trigger-px: 14px;--filter-pill-trigger-font: var(--text-body);--filter-pill-trigger-min-w: 140px;--filter-pill-tag-trigger-min-w: 200px;--filter-pill-icon-size: 14px;--filter-pill-gap: 6px;--filter-pill-sort-direction-size: 34px;--sticky-tab-py: 10px;--sticky-tab-px: 16px;--sticky-tab-font: var(--text-small);--sticky-tab-count-font: var(--text-caption);--icon-btn-size: 28px;--icon-btn-glyph-size: 14px;--modal-close-size: 32px;--modal-title-font: var(--text-heading);--chip-pill-py: 5px;--chip-pill-px: 11px;--chip-pill-font: var(--text-caption);--v01-card-width: 220px;--v01-card-min-height: 130px;--v01-card-padding: 10px 12px 8px;--v01-card-photo-size: 44px;--v01-card-name-font: var(--text-body);--v01-card-grid-gap: 14px;--form-field-font: var(--text-body);--form-field-py: 10px;--form-field-px: 12px;--form-field-line-height: 1.35;--form-label-font: var(--text-caption);--form-checkbox-label-font: var(--text-body);--form-hint-font: var(--text-small);--form-section-title-font: var(--text-section);--form-select-item-py: 6px;--form-select-item-px: 12px}@media (max-width: 768px){:root{--v01-card-width: 180px;--v01-card-min-height: 120px;--v01-card-photo-size: 40px;--v01-card-grid-gap: 10px}}@media (max-width: 900px){:root{--filter-pill-seg-inset: 2px;--filter-pill-btn-py: 6px;--filter-pill-btn-px: 14px;--filter-pill-btn-px-tight: 12px;--filter-pill-font: var(--text-caption);--filter-pill-trigger-py: 7px;--filter-pill-trigger-px: 12px;--filter-pill-trigger-font: var(--text-small);--filter-pill-trigger-min-w: 120px;--filter-pill-tag-trigger-min-w: 160px;--filter-pill-icon-size: 12px;--filter-pill-gap: 5px;--filter-pill-sort-direction-size: 30px;--sticky-tab-py: 8px;--sticky-tab-px: 14px;--sticky-tab-font: var(--text-caption);--icon-btn-size: 26px;--icon-btn-glyph-size: 13px;--modal-close-size: 30px;--modal-title-font: var(--text-section);--chip-pill-py: 4px;--chip-pill-px: 9px;--chip-pill-font: var(--text-micro);--form-field-font: var(--text-small);--form-field-py: 9px;--form-field-px: 11px;--form-section-title-font: var(--text-subhead)}}@media (max-width: 600px){:root{--filter-pill-btn-py: 5px;--filter-pill-btn-px: 12px;--filter-pill-btn-px-tight: 10px;--filter-pill-trigger-py: 6px;--filter-pill-trigger-px: 10px;--filter-pill-trigger-min-w: 108px;--filter-pill-tag-trigger-min-w: 140px;--filter-pill-icon-size: 11px;--filter-pill-gap: 4px;--filter-pill-sort-direction-size: 28px;--sticky-tab-py: 7px;--sticky-tab-px: 12px;--icon-btn-size: 24px;--icon-btn-glyph-size: 12px;--modal-close-size: 28px;--modal-title-font: var(--text-subhead);--form-field-py: 8px;--form-field-px: 10px;--form-checkbox-label-font: var(--text-small)}}@media (max-width: 480px){:root{--text-body: 13px;--text-lede: 16px;--text-section: 20px;--text-prose: 17px;--text-display: clamp(28px, 8vw, 34px);--text-display-lg: clamp(32px, 9vw, 48px);--filter-pill-btn-py: 4px;--filter-pill-btn-px: 10px;--filter-pill-btn-px-tight: 8px;--filter-pill-count-font: var(--text-micro);--filter-pill-trigger-py: 5px;--filter-pill-trigger-px: 9px;--filter-pill-trigger-font: var(--text-caption);--filter-pill-trigger-min-w: 96px;--filter-pill-tag-trigger-min-w: 120px;--filter-pill-icon-size: 10px;--filter-pill-sort-direction-size: 26px;--sticky-tab-py: 6px;--sticky-tab-px: 10px;--sticky-tab-font: var(--text-caption);--sticky-tab-count-font: var(--text-micro);--icon-btn-size: 22px;--icon-btn-glyph-size: 11px;--modal-close-size: 26px;--modal-title-font: var(--text-section);--chip-pill-py: 3px;--chip-pill-px: 8px;--v01-card-width: 160px;--v01-card-min-height: 118px;--v01-card-padding: 8px 10px 6px;--v01-card-photo-size: 36px;--v01-card-name-font: var(--text-small);--v01-card-grid-gap: 8px;--form-field-font: var(--text-small);--form-field-py: 7px;--form-field-px: 9px;--form-label-font: var(--text-micro);--form-checkbox-label-font: var(--text-caption);--form-hint-font: var(--text-caption);--form-section-title-font: var(--text-section);--form-select-item-py: 5px;--form-select-item-px: 10px}}@media (max-width: 360px){:root{--filter-pill-btn-px: 8px;--filter-pill-btn-px-tight: 7px;--filter-pill-trigger-px: 8px;--filter-pill-trigger-min-w: 88px;--filter-pill-tag-trigger-min-w: 108px;--filter-pill-icon-size: 9px;--filter-pill-sort-direction-size: 24px;--sticky-tab-py: 5px;--sticky-tab-px: 8px;--icon-btn-size: 20px;--icon-btn-glyph-size: 10px;--modal-close-size: 24px;--chip-pill-px: 7px;--form-field-font: var(--text-caption);--form-field-py: 6px;--form-field-px: 8px}}@media (max-width: 320px){:root{--v01-card-width: 140px;--v01-card-min-height: 112px;--v01-card-padding: 6px 8px 5px;--v01-card-photo-size: 32px;--v01-card-grid-gap: 6px}}@media (orientation: landscape) and (max-height: 500px){:root{--v01-card-width: 160px;--v01-card-min-height: 118px;--v01-card-padding: 8px 10px 6px;--v01-card-photo-size: 36px;--v01-card-name-font: var(--text-small);--v01-card-grid-gap: 8px}}:root{--nav-button-font-size: var(--text-small);--logo-font-size: var(--text-display-xl);--nav-icon-font-size: 1.25rem}.btn{font-family:var(--font-body);font-weight:600;font-size:var(--text-small);padding:9px 14px;border-radius:var(--r-2);border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:all .12s ease;line-height:1;white-space:nowrap}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn--primary{background:var(--brand-forest);color:var(--surface)}.btn--primary:hover{background:var(--brand-forest-deep)}.btn--primary:disabled{opacity:.5;cursor:not-allowed}.btn--secondary{background:var(--brand-quince);color:var(--surface)}.btn--secondary:hover{background:var(--brand-quince-deep)}.btn--ghost{background:transparent;color:var(--ink);border-color:var(--hairline-strong)}.btn--ghost:hover{background:var(--paper-2);border-color:var(--ink-3)}.btn--text{background:transparent;color:var(--brand-bark);padding:7px 10px}.btn--text:hover{background:var(--bark-50)}.btn--sm{padding:6px 10px;font-size:var(--text-caption)}.btn--lg{padding:14px 22px;font-size:var(--text-body-lg);border-radius:14px}.card-hover-remove{width:var(--icon-btn-size);height:var(--icon-btn-size);min-width:var(--icon-btn-size);min-height:var(--icon-btn-size);max-width:var(--icon-btn-size);max-height:var(--icon-btn-size);aspect-ratio:1;padding:0;border:0;background:transparent;color:var(--ink-4);border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.card-hover-remove svg{width:var(--icon-btn-glyph-size);height:var(--icon-btn-glyph-size);flex-shrink:0}.family-card:hover .card-hover-remove,.profile-rels__card-wrap:hover .card-hover-remove,.card-hover-remove:focus-visible{opacity:1}.card-hover-remove:hover:not(:disabled){background:var(--danger-bg);color:var(--danger)}.card-hover-remove:disabled{opacity:0;cursor:not-allowed;pointer-events:none}.family-card:hover .card-hover-remove:disabled,.profile-rels__card-wrap:hover .card-hover-remove:disabled{opacity:.5;pointer-events:none}.profile-entry-actions{display:flex;gap:4px;flex-shrink:0;opacity:0;transition:opacity .12s ease}.person-facts__item--profile:hover .profile-entry-actions,.person-facts__item--profile:focus-within .profile-entry-actions,.person-facts__item--profile:has([data-state=open]) .profile-entry-actions,.person-life-events__timeline-item:hover .profile-entry-actions,.person-life-events__timeline-item:focus-within .profile-entry-actions,.person-life-events__timeline-item:has([data-state=open]) .profile-entry-actions,.sources-card__header:hover .profile-entry-actions,.sources-card__header .profile-entry-actions:focus-within,.sources-card--add-citation .profile-entry-actions,.sources-citation:hover .profile-entry-actions,.sources-citation .profile-entry-actions:focus-within{opacity:1}.profile-entry-actions .record-info-popover__trigger{width:var(--icon-btn-size);height:var(--icon-btn-size);min-width:var(--icon-btn-size);min-height:var(--icon-btn-size);margin:0;padding:0;opacity:1}.profile-entry-actions .record-info-popover__trigger:hover,.profile-entry-actions .record-info-popover__trigger-icon,.profile-entry-actions .record-info-popover__trigger:hover .record-info-popover__trigger-icon{color:inherit}.profile-entry-icon-btn-wrap{display:inline-flex;flex-shrink:0}.profile-entry-icon-btn{width:var(--icon-btn-size);height:var(--icon-btn-size);min-width:var(--icon-btn-size);min-height:var(--icon-btn-size);padding:0;border:1px solid transparent;border-radius:var(--r-1);background:transparent;color:var(--ink-3);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;transition:background .12s ease,border-color .12s ease,color .12s ease}.profile-entry-icon-btn svg{width:var(--icon-btn-glyph-size);height:var(--icon-btn-glyph-size);flex-shrink:0}.profile-entry-icon-btn:hover:not(:disabled){background:var(--paper-2);border-color:var(--hairline);color:var(--ink)}.profile-entry-icon-btn--danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.profile-entry-icon-btn:disabled{opacity:.5;cursor:not-allowed}.profile-entry-icon-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.person-facts__item--profile:focus-within .profile-entry-icon-btn:focus-visible,.person-life-events__timeline-item:focus-within .profile-entry-icon-btn:focus-visible,.sources-card__header .profile-entry-actions:focus-within .profile-entry-icon-btn:focus-visible,.sources-citation .profile-entry-actions:focus-within .profile-entry-icon-btn:focus-visible{opacity:1}.collapsible-chevron-wrap{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:14px;height:14px;position:relative}.collapsible-chevron{color:var(--ink-4)}.collapsible-chevron path{stroke-width:1}.collapsible-chevron--down,.collapsible-chevron--right{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto}.collapsible-chevron--down,[data-state=open] .collapsible-chevron--right{display:none}[data-state=open] .collapsible-chevron--down{display:block}[data-state=closed] .collapsible-chevron--down{display:none}[data-state=closed] .collapsible-chevron--right{display:block}.brand-stripe{height:7px;width:100%;background:var(--brand-stripe);flex-shrink:0}.brand-stripe--thick{height:10px}.auth-shell--gate{min-height:100vh;box-sizing:border-box;display:grid;grid-template-columns:1fr;background:var(--paper)}.auth-shell--app{min-height:100vh}.auth-shell--checking{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--paper)}.auth-shell__checking-spinner{width:40px;height:40px;border:3px solid var(--hairline);border-top-color:var(--brand-forest);border-radius:50%;animation:auth-shell-spin .8s linear infinite}@keyframes auth-shell-spin{to{transform:rotate(360deg)}}.auth-shell__app-slot{min-height:100vh}.auth-shell__story{display:none}.auth-shell__form-column{width:100%;box-sizing:border-box;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--s-8) var(--s-6);background:var(--paper)}.auth-brand{display:flex;align-items:center;gap:12px}.auth-brand__logo{width:48px;height:48px;background-image:url(/favicon.png);background-size:contain;background-position:center;background-repeat:no-repeat;flex-shrink:0}.auth-brand__wordmark{font-family:var(--font-display);font-size:var(--text-display-sm);font-weight:400;color:var(--brand-quince);line-height:1;letter-spacing:-.02em}.auth-brand__wordmark-accent{color:var(--brand-bark)}.auth-shell__story-body{display:flex;flex-direction:column;gap:var(--s-6);max-width:28rem;width:100%}.auth-shell__story-center{flex:1;display:flex;align-items:center;min-height:0}.auth-message__stripe{display:block;width:72px;height:8px;margin:0 0 var(--s-5);border-radius:4px}.auth-message__headline{margin:0 0 var(--s-4);font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display-lg);line-height:1.02;letter-spacing:-.02em;color:var(--ink);text-wrap:pretty}.auth-message__headline em{font-style:italic;color:var(--brand-bark)}.auth-message__lede{margin:0;font-family:var(--font-editorial);font-size:var(--text-subhead);line-height:1.55;color:var(--ink-2)}.auth-hero__illus{position:relative;margin:var(--s-8) 0 0;width:100%;max-width:360px;height:120px}.auth-hero__illus-card{position:absolute;background:var(--surface);border:1.5px solid var(--brand-forest);border-radius:var(--r-2);box-shadow:var(--shadow-2);width:110px;height:78px;padding:8px;display:flex;flex-direction:column;gap:4px}.auth-hero__illus-name{width:80%;height:6px;background:var(--ink-2);border-radius:2px}.auth-hero__illus-photo{width:28px;height:28px;background:var(--quince-100);border-radius:var(--r-1);margin-top:auto}.auth-hero__illus-card:nth-child(1){left:0;top:0;transform:rotate(-3deg);z-index:1}.auth-hero__illus-card:nth-child(2){left:100px;top:24px;transform:rotate(2deg);border-color:var(--brand-quince);z-index:3}.auth-hero__illus-card:nth-child(2) .auth-hero__illus-photo{background:var(--brand-quince)}.auth-hero__illus-card:nth-child(3){left:210px;top:6px;transform:rotate(-2deg);z-index:2}.auth-hero__illus-line{position:absolute;left:50px;right:50px;top:95px;height:1.5px;background:var(--hairline-strong);z-index:0}.auth-form-card{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-4);box-shadow:var(--shadow-3);overflow:hidden;flex-shrink:0}.auth-form-card:before{content:"";display:block;height:7px;background:var(--brand-stripe)}.auth-form-card [data-amplify-authenticator]{width:100%;max-width:none;margin:0}[data-amplify-authenticator]{--amplify-components-authenticator-router-box-shadow: none;--amplify-components-authenticator-router-border-width: 0;--amplify-components-authenticator-router-border-radius: 0;--amplify-components-authenticator-router-background-color: transparent;--amplify-components-authenticator-form-padding: var(--s-6) var(--s-6) var(--s-5);--amplify-components-button-primary-background: var(--brand-forest);--amplify-components-button-primary-hover-background: var(--brand-forest-deep);--amplify-components-button-primary-color: var(--surface);--amplify-components-button-primary-border-radius: var(--r-2);--amplify-components-button-primary-font-weight: 600;--amplify-components-button-link-color: var(--brand-bark);--amplify-components-button-link-hover-color: var(--brand-bark-deep);--amplify-components-fieldcontrol-border-color: var(--hairline-strong);--amplify-components-fieldcontrol-focus-border-color: var(--brand-forest);--amplify-components-fieldcontrol-border-radius: var(--r-2);--amplify-components-fieldcontrol-color: var(--ink);--amplify-components-fieldcontrol-background-color: var(--surface);--amplify-components-text-color: var(--ink-2);--amplify-components-heading-color: var(--ink)}[data-amplify-authenticator] .amplify-authenticator__router{width:100%;background:transparent;box-shadow:none;border:none}[data-amplify-authenticator] .amplify-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[data-amplify-authenticator] h3.amplify-heading{font-family:var(--font-editorial);font-weight:500;font-size:var(--text-display-sm);letter-spacing:-.01em;color:var(--ink);margin:0 0 var(--s-2);padding:var(--s-5) var(--s-6) 0;text-align:left;box-sizing:border-box}[data-amplify-authenticator] form h3.amplify-heading{padding-left:0;padding-right:0}[data-amplify-authenticator] .auth-form-wordmark{font-family:var(--font-display);font-weight:400;color:var(--brand-quince);letter-spacing:-.02em}[data-amplify-authenticator] .auth-form-wordmark__accent{color:var(--brand-bark)}[data-amplify-authenticator] .amplify-authenticator__subtitle,[data-amplify-authenticator] .amplify-heading--4{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-body);color:var(--ink-3);margin:0 0 var(--s-4);padding:0 var(--s-6);font-weight:400;box-sizing:border-box}[data-amplify-authenticator] form .amplify-authenticator__subtitle,[data-amplify-authenticator] form .amplify-heading--4{padding-left:0;padding-right:0}[data-amplify-authenticator] .amplify-label{font-family:var(--font-body);font-weight:500;font-size:var(--text-small);color:var(--ink);margin:0 0 6px;letter-spacing:normal;text-transform:none}[data-amplify-authenticator] .amplify-input,[data-amplify-authenticator] .amplify-field-group__control{font-family:var(--font-body);font-size:var(--text-body);color:var(--ink);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r-2);padding:10px 12px;width:100%;max-width:none;opacity:1;box-shadow:none;transition:border-color .12s ease,box-shadow .12s ease}[data-amplify-authenticator] .amplify-input::placeholder{color:var(--ink-4)}[data-amplify-authenticator] .amplify-input:hover,[data-amplify-authenticator] .amplify-field-group__control:hover{border-color:var(--ink-3)}[data-amplify-authenticator] .amplify-input:focus,[data-amplify-authenticator] .amplify-field-group__control:focus{outline:none;border-color:var(--brand-forest);box-shadow:var(--shadow-focus)}[data-amplify-authenticator] fieldset,[data-amplify-authenticator] .amplify-flex fieldset{border:none;background:transparent;padding:0;margin:0}[data-amplify-authenticator] .amplify-flex .amplify-field,[data-amplify-authenticator] .amplify-field{margin-bottom:var(--s-4)}[data-amplify-authenticator] .amplify-flex.amplify-authenticator__form,[data-amplify-authenticator] form{padding:var(--s-4) var(--s-6) var(--s-6);display:flex;flex-direction:column;align-items:stretch;gap:var(--s-4);width:100%;box-sizing:border-box}[data-amplify-authenticator] .amplify-flex{align-items:stretch;width:100%}[data-amplify-authenticator] .amplify-button{font-family:var(--font-body);cursor:pointer}[data-amplify-authenticator] .amplify-button--primary{width:100%;max-width:none;align-self:stretch;margin-top:var(--s-1);padding:11px 16px;font-size:var(--text-body);font-weight:600;background:var(--brand-forest);color:var(--surface);border:1px solid var(--brand-forest);border-radius:var(--r-2);display:flex;align-items:center;justify-content:center;box-sizing:border-box}[data-amplify-authenticator] .amplify-button--primary:hover{background:var(--brand-forest-deep);border-color:var(--brand-forest-deep)}[data-amplify-authenticator] .amplify-button--link{background:transparent;border:none;padding:4px 6px;margin:0;font-size:var(--text-small);font-weight:500;color:var(--brand-bark);text-decoration:none;width:auto;display:inline-flex;align-self:flex-start;border-radius:var(--r-1)}[data-amplify-authenticator] .auth-back-link{align-self:center;margin:0 auto}[data-amplify-authenticator] form[data-amplify-authenticator-forgotpassword] .amplify-button--primary+.amplify-flex .amplify-button--link{display:none}[data-amplify-authenticator] [data-amplify-footer]{margin-top:0;padding:var(--s-5) var(--s-6) var(--s-6);text-align:center}[data-amplify-authenticator] form[data-amplify-authenticator-forgotpassword] [data-amplify-footer]{padding-top:var(--s-6)}[data-amplify-authenticator] .amplify-button--link:hover{color:var(--brand-bark-deep);background:var(--bark-50);text-decoration:none}[data-amplify-authenticator] .amplify-passwordfield .amplify-field-group{position:relative}[data-amplify-authenticator] .amplify-passwordfield .amplify-field-group__outer-end{position:absolute;right:4px;top:50%;transform:translateY(-50%);z-index:1}[data-amplify-authenticator] .amplify-passwordfield .amplify-field-group__outer-end .amplify-button{background:transparent;border:none;padding:6px 8px;color:var(--ink-3);min-width:auto;width:auto;margin:0;font-size:0;line-height:0;border-radius:var(--r-1)}[data-amplify-authenticator] .amplify-passwordfield .amplify-field-group__outer-end .amplify-button svg{width:18px;height:18px}[data-amplify-authenticator] .amplify-passwordfield .amplify-field-group__outer-end .amplify-button:hover{background:var(--paper-2);color:var(--ink)}[data-amplify-authenticator] .amplify-passwordfield .amplify-input{padding-right:40px}[data-amplify-authenticator] .amplify-tabs__list{display:flex;margin:var(--s-4) var(--s-3) var(--s-3);padding:3px;gap:0;background:var(--paper-2);border:1px solid var(--hairline);border-radius:var(--r-pill);box-sizing:border-box}[data-amplify-authenticator] .amplify-tabs__item{flex:1;font-family:var(--font-body);font-size:var(--text-small);font-weight:500;padding:10px 16px;border:none;border-radius:var(--r-pill);margin:0;color:var(--ink-3);background:transparent;text-align:center;cursor:pointer;transition:color .12s ease,background .12s ease,box-shadow .12s ease}[data-amplify-authenticator] .amplify-tabs__item:hover:not(.amplify-tabs__item--active){color:var(--ink)}[data-amplify-authenticator] .amplify-tabs__item--active{color:var(--ink);background:var(--surface);font-weight:600;box-shadow:var(--shadow-1)}[data-amplify-authenticator] .amplify-alert{margin-top:0;padding:10px 12px;border-radius:var(--r-2);background:var(--danger-bg);border:1px solid var(--danger)}[data-amplify-authenticator] .amplify-alert__body{font-family:var(--font-body);font-size:var(--text-small);font-weight:500;color:var(--danger);text-align:left;line-height:1.4}[data-amplify-authenticator] .amplify-alert__icon,[data-amplify-authenticator] .amplify-alert__dismiss{display:none}[data-amplify-authenticator] .amplify-spinner,[data-amplify-authenticator] [data-amplify-spinner],[data-amplify-authenticator] .amplify-loader{display:none!important}[data-amplify-authenticator] .amplify-button--loading,[data-amplify-authenticator] .amplify-button[data-loading=true]{position:relative;color:transparent!important;min-height:42px}[data-amplify-authenticator] .amplify-button--loading>*,[data-amplify-authenticator] .amplify-button[data-loading=true]>*{opacity:0!important}[data-amplify-authenticator] .amplify-button--loading:after,[data-amplify-authenticator] .amplify-button[data-loading=true]:after{content:"";position:absolute;width:1.25rem;height:1.25rem;border:2px solid rgba(255,255,255,.35);border-top-color:var(--surface);border-radius:50%;animation:auth-spin .8s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (min-width: 900px){.auth-shell--gate{grid-template-columns:1fr 1fr}.auth-shell__story{display:flex;flex-direction:column;min-height:100vh;padding:var(--s-8) var(--s-12) var(--s-12);background:radial-gradient(ellipse at 0% 110%,rgba(216,138,93,.14),transparent 55%),radial-gradient(ellipse at 110% 0%,rgba(11,91,121,.1),transparent 50%),var(--paper-2)}.auth-brand{flex-shrink:0}.auth-shell__form-column{min-height:100vh;padding:var(--s-12) var(--s-8);background:var(--paper)}}@media (max-width: 899px){.auth-shell__story{display:none}.auth-shell__form-column{padding:var(--s-6) var(--s-5)}.auth-form-card{max-width:360px}}@media (max-width: 900px){.fl-header__title{font-size:var(--text-display-lg)}.family-card__name{font-size:var(--text-display-sm)}.families-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--s-3)}}@media (max-width: 600px){.profile-page__title,.help-page__title,.changelog-page__title,.add-member-page__title,.add-pet-page__title,.invite-page__title,.gedcom-upload-page__title,.create-family-page__title,.family-section-heading__title{font-size:var(--text-display-sm)}.profile-hero__photo-wrap .profile-photo-upload__image-area{width:150px;height:150px;min-height:150px}.profile-hero__info{padding-right:0}}@media (max-width: 480px){.fl-header__title{font-size:var(--text-display)}.family-card__name{font-size:var(--text-section)}.families-grid{grid-template-columns:1fr;gap:var(--s-3)}.profile-page__title,.help-page__title,.changelog-page__title,.add-member-page__title,.add-pet-page__title,.invite-page__title,.gedcom-upload-page__title,.create-family-page__title,.family-section-heading__title{font-size:var(--text-display)}.family-section-heading__edit svg{width:var(--icon-btn-glyph-size);height:var(--icon-btn-glyph-size)}.profile-hero__name{font-size:var(--text-display-sm)}.profile-hero__photo-wrap .profile-photo-upload__image-area{width:120px;height:120px;min-height:120px}.profile-hero__photo-wrap .profile-photo-upload__initials{font-size:var(--text-display-sm)}.profile-hero__line{font-size:var(--text-caption)}.profile-hero__line em{font-size:var(--text-small)}.breadcrumb__item{font-size:var(--text-caption)}.members-results-bar{font-size:var(--filter-pill-font)}.members-results-bar__count,.list-sort-controls__heading{font-size:var(--filter-pill-count-font)}.sources-results-bar{font-size:var(--filter-pill-font)}.sources-results-bar__count{font-size:var(--filter-pill-count-font)}}@media (max-width: 360px){.profile-hero__name{font-size:var(--text-section)}}*,*:before,*:after{box-sizing:border-box}:root{--header-min-height: clamp(20px, 6vw, 50px);--header-padding: clamp(.5rem, 2vw, .75rem) clamp(.5rem, 4vw, 1rem);--footer-padding: 1rem;--nav-gap: clamp(1rem, 3vw, 2rem);--nav-button-gap: clamp(.25rem, 1vw, .5rem);--nav-button-padding: clamp(.25rem, 2vw, .5rem) clamp(.25rem, 3vw, .5rem);--content-max-width: 1200px;--content-max-width-medium: 800px;--content-max-width-small: 600px;--content-max-width-xs: 400px;--breakpoint-tablet: 768px;--breakpoint-mobile: 480px;--breakpoint-mobile-small: 480px;--breakpoint-mobile-xs: 320px;--link-border-radius: 8px;--link-transition: all .2s ease}html{margin:0;padding:0;width:100%;height:100%;overflow-x:hidden;box-sizing:border-box;font-size:100%}body{margin:0;padding:0;width:100%;min-height:100vh;max-width:100%;overflow-x:hidden;box-sizing:border-box;font-family:var(--font-body);font-size:var(--text-body);line-height:1.5;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;position:relative}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' seed='3'/><feColorMatrix values='0 0 0 0 0.45  0 0 0 0 0.30  0 0 0 0 0.15  0 0 0 0.06 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");opacity:.35;z-index:0}#root{position:relative;z-index:1;width:100%;max-width:100%;overflow-x:hidden}button:not(.create-card):not(.help-button):not(.profile-menu-button):not(.stat-tile):not(.quick-link-btn):not(.photo-thumb):not(.role-row):not(.family-section-heading__eyebrow-btn):not(.list-seg__btn):not(.list-search-field__clear):not(.member-filter-typeahead__clear):not(.help-page__search-clear):not(.help-page__faq-trigger):not(.help-page__chapter-btn):not(.tag-filter-dropdown__mode-option):not(.tag-filter-dropdown__trigger):not(.tag-filter-dropdown__clear-link):not(.profile-entry-icon-btn):not(.sources-card__trigger):not(.v01-modal__close):not(.list-filter-toggle):not(.sticky-tab-strip__tab):not(.list-sort-controls__direction):not(.list-sort-controls__trigger):not(.list-filter-select):not(.media-page__filter-select):not(.amplify-button),[role=button]:not(.family-card):not(.amplify-button){width:fit-content;max-width:100%}
