/* Search, return visits, source location and compact relationship selection. */
.person-stats>button{min-width:0;background:transparent;border:0;border-radius:0;padding:8px 6px;text-align:center;line-height:1.8}
.person-stats>button+button{border-inline-start:1px solid #dce5de}.person-stats>button:hover{background:#edf4eb}.person-stats>button:focus-visible{outline:3px solid #a07930;outline-offset:-3px}
.person-stats>button>small{display:block;margin-top:9px;color:#31563e;font-size:.8125rem;text-decoration:underline;text-underline-offset:4px}
.relatives-tabs{display:flex;margin-bottom:22px}.relatives-tabs button{flex:1;min-height:44px}.relatives-results{max-height:45dvh;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
#relatives-count{margin:14px 0 8px}.relative-person{display:flex;align-items:center;gap:14px;min-height:64px;text-align:right;width:100%;background:#fff;border:0;border-bottom:1px solid #e1e8e2;border-radius:6px;padding:14px 12px;font-size:1rem;line-height:1.9}
.relative-person>span:first-child{flex:1}.relative-person small{font-size:.8125rem;white-space:nowrap;color:#526b5b}.relative-person:hover,.relative-person:focus-visible{background:#f0f5ed}.relative-person:focus-visible{outline:3px solid #a07930;outline-offset:-3px}
.relation-paths li{padding:0 8px}.relation-paths li button{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:44px;padding:9px 8px;background:transparent;border:0;color:inherit;font:inherit;text-align:right}
.relation-paths li button:hover{background:#ffffffa0}.relation-paths li button>span{color:#526b5b;font-size:.875rem}
.card-preview{margin:20px 0 0;padding:16px;background:#eff3ef;border:1px solid #dce5de;border-radius:12px;text-align:center}.card-preview figcaption{font-size:.875rem;color:#486353;line-height:1.8;margin-bottom:12px}
.card-preview img{display:block;width:100%;max-width:480px;height:auto;margin:auto;border:1px solid #d1ded3;border-radius:6px}.share-actions button{min-height:48px}
.search-clear{flex:0 0 44px;width:44px;min-width:44px;min-height:44px;padding:0!important;border:0;background:transparent;color:#496757;font-size:1.4rem!important}
.search-box input,.home-search-form input{min-width:0;width:100%}
.search-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.search-suggestion{padding:8px 12px;min-height:44px;background:#edf4ef;color:#244e3b;border:1px solid #ccdace;text-align:right;font-size:.94rem}
.search-suggestion small{font-size:.8125rem}.empty+.search-suggestion{margin:8px 0}
.recent-area{margin-top:16px;border-top:1px solid #e0e7e1;padding-top:8px}
.recent-area summary{min-height:44px;padding:10px 0;cursor:pointer;font-size:.94rem;font-weight:600;color:#335a47}
.recent-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.recent-list button{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:right;background:#f7faf8;border:1px solid #dce5de;padding:11px 12px;min-height:48px;font-size:.875rem;line-height:1.9}
.recent-list small{color:#526a5b;white-space:nowrap}.recent-meta{display:flex;justify-content:space-between;align-items:center;color:#63756d;font-size:.8125rem;gap:12px}
.recent-meta button,.home-person-shortcut>[data-forget-me]{min-height:44px;border:0;background:none;color:#456553;text-decoration:underline;text-underline-offset:4px;font-size:.875rem;padding:8px}
.directory .recent-list{grid-template-columns:1fr;max-height:230px;overflow:auto}
.home-person-shortcut{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;padding:6px 10px;background:#f0f5f0;border-radius:10px}
.home-person-shortcut>[data-person]{background:none;border:0;min-height:44px;color:#244e3b;font-size:.94rem;text-align:right}
.personal-relation{grid-column:1/-1;display:grid;gap:7px;padding:15px;margin:16px 0 0;background:#f3f5ed;border:1px solid #d7dfcc;border-radius:10px}
.personal-relation>span,.personal-relation small{color:#556947;font-size:.8125rem;line-height:1.8}.personal-relation strong{font-size:1rem;line-height:1.9;font-weight:600}
.personal-relation button{background:white;border-color:#d4dfcc;min-height:44px;font-size:.875rem}
.picker-selected-row{display:flex;align-items:stretch;gap:8px;margin:2px 0 8px}
.picker-selected-row .picker-selection{flex:1;margin:0}.picker-change{flex-shrink:0;align-self:center;min-height:44px;background:white;border:1px solid #c5d8c9;padding:8px 12px;color:#244e3b;font-size:.875rem}
.compare-actions{display:flex;gap:10px;margin-top:16px}.compare-actions .primary{flex:1}.compare-actions button{min-height:48px}.compare-actions .quiet{font-size:.875rem;white-space:nowrap}
#relation-result{scroll-margin:20px;outline-offset:4px}#relation-result:empty{display:none}
.picker-option:focus-visible,.result:focus-visible,.home-search-person:focus-visible{outline:3px solid #9c752d;outline-offset:-3px;background:#f3f5eb}
dialog>.toast{position:sticky;top:0;bottom:auto;left:auto;transform:none;max-width:100%;width:auto;margin:0 0 12px;z-index:2}
.image-viewport{overflow-anchor:none}.image-stage{position:relative;width:max-content;isolation:isolate}.source-marker{position:absolute;width:76px;height:76px;transform:translate(-50%,-50%);border:3px solid #9d6813;border-radius:50%;box-shadow:0 0 0 3px #fff,0 0 0 6px #dfbc6a99;pointer-events:none}
.source-marker>span{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);padding:6px 12px;background:#173f32;color:white;border:1px solid #e1c07b;border-radius:7px;font-size:.875rem;white-space:nowrap;direction:rtl;line-height:1.8}
.alphabet-panel{margin-top:16px;padding:14px 16px;background:#fff;border:1px solid #e0e7e1;border-radius:12px}
.alphabet-panel>span{display:block;font-size:.875rem;font-weight:600;color:#4c6656;margin-bottom:9px}
.alphabet{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:6px}.alphabet button{min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #dbe5dc;background:#f7faf8;color:#315641;font-size:1rem;line-height:1.5}
.alphabet button[aria-pressed=true]{background:#173f32;color:white;border-color:#173f32}
.catalog-result-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px}.catalog-result-summary p{line-height:1.9}.catalog-result-summary button{min-height:44px;font-size:.875rem}
.text-button,.branch-toggle{min-height:44px;min-width:44px}.view-actions .quiet{min-height:44px}.generation-bar{min-height:44px}.card button{min-height:44px!important}
.picker-count,.picker-option span,.result strong span{font-size:.8125rem;color:#526b5b}
@media(min-width:1700px){.alphabet{grid-template-columns:repeat(26,minmax(0,1fr))}}
@media(max-width:760px){
 .recent-list{grid-template-columns:1fr}.home-person-shortcut{padding:7px 9px}.home-person-shortcut>[data-person]{flex:1}.personal-relation strong{font-size:1.06rem}
 .compare-actions{flex-wrap:wrap}.compare-actions .primary{flex-basis:100%;font-size:1rem}.compare-actions .quiet{width:100%}.picker-selected-row{gap:6px}
 .alphabet{display:flex;flex-wrap:nowrap;overflow-x:auto;padding:3px 3px 8px;scroll-snap-type:x proximity}.alphabet button{flex:0 0 auto;scroll-snap-align:start}
 .catalog-result-summary{align-items:flex-start;flex-wrap:wrap;gap:8px}.catalog-result-summary button{padding:8px 11px}
 .home-search-form{gap:4px}.home-search-form .primary{padding-inline:14px}.search-clear{flex-basis:40px;width:40px;min-width:40px}
 .tabs{scroll-padding-inline:16px}.person-secondary button{min-height:44px}.source-marker{width:62px;height:62px}
}
@media print{.recent-area,.home-person-shortcut,.alphabet-panel,.catalog-result-summary>button,.search-suggestions{display:none!important}}
