@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;500;600;700&family=IM+Fell+English:ital@0;1&family=Caveat:wght@400;500;600&family=Great+Vibes&display=swap');
:root{--paper:#cbb99a;--paper-light:#dfd0b3;--paper-dark:#ad9674;--ink:#21180f;--muted:#574838;--line:#8b7658;--accent:#5d351f;--accent-dark:#2e1d13;--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;background:var(--paper-light);padding:.7rem;z-index:10}.site-header{min-height:82px;padding:1rem clamp(1.2rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:.75rem;text-decoration:none}.wordmark strong,.wordmark small{display:block}.wordmark strong{font:1.35rem var(--serif);letter-spacing:.02em}.wordmark small{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.monogram{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--accent);font:1.5rem var(--serif);color:var(--accent)}.primary-nav{display:flex;gap:clamp(.8rem,2vw,2rem)}.primary-nav a{text-decoration:none;font-size:.86rem;color:var(--muted)}.primary-nav a:hover,.primary-nav a[aria-current=page]{color:var(--accent)}.menu-toggle{display:none;font:inherit;color:var(--ink);border:1px solid var(--line);background:transparent;padding:.45rem .8rem}.hero{min-height:560px;padding:clamp(4rem,9vw,8rem) clamp(1.25rem,8vw,8rem);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:center;gap:clamp(2.5rem,7vw,7rem)}.eyebrow{margin:0 0 1.1rem;color:var(--accent);font-size:.7rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}h1,h2,h3,blockquote{font-family:var(--serif);font-weight:400}h1{max-width:760px;margin:0;font-size:clamp(3rem,6vw,5.8rem);letter-spacing:-.045em;line-height:1.03}h1 em{color:var(--accent)}.hero-text{max-width:600px;margin:1.7rem 0 0;color:var(--muted);font-size:1.06rem}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.3rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.75rem 1.15rem;text-decoration:none;transition:transform .25s,background-color .25s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--accent-dark);color:var(--paper-light);border:1px solid var(--accent-dark)}.button-dark:hover{background:var(--accent)}.text-link{display:inline-flex;gap:.6rem;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:.25rem}.text-link:hover{color:var(--accent);border-color:var(--accent)}.folio-card{padding:1.5rem;border:1px solid var(--line);outline:1px solid var(--line);outline-offset:6px;background:var(--paper-light);box-shadow:8px 8px 0 rgba(80,58,35,.05)}.folio-top,.folio-bottom{display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.6rem;letter-spacing:.1em}.rule{height:1px;background:var(--line);margin:1rem 0 2rem}.folio-label{color:var(--accent);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.folio-card blockquote{margin:.7rem 0 2.2rem;font-size:clamp(1.5rem,2.3vw,2.1rem);line-height:1.35}.ticker{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:1.4rem;padding:1.1rem;background:var(--paper-dark);color:var(--accent-dark);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}.ticker i{width:4px;height:4px;border-radius:50%;background:var(--accent)}.section{padding:clamp(4rem,8vw,7rem) clamp(1.25rem,8vw,8rem)}.section-heading{max-width:720px;margin-bottom:2.8rem}h2{margin:0;font-size:clamp(2.4rem,4.4vw,4rem);line-height:1.1;letter-spacing:-.025em}.section-intro{max-width:650px;color:var(--muted);font-size:1.02rem}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.paper-card{min-height:240px;padding:1.5rem;border:1px solid var(--line);transition:transform .3s,border-color .3s}.paper-card:hover{transform:translateY(-4px);border-color:var(--accent);background:var(--paper-light)}.lineage-list{max-width:760px;margin:0 auto}.generation{padding:1.1rem 1.4rem;border:1px solid var(--line);background:rgba(223,208,179,.72);text-align:center}.generation small,.generation strong,.generation span{display:block}.generation small{font-size:.62rem;letter-spacing:.13em;color:var(--accent)}.generation strong{font:1.45rem var(--serif);margin:.2rem 0}.generation span{font-size:.86rem;color:var(--muted)}.generation.current{background:var(--paper-light);border-color:var(--accent)}.lineage-connector{width:1px;height:22px;background:var(--accent);margin:auto}.notice{margin:2rem 0;padding:1rem 1.2rem;border-left:3px solid var(--accent);background:var(--paper-light);color:var(--muted);font-size:.9rem}.notice strong{color:var(--ink)}.chronology-section{background:var(--paper-light)}.timeline{max-width:900px;border-top:1px solid var(--line)}.timeline-item{display:grid;grid-template-columns:190px 1fr;gap:2rem;padding:1.8rem 0;border-bottom:1px solid var(--line)}.timeline-date{padding-top:.25rem;color:var(--accent);font-size:.73rem;letter-spacing:.1em;text-transform:uppercase}.timeline-item h3{margin:0 0 .5rem;font-size:1.55rem}.timeline-item p{margin:0;color:var(--muted)}.archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}.archive-folder{display:grid;grid-template-columns:42px 1fr 20px;align-items:center;gap:1rem;min-height:100px;padding:1.2rem .6rem;border-bottom:1px solid var(--line);text-decoration:none;transition:background-color .25s,padding .25s}.archive-folder:nth-child(odd){border-right:1px solid var(--line);padding-right:1.3rem}.archive-folder:nth-child(even){padding-left:1.3rem}.archive-folder:hover{background:rgba(255,255,255,.25)}.folder-number{align-self:start;padding-top:.25rem;color:var(--accent);font-size:.75rem}.archive-folder strong,.archive-folder small{display:block}.archive-folder strong{font:1.25rem var(--serif)}.archive-folder small{margin-top:.25rem;color:var(--muted);font-size:.8rem}.arrow{color:var(--accent)}.research-band{display:grid;grid-template-columns:1fr 1fr;gap:4rem;padding:4rem clamp(1.25rem,8vw,8rem);background:var(--paper-dark)}.research-band p{margin:0;color:var(--muted)}.research-band .text-link{margin-top:1.2rem}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem clamp(1.25rem,5vw,5rem);border-top:1px solid var(--line)}.site-footer p{max-width:430px;margin:0;color:var(--muted);font-size:.82rem}.footer-end{color:var(--muted);font-size:.6rem;letter-spacing:.1em}.archive-page{min-height:70vh;padding:clamp(3rem,7vw,6rem) clamp(1.25rem,8vw,8rem)}.archive-page h1{font-size:clamp(2.8rem,5vw,4.5rem)}.search-label{display:block;margin-top:2rem;color:var(--accent);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.search-input{width:min(100%,620px);margin:.6rem 0 2rem;padding:.9rem 1rem;color:var(--ink);background:var(--paper-light);border:1px solid var(--line);font:inherit}.is-hidden{display:none!important}.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s,transform .7s}.reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}@media(max-width:800px){.site-header{flex-wrap:wrap}.menu-toggle{display:block}.primary-nav{display:none;width:100%;flex-direction:column;gap:0}.primary-nav.is-open{display:flex}.primary-nav a{padding:.7rem 0;border-top:1px solid var(--line)}.hero{grid-template-columns:1fr;min-height:unset;gap:3rem}.folio-card{max-width:500px}.feature-grid{grid-template-columns:1fr}.research-band{grid-template-columns:1fr;gap:1rem}.site-footer{align-items:flex-start;flex-direction:column;gap:1rem}}@media(max-width:560px){.ticker{gap:.7rem;font-size:.58rem}.archive-grid{grid-template-columns:1fr}.archive-folder:nth-child(odd),.archive-folder:nth-child(even){border-right:0;padding-left:.5rem;padding-right:.5rem}.timeline-item{grid-template-columns:1fr;gap:.4rem}.hero-actions{align-items:flex-start;flex-direction:column}.folio-top,.folio-bottom{font-size:.54rem}}
/* Private archive interface */
[hidden]{display:none!important}.auth-card,.upload-card{max-width:760px;margin:2.5rem 0;padding:clamp(1.3rem,4vw,2.3rem);border:1px solid var(--line);background:var(--paper-light)}.auth-card h2,.upload-card h2,.archive-toolbar h2,.records-heading h2{font-size:clamp(1.8rem,3vw,2.6rem)}.auth-card form{display:grid;max-width:460px;gap:.55rem}.auth-card label,.upload-card label{margin-top:.7rem;color:var(--accent-dark);font-size:.78rem;font-weight:700}.auth-card input,.upload-card input,.upload-card select,.upload-card textarea,.record-filters input,.record-filters select{width:100%;min-height:44px;padding:.7rem .8rem;border:1px solid var(--line);border-radius:0;background:#e6d8bd;color:var(--ink);font:inherit}.upload-card textarea{resize:vertical}.auth-card .button,.upload-card .button{justify-self:start;margin-top:.7rem;cursor:pointer;font:inherit}.connection-status,.file-hint,.form-message{color:var(--muted);font-size:.85rem}.form-message{min-height:1.4em}.message-error{color:#8b3328}.archive-toolbar,.records-heading{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin:3rem 0 1.2rem}.archive-toolbar h2,.records-heading h2{margin:0}.small-button{padding:.55rem .8rem;border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;cursor:pointer}.small-button:hover{border-color:var(--accent);color:var(--accent)}.danger-button{color:#8b3328}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.upload-card form{display:grid;gap:.45rem}.records-heading{align-items:end;margin-top:3.5rem}.record-filters{display:flex;gap:.6rem;max-width:570px}.record-filters input{min-width:180px}.record-filters select{min-width:170px}.records-list{display:grid;gap:.7rem}.record-card{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.1rem 1.2rem;border:1px solid var(--line);background:rgba(223,208,179,.78)}.record-card h3{margin:.15rem 0;font-size:1.35rem}.record-card p{margin:.2rem 0;color:var(--muted);white-space:pre-wrap}.record-category,.record-date,.record-filename{display:block;color:var(--muted);font-size:.7rem}.record-category{color:var(--accent);letter-spacing:.08em;text-transform:uppercase}.record-actions{display:flex;flex-wrap:wrap;gap:.5rem}.empty-state{padding:1.5rem;border:1px dashed var(--line);color:var(--muted)}.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}@media(max-width:700px){.form-grid{grid-template-columns:1fr}.archive-toolbar,.records-heading{align-items:flex-start;flex-direction:column}.record-filters{width:100%;flex-direction:column;max-width:none}.record-card{align-items:flex-start;flex-direction:column}.record-actions{width:100%}}
/* Interactive location registry */
.location-page{max-width:1600px;margin:0 auto}.location-toolbar{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin:3rem 0 1.4rem}.location-toolbar h2{font-size:clamp(1.9rem,3vw,2.8rem)}.location-layout{display:grid;grid-template-columns:minmax(250px,340px) minmax(0,1fr);gap:1.2rem;align-items:start}.location-sidebar,.map-panel{border:1px solid var(--line);background:var(--paper-light);padding:1rem}.location-sidebar .search-label{margin-top:0}.location-sidebar .search-input{margin:.4rem 0 1rem}.location-list{display:grid;gap:.45rem;max-height:620px;overflow:auto}.location-item{display:block;width:100%;padding:.85rem 1rem;text-align:left;border:1px solid var(--line);background:rgba(203,185,154,.35);color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s}.location-item strong,.location-item small{display:block}.location-item strong{font:1.08rem var(--serif)}.location-item small{margin-top:.2rem;color:var(--muted);font-size:.72rem}.location-item:hover,.location-item.is-selected{background:var(--paper-dark);border-color:var(--accent)}#family-map{width:100%;height:520px;background:#d8cfbd;border:1px solid var(--line);z-index:1}.map-caption{margin:.55rem 0 1rem;color:var(--muted);font-size:.7rem}.location-detail{border-top:1px solid var(--line);padding-top:1rem}.location-detail h3{margin:0;font-size:1.6rem}.location-detail>p{color:var(--muted)}.location-record-heading{margin:1.2rem 0 .5rem;color:var(--accent)!important;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.location-record{padding:.8rem 0;border-top:1px solid var(--line)}.location-record strong,.location-record small{display:block}.location-record small{color:var(--muted);font-size:.7rem;text-transform:capitalize}.location-record p{margin:.3rem 0 0;color:var(--muted);font-size:.86rem;white-space:pre-wrap}.record-location{margin:.3rem 0}.record-location-link{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.record-location-link:hover{color:var(--accent-dark)}@media(max-width:850px){.location-layout{grid-template-columns:1fr}.location-list{max-height:280px}.location-toolbar{align-items:flex-start;flex-direction:column}#family-map{height:390px}}@media(max-width:560px){#family-map{height:330px}.location-sidebar,.map-panel{padding:.7rem}}

/* Record search and image previews */
.home-search-page{max-width:1500px;margin:0 auto}.home-search-box{margin:2.2rem 0 1.2rem;padding:clamp(1.2rem,3vw,2rem);border:1px solid var(--line);background:var(--paper-light)}.search-fields{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:1rem}.search-fields label{display:block;margin-bottom:.4rem;color:var(--accent-dark);font-size:.78rem;font-weight:700}.search-fields input,.search-fields select{width:100%;min-height:48px;padding:.7rem .8rem;border:1px solid var(--line);border-radius:0;background:#e6d8bd;color:var(--ink);font:inherit}.record-card-expanded{align-items:stretch}.record-preview{width:100%;max-width:520px;margin-top:1rem;border:1px solid var(--line);background:#bba987;padding:.35rem}.record-preview img{display:block;width:100%;max-height:560px;object-fit:contain}.record-card-expanded .record-preview{flex:0 1 42%}.record-card-expanded>div:first-child{flex:1}.location-record .record-preview{max-width:420px}.record-actions a{display:inline-flex;align-items:center;text-decoration:none}.primary-nav{flex-wrap:wrap;justify-content:flex-end}.primary-nav a{font-size:.78rem}.site-header{align-items:flex-start}.site-header .wordmark{flex-shrink:0}@media(max-width:1000px){.search-fields{grid-template-columns:1fr 1fr}.search-fields>div:first-child{grid-column:1/-1}.primary-nav{gap:.6rem 1rem}}@media(max-width:700px){.search-fields{grid-template-columns:1fr}.search-fields>div:first-child{grid-column:auto}.record-card-expanded{flex-direction:column}.record-card-expanded .record-preview{max-width:100%}}
body[data-page="category"] .upload-card,body[data-page="category"] .notice,body[data-page="upload"] .records-heading,body[data-page="upload"] #records-list{display:none!important}
body[data-page="upload"] .upload-card{max-width:900px}

/* Archive: folders stay together, selected contents open alongside */
.folder-archive-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:1.5rem;align-items:start;margin:2rem 0}
.archive-folders{padding:1.25rem;border:1px solid var(--line);background:#d7c5a5;position:sticky;top:1rem}
.archive-folders h3{margin:.2rem 0 1rem;font-family:Georgia,serif;font-size:1.35rem;font-weight:500}
.archive-folder{display:block;width:100%;padding:.85rem .9rem;margin:.3rem 0;text-align:left;border:1px solid transparent;background:transparent;color:var(--ink);font:inherit;cursor:pointer;transition:background .18s,border-color .18s}
.archive-folder:before{content:"";display:inline-block;width:14px;height:10px;margin-right:.7rem;border:1px solid #806b4b;border-radius:2px 2px 0 0;background:#c2a77b;vertical-align:middle}
.archive-folder:hover,.archive-folder.is-active{background:#eee3ce;border-color:#a58d67}
.archive-folder.is-active{font-weight:700}
.archive-folder-content{min-width:0;padding:1.25rem;border:1px solid var(--line);background:rgba(239,227,204,.48)}
.archive-folder-content .records-heading{margin-top:0}
.archive-folder-content .records-list{margin-top:1rem}
@media(max-width:760px){.folder-archive-layout{grid-template-columns:1fr}.archive-folders{position:static}.archive-folders button{width:100%}.archive-folder-content{padding:.8rem}}

/* Homepage archive activity log */
.activity-log-section{padding:clamp(3rem,7vw,5rem) clamp(1.25rem,8vw,8rem);border-top:1px solid var(--line);background:var(--paper-light)}.activity-log-section .section-heading{margin-bottom:1.5rem}.activity-log-section h2{font-size:clamp(2.2rem,4vw,3.4rem)}.activity-log-list{display:grid;gap:.65rem;max-width:1000px}.activity-log-item{padding:1rem 1.2rem;border:1px solid var(--line);background:rgba(203,185,154,.32)}.activity-log-record h3{margin:.2rem 0 .35rem;font:1.35rem var(--serif)}.activity-log-by,.activity-log-time{display:block;margin:.15rem 0;color:var(--muted);font-size:.82rem}.activity-log-time{font-size:.75rem;letter-spacing:.025em}

/* Visitor attachment requests and owner inbox */
.owner-entry{margin:1.5rem 0}.owner-tools{display:flex;gap:.6rem;align-items:center}.site-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:1rem;background:rgba(24,17,11,.72);overflow:auto}.site-modal[hidden]{display:none}.modal-card{position:relative;width:min(100%,520px);max-height:90vh;overflow:auto;padding:2rem;background:var(--paper-light);border:1px solid var(--line);box-shadow:0 16px 60px rgba(0,0,0,.28)}.modal-wide{width:min(100%,760px)}.modal-card h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:.8rem}.modal-close{position:absolute;top:.5rem;right:.8rem;border:0;background:transparent;color:var(--ink);font-size:1.8rem;cursor:pointer}.modal-card form{display:grid;gap:.6rem}.modal-card label{font-size:.8rem;font-weight:700;color:var(--accent-dark)}.modal-card input{min-height:44px;padding:.7rem;border:1px solid var(--line);background:#e6d8bd;color:var(--ink);font:inherit}.modal-card .button{justify-self:start;margin-top:.5rem;cursor:pointer;font:inherit}.inbox-list{display:grid;gap:.7rem}.inbox-item{padding:1rem;border:1px solid var(--line);background:rgba(203,185,154,.35)}.inbox-item h3{margin:0;font-size:1.3rem}.inbox-item p{margin:.3rem 0;color:var(--muted);font-size:.85rem}.approved-preview{margin-top:1rem;max-height:65vh;overflow:auto}.approved-preview img{display:block;max-width:100%;height:auto;margin:auto;border:1px solid var(--line)}.approved-preview iframe{display:block;width:100%;height:65vh;border:1px solid var(--line);background:white}.approved-preview a{display:inline-block;margin-top:.7rem}


/* Global theme toggle, page transitions, and tactile button feedback */
.theme-toggle{flex:0 0 auto;min-height:38px;padding:.45rem .75rem;border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:.78rem;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s}
.theme-toggle:hover{background:var(--accent-dark);color:var(--paper-light);border-color:var(--accent-dark);transform:translateY(-2px)}
button,.button,.small-button,.archive-folder,.location-item{transition-property:transform,background-color,color,border-color,box-shadow;transition-duration:.2s}
button:active,.button:active,.small-button:active,.archive-folder:active,.location-item:active{transform:scale(.97)}
.page-enter{opacity:0;transform:translateY(8px)}
.page-enter-active{opacity:1;transform:none;transition:opacity .28s ease,transform .28s ease}
.page-leave{opacity:0;transform:translateY(-5px);transition:opacity .15s ease,transform .15s ease}
html[data-theme="dark"]{color-scheme:dark;--paper:#211e1a;--paper-light:#302a23;--paper-dark:#191613;--ink:#eee5d7;--muted:#b8aa96;--line:#655744;--accent:#d0a978;--accent-dark:#4b3827}
html[data-theme="dark"] body{background:var(--paper);color:var(--ink)}
html[data-theme="dark"] .site-header,html[data-theme="dark"] .site-footer{border-color:var(--line)}
html[data-theme="dark"] .wordmark small,html[data-theme="dark"] .primary-nav a{color:var(--muted)}
html[data-theme="dark"] .monogram{border-color:var(--accent);color:var(--accent)}
html[data-theme="dark"] .folio-card,html[data-theme="dark"] .auth-card,html[data-theme="dark"] .upload-card,html[data-theme="dark"] .home-search-box,html[data-theme="dark"] .location-sidebar,html[data-theme="dark"] .map-panel,html[data-theme="dark"] .archive-folders{background:var(--paper-light);color:var(--ink)}
html[data-theme="dark"] .generation,html[data-theme="dark"] .generation.current,html[data-theme="dark"] .record-card,html[data-theme="dark"] .location-item{background:#393127;color:var(--ink)}
html[data-theme="dark"] .chronology-section{background:#29241e}
html[data-theme="dark"] .research-band,html[data-theme="dark"] .ticker{background:#191613;color:var(--ink)}
html[data-theme="dark"] .research-band p,html[data-theme="dark"] .ticker{color:var(--muted)}
html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea,html[data-theme="dark"] .search-input,html[data-theme="dark"] .search-fields input,html[data-theme="dark"] .search-fields select,html[data-theme="dark"] .auth-card input,html[data-theme="dark"] .upload-card input,html[data-theme="dark"] .upload-card select,html[data-theme="dark"] .upload-card textarea,html[data-theme="dark"] .record-filters input,html[data-theme="dark"] .record-filters select{background:#211e1a;color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .button-dark{background:#d0a978;color:#21180f;border-color:#d0a978}
html[data-theme="dark"] .button-dark:hover{background:#e0bd8d}
html[data-theme="dark"] .small-button,html[data-theme="dark"] .menu-toggle,html[data-theme="dark"] .theme-toggle{color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .small-button:hover,html[data-theme="dark"] .theme-toggle:hover{background:var(--accent);color:#21180f}
html[data-theme="dark"] .paper-card:hover,html[data-theme="dark"] .archive-folder:hover{background:#393127}
html[data-theme="dark"] .notice{background:var(--paper-light);color:var(--muted)}
html[data-theme="dark"] #family-map{background:#292722}
@media(max-width:800px){.site-header .theme-toggle{margin-left:auto}.site-header .menu-toggle{order:2}.site-header .primary-nav{order:3}}
@media(prefers-reduced-motion:reduce){.page-enter,.page-enter-active,.page-leave{opacity:1;transform:none;transition:none!important}.theme-toggle,button,.button,.small-button,.archive-folder,.location-item{transition:none!important}}


/* Universal hamburger menu and display settings */
.site-header{position:relative}
.site-menu-toggle{display:inline-grid;place-items:center;width:44px;height:42px;padding:0;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:1.55rem;line-height:1;cursor:pointer;order:10}
.site-menu-toggle:hover{background:var(--accent-dark);color:var(--paper-light);transform:translateY(-2px)}
.site-menu-panel{position:absolute;z-index:1200;right:0;top:calc(100% + .5rem);width:min(320px,calc(100vw - 2rem));padding:.8rem;background:var(--paper-light);border:1px solid var(--line);box-shadow:0 14px 36px rgba(0,0,0,.2)}
.site-menu-panel[hidden]{display:none}
.site-menu-nav{display:grid;gap:.15rem;margin:0 0 .6rem;padding:0;border:0}
.site-menu-nav a{display:block;padding:.7rem .8rem;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}
.site-menu-nav a:hover{background:rgba(203,185,154,.22)}
.site-menu-action{display:block;width:100%;padding:.8rem;text-align:left;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;cursor:pointer}
.site-menu-action:hover{background:rgba(203,185,154,.22)}
.site-menu-action:first-of-type{margin-top:.25rem}
#site-settings-modal select{width:100%;min-height:44px;margin:.35rem 0 1rem;padding:.6rem;border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit}
html[data-text-size="large"] body{font-size:1.1rem}
html[data-text-size="large"] p,html[data-text-size="large"] li,html[data-text-size="large"] label,html[data-text-size="large"] input,html[data-text-size="large"] select,html[data-text-size="large"] textarea{font-size:1.08em}
html.reduce-motion *,html.reduce-motion *::before,html.reduce-motion *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
html[data-theme="dark"] .site-menu-panel,html[data-theme="dark"] #site-settings-modal .modal-card{background:var(--paper-light);color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .site-menu-nav a,html[data-theme="dark"] .site-menu-action{color:var(--ink);border-color:var(--line)}
@media(max-width:800px){.site-header{display:flex;align-items:center;flex-wrap:wrap}.site-menu-toggle{margin-left:auto}.site-menu-panel{right:0}.site-header .primary-nav{display:grid;position:static;box-shadow:none;background:transparent;width:auto}}

/* Refined editorial design system */
:root{--paper:#f3eee7;--paper-light:#fffaf5;--paper-dark:#e7d7ce;--ink:#2b1b1b;--muted:#705e5b;--line:#d4bdb6;--accent:#8e2638;--accent-dark:#541522;--wine:#762033;--wine-soft:#a64a59;--serif:Georgia,"Times New Roman",serif}
body{background:var(--paper);color:var(--ink)}
.site-header{position:relative;z-index:5;min-height:78px;background:#fffaf6;border-bottom:1px solid #dfc9c2;box-shadow:0 4px 18px rgba(65,25,30,.045)}
.wordmark{gap:.85rem}.monogram{width:42px;height:42px;border:1px solid var(--accent);background:var(--accent-dark);color:#fff8f1;border-radius:3px;font-weight:bold}.wordmark strong{color:var(--accent-dark);font-size:1.45rem}.wordmark small{color:#80666a}
.primary-nav a{padding:.55rem .72rem;border-radius:3px;transition:background .2s,color .2s}.primary-nav a:hover,.primary-nav a[aria-current=page]{background:#f3e4e1;color:var(--accent-dark)}
.button,.small-button{border-radius:4px;font-weight:700;letter-spacing:.01em}.button-dark{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff9f4;box-shadow:0 3px 8px rgba(84,21,34,.12)}.button-dark:hover{background:var(--wine);color:white}
.small-button{background:#fffaf6;border-color:#cba9a4;color:var(--accent-dark);padding:.62rem .9rem}.small-button:hover{background:#f4e3e1;border-color:var(--accent);color:var(--accent-dark)}
.paper-card,.auth-card,.upload-card,.home-search-box,.location-sidebar,.map-panel,.folio-card,.record-card,.generation,.archive-folder,.site-modal .modal-card{border-radius:6px;box-shadow:0 7px 22px rgba(65,25,30,.055)}
.auth-card,.upload-card,.home-search-box{border-color:#dec7c0;background:#fffaf6}
input,select,textarea{border-radius:4px!important}
.archive-page{max-width:1500px;margin:0 auto}
.archive-toolbar,.records-heading{padding-bottom:1rem;border-bottom:1px solid #dfc9c2}
.archive-folders{padding:1.1rem;border:1px solid #dec7c0;border-radius:6px;background:#fffaf6;box-shadow:0 7px 22px rgba(65,25,30,.045)}
.archive-folder{border:1px solid transparent;border-radius:4px;margin:.2rem 0;padding:.85rem .9rem!important;background:transparent}
.archive-folder:hover,.archive-folder.is-active{background:#f5e6e3;border-color:#e1c6c2;color:var(--accent-dark)}
.record-card{background:#fffaf6;border-color:#e2cec8}
.empty-state{border-radius:5px;background:#fffaf6}
.site-footer{background:#fffaf6;border-top:1px solid #dfc9c2}
.site-footer .monogram{background:var(--accent-dark);color:#fff}
.brand-banner{position:relative;overflow:hidden;min-height:300px;display:grid;place-items:center;padding:3.6rem 1.5rem;background:linear-gradient(120deg,rgba(56,13,26,.97),rgba(126,31,53,.94) 58%,rgba(151,62,70,.9)),radial-gradient(ellipse at 80% 15%,#c77b76,transparent 48%);color:#fff8f2;text-align:center;border-bottom:5px solid #c69a78}
.brand-banner:before,.brand-banner:after{content:"";position:absolute;pointer-events:none;border:1px solid rgba(255,235,218,.22);inset:18px 22px}
.brand-banner:after{inset:27px 31px;border-color:rgba(255,235,218,.12)}
.brand-banner-inner{position:relative;z-index:1;max-width:900px}
.brand-banner-kicker{margin:0 0 1rem;color:#e9c7b8;font-size:.7rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase}
.brand-banner h1{max-width:none;margin:0;color:#fff9f4;font-size:clamp(2.7rem,7vw,5.6rem);letter-spacing:-.035em;line-height:1.04;text-shadow:0 3px 18px rgba(20,0,5,.22)}
.brand-banner-inner>p:last-child{max-width:650px;margin:1.1rem auto 0;color:#f1dcd4;font-size:1rem;letter-spacing:.025em}
.banner-edit-button{position:absolute;z-index:2;right:clamp(28px,5vw,64px);bottom:27px;width:42px;height:42px;border:1px solid rgba(255,255,255,.6);border-radius:50%;background:#fff8f0;color:var(--accent-dark);font-size:1.25rem;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.2)}
.banner-edit-button:hover{background:#f1d8ce;transform:translateY(-2px)}
#banner-editor .modal-card form{display:grid;gap:.5rem}
#banner-editor label{margin-top:.65rem;color:var(--accent-dark);font-size:.8rem;font-weight:700}
#banner-editor input,#banner-editor textarea{width:100%;padding:.8rem;border:1px solid var(--line);background:#fffaf6;color:var(--ink);font:inherit}
#banner-editor .button{justify-self:start;margin-top:.8rem}
@media(max-width:800px){.brand-banner{min-height:255px;padding:3.1rem 1.3rem}.brand-banner:before{inset:12px}.brand-banner:after{inset:20px}.banner-edit-button{right:25px;bottom:20px;width:38px;height:38px}}
@media(max-width:560px){.brand-banner{min-height:230px}.brand-banner-inner>p:last-child{max-width:290px;font-size:.9rem}.brand-banner-kicker{font-size:.6rem}.site-header{padding:1rem 1.1rem}}

/* Keep the refreshed burgundy palette compatible with the site's dark theme */
html[data-theme="dark"] .site-header,html[data-theme="dark"] .site-footer{background:#29231f;border-color:#655744}
html[data-theme="dark"] .wordmark strong{color:#f0d9c5}
html[data-theme="dark"] .wordmark small{color:#c2ad9e}
html[data-theme="dark"] .primary-nav a:hover,html[data-theme="dark"] .primary-nav a[aria-current=page]{background:#493039;color:#f5dcd5}
html[data-theme="dark"] .auth-card,html[data-theme="dark"] .upload-card,html[data-theme="dark"] .home-search-box,html[data-theme="dark"] .archive-folders,html[data-theme="dark"] .record-card,html[data-theme="dark"] .empty-state{background:var(--paper-light);color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .archive-folder:hover,html[data-theme="dark"] .archive-folder.is-active{background:#493039;border-color:#80535b;color:#f5dcd5}
html[data-theme="dark"] .button-dark{background:#a64a59;border-color:#a64a59;color:#fff8f2}
html[data-theme="dark"] .button-dark:hover{background:#c16a75;color:#fff}
html[data-theme="dark"] .small-button{background:#302a23;border-color:#80666a;color:#f1dcd4}
html[data-theme="dark"] .small-button:hover{background:#493039;color:#fff}
html[data-theme="dark"] .brand-banner{border-bottom-color:#a98468}
html[data-theme="dark"] #banner-editor .modal-card{background:var(--paper-light);color:var(--ink)}
html[data-theme="dark"] #banner-editor label{color:#e2b6ad}
html[data-theme="dark"] #banner-editor input,html[data-theme="dark"] #banner-editor textarea{background:#211e1a;color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .banner-edit-button{background:#302a23;color:#f1dcd4;border-color:#9c7777}
html[data-theme="dark"] .archive-toolbar,html[data-theme="dark"] .records-heading{border-color:var(--line)}

/* Custom banner photo, softened background, and selectable fade */
.brand-banner{isolation:isolate;background:linear-gradient(120deg,rgba(56,13,26,.97),rgba(126,31,53,.94) 58%,rgba(151,62,70,.9)),radial-gradient(ellipse at 80% 15%,#c77b76,transparent 48%)}
.brand-banner:before{z-index:0}
.brand-banner:after{z-index:2}
.brand-banner.has-background-image{background:#38202a}
.brand-banner.has-background-image:before{inset:-20px;border:0;background-image:var(--banner-image);background-position:center;background-size:cover;filter:blur(20px);transform:scale(1.06);opacity:.95}
.brand-banner.has-background-image:after{inset:0;border:0;background:linear-gradient(110deg,rgba(0,0,0,.72),rgba(0,0,0,.22))}
.brand-banner.has-background-image[data-fade="white"]:after{background:linear-gradient(110deg,rgba(255,255,255,.82),rgba(255,255,255,.38))}
.brand-banner.has-background-image[data-fade="none"]:after{background:transparent}
.brand-banner.has-background-image[data-fade="white"] .brand-banner-kicker{color:#4b2029}
.brand-banner.has-background-image[data-fade="white"] h1{color:#28191a;text-shadow:0 2px 12px rgba(255,255,255,.28)}
.brand-banner.has-background-image[data-fade="white"] .brand-banner-inner>p:last-child{color:#382326}
#banner-editor input[type="file"]{width:100%;padding:.55rem;background:#fffaf6;border:1px solid var(--line);color:var(--ink);font:inherit}
html[data-theme="dark"] #banner-editor input[type="file"]{background:#211e1a;color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .brand-banner.has-background-image{background:#211e1a}


/* Motion system: tactile navigation, layered surfaces, and gentle page choreography */
:root{--motion-fast:180ms;--motion-mid:360ms;--motion-slow:700ms;--motion-ease:cubic-bezier(.2,.75,.25,1)}
.site-header{position:relative;z-index:20;gap:1.2rem;background:rgba(223,208,179,.52);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background var(--motion-mid) ease,border-color var(--motion-mid) ease}
.wordmark{transition:transform var(--motion-mid) var(--motion-ease)}
.wordmark:hover{transform:translateY(-2px)}
.monogram{position:relative;overflow:hidden;transition:color var(--motion-mid),background var(--motion-mid),transform var(--motion-mid);isolation:isolate}
.monogram:after{content:"";position:absolute;inset:0;background:var(--accent);transform:translateY(105%);transition:transform var(--motion-mid) var(--motion-ease);z-index:-1}
.wordmark:hover .monogram{color:var(--paper-light);transform:rotate(-5deg)}
.wordmark:hover .monogram:after{transform:translateY(0)}
.primary-nav{gap:.55rem;align-items:center}
.primary-nav a{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:.55rem .95rem;border:1px solid rgba(93,53,31,.35);background:rgba(239,227,204,.42);color:var(--ink);font-size:.76rem;letter-spacing:.035em;text-decoration:none;overflow:hidden;isolation:isolate;transition:color var(--motion-mid),border-color var(--motion-mid),background var(--motion-mid),transform var(--motion-mid) var(--motion-ease),box-shadow var(--motion-mid)}
.primary-nav a:before{content:"";position:absolute;inset:0;background:var(--accent-dark);transform:scaleY(0);transform-origin:bottom;transition:transform var(--motion-mid) var(--motion-ease);z-index:-1}
.primary-nav a:hover,.primary-nav a:focus-visible,.primary-nav a[aria-current=page]{color:var(--paper-light);border-color:var(--accent-dark);background:var(--accent-dark);box-shadow:0 5px 14px rgba(46,29,19,.16);transform:translateY(-2px)}
.primary-nav a:hover:before,.primary-nav a:focus-visible:before,.primary-nav a[aria-current=page]:before{transform:scaleY(1)}
.primary-nav a:active{transform:translateY(0) scale(.97)}
.primary-nav a[aria-current=page]{box-shadow:inset 0 -3px 0 #b58a60,0 4px 12px rgba(46,29,19,.12)}
.site-menu-toggle,.menu-toggle{position:relative;min-width:44px;min-height:42px;border:1px solid var(--accent);background:var(--paper-light);color:var(--accent-dark);cursor:pointer;transition:transform var(--motion-mid),background var(--motion-mid),color var(--motion-mid),box-shadow var(--motion-mid)}
.site-menu-toggle:hover,.menu-toggle:hover{background:var(--accent-dark);color:var(--paper-light);transform:translateY(-2px);box-shadow:0 5px 14px rgba(46,29,19,.18)}
.site-menu-toggle[aria-expanded=true]{background:var(--accent-dark);color:var(--paper-light);transform:rotate(90deg)}
.site-menu-panel{border:1px solid var(--line);background:var(--paper-light);box-shadow:0 16px 38px rgba(35,24,15,.2);transform-origin:top right;animation:menu-pop .24s var(--motion-ease) both}
.site-menu-panel[hidden]{display:none}
.site-menu-action{transition:background var(--motion-fast),padding-left var(--motion-fast),color var(--motion-fast)}
.site-menu-action:hover{background:rgba(173,150,116,.3);padding-left:1.15rem;color:var(--accent)}
.button,.small-button,.add-record-trigger,.modal-close,.record-actions button,.record-actions a{position:relative;overflow:hidden;transition:transform var(--motion-mid) var(--motion-ease),box-shadow var(--motion-mid),background var(--motion-mid),color var(--motion-mid),border-color var(--motion-mid)}
.button:after,.small-button:after,.add-record-trigger:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.22) 48%,transparent 76%);transform:translateX(-130%);transition:transform .65s var(--motion-ease);pointer-events:none}
.button:hover:after,.small-button:hover:after,.add-record-trigger:hover:after{transform:translateX(130%)}
.button:active,.small-button:active,.record-actions button:active{transform:scale(.97)}
.button-dark{box-shadow:0 4px 0 rgba(31,19,12,.17)}
.button-dark:hover{box-shadow:0 8px 18px rgba(46,29,19,.22);transform:translateY(-3px)}
.small-button:hover{background:var(--accent-dark);color:var(--paper-light);border-color:var(--accent-dark);transform:translateY(-2px);box-shadow:0 5px 12px rgba(46,29,19,.13)}
.paper-card,.folio-card,.auth-card,.upload-card,.home-search-box,.archive-folder-content,.archive-folders,.map-panel,.location-sidebar,.record-card,.activity-log-item,.generation,.notice{transition:transform var(--motion-mid) var(--motion-ease),box-shadow var(--motion-mid),border-color var(--motion-mid),background-color var(--motion-mid)}
.paper-card:hover,.record-card:hover,.activity-log-item:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(55,38,20,.1);border-color:var(--accent)}
.archive-folder{position:relative;overflow:hidden;transition:background var(--motion-mid),border-color var(--motion-mid),padding-left var(--motion-mid),transform var(--motion-mid)}
.archive-folder:hover{padding-left:1.15rem;transform:translateX(3px)}
.archive-folder:after{content:"";position:absolute;left:0;top:15%;bottom:15%;width:3px;background:var(--accent);transform:scaleY(0);transition:transform var(--motion-mid);transform-origin:center}
.archive-folder:hover:after,.archive-folder.is-active:after{transform:scaleY(1)}
.location-item:hover,.location-item.is-selected{transform:translateX(3px);box-shadow:inset 3px 0 var(--accent)}
.search-input,.search-fields input,.search-fields select,.auth-card input,.upload-card input,.upload-card select,.upload-card textarea,.record-filters input,.record-filters select{transition:border-color var(--motion-fast),box-shadow var(--motion-fast),background var(--motion-fast)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(93,53,31,.14)}
.site-modal{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);animation:veil-in .2s ease both}
.modal-card{animation:modal-rise .38s var(--motion-ease) both;box-shadow:0 24px 80px rgba(0,0,0,.3)}
.modal-close:hover{color:var(--paper-light);background:var(--accent-dark);transform:rotate(90deg)}
.record-preview img{transition:transform .55s var(--motion-ease),filter .55s}
.record-preview:hover img{transform:scale(1.015);filter:contrast(1.04)}
.ticker i{animation:dot-pulse 2.8s ease-in-out infinite}
.ticker i:nth-of-type(2n){animation-delay:.7s}
.hero .eyebrow,.hero h1,.hero .hero-text,.hero .hero-actions,.folio-card{animation:content-rise .75s var(--motion-ease) both}
.hero h1{animation-delay:.08s}.hero .hero-text{animation-delay:.16s}.hero .hero-actions{animation-delay:.23s}.folio-card{animation-delay:.18s}
.page-enter{opacity:0;transform:translateY(8px)}
.page-enter.page-enter-active{opacity:1;transform:none;transition:opacity .35s ease,transform .45s var(--motion-ease)}
.page-leave{opacity:0;transform:translateY(-5px);transition:opacity .15s ease,transform .15s ease}
.reveal{transform:translateY(26px) scale(.99);filter:blur(2px);transition:opacity .75s ease,transform .75s var(--motion-ease),filter .75s ease}
.reveal.is-visible{transform:none;filter:none}
@keyframes content-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes modal-rise{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes veil-in{from{opacity:0}to{opacity:1}}
@keyframes menu-pop{from{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes dot-pulse{0%,100%{opacity:.45;transform:scale(.8)}50%{opacity:1;transform:scale(1.35)}}
@media(max-width:1000px){.primary-nav{gap:.45rem}.primary-nav a{min-height:40px;padding:.48rem .7rem;font-size:.72rem}}
@media(max-width:800px){.primary-nav{align-items:stretch}.primary-nav a{justify-content:flex-start;width:100%;min-height:44px;padding:.7rem .9rem;border:1px solid rgba(93,53,31,.25);border-top:1px solid rgba(93,53,31,.25);margin:.18rem 0}.primary-nav a:hover,.primary-nav a[aria-current=page]{padding-left:1.2rem}}
@media(prefers-reduced-motion:reduce){:root{--motion-fast:0ms;--motion-mid:0ms;--motion-slow:0ms}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.page-enter,.page-enter.page-enter-active,.page-leave{opacity:1;transform:none}}
html.reduce-motion *,html.reduce-motion *:before,html.reduce-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}


/* Banner image framing: show the uploaded photograph instead of aggressively cropping it */
.brand-banner.has-background-image{background-color:#38202a;background-image:linear-gradient(120deg,rgba(56,13,26,.28),rgba(126,31,53,.18))}
.brand-banner.has-background-image:before{inset:0;background-size:contain;background-position:center;background-repeat:no-repeat;filter:blur(5px);transform:none;opacity:1}
.brand-banner.has-background-image:after{inset:0}

/* ChronoSearch: horizontally scrolling, year-by-year archive timeline */
.chrono-main{max-width:1800px;margin:0 auto}.chrono-filter-panel{margin:2.4rem 0 1.2rem;padding:1.3rem;border:1px solid var(--line);background:var(--paper-light)}.chrono-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.chrono-filter-grid label{display:block;margin-bottom:.4rem;color:var(--accent-dark);font-size:.78rem;font-weight:700}.chrono-filter-grid input,.chrono-filter-grid select{width:100%;min-height:46px;padding:.7rem .8rem;border:1px solid var(--line);border-radius:0;background:#e6d8bd;color:var(--ink);font:inherit}.chrono-filter-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:.8rem}.chrono-filter-footer p{margin:0}.chrono-scroll-hint{margin:.8rem 0;color:var(--muted);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.chrono-timeline{display:flex;align-items:stretch;gap:1rem;min-height:240px;padding:1rem .2rem 1.5rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--accent) var(--paper-dark)}.chrono-year-column{flex:0 0 clamp(260px,27vw,360px);min-width:0;padding:.9rem;border:1px solid var(--line);background:rgba(239,227,204,.62);scroll-snap-align:start}.chrono-year-heading{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;padding-bottom:.65rem;margin-bottom:.8rem;border-bottom:1px solid var(--line)}.chrono-year-heading h2{font-size:2rem;color:var(--accent)}.chrono-year-heading span{color:var(--muted);font-size:.7rem}.chrono-record-card{padding:.85rem;margin:.65rem 0;border:1px solid rgba(139,118,88,.7);background:var(--paper-light);transition:transform .22s,box-shadow .22s}.chrono-record-card:hover{transform:translateY(-3px);box-shadow:4px 5px 0 rgba(80,58,35,.08)}.chrono-record-card h3{margin:.25rem 0 .45rem;font-size:1.2rem;line-height:1.25}.chrono-record-card p{margin:.35rem 0;color:var(--muted);font-size:.82rem;white-space:pre-wrap;overflow-wrap:anywhere}.chrono-record-card .chrono-record-location{color:var(--accent-dark);font-weight:700}.chrono-record-card .chrono-record-date{font-size:.74rem}.chrono-record-notes{max-height:7.2em;overflow:hidden}.chrono-timeline>.empty-state{min-width:100%}@media(max-width:850px){.chrono-filter-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.chrono-filter-grid{grid-template-columns:1fr}.chrono-filter-footer{align-items:flex-start;flex-direction:column}.chrono-year-column{flex-basis:82vw}.chrono-main{padding-top:2.5rem}}

/* Warm crimson archive palette: restore the classic red banner and remove the purple cast */
:root{--accent:#a32632;--accent-dark:#741923;--line:#9b7868;--motion-fast:220ms;--motion-mid:480ms;--motion-slow:900ms;--motion-ease:cubic-bezier(.16,1,.3,1)}
.brand-banner{background:linear-gradient(118deg,#761923 0%,#a32632 48%,#c34443 100%),radial-gradient(ellipse at 82% 12%,rgba(255,203,169,.22),transparent 48%);border-bottom-color:#d2a16f}
.brand-banner:before{border-color:rgba(255,238,218,.25)}
.brand-banner:after{border-color:rgba(255,238,218,.14)}
.brand-banner-kicker{color:#f2c9b2}
.brand-banner-inner>p:last-child{color:#f8e2d7}
html[data-theme="dark"] .brand-banner{background:linear-gradient(118deg,#64141d 0%,#8f202a 50%,#ad3436 100%);border-bottom-color:#b88b68}
html[data-theme="dark"] .brand-banner.has-background-image{background-color:#64141d}

/* Extra motion layer: depth, staggered entrances, timeline choreography, and accessible navigation */
html{scroll-padding-top:1rem}
body{animation:archive-page-arrive .7s cubic-bezier(.16,1,.3,1) both}
.site-header{animation:header-settle .8s cubic-bezier(.16,1,.3,1) both}
.site-header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;background:linear-gradient(90deg,transparent,var(--accent),#d7a66f,var(--accent),transparent);transform:scaleX(0);transform-origin:left;animation:header-rule 1.25s .2s cubic-bezier(.16,1,.3,1) forwards}
.brand-banner{animation:banner-arrive 1s cubic-bezier(.16,1,.3,1) both}
.brand-banner:before{animation:frame-in 1.2s .15s cubic-bezier(.16,1,.3,1) both}
.brand-banner-inner>*{animation:banner-copy 1s cubic-bezier(.16,1,.3,1) both}
.brand-banner-kicker{animation-delay:.12s}.brand-banner h1{animation-delay:.24s}.brand-banner-inner>p:last-child{animation-delay:.38s}
.primary-nav a{transform:translateY(0);transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,border-color .35s,background .35s,color .35s}
.primary-nav a:after{content:"";position:absolute;left:12%;right:12%;bottom:4px;height:2px;background:#e5b17c;transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.16,1,.3,1)}
.primary-nav a:hover:after,.primary-nav a:focus-visible:after,.primary-nav a[aria-current=page]:after{transform:scaleX(1)}
button,.button,.small-button,.archive-folder,.location-item,.chrono-record-card{will-change:transform}
.button:focus-visible,.small-button:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d18b50;outline-offset:4px}
.archive-toolbar,.records-heading,.section-heading,.home-search-box,.auth-card,.upload-card,.chrono-filter-panel{animation:surface-arrive .7s cubic-bezier(.16,1,.3,1) both}
.record-card,.activity-log-item,.location-item,.archive-folder,.chrono-year-column{animation:card-arrive .65s cubic-bezier(.16,1,.3,1) both}
.record-card:nth-child(2n),.activity-log-item:nth-child(2n){animation-delay:.06s}
.record-card:nth-child(3n),.activity-log-item:nth-child(3n){animation-delay:.12s}
.chrono-year-column{transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s,border-color .4s}
.chrono-year-column:hover{transform:translateY(-5px);box-shadow:0 16px 32px rgba(60,24,24,.12);border-color:var(--accent)}
.chrono-year-heading h2{position:relative;display:inline-block}
.chrono-year-heading h2:after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:2px;background:var(--accent);transition:right .45s cubic-bezier(.16,1,.3,1)}
.chrono-year-column:hover .chrono-year-heading h2:after{right:0}
.chrono-record-card{animation:card-arrive .55s cubic-bezier(.16,1,.3,1) both}
.chrono-record-card:hover{transform:translateY(-5px) scale(1.012);box-shadow:0 12px 24px rgba(60,24,24,.13);border-color:var(--accent)}
input,select,textarea{transition:background .3s,border-color .3s,box-shadow .3s,transform .3s}
input:focus,select:focus,textarea:focus{transform:translateY(-1px);box-shadow:0 0 0 3px rgba(163,38,50,.14),0 7px 16px rgba(80,30,30,.06)}
.site-modal{animation:veil-in .25s ease both}
.modal-card{animation:modal-cascade .5s cubic-bezier(.16,1,.3,1) both}
.site-menu-panel{animation:menu-cascade .35s cubic-bezier(.16,1,.3,1) both}
.site-menu-toggle[aria-expanded=true] span{display:inline-block;animation:menu-icon-turn .35s cubic-bezier(.16,1,.3,1)}
.site-footer{position:relative;overflow:hidden}
.site-footer:before{content:"";position:absolute;top:0;left:-45%;width:35%;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:footer-glint 8s ease-in-out infinite}
.ticker{position:relative;overflow:hidden}
.ticker:after{content:"";position:absolute;top:0;bottom:0;left:-35%;width:25%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);transform:skewX(-18deg);animation:ticker-glide 9s ease-in-out infinite}
.archive-scroll-progress{position:fixed;z-index:2000;top:0;left:0;width:100%;height:3px;pointer-events:none;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#741923,#bd4545,#dfa96f);box-shadow:0 1px 8px rgba(116,25,35,.25)}
.back-to-top{position:fixed;z-index:100;right:1.1rem;bottom:1.1rem;width:46px;height:46px;border:1px solid var(--accent);border-radius:50%;background:var(--accent-dark);color:#fff8f2;font-size:1.25rem;box-shadow:0 7px 20px rgba(40,15,15,.22);opacity:0;visibility:hidden;transform:translateY(14px) scale(.85);transition:opacity .3s,visibility .3s,transform .4s cubic-bezier(.16,1,.3,1),box-shadow .3s;cursor:pointer}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.back-to-top:hover{transform:translateY(-4px) scale(1.06);box-shadow:0 12px 26px rgba(40,15,15,.28)}
.motion-reveal{opacity:0;transform:translateY(24px) scale(.985);filter:blur(3px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),filter .8s}
.motion-reveal.motion-visible{opacity:1;transform:none;filter:none}
.motion-ripple{position:absolute;border-radius:50%;pointer-events:none;background:rgba(255,255,255,.34);transform:scale(0);animation:ripple-spread .65s ease-out forwards}
@keyframes archive-page-arrive{from{opacity:0}to{opacity:1}}
@keyframes header-settle{from{opacity:0;transform:translateY(-18px);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
@keyframes header-rule{to{transform:scaleX(1)}}
@keyframes banner-arrive{from{opacity:0;clip-path:inset(0 0 100% 0)}to{opacity:1;clip-path:inset(0)}}
@keyframes frame-in{from{inset:35px 42px;opacity:0}to{opacity:1}}
@keyframes banner-copy{from{opacity:0;transform:translateY(22px);filter:blur(7px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes surface-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes card-arrive{from{opacity:0;transform:translateY(16px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes modal-cascade{from{opacity:0;transform:translateY(28px) scale(.94);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
@keyframes menu-cascade{from{opacity:0;transform:translateY(-12px) scale(.94);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
@keyframes menu-icon-turn{to{transform:rotate(180deg)}}
@keyframes footer-glint{0%,55%,100%{left:-45%;opacity:0}65%{opacity:1}90%{left:110%;opacity:0}}
@keyframes ticker-glide{0%,65%,100%{left:-35%;opacity:0}72%{opacity:1}94%{left:120%;opacity:0}}
@keyframes ripple-spread{to{transform:scale(4);opacity:0}}
@media(prefers-reduced-motion:reduce){body,.site-header,.brand-banner,.brand-banner-inner>*,.brand-banner:before,.site-header:after,.site-footer:before,.ticker:after,.motion-reveal,.chrono-year-column,.chrono-record-card{animation:none!important;transition:none!important;filter:none!important;transform:none!important;clip-path:none!important}.motion-reveal{opacity:1}.back-to-top{transition:none}}
html.reduce-motion .motion-reveal{opacity:1;transform:none;filter:none}
@media(max-width:700px){.back-to-top{right:.75rem;bottom:.75rem;width:44px;height:44px}}

/* Record detail viewer, research confidence, and tactile micro-interactions */
.record-detail-trigger{display:inline-flex;margin-top:.65rem;padding:.42rem .7rem;border:1px solid var(--accent);background:transparent;color:var(--accent-dark);font:inherit;font-size:.78rem;cursor:pointer;transition:background .25s,color .25s,transform .25s}
.record-detail-trigger:hover{background:var(--accent-dark);color:white;transform:translateY(-2px)}
.confidence-badge{display:inline-flex;margin:.35rem .45rem .35rem 0;padding:.2rem .55rem;border:1px solid currentColor;border-radius:999px;font-size:.68rem;letter-spacing:.04em;text-transform:uppercase}
.confidence-confirmed{color:#28734b}.confidence-probable{color:#9a681d}.confidence-uncertain{color:#a45a25}.confidence-unverified{color:#a32632}.confidence-unassessed{color:var(--muted)}
.record-detail-card{max-height:92vh;overflow:auto}.detail-meta{margin:.4rem 0 1rem;color:var(--muted);font-size:.82rem}.detail-confidence{display:inline-block;margin-bottom:1rem;padding:.35rem .65rem;border:1px solid currentColor;font-size:.8rem}
.record-detail-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.85fr);gap:1.2rem;align-items:start}.record-detail-grid h3{margin:.25rem 0 .8rem}.detail-source,.detail-transcription{min-width:0;padding:1rem;border:1px solid var(--line);background:rgba(239,227,204,.45)}
.image-viewer-toolbar{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin-bottom:.6rem}.image-viewer-toolbar span{font-size:.78rem;color:var(--muted);font-variant-numeric:tabular-nums}
.detail-image-viewport{position:relative;display:flex;align-items:center;justify-content:center;height:min(58vh,620px);min-height:260px;overflow:hidden;background:#211e1a;border:1px solid var(--line);touch-action:none;cursor:grab}
.detail-image-viewport:active{cursor:grabbing}.detail-image-viewport img{max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;user-select:none;-webkit-user-drag:none;will-change:transform}.detail-image-viewport img[hidden]{display:none}
.image-viewer-hint{font-size:.72rem;color:var(--muted)}.detail-transcription pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.65;color:var(--ink)}
.detail-file-fallback{padding:.7rem 0}.approved-preview .approved-zoom-image{max-width:100%;max-height:75vh;object-fit:contain;cursor:zoom-in}
.location-route-tools{margin:0 0 .8rem;padding:.85rem;border:1px solid var(--line);background:var(--paper-light)}.location-route-tools p{margin:.25rem 0 .7rem;font-size:.82rem}
.button.is-saving,.small-button.is-saving{animation:save-pulse .7s ease}.upload-form-success{animation:success-pop .45s cubic-bezier(.16,1,.3,1)}
@keyframes save-pulse{50%{transform:scale(1.04);box-shadow:0 0 0 5px rgba(40,130,80,.13)}}@keyframes success-pop{0%{transform:scale(.97);opacity:.5}70%{transform:scale(1.015)}100%{transform:scale(1);opacity:1}}
@media(max-width:760px){.record-detail-grid{grid-template-columns:1fr}.detail-image-viewport{height:48vh;min-height:220px}.record-detail-card{padding:1rem}}
@media(prefers-reduced-motion:reduce){.record-detail-trigger,.detail-image-viewport img{transition:none!important;animation:none!important}}

/* Favorite archive micro-animations */
.archive-folder:before{content:"▱";display:inline-block;margin-right:.55rem;color:var(--accent);transition:transform .35s cubic-bezier(.16,1,.3,1)}
.archive-folder.is-active:before{content:"▰";transform:rotate(-8deg) scale(1.12)}
.record-card{animation:card-arrive .55s cubic-bezier(.16,1,.3,1) both}
.record-card.is-new-record{animation:new-record-glow 1.6s ease both}
.records-list{transition:opacity .2s ease}
.record-card .record-location-link:after{content:" ↗";display:inline-block;transition:transform .25s}
.record-card .record-location-link:hover:after{transform:translate(3px,-3px)}
.location-item.is-selected:before{content:"";display:inline-block;width:7px;height:7px;margin-right:.5rem;border-radius:50%;background:var(--accent);animation:map-pin-pulse 1.4s ease-in-out infinite}
#upload-message:not(:empty){transition:color .2s}
#upload-form button[type=submit]:not(:disabled):active{transform:scale(.97)}
@keyframes new-record-glow{0%{box-shadow:0 0 0 0 rgba(163,38,50,.35)}35%{box-shadow:0 0 0 7px rgba(163,38,50,.12)}100%{box-shadow:0 0 0 0 rgba(163,38,50,0)}}
@keyframes map-pin-pulse{0%,100%{box-shadow:0 0 0 0 rgba(163,38,50,.35)}50%{box-shadow:0 0 0 6px rgba(163,38,50,0)}}
@media(prefers-reduced-motion:reduce){.record-card,.archive-folder:before,.location-item.is-selected:before{animation:none!important;transition:none!important}}

.confidence-editor{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin:0 0 1rem;padding:.75rem;border:1px solid var(--line);background:rgba(239,227,204,.35)}
.confidence-editor label{font-size:.8rem;font-weight:700;color:var(--accent-dark)}
.confidence-editor select{min-height:40px;padding:.4rem .6rem;border:1px solid var(--line);background:var(--paper-light);color:var(--ink);font:inherit}
#confidence-save-status{font-size:.78rem;color:var(--muted)}

/* One consistent owner sign-in entry point across the public site */
.primary-nav .owner-sign-in-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin-left:.35rem;padding:.72rem 1.05rem;border:1px solid #741923;background:#741923;color:#fff8f2;font:inherit;font-size:.82rem;font-weight:800;letter-spacing:.035em;cursor:pointer;box-shadow:0 4px 12px rgba(70,20,25,.16);transition:transform .25s,background .25s,box-shadow .25s}
.primary-nav .owner-sign-in-button:hover{background:#a32632;transform:translateY(-2px);box-shadow:0 7px 17px rgba(70,20,25,.22)}
.owner-sign-in-card{max-width:480px}
@media(max-width:800px){.primary-nav .owner-sign-in-button{width:100%;margin:.35rem 0;min-height:48px;justify-content:flex-start}}


@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;500;600;700&family=IM+Fell+English:ital@0;1&family=Caveat:wght@400;500;600&family=Great+Vibes&display=swap');

/* Polish parish archive + family chronicle visual language */
:root{
 --paper:#e4d8bd;--paper-light:#eee5d2;--paper-dark:#c9b894;
 --ink:#292219;--muted:#625644;--line:#9b8766;
 --accent:#71333a;--accent-dark:#48252a;
 --serif:'EB Garamond',Georgia,'Times New Roman',serif;
 --sans:'EB Garamond',Georgia,'Times New Roman',serif;
}
html,body{background-color:var(--paper)}
body{
 font-family:var(--sans);font-size:17px;line-height:1.62;color:var(--ink);
 background-image:
  radial-gradient(ellipse at 4% 8%,rgba(94,65,35,.075),transparent 32%),
  radial-gradient(ellipse at 96% 92%,rgba(94,65,35,.07),transparent 34%),
  repeating-linear-gradient(0deg,rgba(88,66,39,.018) 0,rgba(88,66,39,.018) 1px,transparent 1px,transparent 5px);
 background-attachment:fixed;
}
h1,h2,h3,blockquote,.wordmark strong,.monogram,.generation strong,.archive-folder strong,.record-card h3,.location-item strong{
 font-family:'IM Fell English',Georgia,serif;font-weight:400;letter-spacing:0;
}
h1{font-size:clamp(2.9rem,5.8vw,5rem);line-height:1.04;letter-spacing:-.018em}
h2{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.08}
h3{font-size:1.55rem}
.wordmark strong{font-size:1.65rem}
.wordmark small,.eyebrow,.folio-label,.ticker,.timeline-date,.record-category,.folder-number,.search-label,.site-footer .footer-end{
 font-family:'EB Garamond',Georgia,serif;color:var(--accent-dark);letter-spacing:.105em;
}
.eyebrow,.folio-label,.record-category,.search-label{font-size:.72rem;font-weight:700;text-transform:uppercase}
.primary-nav a{font-family:'EB Garamond',Georgia,serif;font-size:.94rem;letter-spacing:.025em}
.site-header{border-bottom:3px double var(--line);background:rgba(238,229,210,.42)}
.site-footer{border-top:3px double var(--line)}
.monogram{border:1px solid var(--accent);color:var(--accent);background:rgba(238,229,210,.45)}
.hero{position:relative}
.hero-copy{position:relative}
.folio-card,.auth-card,.upload-card,.location-sidebar,.map-panel,.archive-folders,.archive-folder-content,.home-search-box,.chrono-filter-panel{
 background-color:var(--paper-light);
 background-image:linear-gradient(115deg,rgba(255,250,235,.35),transparent 55%),radial-gradient(ellipse at 95% 4%,rgba(104,76,43,.055),transparent 42%);
 border-color:var(--line);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),3px 5px 14px rgba(55,40,23,.055);
}
.folio-card{outline:1px solid var(--line);outline-offset:4px;position:relative}
.folio-card:before,.archive-folders:before{
 content:"";display:block;height:5px;margin:-.35rem 0 1rem;border-top:1px solid var(--line);border-bottom:1px solid rgba(155,135,102,.55)
}
.paper-card,.generation,.record-card,.location-item,.search-input,.auth-card input,.upload-card input,.upload-card select,.upload-card textarea,.record-filters input,.record-filters select,.search-fields input,.search-fields select,.modal-card input,.modal-card select{
 background-color:#e8ddc6;border-color:var(--line);color:var(--ink)
}
.paper-card,.generation,.record-card,.activity-log-item,.inbox-item{box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.button-dark,.primary-nav .owner-sign-in-button{background:var(--accent-dark);border-color:var(--accent-dark);color:#f4ead7}
.button-dark:hover,.primary-nav .owner-sign-in-button:hover{background:#63323a}
.notice,.chronology-section,.activity-log-section{background-color:rgba(201,184,148,.38)}
.research-band,.ticker{background-color:var(--paper-dark);color:var(--accent-dark)}
.archive-folder{font-family:'EB Garamond',Georgia,serif;font-size:1.05rem}
.archive-folder:before{color:var(--accent);background:#d2bd94;border-color:#9b8766}
.archive-folder:hover,.archive-folder.is-active{background:#e8ddc6;border-color:var(--line)}
.archive-folder-content{background-color:rgba(238,229,210,.76)}
.record-card,.activity-log-item,.inbox-item{background:rgba(238,229,210,.78);border-color:var(--line)}
.location-route-tools{background:rgba(238,229,210,.82)}
.detail-source,.detail-transcription{background:rgba(238,229,210,.78)}
.modal-card{background-color:var(--paper-light);background-image:linear-gradient(135deg,rgba(255,250,235,.35),transparent 60%)}
::selection{background:#71333a;color:#f4ead7}
a:hover,.text-link:hover,.small-button:hover{color:var(--accent)}
input,textarea,select{font-family:'EB Garamond',Georgia,serif}
input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:800px){.primary-nav a{font-size:1.02rem}}
@media(prefers-reduced-motion:reduce){body{background-attachment:scroll}}


/* Full-site motion suite: archival reveal, paper interactions, and gentle movement */
:root{--motion-quick:180ms;--motion-smooth:520ms;--motion-dramatic:820ms;--motion-ease:cubic-bezier(.2,.75,.25,1)}
@keyframes parchment-unfurl{0%{opacity:0;clip-path:inset(0 0 100% 0);transform:translateY(12px)}100%{opacity:1;clip-path:inset(0 0 0 0);transform:none}}
@keyframes ink-write{0%{opacity:0;transform:translateY(9px);filter:blur(2px)}65%{opacity:1;filter:blur(0)}100%{transform:none}}
@keyframes seal-stamp{0%{opacity:0;transform:scale(1.22) rotate(-5deg)}65%{opacity:1;transform:scale(.97) rotate(1deg)}100%{transform:scale(1) rotate(0)}}
@keyframes paper-lift{0%{transform:translateY(0);box-shadow:0 2px 5px rgba(55,35,20,.04)}100%{transform:translateY(-5px);box-shadow:0 13px 26px rgba(55,35,20,.13)}}
@keyframes ink-flash{0%,100%{text-shadow:none}45%{text-shadow:0 0 12px rgba(113,51,58,.22)}}
@keyframes modal-unfold{0%{opacity:0;transform:translateY(22px) scale(.975);clip-path:inset(0 0 100% 0)}100%{opacity:1;transform:none;clip-path:inset(0 0 0 0)}}
@keyframes veil-in{from{opacity:0}to{opacity:1}}
@keyframes button-press{0%{transform:scale(1)}45%{transform:scale(.95)}100%{transform:scale(1)}}
@keyframes line-draw{from{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}
@keyframes map-pin-arrive{0%{opacity:0;transform:translateY(-12px) scale(.7)}70%{opacity:1;transform:translateY(2px) scale(1.08)}100%{transform:none}}
@keyframes photo-develop{0%{opacity:0;filter:sepia(.5) blur(5px);transform:scale(.985)}100%{opacity:1;filter:none;transform:none}}
@keyframes gentle-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes focus-ink{0%{box-shadow:0 0 0 0 rgba(113,51,58,0)}100%{box-shadow:0 0 0 3px rgba(113,51,58,.12)}}
@keyframes ticker-drift{0%{background-position:0 0}100%{background-position:80px 0}}
.motion-reveal{opacity:0;transform:translateY(18px);filter:blur(1px);transition:opacity .7s var(--motion-ease),transform .7s var(--motion-ease),filter .7s var(--motion-ease)}
.motion-reveal.motion-visible{opacity:1;transform:none;filter:none}
.motion-reveal.motion-ink{animation:ink-write .78s var(--motion-ease) both}
.motion-reveal.motion-paper{animation:parchment-unfurl .8s var(--motion-ease) both}
.motion-reveal.motion-stamp{animation:seal-stamp .58s var(--motion-ease) both}
.site-header .wordmark{animation:ink-write .7s .08s both}
.site-header .primary-nav>*{animation:ink-write .48s both}
.site-header .primary-nav>*:nth-child(2){animation-delay:.08s}
.site-header .primary-nav>*:nth-child(3){animation-delay:.16s}
.site-header .primary-nav>*:nth-child(4){animation-delay:.24s}
.brand-banner{animation:parchment-unfurl .9s var(--motion-ease) both}
.brand-banner-inner>*{animation:ink-write .75s both}
.brand-banner-inner>*:nth-child(2){animation-delay:.12s}
.brand-banner-inner>*:nth-child(3){animation-delay:.24s}
.hero h1,.archive-page>h1{animation:ink-write .8s .08s both}
.eyebrow{animation:ink-write .55s both}
.section-heading h2,.section-heading .section-intro{animation:ink-write .65s both}
.section-heading:after{content:"";display:block;width:min(160px,35%);height:1px;margin-top:1rem;background:var(--line);animation:line-draw .8s .25s both}
.folio-card,.paper-card,.generation,.archive-folders,.archive-folder-content,.home-search-box,.chrono-filter-panel,.location-sidebar,.map-panel,.activity-log-item,.record-card,.inbox-item{transition:transform .35s var(--motion-ease),box-shadow .35s var(--motion-ease),border-color .35s,background-color .35s}
.paper-card:hover,.record-card:hover,.activity-log-item:hover,.inbox-item:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(55,35,20,.10)}
.folio-card:hover{transform:translateY(-4px) rotate(-.25deg);box-shadow:10px 14px 26px rgba(55,35,20,.12)}
.generation:hover{transform:scale(1.015);box-shadow:0 8px 18px rgba(55,35,20,.09)}
.archive-folder{position:relative;isolation:isolate;transition:transform .25s var(--motion-ease),background .25s,border-color .25s}
.archive-folder:after{content:"";position:absolute;left:.8rem;right:.8rem;bottom:5px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--motion-ease);z-index:-1}
.archive-folder:hover:after,.archive-folder.is-active:after{transform:scaleX(1)}
.archive-folder:hover{transform:translateX(4px)}
button,.button,.small-button,.site-menu-toggle,.theme-toggle{transition:transform .2s var(--motion-ease),box-shadow .25s,background-color .25s,color .25s,border-color .25s}
button:hover:not(:disabled),.button:hover,.small-button:hover,.site-menu-toggle:hover{box-shadow:0 5px 13px rgba(55,35,20,.12)}
button:active:not(:disabled),.button:active,.small-button:active{animation:button-press .24s ease}
a:not(.wordmark):not(.button){transition:color .2s,text-decoration-color .2s}
input,select,textarea{transition:border-color .2s,background-color .2s,box-shadow .25s}
input:focus,select:focus,textarea:focus{animation:focus-ink .25s ease-out}
.site-modal{animation:veil-in .2s ease both}
.site-modal:not([hidden]) .modal-card{animation:modal-unfold .42s var(--motion-ease) both}
.site-modal:not([hidden]) .modal-card>*{animation:ink-write .4s .08s both}
.modal-close:hover{transform:rotate(90deg) scale(1.08)}
.detail-image-viewport img,.record-preview img,.approved-preview img{animation:photo-develop .75s ease both}
.record-preview img:hover{transform:scale(1.025);transition:transform .45s var(--motion-ease)}
#family-map .leaflet-marker-icon{animation:map-pin-arrive .5s var(--motion-ease) both}
#family-map .leaflet-popup{animation:ink-write .25s ease both}
.location-item:hover{transform:translateX(3px)}
.location-item.is-selected{box-shadow:inset 3px 0 var(--accent),0 3px 10px rgba(55,35,20,.08)}
.archive-scroll-progress{transform-origin:left center;transition:transform .08s linear}
.back-to-top{transition:opacity .25s,transform .3s var(--motion-ease),background .2s}
.back-to-top.is-visible{animation:seal-stamp .35s var(--motion-ease) both}
.site-menu-panel:not([hidden]){transform-origin:top right;animation:modal-unfold .28s var(--motion-ease) both}
.site-menu-panel>*{animation:ink-write .3s both}
.site-menu-panel>*:nth-child(2){animation-delay:.06s}
.site-menu-panel>*:nth-child(3){animation-delay:.12s}
.ticker{background-image:repeating-linear-gradient(90deg,transparent 0 38px,rgba(113,51,58,.06) 38px 39px);animation:ticker-drift 18s linear infinite}
.folio-top,.folio-bottom{transition:letter-spacing .3s}
.folio-card:hover .folio-top,.folio-card:hover .folio-bottom{letter-spacing:.14em}
.archive-folder-content,.location-detail,.detail-transcription{animation:ink-write .45s var(--motion-ease) both}
.form-message:not(:empty){animation:ink-write .3s ease both}
#upload-message:not(:empty){padding:.35rem .5rem;border-left:2px solid var(--accent)}
.empty-state{animation:ink-write .5s ease both}
@media(hover:hover) and (pointer:fine){.monogram:hover{animation:seal-stamp .45s ease}.wordmark:hover .monogram{box-shadow:0 0 0 4px rgba(113,51,58,.09)}}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
 .motion-reveal{opacity:1!important;transform:none!important;filter:none!important}
 .brand-banner,.brand-banner-inner>*,.site-header .wordmark,.site-header .primary-nav>*{animation:none!important}
}


/* Public record thumbnails */
.record-thumbnail{width:100%;max-width:220px;aspect-ratio:4/3;overflow:hidden;background:rgba(115,83,54,.10);border:1px solid rgba(90,62,42,.22);display:flex;align-items:center;justify-content:center;margin:0 0 1rem;}
.record-thumbnail img{display:block;width:100%;height:100%;object-fit:contain;background:#e9dfcb;}
.record-thumbnail-placeholder{font-family:"IM Fell English",serif;letter-spacing:.12em;color:#765d48;font-size:.9rem;}
.location-record .record-preview img{width:100%;max-height:220px;object-fit:contain;background:#e9dfcb;}
@media(min-width:700px){.record-card-expanded{display:grid;grid-template-columns:minmax(130px,220px) 1fr;gap:1.25rem;}.record-card-expanded .record-thumbnail{grid-row:1 / span 2;max-width:none;margin:0;}}


/* Public record thumbnails */
.record-thumbnail{width:100%;max-width:220px;aspect-ratio:4/3;overflow:hidden;background:rgba(115,83,54,.10);border:1px solid rgba(90,62,42,.22);display:flex;align-items:center;justify-content:center;margin:0 0 1rem;}
.record-thumbnail img{display:block;width:100%;height:100%;object-fit:contain;background:#e9dfcb;}
.record-thumbnail-placeholder{font-family:"IM Fell English",serif;letter-spacing:.12em;color:#765d48;font-size:.9rem;}
.location-record .record-preview img{width:100%;max-height:220px;object-fit:contain;background:#e9dfcb;}
@media(min-width:700px){.record-card-expanded{display:grid;grid-template-columns:minmax(130px,220px) 1fr;gap:1.25rem;}.record-card-expanded .record-thumbnail{grid-row:1 / span 2;max-width:none;margin:0;}}


/* 2026 polish pass: consistent spacing, responsive controls, and slide-out motion */
:root{
  --motion-slide:cubic-bezier(.16,1,.3,1);
  --focus-ring:0 0 0 3px rgba(113,51,58,.16);
}
img{max-width:100%}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--accent);outline-offset:3px
}
button:disabled{cursor:wait;opacity:.65}
.site-header{gap:1.25rem}
.primary-nav{align-items:center}
.primary-nav a{padding:.35rem 0;text-underline-offset:4px}
.primary-nav a:hover{text-decoration:underline;text-decoration-color:var(--line)}
.archive-page,.home-search-page,.location-page{width:100%}
.archive-toolbar,.records-heading,.location-toolbar{flex-wrap:wrap}
.search-input,.search-fields input,.search-fields select,.record-filters input,.record-filters select,
.auth-card input,.upload-card input,.upload-card select,.upload-card textarea,.modal-card input,.modal-card select{
  border-radius:2px;min-width:0;max-width:100%
}
.search-input:focus,.search-fields input:focus,.search-fields select:focus,.record-filters input:focus,
.record-filters select:focus,.auth-card input:focus,.upload-card input:focus,.upload-card select:focus,
.upload-card textarea:focus,.modal-card input:focus,.modal-card select:focus{box-shadow:var(--focus-ring)}
.record-card{min-width:0;overflow-wrap:anywhere}
.record-card>*{min-width:0}
.record-card p,.detail-meta,.detail-transcription pre{overflow-wrap:anywhere}
.record-actions{align-items:center}
.record-actions .small-button,.record-actions a{min-height:40px;padding:.5rem .7rem}
.record-thumbnail{border-radius:2px;transition:transform .4s var(--motion-slide),box-shadow .4s}
.record-card:hover .record-thumbnail{box-shadow:0 5px 14px rgba(55,35,20,.12)}
.archive-folder-content{transform-origin:top left}
.archive-folder-content.is-opening{animation:drawer-enter .48s var(--motion-slide) both}
.archive-folder-content.is-closing{animation:drawer-exit .22s ease both}
.records-list.is-refreshing{animation:drawer-enter .32s var(--motion-slide) both}
.location-detail.is-opening{animation:drawer-enter .4s var(--motion-slide) both}
.location-sidebar,.map-panel{min-width:0}
.site-modal{overscroll-behavior:contain}
.modal-card{border-radius:2px}
.site-modal:not([hidden]) .modal-card{transform-origin:center top}
.site-menu-panel{z-index:100}
.back-to-top{z-index:50}
@keyframes drawer-enter{
  from{opacity:0;transform:translateX(18px) translateY(7px);clip-path:inset(0 0 0 12%)}
  to{opacity:1;transform:none;clip-path:inset(0)}
}
@keyframes drawer-exit{
  from{opacity:1;transform:none}
  to{opacity:0;transform:translateX(-8px)}
}
@keyframes nav-slide-down{
  from{opacity:0;transform:translateY(-8px);clip-path:inset(0 0 100% 0)}
  to{opacity:1;transform:none;clip-path:inset(0)}
}
@media(max-width:800px){
  .primary-nav.is-open{padding:.45rem 0 .8rem;animation:nav-slide-down .32s var(--motion-slide) both}
  .primary-nav a{width:100%;padding:.72rem .3rem}
  .archive-toolbar,.records-heading,.location-toolbar{gap:.85rem}
  .archive-toolbar .button,.records-heading .button,.location-toolbar .button{max-width:100%}
  .site-header{gap:.8rem}
}
@media(max-width:560px){
  body{font-size:16px}
  .section,.archive-page{padding-left:1rem;padding-right:1rem}
  .site-header{padding:1rem}
  .wordmark strong{font-size:1.4rem}
  .wordmark small{letter-spacing:.1em}
  .record-card{padding:.9rem}
  .record-actions>*{flex:1 1 auto;justify-content:center}
  .modal-card{padding:1.2rem}
  .detail-image-viewport{min-height:190px}
}
@media(prefers-reduced-motion:reduce){
  .archive-folder-content.is-opening,.archive-folder-content.is-closing,.records-list.is-refreshing,
  .location-detail.is-opening,.primary-nav.is-open{animation:none!important}
}


/* Archive record cards: one tidy thumbnail and a whole-card detail target */
.record-card.record-card-expanded{
  display:grid;
  grid-template-columns:minmax(110px,190px) minmax(0,1fr);
  align-items:start;
  justify-content:initial;
  gap:1rem 1.25rem;
  cursor:pointer;
}
.record-card.record-card-expanded>.record-thumbnail{
  grid-column:1;
  grid-row:1 / span 2;
  width:100%;
  max-width:none;
  aspect-ratio:4/3;
  margin:0;
  align-self:start;
}
.record-card.record-card-expanded>.record-thumbnail img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.record-card.record-card-expanded>div:nth-child(2){grid-column:2;min-width:0}
.record-card.record-card-expanded>.record-actions{grid-column:2;align-self:start}
.record-card.record-card-expanded:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.record-card .record-detail-trigger{margin-top:.65rem;padding:0;border:0;background:none;color:var(--accent);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.record-card .record-detail-trigger:hover{color:var(--accent-dark)}
@media(max-width:700px){
 .record-card.record-card-expanded{grid-template-columns:100px minmax(0,1fr);gap:.8rem}
 .record-card.record-card-expanded>.record-thumbnail{grid-column:1;grid-row:1 / span 2;aspect-ratio:3/4;max-width:none;margin:0}
 .record-card.record-card-expanded>div:nth-child(2){grid-column:2}
 .record-card.record-card-expanded>.record-actions{grid-column:1/-1}
}
@media(max-width:420px){
 .record-card.record-card-expanded{grid-template-columns:82px minmax(0,1fr);gap:.7rem}
}


/* Burgundy accents and clearer header navigation */
:root{--accent:#7b1e2b;--accent-dark:#48111b;--burgundy:#7b1e2b;--burgundy-deep:#48111b;--burgundy-mid:#9b2d3b;--burgundy-soft:#c66a70;--burgundy-wash:#ead0ce}
.button-dark{background:var(--burgundy-deep);border-color:var(--burgundy-deep)}
.button-dark:hover{background:var(--burgundy);border-color:var(--burgundy)}
.small-button:hover,.text-link:hover,.record-detail-trigger:hover{color:var(--burgundy);border-color:var(--burgundy)}
.monogram{border-color:var(--burgundy);color:var(--burgundy)}
.eyebrow,.record-category,.timeline-date,.folder-number{color:var(--burgundy)}
.site-header{align-items:center;gap:1.25rem}
.primary-nav{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap;max-width:780px}
.primary-nav a,.primary-nav .owner-sign-in-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.55rem .85rem;border:1px solid transparent;border-radius:4px;font:600 .82rem/1.2 var(--sans);text-decoration:none;white-space:nowrap;transition:background-color .2s,border-color .2s,color .2s,transform .2s}
.primary-nav a:hover,.primary-nav a[aria-current=page]{background:var(--burgundy-wash);border-color:#d6a6a6;color:var(--burgundy-deep)}
.primary-nav .owner-sign-in-button{border-color:var(--burgundy);background:var(--burgundy);color:#fff5ed;cursor:pointer}
.primary-nav .owner-sign-in-button:hover{background:var(--burgundy-deep);border-color:var(--burgundy-deep);transform:translateY(-1px)}
.menu-toggle{border-radius:4px;border-color:var(--burgundy);color:var(--burgundy-deep);cursor:pointer}
@media(max-width:800px){.site-header{align-items:center;gap:.8rem}.primary-nav{max-width:none;align-items:stretch;gap:.35rem;padding-top:.4rem}.primary-nav a,.primary-nav .owner-sign-in-button{justify-content:flex-start;width:100%;min-height:42px;padding:.7rem .85rem}}
/* Three-column location registry: index | map | selected-place records */
.location-layout{display:grid;grid-template-columns:minmax(205px,.78fr) minmax(360px,1.55fr) minmax(260px,1fr);gap:1rem;align-items:start}
.location-sidebar,.map-panel,.location-records-panel{min-width:0;border:1px solid var(--line);background:var(--paper-light);padding:1rem}
.location-sidebar .search-label{margin-top:0}
.location-list{max-height:72vh}
.location-records-panel{max-height:calc(100vh - 2rem);overflow:auto}
.location-records-panel>h2{font-size:clamp(1.5rem,2vw,2.1rem);margin:0 0 1rem}
.location-records-panel .location-detail{border-top:1px solid var(--line);padding-top:.75rem}
.location-records-panel .location-detail>h3{font-size:1.55rem;overflow-wrap:anywhere}
.location-records-panel .location-record{padding:.9rem 0}
.location-records-panel .record-preview{max-width:100%;margin:.65rem 0}
.location-records-panel .record-preview img{max-height:210px;object-fit:contain}
.location-records-panel .location-record .text-link{margin-top:.45rem;font-size:.8rem}
.map-panel{padding:.9rem}
.location-route-tools>p:not(.eyebrow){font-size:.82rem;color:var(--muted);margin:.25rem 0 .7rem}
#family-map{height:clamp(380px,62vh,720px)}
.map-caption{font-size:.68rem}
@media(max-width:1150px){.location-layout{grid-template-columns:minmax(190px,.72fr) minmax(320px,1.3fr)}.location-records-panel{grid-column:1/-1;max-height:none}.location-records-panel .location-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}.location-records-panel .location-detail>h3,.location-records-panel .location-detail>p:not(.location-record-heading){grid-column:1/-1}.location-records-panel .location-record-heading{grid-column:1/-1}}
@media(max-width:760px){.location-layout{grid-template-columns:minmax(0,1fr);gap:.85rem}.location-sidebar,.map-panel,.location-records-panel{padding:.8rem}.location-list{max-height:260px}.location-records-panel{grid-column:auto}.location-records-panel .location-detail{display:block}#family-map{height:360px}}


/* Final formatting pass: consistent burgundy contrast, button rhythm, and responsive spacing */
:root{
  --accent:#7b1e2b;
  --accent-dark:#48111b;
  --burgundy:#7b1e2b;
  --burgundy-deep:#48111b;
  --burgundy-mid:#9b2d3b;
  --burgundy-soft:#c66a70;
  --burgundy-wash:#ead0ce;
}
.button-dark,
.primary-nav .owner-sign-in-button,
button.button-dark,
.button.button-dark,
.add-record-trigger,
#build-family-route{
  background-color:var(--burgundy);
  border-color:var(--burgundy);
  color:#fff!important;
}
.button-dark:hover,
.primary-nav .owner-sign-in-button:hover,
button.button-dark:hover,
.button.button-dark:hover,
.add-record-trigger:hover,
#build-family-route:hover{
  background-color:var(--burgundy-deep);
  border-color:var(--burgundy-deep);
  color:#fff!important;
}
.button,
button.button,
.small-button,
button.small-button,
.site-menu-action,
.menu-toggle,
.theme-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.4rem;
  min-height:42px;
  max-width:100%;
  padding:.6rem .9rem;
  border-radius:4px;
  font:600 .9rem/1.25 var(--sans);
  text-align:center;
  overflow-wrap:anywhere;
}
.small-button,
button.small-button{
  background-color:var(--paper-light);
  border:1px solid var(--burgundy);
  color:var(--burgundy-deep);
}
.small-button:hover,
button.small-button:hover{
  background-color:var(--burgundy);
  border-color:var(--burgundy);
  color:#fff!important;
}
.primary-nav{
  gap:.5rem;
  row-gap:.5rem;
}
.primary-nav a,
.primary-nav .owner-sign-in-button{
  min-height:42px;
  padding:.6rem .85rem;
  line-height:1.25;
}
.primary-nav .owner-sign-in-button,
.primary-nav .owner-sign-in-button:hover{
  color:#fff!important;
}
.archive-toolbar,
.records-heading,
.location-toolbar,
.section-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  flex-wrap:wrap;
}
.archive-toolbar>div,
.records-heading>div,
.location-toolbar>div{
  min-width:0;
}
.archive-toolbar h2,
.records-heading h2,
.location-toolbar h2{
  margin:.1rem 0 .35rem;
  overflow-wrap:anywhere;
}
.archive-page{
  width:min(100% - 2rem, 1440px);
  margin-inline:auto;
}
.section-intro{
  max-width:78ch;
  margin-block:.5rem 1.5rem;
}
.location-layout{
  grid-template-columns:minmax(200px,.8fr) minmax(320px,1.45fr) minmax(250px,1fr);
  gap:1rem;
}
.location-sidebar,
.map-panel,
.location-records-panel{
  box-sizing:border-box;
  border-radius:5px;
}
.location-records-panel{
  overflow-wrap:anywhere;
}
.location-records-panel .location-record{
  border-bottom:1px solid var(--line);
}
.location-records-panel .location-record:last-child{
  border-bottom:0;
}
.location-records-panel .location-record .text-link{
  display:inline-flex;
  align-items:center;
  min-height:36px;
}
#family-map{
  width:100%;
  min-height:340px;
  border-radius:3px;
  overflow:hidden;
}
.record-card,
.activity-log-item,
.inbox-item,
.archive-folder,
.archive-folder-content,
.home-search-box,
.chrono-filter-panel{
  min-width:0;
  overflow-wrap:anywhere;
}
input,select,textarea{
  box-sizing:border-box;
  max-width:100%;
}
button:focus-visible,
.button:focus-visible,
.small-button:focus-visible,
.primary-nav a:focus-visible{
  outline:3px solid var(--burgundy-soft);
  outline-offset:3px;
}
@media(max-width:1150px){
  .location-layout{
    grid-template-columns:minmax(190px,.75fr) minmax(0,1.25fr);
  }
  .location-records-panel{
    grid-column:1/-1;
  }
}
@media(max-width:800px){
  .site-header{
    flex-wrap:wrap;
    align-items:center;
    gap:.65rem;
  }
  .primary-nav{
    width:100%;
    gap:.4rem;
  }
  .primary-nav a,
  .primary-nav .owner-sign-in-button{
    box-sizing:border-box;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  .archive-toolbar,
  .records-heading,
  .location-toolbar,
  .section-heading{
    align-items:flex-start;
  }
  .archive-toolbar>.button,
  .archive-toolbar>.small-button,
  .location-toolbar>.button,
  .location-toolbar>.small-button{
    width:100%;
  }
}
@media(max-width:760px){
  .archive-page{
    width:min(100% - 1.1rem, 1440px);
  }
  .location-layout{
    grid-template-columns:minmax(0,1fr);
    gap:.8rem;
  }
  .location-sidebar,
  .map-panel,
  .location-records-panel{
    width:100%;
    padding:.8rem;
  }
  .location-records-panel{
    grid-column:auto;
  }
  #family-map{
    min-height:300px;
    height:360px;
  }
  .button,
  button.button,
  .small-button,
  button.small-button{
    min-height:42px;
    white-space:normal;
  }
}

/* Face-crop and ancestor portrait pages */
.face-crop-canvas-wrap{max-height:58vh;overflow:auto;border:1px solid var(--line);background:#21180f;padding:.5rem;margin:.8rem 0}.face-crop-canvas-wrap canvas{display:block;width:auto;height:auto;max-width:none;max-height:none;object-fit:fill;touch-action:none;cursor:crosshair}.face-crop-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;margin-top:1rem}.face-crop-card>input{width:100%;margin:.4rem 0 .8rem}.ancestor-page{padding-block:2rem 4rem}.ancestor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.ancestor-card{overflow:hidden;border:1px solid var(--line);background:var(--paper-light);border-radius:5px;min-width:0}.ancestor-portrait{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--paper-dark)}.ancestor-card-body{padding:1rem}.ancestor-card-body h3{margin:.1rem 0 .5rem;overflow-wrap:anywhere}.ancestor-source{font-size:.9rem;color:var(--muted);overflow-wrap:anywhere}.ancestor-card .small-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.face-crop-card{max-height:94vh;overflow:auto}@media(max-width:600px){.face-crop-actions>*{width:100%}.ancestor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ancestor-card-body{padding:.7rem}}

/* Filing-cabinet archive interaction */
.folder-archive-layout{grid-template-columns:minmax(205px,265px) minmax(0,1fr);gap:0;align-items:stretch;isolation:isolate}
.archive-folders{z-index:2;position:relative;top:auto;padding:1.2rem .8rem 1rem;border:1px solid var(--burgundy);border-right:0;border-radius:5px 0 0 5px;background:linear-gradient(100deg,#d7c2a5,#e7d5bc);box-shadow:inset -5px 0 10px rgba(53,22,18,.08)}
.archive-folders h3{padding:0 .45rem}
.cabinet-hint{font-size:.83rem;line-height:1.4;color:var(--muted);padding:0 .45rem}
.archive-folders .archive-folder{position:relative;display:flex;align-items:center;width:100%;min-height:47px;margin:.35rem 0;padding:.65rem .8rem;border:1px solid #9c7b68;border-right:0;border-radius:4px 0 0 4px;background:#eee0cc;color:#482b25;text-align:left;font:600 .92rem/1.3 var(--sans);cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.65);transition:transform .3s cubic-bezier(.2,.75,.25,1),background-color .25s,color .25s,box-shadow .25s}
.archive-folders .archive-folder:hover{transform:translateX(3px);background:#e0c6b8}
.archive-folders .archive-folder.is-active{z-index:3;transform:translateX(8px);background:var(--burgundy);border-color:var(--burgundy);color:#fff!important;box-shadow:4px 3px 10px rgba(50,20,18,.16)}
.archive-folder-content{position:relative;z-index:1;min-height:300px;border:1px solid var(--burgundy);border-radius:0 5px 5px 0;background:linear-gradient(135deg,rgba(247,237,220,.98),rgba(224,207,178,.98));box-shadow:0 9px 24px rgba(48,25,19,.13);transform-origin:left center;overflow:hidden}
.archive-folder-content.is-opening{animation:cabinet-drawer-open .52s cubic-bezier(.18,.72,.22,1) both}
@keyframes cabinet-drawer-open{0%{opacity:.35;transform:perspective(1100px) rotateY(-7deg) translateX(-32px) scaleX(.96);box-shadow:inset 18px 0 24px rgba(55,24,17,.18)}65%{opacity:1;transform:perspective(1100px) rotateY(1deg) translateX(5px) scaleX(1.005)}100%{transform:perspective(1100px) rotateY(0) translateX(0) scaleX(1);box-shadow:0 9px 24px rgba(48,25,19,.13)}}
.archive-folder-content .records-list{transition:opacity .18s ease}
.archive-folder-content.is-opening .records-list{animation:cabinet-records-reveal .42s .08s ease both}
@keyframes cabinet-records-reveal{from{opacity:.15;transform:translateX(13px)}to{opacity:1;transform:translateX(0)}}
.record-card-expanded .record-actions{flex-shrink:0}
@media(max-width:760px){.folder-archive-layout{grid-template-columns:minmax(0,1fr);gap:.55rem}.archive-folders{border:1px solid var(--burgundy);border-radius:5px;padding:.8rem;box-shadow:0 4px 12px rgba(50,20,18,.08)}.archive-folders h3{margin-bottom:.4rem}.cabinet-hint{margin:.2rem .45rem .65rem}.archive-folders .archive-folder{border:1px solid #9c7b68;border-radius:4px;margin:.25rem 0;min-height:42px}.archive-folders .archive-folder.is-active{transform:translateX(4px)}.archive-folder-content{border-radius:5px;padding:.8rem}.archive-folder-content.is-opening{animation:cabinet-drawer-open-mobile .42s ease both}@keyframes cabinet-drawer-open-mobile{from{opacity:.25;transform:translateY(-14px) scaleY(.97)}to{opacity:1;transform:translateY(0) scaleY(1)}}}
@media(prefers-reduced-motion:reduce){.archive-folder-content.is-opening,.archive-folder-content.is-opening .records-list{animation:none!important}.archive-folders .archive-folder{transition:none}}


/* Layout refinement: reduce unnecessary vertical stacking and whitespace */
.archive-page{padding:clamp(1.4rem,3vw,2.8rem) clamp(1rem,3vw,2.5rem)}
main:not(.archive-page){padding-top:clamp(1.5rem,3vw,3rem)}
.section-intro{margin-bottom:1rem}
.archive-toolbar{margin-bottom:.8rem}
.folder-archive-layout{grid-template-columns:minmax(190px,230px) minmax(0,1fr);gap:0}
.archive-folders{align-self:stretch}
.archive-folders .archive-folder{min-height:42px;padding:.5rem .65rem;font-size:.88rem}
.archive-folder-content{min-height:220px;padding:1rem}
.records-heading{gap:.65rem}
.records-heading .record-filters{flex:0 1 300px;min-width:min(100%,220px)}
.record-card.record-card-expanded{grid-template-columns:minmax(100px,150px) minmax(0,1fr);gap:.7rem 1rem;padding:.85rem}
.record-card.record-card-expanded .record-thumbnail{max-height:120px}
.ancestor-page{padding-block:1.5rem 2.5rem}
.ancestor-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.8rem}
.ancestor-portrait{aspect-ratio:4/3}
.chrono-filter-panel{margin:1rem 0;padding:1rem}
.chrono-timeline{min-height:180px;padding:.6rem .2rem 1rem}
.chrono-year-column{flex-basis:clamp(230px,24vw,320px)}
@media(max-width:900px){
 .folder-archive-layout{grid-template-columns:minmax(165px,205px) minmax(0,1fr)}
 .archive-folders{padding:.8rem .55rem}
 .archive-folder-content{padding:.8rem}
 .location-layout{grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr)}
}
@media(max-width:760px){
 .archive-page{width:100%;padding:1.2rem .8rem 2rem}
 .folder-archive-layout{grid-template-columns:minmax(0,1fr);gap:.45rem}
 .archive-folders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;padding:.65rem}
 .archive-folders>.eyebrow,.archive-folders>h3,.archive-folders>.cabinet-hint{grid-column:1/-1}
 .archive-folders:before{grid-column:1/-1;margin-bottom:.25rem}
 .archive-folders .archive-folder{min-width:0;width:100%;margin:0;min-height:40px;padding:.45rem .55rem;border:1px solid #9c7b68;border-radius:4px;font-size:.84rem;transform:none!important}
 .archive-folders .archive-folder.is-active{transform:none!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
 .archive-folder-content{min-height:0;padding:.7rem;border-radius:5px}
 .archive-toolbar{align-items:center}
 .archive-toolbar>.small-button{width:auto}
 .records-heading{align-items:center}
 .records-heading .record-filters{flex:1 1 100%;min-width:0}
 .record-card.record-card-expanded{grid-template-columns:90px minmax(0,1fr);gap:.6rem;padding:.7rem}
 .record-card.record-card-expanded .record-thumbnail{max-height:100px}
 .record-card.record-card-expanded>.record-actions{grid-column:2}
 .site-footer{flex-direction:row;align-items:center;flex-wrap:wrap}
 .site-footer p{margin:.2rem 0}
 .chrono-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .chrono-filter-footer{flex-direction:row;align-items:center}
 .ancestor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ancestor-portrait{aspect-ratio:4/3}
}
@media(max-width:480px){
 .site-header{padding:.65rem .8rem}
 .wordmark strong{font-size:1.2rem}
 .wordmark small{font-size:.58rem}
 .archive-folders{grid-template-columns:repeat(2,minmax(0,1fr))}
 .archive-folders .archive-folder{font-size:.78rem;line-height:1.2}
 .record-card.record-card-expanded{grid-template-columns:74px minmax(0,1fr);gap:.55rem}
 .record-card.record-card-expanded .record-thumbnail{max-height:86px}
 .record-card.record-card-expanded>.record-actions{grid-column:1/-1}
 .chrono-filter-grid{grid-template-columns:1fr}
 .ancestor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ancestor-card-body{padding:.55rem}
}


/* Final interaction and control-style fixes */
.small-button,
a.small-button,
button.small-button,
.ancestor-card a.small-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.35rem;
  min-height:38px;
  padding:.5rem .8rem;
  border:1px solid var(--burgundy);
  border-radius:3px;
  background:var(--paper-light);
  color:var(--burgundy-deep)!important;
  font:600 .88rem/1.2 var(--sans);
  text-decoration:none;
  cursor:pointer;
  box-sizing:border-box;
}
.small-button:hover,
a.small-button:hover,
button.small-button:hover,
.ancestor-card a.small-button:hover{
  background:var(--burgundy);
  border-color:var(--burgundy);
  color:#fff!important;
}
.small-button:active,
a.small-button:active,
button.small-button:active,
.ancestor-card a.small-button:active{
  transform:translateY(1px) scale(.97);
  box-shadow:inset 0 2px 4px rgba(35,10,12,.2);
}
.primary-nav a[aria-current="page"]{
  color:var(--burgundy-deep)!important;
  border-color:var(--burgundy);
  background:rgba(123,30,43,.08);
}
.primary-nav .owner-sign-in-button,
.primary-nav .owner-sign-in-button:hover{
  background:var(--burgundy-deep);
  border-color:var(--burgundy-deep);
  color:#fff!important;
}
.ancestor-card a.small-button{width:100%;margin-top:.25rem}
.archive-folders .archive-folder{
  transform:translateX(0);
  transition:transform .28s cubic-bezier(.2,.75,.25,1),background-color .22s,color .22s,border-color .22s,box-shadow .22s;
}
.archive-folders .archive-folder:hover{
  transform:translateX(4px);
  background:#e0c6b8;
  border-color:var(--burgundy);
  box-shadow:2px 2px 0 rgba(72,17,27,.12);
}
.archive-folders .archive-folder:active{
  transform:translateX(4px) scale(.97);
  box-shadow:inset 0 2px 5px rgba(72,17,27,.18);
}
.archive-folders .archive-folder.is-active,
.archive-folders .archive-folder.is-active:hover{
  transform:translateX(8px);
  background:var(--burgundy);
  border-color:var(--burgundy);
  color:#fff!important;
  box-shadow:4px 3px 10px rgba(50,20,18,.16);
}
.archive-folder-content{transform-origin:left center}
.archive-folder-content.is-opening{
  animation:cabinet-drawer-slide-out .52s cubic-bezier(.18,.72,.22,1) both;
}
@keyframes cabinet-drawer-slide-out{
  0%{opacity:.55;transform:translateX(-24px) scaleX(.965);clip-path:inset(0 8% 0 0);box-shadow:inset 18px 0 24px rgba(55,24,17,.18)}
  65%{opacity:1;transform:translateX(5px) scaleX(1.005);clip-path:inset(0 0 0 0)}
  100%{opacity:1;transform:translateX(0) scaleX(1);clip-path:inset(0 0 0 0);box-shadow:0 9px 24px rgba(48,25,19,.13)}
}
@media(max-width:760px){
 .archive-folders .archive-folder:hover{transform:translateY(-1px);background:#e0c6b8}
 .archive-folders .archive-folder:active{transform:scale(.97)}
 .archive-folders .archive-folder.is-active,.archive-folders .archive-folder.is-active:hover{transform:none}
 .archive-folder-content.is-opening{animation:cabinet-drawer-slide-out-mobile .42s ease both}
 @keyframes cabinet-drawer-slide-out-mobile{from{opacity:.35;transform:translateY(-10px) translateX(-5px)}to{opacity:1;transform:translateY(0) translateX(0)}}
}
@media(prefers-reduced-motion:reduce){
  /* Respect reduced-motion preferences without making folder feedback disappear entirely. */
  .archive-folder-content.is-opening{animation:cabinet-drawer-reduced .22s ease-out both!important}
  @keyframes cabinet-drawer-reduced{from{opacity:.7;transform:translateX(-5px)}to{opacity:1;transform:translateX(0)}}
  .archive-folders .archive-folder,.small-button{transition:background-color .12s ease,color .12s ease,border-color .12s ease!important}
}


/* ChronoSearch: archival time-machine styling */
.chronosearch-page{background-image:radial-gradient(ellipse at 12% 8%,rgba(255,248,230,.7),transparent 34%),linear-gradient(180deg,rgba(92,35,34,.035),transparent 34%);background-attachment:fixed}
.chrono-main{position:relative;isolation:isolate;overflow:hidden}
.chrono-main:before{content:"";position:absolute;z-index:-1;top:1rem;right:-8rem;width:24rem;height:24rem;border:1px solid rgba(112,35,42,.12);border-radius:50%;box-shadow:0 0 0 2rem rgba(112,35,42,.025),0 0 0 4rem rgba(112,35,42,.02);pointer-events:none}
.chrono-main>h1{max-width:none;font-size:clamp(3rem,8vw,6.2rem);background:linear-gradient(100deg,var(--ink) 10%,var(--burgundy) 62%,#a36a37);-webkit-background-clip:text;background-clip:text;color:transparent;animation:chrono-title-arrive .9s cubic-bezier(.16,1,.3,1) both}
.chrono-main>.eyebrow{display:flex;align-items:center;gap:.7rem}.chrono-main>.eyebrow:before{content:"";width:2.4rem;height:1px;background:var(--burgundy)}
.chrono-main>.section-intro{max-width:720px;font-size:1.05rem}
.chrono-filter-panel{position:relative;border:1px solid rgba(112,35,42,.32)!important;border-radius:8px;background:linear-gradient(135deg,rgba(255,249,235,.9),rgba(226,207,177,.88))!important;box-shadow:0 12px 32px rgba(58,30,20,.09),inset 0 1px rgba(255,255,255,.8);overflow:hidden}
.chrono-filter-panel:before{content:"FIELD NOTES / INDEX";display:block;margin:-.2rem 0 .8rem;color:var(--burgundy);font-size:.62rem;letter-spacing:.18em;font-weight:700}
.chrono-filter-grid label{color:var(--burgundy-deep);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.chrono-filter-grid input,.chrono-filter-grid select{border-radius:4px;background:rgba(255,252,243,.9);transition:transform .25s,box-shadow .25s,border-color .25s}
.chrono-filter-grid input:focus,.chrono-filter-grid select:focus{transform:translateY(-2px);border-color:var(--burgundy);box-shadow:0 0 0 3px rgba(123,30,43,.12),0 7px 15px rgba(65,24,20,.08)}
.chrono-filter-footer{border-top:1px solid rgba(112,35,42,.16);margin-top:.9rem;padding-top:.8rem}
.chrono-scroll-hint{display:flex;align-items:center;gap:.8rem;margin:.8rem 0;color:var(--burgundy-deep);font-size:.7rem;letter-spacing:.09em;text-transform:uppercase}
.chrono-scroll-hint:before,.chrono-scroll-hint:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(112,35,42,.35))}
.chrono-timeline{position:relative;display:flex;gap:1.1rem;align-items:stretch;overflow-x:auto;overscroll-behavior-x:contain;padding:1.2rem .8rem 2rem;scroll-snap-type:x proximity;scrollbar-color:var(--burgundy) rgba(112,35,42,.12);scrollbar-width:thin}
.chrono-timeline:before{content:"";position:absolute;top:3.4rem;left:1rem;right:1rem;height:2px;background:linear-gradient(90deg,#b88c57,var(--burgundy),#b88c57);opacity:.45;pointer-events:none}
.chrono-year-column{position:relative;flex:0 0 clamp(250px,27vw,340px);min-width:0;scroll-snap-align:start;padding:1rem;border:1px solid rgba(112,35,42,.25);border-radius:7px;background:linear-gradient(160deg,rgba(255,249,235,.96),rgba(224,207,178,.88));box-shadow:0 7px 18px rgba(55,29,20,.07);overflow:hidden}
.chrono-year-column:before{content:"";position:absolute;top:2.1rem;left:1.25rem;width:.65rem;height:.65rem;border:2px solid var(--burgundy);border-radius:50%;background:var(--paper-light);box-shadow:0 0 0 4px rgba(123,30,43,.08)}
.chrono-year-heading{position:relative;display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;padding:.1rem 0 1.3rem 1.25rem;border-bottom:1px solid rgba(112,35,42,.2);margin-bottom:.9rem}
.chrono-year-heading h2{font-size:2.15rem;color:var(--burgundy-deep);font-variant-numeric:tabular-nums}.chrono-year-heading span{font-size:.68rem;color:var(--muted);text-align:right}
.chrono-record-card{position:relative;display:block;margin:.75rem 0 0;padding:.9rem;border:1px solid rgba(112,35,42,.2);border-radius:5px;background:rgba(255,252,244,.84);box-shadow:0 3px 8px rgba(45,24,17,.045);transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s,border-color .28s;animation:chrono-card-arrive .55s cubic-bezier(.16,1,.3,1) both}
.chrono-record-card:hover{transform:translateY(-4px) rotate(-.25deg);border-color:var(--burgundy);box-shadow:0 11px 22px rgba(65,24,20,.13)}
.chrono-record-card .record-thumbnail{width:100%;max-width:none;height:125px;aspect-ratio:auto;margin:0 0 .8rem;border:1px solid rgba(112,35,42,.18);border-radius:3px;background:linear-gradient(135deg,#e7d9bd,#f7eedb);overflow:hidden}
.chrono-record-card .record-thumbnail img{width:100%;height:100%;object-fit:contain;transition:transform .45s cubic-bezier(.16,1,.3,1),filter .45s}.chrono-record-card:hover .record-thumbnail img{transform:scale(1.045);filter:contrast(1.04)}
.chrono-record-card .record-category{display:inline-block;margin-bottom:.25rem;padding:.12rem .4rem;border:1px solid rgba(123,30,43,.22);border-radius:2px;color:var(--burgundy);font-size:.6rem;letter-spacing:.09em}
.chrono-record-card h3{margin:.25rem 0 .5rem;font-size:1.35rem;line-height:1.22;overflow-wrap:anywhere}.chrono-record-card p{font-size:.84rem;line-height:1.5;overflow-wrap:anywhere}
.chrono-record-location{color:var(--burgundy-deep)!important}.chrono-record-date{font-weight:700;color:var(--muted)}.chrono-record-notes{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.chrono-record-card .record-filename{display:block;margin-top:.6rem;padding-top:.5rem;border-top:1px dashed rgba(112,35,42,.2);overflow-wrap:anywhere}
@keyframes chrono-title-arrive{from{opacity:0;transform:translateY(18px);letter-spacing:.015em;filter:blur(5px)}to{opacity:1;transform:translateY(0);letter-spacing:-.045em;filter:blur(0)}}
@keyframes chrono-card-arrive{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
.chrono-year-column:nth-child(2n){animation-delay:.08s}.chrono-year-column:nth-child(3n){animation-delay:.16s}
.chrono-record-card:nth-of-type(2){animation-delay:.06s}.chrono-record-card:nth-of-type(3){animation-delay:.12s}.chrono-record-card:nth-of-type(4){animation-delay:.18s}
@media(max-width:650px){.chrono-main:before{right:-14rem}.chrono-timeline{gap:.7rem;padding-inline:.35rem}.chrono-year-column{flex-basis:82vw;padding:.8rem}.chrono-record-card .record-thumbnail{height:110px}.chrono-year-heading h2{font-size:1.9rem}}
@media(prefers-reduced-motion:reduce){.chrono-main>h1,.chrono-year-column,.chrono-record-card{animation:none!important}.chrono-record-card,.chrono-record-card:hover,.chrono-record-card .record-thumbnail img{transition:none!important;transform:none!important}}

/* ChronoSearch editorial timeline polish */
.chrono-ornament{display:flex;align-items:center;gap:.85rem;width:min(100%,23rem);margin:1rem 0 1.1rem;color:var(--burgundy);animation:chrono-ornament-in .9s .15s both}.chrono-ornament span{height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(123,30,43,.6))}.chrono-ornament span:last-child{transform:rotate(180deg)}.chrono-ornament b{font-size:1.1rem;font-weight:400;animation:chrono-star-turn 8s linear infinite}.chrono-main .chrono-filter-panel{animation:chrono-filter-arrive .7s .08s cubic-bezier(.16,1,.3,1) both}.chrono-year-column{transform-origin:top center}.chrono-year-column:nth-child(odd){animation:chrono-column-rise .65s cubic-bezier(.16,1,.3,1) both}.chrono-year-column:nth-child(even){animation:chrono-column-rise .7s .08s cubic-bezier(.16,1,.3,1) both}.chrono-year-column:before{transition:transform .3s,box-shadow .3s,background-color .3s}.chrono-year-column:hover:before{transform:scale(1.25);background:#fff8e8;box-shadow:0 0 0 6px rgba(123,30,43,.12)}.chrono-record-card{backface-visibility:hidden}.chrono-record-card .record-thumbnail{position:relative}.chrono-record-card .record-thumbnail:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.32);pointer-events:none}.chrono-timeline:focus-visible{outline:2px solid var(--burgundy);outline-offset:4px}@keyframes chrono-ornament-in{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:translateX(0)}}@keyframes chrono-star-turn{to{transform:rotate(360deg)}}@keyframes chrono-filter-arrive{from{opacity:0;transform:translateY(16px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes chrono-column-rise{from{opacity:0;transform:translateY(22px) rotateX(3deg)}to{opacity:1;transform:translateY(0) rotateX(0)}}@media(prefers-reduced-motion:reduce){.chrono-ornament,.chrono-ornament b,.chrono-main .chrono-filter-panel,.chrono-year-column{animation:none!important}.chrono-year-column:before{transition:none}}


/* Header navigation contrast fix: keep text readable over burgundy states. */
.site-header .primary-nav a:hover,
.site-header .primary-nav a:focus,
.site-header .primary-nav a:focus-visible,
.site-header .primary-nav a:active,
.site-header .primary-nav a[aria-current="page"],
.site-header .primary-nav .owner-sign-in-button,
.site-header .primary-nav .owner-sign-in-button:hover,
.site-header .primary-nav .owner-sign-in-button:focus-visible{
  color:#fffaf6!important;
}
.site-header .primary-nav a:hover,
.site-header .primary-nav a:focus-visible,
.site-header .primary-nav a:active,
.site-header .primary-nav a[aria-current="page"]{
  background-color:var(--burgundy)!important;
  border-color:var(--burgundy)!important;
}
.site-header .primary-nav a:hover:before,
.site-header .primary-nav a:focus-visible:before,
.site-header .primary-nav a[aria-current="page"]:before{
  background:var(--burgundy)!important;
}
.site-header .primary-nav a[aria-current="page"]{
  box-shadow:inset 0 -3px 0 #e5b17c,0 4px 12px rgba(46,29,19,.12);
}
.site-header .menu-toggle:hover,
.site-header .menu-toggle:focus-visible{
  background:var(--burgundy)!important;
  border-color:var(--burgundy)!important;
  color:#fffaf6!important;
}


/* Keep the compact menu control out of the desktop header; show it only on mobile. */
.site-header>.menu-toggle{display:none!important}
@media(max-width:800px){.site-header>.menu-toggle{display:block!important}}


/* Reliable cabinet drawer feedback after folder selection. */
.archive-folder-content.is-opening{animation:cabinet-drawer-slide-out .52s cubic-bezier(.18,.72,.22,1) both}
@keyframes cabinet-drawer-slide-out{0%{opacity:.55;transform:translateX(-24px) scaleX(.965);clip-path:inset(0 8% 0 0);box-shadow:inset 18px 0 24px rgba(55,24,17,.18)}65%{opacity:1;transform:translateX(5px) scaleX(1.005);clip-path:inset(0);box-shadow:0 5px 18px rgba(48,25,19,.08)}100%{opacity:1;transform:translateX(0) scaleX(1);clip-path:inset(0);box-shadow:0 9px 24px rgba(48,25,19,.13)}}
@media(max-width:760px){.archive-folder-content.is-opening{animation:cabinet-drawer-slide-out-mobile .42s ease both}@keyframes cabinet-drawer-slide-out-mobile{from{opacity:.35;transform:translateY(-10px) translateX(-5px)}to{opacity:1;transform:translate(0,0)}}}


/* Archival paper finish: subtle age marks, creases, and historical ink. */
:root{--paper:#c9b58f;--paper-light:#e4d5b5;--paper-dark:#a58a63}
body{background-color:var(--paper);background-image:
 radial-gradient(ellipse at 8% 14%,rgba(72,43,20,.12) 0 1px,transparent 2px),
 radial-gradient(ellipse at 91% 26%,rgba(67,37,18,.13) 0 2px,transparent 3px),
 radial-gradient(ellipse at 78% 82%,rgba(255,247,218,.22),transparent 25%),
 radial-gradient(ellipse at 15% 87%,rgba(73,43,21,.09),transparent 22%),
 repeating-linear-gradient(7deg,transparent 0 78px,rgba(91,61,34,.035) 79px,transparent 81px),
 repeating-linear-gradient(97deg,transparent 0 125px,rgba(255,248,224,.10) 126px,transparent 128px),
 linear-gradient(115deg,rgba(255,249,226,.14),transparent 42%,rgba(71,42,22,.055)),
 var(--paper);background-attachment:fixed}
body:before{content:"";position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.38;background:
 radial-gradient(ellipse 18px 13px at 7% 22%,rgba(45,25,14,.16),transparent 72%),
 radial-gradient(ellipse 11px 17px at 92% 68%,rgba(45,25,14,.12),transparent 74%),
 radial-gradient(ellipse 5px 4px at 28% 76%,rgba(45,25,14,.19),transparent 80%),
 radial-gradient(ellipse 9px 6px at 72% 11%,rgba(45,25,14,.13),transparent 80%),
 linear-gradient(174deg,transparent 0 17%,rgba(91,61,35,.035) 17.1%,transparent 17.5% 61%,rgba(91,61,35,.035) 61.1%,transparent 61.5%),
 linear-gradient(3deg,transparent 0 44%,rgba(255,250,230,.11) 44.1%,transparent 44.5%)}
.site-header,.card,.panel,.archive-folder-content,.archive-folders,.record-card,.modal-card{background-image:linear-gradient(135deg,rgba(255,248,225,.10),transparent 55%),radial-gradient(ellipse at 96% 7%,rgba(64,37,20,.045),transparent 24%)}
.archive-folder-content.is-opening{animation:cabinet-drawer-slide-right .56s cubic-bezier(.18,.72,.22,1) both!important}
@keyframes cabinet-drawer-slide-right{0%{opacity:.55;transform:translateX(30px) scaleX(.965);clip-path:inset(0 0 0 8%);box-shadow:inset -18px 0 24px rgba(55,24,17,.18)}62%{opacity:1;transform:translateX(-4px) scaleX(1.005);clip-path:inset(0);box-shadow:0 5px 18px rgba(48,25,19,.08)}100%{opacity:1;transform:translateX(0) scaleX(1);clip-path:inset(0);box-shadow:0 9px 24px rgba(48,25,19,.13)}}
@media(max-width:760px){.archive-folder-content.is-opening{animation:cabinet-drawer-slide-right-mobile .42s ease both!important}@keyframes cabinet-drawer-slide-right-mobile{from{opacity:.45;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}}
@media(prefers-reduced-motion:reduce){.archive-folder-content.is-opening{animation:none!important}}

/* Restore the clean parchment palette and add animated ChronoSearch-inspired atmosphere. */
:root{--paper:#cbb99a;--paper-light:#dfd0b3;--paper-dark:#ad9674}
html{background:var(--paper)}
body{position:relative;isolation:isolate;overflow-x:hidden;background:var(--paper)!important}
body:before,body:after{content:"";position:fixed;display:block;pointer-events:none;z-index:0;will-change:transform,opacity}
body:before{inset:-18vmax;background:
 radial-gradient(ellipse at 18% 24%,rgba(126,57,37,.20) 0%,rgba(126,57,37,.08) 17%,transparent 36%),
 radial-gradient(ellipse at 78% 20%,rgba(205,151,91,.24) 0%,rgba(205,151,91,.08) 20%,transparent 39%),
 radial-gradient(ellipse at 68% 78%,rgba(94,62,91,.15) 0%,rgba(94,62,91,.06) 18%,transparent 38%),
 radial-gradient(ellipse at 22% 82%,rgba(87,111,91,.15) 0%,rgba(87,111,91,.05) 19%,transparent 38%);
 filter:blur(22px);animation:paper-aurora-drift 28s ease-in-out infinite alternate}
body:after{inset:0;opacity:.72;background-image:
 radial-gradient(circle at 12% 18%,rgba(126,57,37,.11) 0 1px,transparent 2px),
 radial-gradient(circle at 83% 62%,rgba(94,62,91,.10) 0 2px,transparent 3px),
 radial-gradient(ellipse at 88% 13%,rgba(213,164,108,.18),transparent 22%),
 radial-gradient(ellipse at 8% 89%,rgba(91,119,99,.12),transparent 24%);
 background-size:100% 100%;animation:paper-glow-breathe 12s ease-in-out infinite alternate}
.site-header,.archive-page,.ancestors-page,.chrono-page,.location-page,main,footer{position:relative;z-index:1}
.chrono-ornament,.chrono-ornament b{z-index:0}
@keyframes paper-aurora-drift{0%{transform:translate3d(-2%,1%,0) rotate(-3deg) scale(1)}50%{transform:translate3d(2%,-1%,0) rotate(2deg) scale(1.06)}100%{transform:translate3d(-1%,2%,0) rotate(4deg) scale(1.02)}}
@keyframes paper-glow-breathe{0%{opacity:.42;filter:hue-rotate(-8deg)}100%{opacity:.82;filter:hue-rotate(12deg)}}
.archive-folder-content.is-opening{animation:cabinet-drawer-slide-right .56s cubic-bezier(.18,.72,.22,1) both!important}
@media(prefers-reduced-motion:reduce){body:before,body:after{animation:none!important}.archive-folder-content.is-opening{animation:none!important}}


/* 2026 editorial polish: luminous title wash, tactile grain, layered depth. */
:root{--glow-cream:rgba(255,239,204,.72);--glow-rose:rgba(169,91,73,.16);--glow-gold:rgba(211,166,103,.22)}
body:before{filter:blur(30px) saturate(1.18);opacity:.96;animation:paper-aurora-drift 21s ease-in-out infinite alternate,ambient-hue-shift 34s linear infinite}
body:after{inset:0;opacity:.36;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.34'/%3E%3C/svg%3E"),radial-gradient(ellipse at 88% 13%,rgba(213,164,108,.2),transparent 22%),radial-gradient(ellipse at 8% 89%,rgba(91,119,99,.14),transparent 24%);background-size:180px 180px,100% 100%,100% 100%;animation:grain-shimmer 7s steps(4,end) infinite,ambient-glow 13s ease-in-out infinite alternate}
@keyframes grain-shimmer{0%{background-position:0 0,0 0,0 0}25%{background-position:17px -9px,0 0,0 0}50%{background-position:-11px 13px,0 0,0 0}75%{background-position:9px 7px,0 0,0 0}100%{background-position:0 0,0 0,0 0}}
@keyframes ambient-glow{from{opacity:.24}to{opacity:.48}}
@keyframes ambient-hue-shift{from{filter:blur(30px) hue-rotate(-8deg) saturate(1.12)}to{filter:blur(30px) hue-rotate(14deg) saturate(1.25)}}
/* Soft parchment light behind each page's principal heading. */
.archive-page>h1,.ancestor-page .section-intro h1,.chrono-main>h1,main>h1,body>main h1{position:relative;isolation:isolate;display:table;max-width:100%;padding:.12em .28em .2em;margin-left:-.28em;border-radius:48% 52% 44% 56%/58% 43% 57% 42%;background:radial-gradient(ellipse at 48% 52%,rgba(255,244,218,.82) 0%,rgba(250,226,188,.55) 42%,rgba(214,174,125,.12) 72%,transparent 100%);box-shadow:0 10px 32px rgba(104,65,38,.08),inset 0 1px 0 rgba(255,255,255,.52);text-shadow:0 1px 0 rgba(255,255,255,.35);animation:title-light-breathe 9s ease-in-out infinite alternate}
.archive-page>h1:before,.ancestor-page .section-intro h1:before,.chrono-main>h1:before,main>h1:before,body>main h1:before{content:"";position:absolute;z-index:-1;inset:-.45em -1.1em;border-radius:50%;background:radial-gradient(ellipse,rgba(255,239,204,.58),rgba(220,176,126,.14) 48%,transparent 72%);filter:blur(13px);animation:title-halo-drift 12s ease-in-out infinite alternate}
.chrono-main>h1{background:linear-gradient(100deg,rgba(255,246,222,.96),rgba(244,218,180,.76) 45%,rgba(255,239,211,.88));-webkit-background-clip:padding-box;background-clip:padding-box;color:var(--burgundy);box-shadow:0 12px 38px rgba(112,35,42,.10),inset 0 1px 0 rgba(255,255,255,.78)}
@keyframes title-light-breathe{from{box-shadow:0 8px 24px rgba(104,65,38,.06),inset 0 1px 0 rgba(255,255,255,.42);transform:translateY(0)}to{box-shadow:0 14px 40px rgba(104,65,38,.14),inset 0 1px 0 rgba(255,255,255,.82);transform:translateY(-2px)}}
@keyframes title-halo-drift{from{transform:translateX(-1.2%) scale(.96);opacity:.58}to{transform:translateX(1.2%) scale(1.04);opacity:1}}
/* Raised, beveled surfaces and warm edge lighting. */
.archive-toolbar,.upload-card,.auth-card,.chrono-filter-panel,.chrono-year-column,.record-card,.ancestor-card,.location-item{box-shadow:0 8px 20px rgba(61,39,24,.07),0 2px 4px rgba(61,39,24,.06),inset 0 1px 0 rgba(255,250,231,.52);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s}
.archive-toolbar:hover,.upload-card:hover,.auth-card:hover,.chrono-filter-panel:hover,.chrono-year-column:hover,.record-card:hover,.ancestor-card:hover,.location-item:hover{transform:translateY(-4px) perspective(900px) rotateX(.5deg);box-shadow:0 18px 34px rgba(61,39,24,.13),0 0 22px rgba(196,147,91,.13),inset 0 1px 0 rgba(255,250,231,.7)}
.site-header{box-shadow:0 8px 24px rgba(55,34,22,.07),inset 0 -1px rgba(255,248,224,.45)}
.brand-banner{position:relative;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,231,202,.3),0 14px 36px rgba(60,25,25,.18)}
.brand-banner:after{background:linear-gradient(110deg,transparent 15%,rgba(255,236,205,.18) 48%,transparent 72%);background-size:220% 100%;animation:banner-sheen 11s ease-in-out infinite}
@keyframes banner-sheen{0%,20%{background-position:130% 0}75%,100%{background-position:-130% 0}}
.chrono-main:before{animation:chrono-orbit 28s linear infinite,chrono-orbit-glow 8s ease-in-out infinite alternate}
@keyframes chrono-orbit{to{transform:rotate(360deg)}}
@keyframes chrono-orbit-glow{from{opacity:.35;filter:blur(0)}to{opacity:.8;filter:blur(2px)}}
.archive-folder:hover,.primary-nav a:hover{filter:drop-shadow(0 4px 6px rgba(112,35,42,.18))}
@media(prefers-reduced-motion:reduce){body:before,body:after,.archive-page>h1,.ancestor-page .section-intro h1,.chrono-main>h1,main>h1,body>main h1,.brand-banner:after,.chrono-main:before{animation:none!important}.archive-toolbar,.upload-card,.auth-card,.chrono-filter-panel,.chrono-year-column,.record-card,.ancestor-card,.location-item{transition:none!important}}


/* 2026-10-31 refinement: page-level ivory light, no title badges, fixed grain. */
body{
  background-color:#cbb99a!important;
  background-image:
    radial-gradient(ellipse 82rem 48rem at 0% 0%,rgba(255,252,239,.96) 0%,rgba(255,249,230,.78) 24%,rgba(250,239,215,.38) 49%,rgba(250,239,215,0) 78%),
    linear-gradient(145deg,rgba(255,248,226,.16),transparent 48%)!important;
  background-attachment:fixed!important;
}
/* The grain is a stationary paper texture, not a moving effect. */
body:after{
  inset:0!important;
  opacity:.62!important;
  mix-blend-mode:multiply!important;
  background-image:
    url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='papergrain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23papergrain)' opacity='.48'/%3E%3C/svg%3E"),
    radial-gradient(ellipse at 88% 13%,rgba(213,164,108,.13),transparent 22%),
    radial-gradient(ellipse at 8% 89%,rgba(91,119,99,.10),transparent 24%)!important;
  background-size:160px 160px,100% 100%,100% 100%!important;
  background-position:0 0,0 0,0 0!important;
  animation:none!important;
}
/* Let the broad upper-left page wash illuminate headings naturally. */
.archive-page>h1,
.ancestor-page .section-intro h1,
.chrono-main>h1,
main>h1,
body>main h1{
  display:block!important;
  width:max-content;
  max-width:100%;
  padding:0!important;
  margin-left:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  text-shadow:0 1px 0 rgba(255,255,255,.42);
  animation:none!important;
}
.archive-page>h1:before,
.ancestor-page .section-intro h1:before,
.chrono-main>h1:before,
main>h1:before,
body>main h1:before{content:none!important;display:none!important}
@media(prefers-reduced-motion:reduce){body:after{animation:none!important}}

/* Site-wide motion and layout consistency pass — 2026-10-31. */
:root{--motion-ease:cubic-bezier(.22,.72,.24,1);--motion-ease-out:cubic-bezier(.16,1,.3,1);--motion-base:320ms}
html{scroll-behavior:smooth;scroll-padding-top:1.5rem}
body{min-width:320px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
img,svg,video,canvas{max-width:100%}
button,a,input,select,textarea,[role="button"]{-webkit-tap-highlight-color:transparent}
a,button,.button,.small-button,.theme-toggle,.archive-folder,.location-item,.paper-card,.record-card,.ancestor-card,.upload-card,.auth-card,.chrono-filter-panel,.chrono-year-column,.modal-card,.site-header,.search-input,input,select,textarea{transition-timing-function:var(--motion-ease)!important}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role="button"]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
button:disabled,.button[aria-disabled="true"]{cursor:not-allowed;opacity:.62}
::selection{background:rgba(117,54,43,.22);color:var(--ink)}
/* A single slow ambient drift; the paper grain remains completely still. */
body:before{animation:paper-aurora-drift 34s var(--motion-ease) infinite alternate!important}
body:after{animation:none!important}
.archive-page>h1,.ancestor-page .section-intro h1,.chrono-main>h1,main>h1,body>main h1{width:fit-content;max-width:100%;overflow-wrap:anywhere}
.reveal{transition:opacity .65s var(--motion-ease-out),transform .65s var(--motion-ease-out),filter .65s var(--motion-ease-out)}
.page-enter-active{transition:opacity .42s var(--motion-ease-out),transform .42s var(--motion-ease-out)}
.archive-toolbar,.upload-card,.auth-card,.chrono-filter-panel,.chrono-year-column,.record-card,.ancestor-card,.location-item{transition:transform .38s var(--motion-ease),box-shadow .38s var(--motion-ease),border-color .32s var(--motion-ease),background-color .32s var(--motion-ease)}
.archive-toolbar:hover,.upload-card:hover,.auth-card:hover,.chrono-filter-panel:hover,.chrono-year-column:hover,.record-card:hover,.ancestor-card:hover,.location-item:hover{transform:translate3d(0,-3px,0)}
.site-modal{overscroll-behavior:contain}
@media(hover:none){.archive-toolbar:hover,.upload-card:hover,.auth-card:hover,.chrono-filter-panel:hover,.chrono-year-column:hover,.record-card:hover,.ancestor-card:hover,.location-item:hover,.paper-card:hover{transform:none;filter:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal,.page-enter,.page-enter-active{opacity:1!important;transform:none!important;filter:none!important}}


/* Final consistency polish: smooth, restrained interactions across every page. */
:root{
  --motion-ease:cubic-bezier(.22,.68,.24,1);
  --motion-ease-out:cubic-bezier(.16,1,.3,1);
  --motion-duration:360ms;
}
html{scroll-padding-top:2rem}
body{overflow-wrap:break-word}
h1,h2,h3,h4,p{ text-wrap:pretty }
h1,h2,h3{ text-wrap:balance }
a,button,input,select,textarea,[role="button"]{scroll-margin-block:1rem}
a,button,.button,.small-button,.menu-toggle,.owner-sign-in-button,
.archive-folder,.primary-nav a,.text-link,.wordmark,
.record-card,.ancestor-card,.location-item,.paper-card,
.upload-card,.auth-card,.chrono-filter-panel,.chrono-year-column,
.archive-toolbar,.modal-card,.footer-mark{
  transition-duration:var(--motion-duration)!important;
  transition-timing-function:var(--motion-ease)!important;
}
button,.button,.small-button,.menu-toggle,.owner-sign-in-button,[role="button"]{
  touch-action:manipulation;
}
button:active,.button:active,.small-button:active,.menu-toggle:active{
  transform:translateY(1px) scale(.985);
}
img{height:auto}
.record-thumbnail img,.ancestor-portrait{display:block}
.site-header,.site-footer,.archive-toolbar,.chrono-filter-panel,.location-workspace{
  min-width:0;
}
.primary-nav a,.primary-nav button,.wordmark,.text-link{
  overflow-wrap:anywhere;
}
.modal-card,.record-detail-content,.face-crop-modal,.location-records-panel{
  max-width:min(100%,100vw - 2rem);
}
input,select,textarea{max-width:100%;min-width:0}
button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}
@media(hover:hover) and (pointer:fine){
  .primary-nav a:hover,.text-link:hover,.wordmark:hover{transition-duration:220ms!important}
}
@media(max-width:760px){
  .site-header{gap:1rem}
  .primary-nav{overscroll-behavior:contain}
  .archive-page>h1,.ancestor-page .section-intro h1,.chrono-main>h1,main>h1,body>main h1{
    max-width:100%;
    overflow-wrap:anywhere;
  }
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}

/* 2026-10-31: continuous heirloom motion — slow, staggered loops across the site. */
@keyframes heirloom-float{0%,100%{translate:0 0}50%{translate:0 -4px}}
@keyframes heirloom-glow{0%,100%{box-shadow:0 8px 20px rgba(61,39,24,.07),0 2px 4px rgba(61,39,24,.05),inset 0 1px 0 rgba(255,250,231,.52)}50%{box-shadow:0 12px 28px rgba(91,53,34,.11),0 0 18px rgba(196,147,91,.12),inset 0 1px 0 rgba(255,250,231,.7)}}
@keyframes antique-ink{0%,100%{text-shadow:0 1px 0 rgba(255,255,255,.42),0 0 0 rgba(173,119,70,0)}50%{text-shadow:0 1px 0 rgba(255,255,255,.58),0 0 13px rgba(173,119,70,.2)}}
@keyframes nav-underline-breathe{0%,100%{background-size:0 1px}50%{background-size:100% 1px}}
@keyframes paper-sway{0%,100%{transform:rotate(-.35deg) translateY(0)}50%{transform:rotate(.35deg) translateY(-2px)}}
@keyframes warm-border-pulse{0%,100%{border-color:rgba(128,91,58,.22)}50%{border-color:rgba(177,128,76,.48)}}
.wordmark,.footer-mark{animation:antique-ink 8s ease-in-out infinite}
.site-header{animation:heirloom-glow 15s ease-in-out infinite}
.primary-nav a{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;animation:nav-underline-breathe 9s ease-in-out infinite}
.primary-nav a:nth-child(2n){animation-delay:-3s}.primary-nav a:nth-child(3n){animation-delay:-6s}
.archive-toolbar,.chrono-filter-panel,.upload-card,.auth-card{animation:heirloom-glow 13s ease-in-out infinite}
.record-card,.ancestor-card,.location-item,.paper-card{animation:heirloom-float 8s ease-in-out infinite,heirloom-glow 14s ease-in-out infinite}
.record-card:nth-child(3n),.ancestor-card:nth-child(3n),.location-item:nth-child(3n),.paper-card:nth-child(3n){animation-delay:-2.5s}
.record-card:nth-child(3n + 1),.ancestor-card:nth-child(3n + 1),.location-item:nth-child(3n + 1),.paper-card:nth-child(3n + 1){animation-delay:-5s}
.archive-folder{animation:paper-sway 7s ease-in-out infinite;transform-origin:50% 85%}.archive-folder:nth-child(2n){animation-delay:-3.5s}
.brand-banner{animation:warm-border-pulse 12s ease-in-out infinite}
.archive-page>h1,.ancestor-page .section-intro h1,.chrono-main>h1,main>h1,body>main h1{animation:antique-ink 10s ease-in-out infinite}
input,select,textarea{animation:warm-border-pulse 16s ease-in-out infinite}
@media(hover:hover) and (pointer:fine){.record-card:hover,.ancestor-card:hover,.location-item:hover,.paper-card:hover,.archive-folder:hover{animation-play-state:paused}}
@media(prefers-reduced-motion:reduce){.wordmark,.footer-mark,.site-header,.primary-nav a,.archive-toolbar,.chrono-filter-panel,.upload-card,.auth-card,.record-card,.ancestor-card,.location-item,.paper-card,.archive-folder,.brand-banner,.archive-page>h1,.ancestor-page .section-intro h1,.chrono-main>h1,main>h1,body>main h1,input,select,textarea{animation:none!important}}


/* Filing-cabinet drawer: the selected records panel itself pulls out from the cabinet. */
.folder-archive-layout{perspective:1200px;perspective-origin:left center}
.archive-folders{position:relative;z-index:2}
.archive-folder-content{
  position:relative;z-index:1;transform-origin:left center;
  border:1px solid rgba(104,72,47,.34);
  box-shadow:inset 7px 0 12px rgba(65,39,24,.07),0 8px 22px rgba(48,25,19,.12);
  will-change:transform,opacity,box-shadow;
}
.archive-folder-content:before{
  content:"";position:absolute;left:0;top:12px;bottom:12px;width:5px;
  border-radius:0 4px 4px 0;pointer-events:none;
  background:linear-gradient(90deg,rgba(77,48,30,.34),rgba(255,246,222,.62),rgba(128,89,54,.16));
  opacity:.8;
}
.archive-folder-content.is-opening{
  animation:records-drawer-pull .72s cubic-bezier(.16,1,.3,1) both!important;
}
@keyframes records-drawer-pull{
  0%{opacity:.76;transform:translate3d(-34px,0,-34px) scaleX(.91);filter:brightness(.94);box-shadow:inset 16px 0 22px rgba(55,30,18,.2),0 2px 5px rgba(48,25,19,.08)}
  58%{opacity:1;transform:translate3d(18px,0,0) scaleX(1.015);filter:brightness(1.025);box-shadow:inset 5px 0 9px rgba(55,30,18,.08),18px 15px 30px rgba(48,25,19,.2)}
  78%{transform:translate3d(13px,0,0) scaleX(1.005)}
  100%{opacity:1;transform:translate3d(0,0,0) scaleX(1);filter:none;box-shadow:inset 7px 0 12px rgba(65,39,24,.07),0 8px 22px rgba(48,25,19,.12)}
}
@media(max-width:760px){
 .archive-folder-content.is-opening{animation:records-drawer-pull-mobile .58s cubic-bezier(.16,1,.3,1) both!important}
 @keyframes records-drawer-pull-mobile{0%{opacity:.65;transform:translateX(-22px) scale(.97);box-shadow:inset 12px 0 18px rgba(55,30,18,.18)}65%{opacity:1;transform:translateX(9px) scale(1.005);box-shadow:12px 10px 22px rgba(48,25,19,.16)}100%{opacity:1;transform:translateX(0) scale(1);box-shadow:0 8px 22px rgba(48,25,19,.12)}}
}
@media(prefers-reduced-motion:reduce){.archive-folder-content.is-opening{animation:none!important}}

/* Add-record modal: clearly grouped archival metadata workflow. */
.archive-record-form{display:grid;gap:1.15rem}.record-form-section{padding:1.05rem 1.1rem;border:1px solid rgba(112,76,49,.2);border-radius:12px;background:linear-gradient(145deg,rgba(255,250,235,.66),rgba(232,215,185,.32));box-shadow:inset 0 1px rgba(255,255,255,.65),0 5px 14px rgba(61,39,24,.045)}.record-form-section-heading{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:1rem}.record-form-section-heading h3{margin:0 0 .2rem;font-family:Georgia,serif;font-size:1.12rem;color:var(--burgundy)}.record-form-section-heading p,.field-hint{margin:0;color:var(--muted);font-size:.86rem;line-height:1.5}.form-step{display:grid;place-items:center;flex:0 0 2rem;height:2rem;border-radius:50%;background:rgba(112,49,43,.1);color:var(--burgundy);font:600 .8rem Georgia,serif}.form-field-wide{grid-column:1/-1}.required-mark{color:var(--burgundy)}.optional-mark{font-weight:400;color:var(--muted)}.persons-form-section{border-color:rgba(128,91,58,.34);background:linear-gradient(130deg,rgba(255,247,222,.9),rgba(226,207,173,.42))}.persons-form-section textarea{min-height:82px}.field-hint{margin-top:.4rem}.record-form-submit{display:grid;gap:.5rem}.record-form-submit .button{justify-self:start;min-width:170px}.record-filters{display:flex;gap:.55rem;flex-wrap:wrap}.record-filters input{flex:1 1 220px}.record-filters select{flex:0 1 190px;min-width:150px}@media(max-width:600px){.record-form-section{padding:.85rem}.record-form-section-heading{gap:.6rem}.record-filters select{flex:1 1 100%}}


/* Site-wide heirloom shimmer: slow light passes over the whole collection. */
@keyframes tylka-site-shimmer{
  0%,100%{background-position:-160% 0}
  50%{background-position:260% 0}
}
@keyframes tylka-soft-aura{
  0%,100%{filter:drop-shadow(0 0 0 rgba(190,143,83,0))}
  50%{filter:drop-shadow(0 0 7px rgba(190,143,83,.16))}
}
body:before{
  content:"";position:fixed;inset:0;z-index:50;pointer-events:none;
  opacity:.17;
  background:linear-gradient(112deg,transparent 0%,rgba(255,255,255,0) 37%,rgba(255,249,225,.42) 48%,rgba(194,148,91,.10) 51%,transparent 63%,transparent 100%);
  background-size:220% 100%;animation:tylka-site-shimmer 24s ease-in-out infinite;
  mix-blend-mode:soft-light;
}
.brand-banner,.hero-banner,.home-banner,.archive-toolbar,.record-form-section,.modal-card,
.record-card,.ancestor-card,.location-item,.paper-card,.archive-folder,.site-footer{
  background-size:200% 200%,auto;
  animation:heirloom-glow 13s ease-in-out infinite,tylka-soft-aura 17s ease-in-out infinite;
}
.record-card:nth-child(2n),.ancestor-card:nth-child(2n),.location-item:nth-child(2n),.paper-card:nth-child(2n){animation-delay:-4s,-8s}
.detail-owner-actions{display:flex;justify-content:flex-end;margin:.5rem 0 1rem}
#detail-edit-record{display:inline-flex}
@media(prefers-reduced-motion:reduce){
 body:before{animation:none!important;opacity:.06}
 .brand-banner,.hero-banner,.home-banner,.archive-toolbar,.record-form-section,.modal-card,.record-card,.ancestor-card,.location-item,.paper-card,.archive-folder,.site-footer{animation:none!important}
}


/* Restore the always-visible three-dot settings control on desktop and mobile. */
.site-header>.site-menu-toggle{
  display:inline-grid!important;
  flex:0 0 44px;
  margin-left:auto;
  order:20;
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
  padding:0;
  border:1px solid var(--burgundy,#7b1e2b);
  border-radius:50%;
  background:var(--paper-light);
  color:var(--burgundy-deep,#48111b);
  font-size:1.9rem;
  line-height:1;
  box-shadow:0 3px 12px rgba(70,25,30,.1);
}
.site-header>.site-menu-toggle span{display:block;transform:translateY(-2px);font-weight:700}
.site-header>.site-menu-toggle:hover,.site-header>.site-menu-toggle:focus-visible{
  background:var(--burgundy,#7b1e2b)!important;color:#fffaf6!important;
  box-shadow:0 0 0 4px rgba(123,30,43,.12),0 5px 16px rgba(70,25,30,.18);
}
.site-menu-panel{z-index:1300}
@media(max-width:800px){.site-header>.site-menu-toggle{display:inline-grid!important;margin-left:auto}}


/* Animated gear settings control, matching the site's parchment-and-gold motion. */
.site-header>.site-menu-toggle{
  display:inline-grid!important;place-items:center;flex:0 0 46px;margin-left:auto;order:20;
  width:46px;height:46px;min-width:46px;min-height:46px;padding:0;
  border:1px solid var(--accent,#8a6545);border-radius:50%;
  background:var(--paper-light,#fffaf2);color:var(--accent-dark,#541522);
  box-shadow:0 3px 12px rgba(70,25,30,.12);
}
.site-header>.site-menu-toggle span{display:block;transform:none;font-size:1.55rem;line-height:1}
.site-header>.site-menu-toggle:hover,.site-header>.site-menu-toggle:focus-visible{
  background:var(--accent-dark,#541522)!important;color:var(--paper-light,#fffaf2)!important;
  box-shadow:0 0 0 4px rgba(181,138,96,.16),0 7px 18px rgba(70,25,30,.2);
}
.site-header>.site-menu-toggle:hover span{animation:settings-gear-turn .8s cubic-bezier(.2,.8,.2,1)}
.site-header>.site-menu-toggle[aria-expanded=true]{background:var(--accent-dark,#541522);color:var(--paper-light,#fffaf2)}
@keyframes settings-gear-turn{to{transform:rotate(90deg)}}
.site-modal:not([hidden]) .modal-card{box-shadow:0 22px 70px rgba(35,20,14,.28),0 0 0 1px rgba(181,138,96,.24)}
@media(max-width:800px){.site-header>.site-menu-toggle{display:inline-grid!important;margin-left:auto}}

/* Unified dark palette: walnut, antique brass, and oxblood. */
html[data-theme="dark"]{color-scheme:dark;--paper:#17110f;--paper-light:#241915;--paper-dark:#302019;--ink:#f0e2c8;--muted:#c0a987;--line:#725638;--accent:#c49a55;--accent-dark:#3b111b;--wine:#651b2b;--wine-soft:#8d3945}
html[data-theme="dark"] body{background:var(--paper)!important;color:var(--ink)!important}
html[data-theme="dark"] .site-header,html[data-theme="dark"] .site-footer,html[data-theme="dark"] .chronology-section,html[data-theme="dark"] .section,html[data-theme="dark"] .archive-page,html[data-theme="dark"] main{background-color:var(--paper)!important;color:var(--ink)}
html[data-theme="dark"] .site-header{border-color:var(--line);box-shadow:0 5px 22px rgba(0,0,0,.35)}
html[data-theme="dark"] .wordmark strong,html[data-theme="dark"] .primary-nav a,html[data-theme="dark"] h1,html[data-theme="dark"] h2,html[data-theme="dark"] h3,html[data-theme="dark"] .site-footer,html[data-theme="dark"] .site-footer p{color:var(--ink)}
html[data-theme="dark"] .wordmark small,html[data-theme="dark"] .hero-text,html[data-theme="dark"] .section-intro,html[data-theme="dark"] .folio-top,html[data-theme="dark"] .folio-bottom,html[data-theme="dark"] .record-card p,html[data-theme="dark"] .file-hint,html[data-theme="dark"] .connection-status{color:var(--muted)}
html[data-theme="dark"] .folio-card,html[data-theme="dark"] .paper-card,html[data-theme="dark"] .auth-card,html[data-theme="dark"] .upload-card,html[data-theme="dark"] .home-search-box,html[data-theme="dark"] .archive-folders,html[data-theme="dark"] .archive-folder-content,html[data-theme="dark"] .location-sidebar,html[data-theme="dark"] .map-panel,html[data-theme="dark"] .site-modal .modal-card,html[data-theme="dark"] .record-card,html[data-theme="dark"] .generation,html[data-theme="dark"] .notice,html[data-theme="dark"] .empty-state,html[data-theme="dark"] .site-menu-panel{background:var(--paper-light)!important;color:var(--ink)!important;border-color:var(--line)!important;box-shadow:0 8px 25px rgba(0,0,0,.22)}
html[data-theme="dark"] .generation,html[data-theme="dark"] .record-card,html[data-theme="dark"] .location-item{background:#211712!important}
html[data-theme="dark"] .ticker,html[data-theme="dark"] .research-band{background:#382219!important;color:#e5c58b}
html[data-theme="dark"] .ticker i{background:var(--accent)}
html[data-theme="dark"] .button-dark,html[data-theme="dark"] .monogram,html[data-theme="dark"] .site-header>.site-menu-toggle,html[data-theme="dark"] .back-to-top{background:#4a1421!important;color:#f3dfba!important;border-color:#a47a43!important}
html[data-theme="dark"] .small-button,html[data-theme="dark"] .location-item,html[data-theme="dark"] #site-settings-modal select,html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{background:#211712!important;color:var(--ink)!important;border-color:#80613c!important}
html[data-theme="dark"] .archive-folder:hover,html[data-theme="dark"] .archive-folder.is-active,html[data-theme="dark"] .primary-nav a:hover,html[data-theme="dark"] .primary-nav a[aria-current=page],html[data-theme="dark"] .small-button:hover,html[data-theme="dark"] .location-item:hover,html[data-theme="dark"] .location-item.is-selected{background:#43202a!important;color:#f4d9a5!important}
html[data-theme="dark"] .eyebrow,html[data-theme="dark"] .folio-label,html[data-theme="dark"] .record-category,html[data-theme="dark"] .timeline-date,html[data-theme="dark"] .folder-number{color:#d2a75f}
html[data-theme="dark"] .rule,html[data-theme="dark"] .timeline,html[data-theme="dark"] .timeline-item,html[data-theme="dark"] .archive-grid,html[data-theme="dark"] .site-footer{border-color:var(--line)}
html[data-theme="dark"] .site-menu-action,html[data-theme="dark"] .site-menu-nav a{color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .site-menu-action:hover{background:#43202a;color:#f4d9a5}
html[data-theme="dark"] #family-map{background:#211712}
html[data-theme="dark"] .record-preview{background:#302019;border-color:var(--line)}
/* A full-screen color wave travels from top to bottom when switching themes. */
body.theme-wave-dark:after,body.theme-wave-light:after{content:"";position:fixed;z-index:9998;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(19,10,9,.98),rgba(48,19,24,.94) 72%,rgba(19,10,9,.98));clip-path:polygon(0 0,100% 0,100% 0,0 0);animation:theme-wave-down 1.15s cubic-bezier(.65,0,.25,1) both}
body.theme-wave-light:after{background:linear-gradient(180deg,rgba(255,248,237,.98),rgba(224,197,166,.94) 72%,rgba(255,248,237,.98))}
@keyframes theme-wave-down{0%{clip-path:polygon(0 0,100% 0,100% 0,0 0);opacity:1}78%{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);opacity:1}100%{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);opacity:0}}
@media(prefers-reduced-motion:reduce){body.theme-wave-dark:after,body.theme-wave-light:after{display:none}}


/* Unified deep walnut / antique gold / oxblood dark palette. */
html[data-theme="dark"]{
 color-scheme:dark;
 --paper:#17120f;
 --paper-light:#251a15;
 --paper-dark:#100c0a;
 --ink:#f0e3cb;
 --muted:#c0a987;
 --line:#66503a;
 --accent:#d4ad69;
 --accent-dark:#390d16;
 --burgundy:#4a101b;
 --burgundy-deep:#26080f;
 --surface-raised:#302119;
 --surface-soft:#211611;
}
html[data-theme="dark"] body,
html[data-theme="dark"] .archive-page,
html[data-theme="dark"] main{background-color:var(--paper);color:var(--ink)}
html[data-theme="dark"] .site-header,
html[data-theme="dark"] .site-footer,
html[data-theme="dark"] .archive-toolbar,
html[data-theme="dark"] .records-heading{background:#1d1410;border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] .hero,
html[data-theme="dark"] .section,
html[data-theme="dark"] .chrono-page,
html[data-theme="dark"] .ancestor-page{background-color:var(--paper)}
html[data-theme="dark"] .folio-card,
html[data-theme="dark"] .auth-card,
html[data-theme="dark"] .upload-card,
html[data-theme="dark"] .home-search-box,
html[data-theme="dark"] .location-sidebar,
html[data-theme="dark"] .map-panel,
html[data-theme="dark"] .archive-folders,
html[data-theme="dark"] .record-form-section,
html[data-theme="dark"] .modal-card,
html[data-theme="dark"] .site-modal .modal-card,
html[data-theme="dark"] .site-menu-panel,
html[data-theme="dark"] .record-preview,
html[data-theme="dark"] .record-card,
html[data-theme="dark"] .ancestor-card,
html[data-theme="dark"] .location-item,
html[data-theme="dark"] .paper-card,
html[data-theme="dark"] .archive-folder-content{
 background-color:var(--paper-light);color:var(--ink);border-color:var(--line)
}
html[data-theme="dark"] .generation,
html[data-theme="dark"] .generation.current,
html[data-theme="dark"] .archive-folder,
html[data-theme="dark"] .timeline-item,
html[data-theme="dark"] .chronology-section,
html[data-theme="dark"] .location-records,
html[data-theme="dark"] .record-detail-panel{
 background-color:#2b1d16;color:var(--ink);border-color:var(--line)
}
html[data-theme="dark"] .ticker,
html[data-theme="dark"] .research-band,
html[data-theme="dark"] .button-dark,
html[data-theme="dark"] .site-menu-action:hover,
html[data-theme="dark"] .site-header>.site-menu-toggle[aria-expanded=true]{
 background:#310b14;color:#f5e7cd;border-color:#875b37
}
html[data-theme="dark"] .button,
html[data-theme="dark"] button,
html[data-theme="dark"] .small-button,
html[data-theme="dark"] .site-menu-action,
html[data-theme="dark"] .site-menu-nav a{color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .button:hover,
html[data-theme="dark"] button:hover,
html[data-theme="dark"] .small-button:hover{background:#4a101b;color:#fff0d6}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] .search-input,
html[data-theme="dark"] .search-fields input,
html[data-theme="dark"] .search-fields select{
 background:#160f0c!important;color:#f0e3cb!important;border-color:#715638!important
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#a88d6c}
html[data-theme="dark"] .wordmark strong,
html[data-theme="dark"] h1,html[data-theme="dark"] h2,
html[data-theme="dark"] h3,html[data-theme="dark"] h4,
html[data-theme="dark"] .record-title{color:var(--ink)}
html[data-theme="dark"] .eyebrow,
html[data-theme="dark"] .folio-label,
html[data-theme="dark"] .record-category,
html[data-theme="dark"] .timeline-date,
html[data-theme="dark"] .folder-number,
html[data-theme="dark"] .monogram{color:var(--accent);border-color:var(--accent)}
html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] .hero-text,
html[data-theme="dark"] .section-intro,
html[data-theme="dark"] .file-hint,
html[data-theme="dark"] .field-hint{color:var(--muted)}
html[data-theme="dark"] a:hover{color:#e3bd79}
html[data-theme="dark"] .record-card:hover,
html[data-theme="dark"] .paper-card:hover,
html[data-theme="dark"] .archive-folder:hover,
html[data-theme="dark"] .location-item:hover{background:#3b211b!important;border-color:#b48a52}
body.theme-wave-dark:after{
 background:linear-gradient(180deg,#10090b 0%,#351019 42%,#1d120e 76%,#100c0a 100%)!important
}


/* FINAL DARK THEME OVERRIDES — one walnut, brass, and oxblood system across every page. */
html[data-theme="dark"]{
  color-scheme:dark;
  --paper:#130e0c;
  --paper-light:#211713;
  --paper-dark:#0b0807;
  --ink:#f2e5ce;
  --muted:#c2aa88;
  --line:#705437;
  --accent:#d7b16b;
  --accent-dark:#390d18;
  --wine:#4a0d1b;
  --surface-raised:#2d1d15;
  --surface-soft:#1a120e;
  background:#130e0c!important;
}
html[data-theme="dark"] body,
html[data-theme="dark"] main,
html[data-theme="dark"] .archive-page,
html[data-theme="dark"] .hero,
html[data-theme="dark"] .section,
html[data-theme="dark"] .chrono-page,
html[data-theme="dark"] .ancestor-page{
  background:#130e0c!important;color:var(--ink)!important;
}
html[data-theme="dark"] .site-header,
html[data-theme="dark"] .site-footer,
html[data-theme="dark"] .archive-toolbar,
html[data-theme="dark"] .records-heading{
  background:#1a120e!important;color:var(--ink)!important;border-color:var(--line)!important;
}
html[data-theme="dark"] .chronology-section,
html[data-theme="dark"] .activity-log-section{
  background:#1b120e!important;color:var(--ink)!important;
}
html[data-theme="dark"] .research-band,
html[data-theme="dark"] .ticker{
  background:#300b15!important;color:#f0d8a9!important;border-color:#76502f!important;
}
html[data-theme="dark"] .folio-card,
html[data-theme="dark"] .paper-card,
html[data-theme="dark"] .auth-card,
html[data-theme="dark"] .upload-card,
html[data-theme="dark"] .home-search-box,
html[data-theme="dark"] .archive-folders,
html[data-theme="dark"] .archive-folder-content,
html[data-theme="dark"] .location-sidebar,
html[data-theme="dark"] .map-panel,
html[data-theme="dark"] .modal-card,
html[data-theme="dark"] .site-menu-panel,
html[data-theme="dark"] .record-card,
html[data-theme="dark"] .inbox-item,
html[data-theme="dark"] .activity-log-item,
html[data-theme="dark"] .notice,
html[data-theme="dark"] .empty-state,
html[data-theme="dark"] .generation,
html[data-theme="dark"] .generation.current,
html[data-theme="dark"] .record-detail-panel,
html[data-theme="dark"] .ancestor-card{
  background:#211713!important;color:var(--ink)!important;border-color:var(--line)!important;
}
html[data-theme="dark"] .generation,
html[data-theme="dark"] .timeline-item,
html[data-theme="dark"] .location-item,
html[data-theme="dark"] .archive-folder,
html[data-theme="dark"] .record-location,
html[data-theme="dark"] .location-record{
  background:#291b14!important;color:var(--ink)!important;border-color:var(--line)!important;
}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] .search-input,
html[data-theme="dark"] .search-fields input,
html[data-theme="dark"] .search-fields select,
html[data-theme="dark"] .auth-card input,
html[data-theme="dark"] .upload-card input,
html[data-theme="dark"] .upload-card select,
html[data-theme="dark"] .upload-card textarea,
html[data-theme="dark"] .record-filters input,
html[data-theme="dark"] .record-filters select,
html[data-theme="dark"] .modal-card input{
  background:#100b09!important;color:#f2e5ce!important;border-color:#765a39!important;
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#a88c68!important}
html[data-theme="dark"] .button-dark,
html[data-theme="dark"] .site-header>.site-menu-toggle,
html[data-theme="dark"] .site-menu-action:hover,
html[data-theme="dark"] .site-header>.site-menu-toggle[aria-expanded="true"]{
  background:#390d18!important;color:#f4e4c7!important;border-color:#b58a4b!important;
}
html[data-theme="dark"] .small-button,
html[data-theme="dark"] .button,
html[data-theme="dark"] button,
html[data-theme="dark"] .site-menu-action,
html[data-theme="dark"] .site-menu-nav a{
  color:var(--ink);border-color:var(--line);
}
html[data-theme="dark"] .button:hover,
html[data-theme="dark"] button:hover,
html[data-theme="dark"] .small-button:hover,
html[data-theme="dark"] .archive-folder:hover,
html[data-theme="dark"] .archive-folder.is-active,
html[data-theme="dark"] .location-item:hover,
html[data-theme="dark"] .location-item.is-selected,
html[data-theme="dark"] .record-card:hover,
html[data-theme="dark"] .paper-card:hover{
  background:#451421!important;color:#f7e7c8!important;border-color:#c49a5c!important;
}
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] .wordmark strong,
html[data-theme="dark"] .record-title{color:var(--ink)!important}
html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] .wordmark small,
html[data-theme="dark"] .hero-text,
html[data-theme="dark"] .section-intro,
html[data-theme="dark"] .file-hint,
html[data-theme="dark"] .field-hint,
html[data-theme="dark"] .connection-status,
html[data-theme="dark"] .record-card p,
html[data-theme="dark"] .activity-log-by,
html[data-theme="dark"] .activity-log-time{color:var(--muted)}
html[data-theme="dark"] .eyebrow,
html[data-theme="dark"] .folio-label,
html[data-theme="dark"] .record-category,
html[data-theme="dark"] .timeline-date,
html[data-theme="dark"] .folder-number,
html[data-theme="dark"] .monogram,
html[data-theme="dark"] .search-label,
html[data-theme="dark"] .location-record-heading{color:var(--accent)!important}
html[data-theme="dark"] .rule,
html[data-theme="dark"] .timeline,
html[data-theme="dark"] .timeline-item,
html[data-theme="dark"] .archive-grid,
html[data-theme="dark"] .site-footer,
html[data-theme="dark"] .site-header{border-color:var(--line)!important}
html[data-theme="dark"] #family-map{background:#160f0c!important}
html[data-theme="dark"] .record-preview{background:#2b1c14!important;border-color:var(--line)!important}
html[data-theme="dark"] a:hover{color:#e7c47f}

/* The theme reveal travels downward with a soft, irregular wave edge. */
body.theme-wave-dark:after,
body.theme-wave-light:after{
  content:"";position:fixed;z-index:9998;inset:0;pointer-events:none;
  clip-path:polygon(0 0,100% 0,100% 0,0 0);
  animation:tylka-theme-wave 1.15s cubic-bezier(.65,0,.25,1) both;
}
body.theme-wave-dark:after{
  background:linear-gradient(180deg,#10090b 0%,#390d18 34%,#251711 72%,#100b09 100%)!important;
}
body.theme-wave-light:after{
  background:linear-gradient(180deg,#fff8ed 0%,#e8d3b2 55%,#fff8ed 100%)!important;
}
@keyframes tylka-theme-wave{
  0%{clip-path:polygon(0 0,100% 0,100% 0,0 0);opacity:1}
  48%{clip-path:polygon(0 0,100% 0,100% 48%,92% 45%,84% 49%,76% 46%,68% 50%,60% 47%,52% 51%,44% 48%,36% 52%,28% 49%,20% 53%,12% 50%,0 54%);opacity:1}
  100%{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);opacity:0}
}
@media(prefers-reduced-motion:reduce){
  body.theme-wave-dark:after,body.theme-wave-light:after{display:none!important}
}


/* Candlelit atmosphere: layered amber pools, smoked walnut shadows, and aged burgundy. */
html[data-theme="dark"] body{
  background:
    radial-gradient(ellipse at 12% 8%,rgba(171,105,43,.16) 0,rgba(115,57,28,.075) 24rem,transparent 48rem),
    radial-gradient(ellipse at 88% 32%,rgba(116,31,39,.13) 0,transparent 42rem),
    radial-gradient(ellipse at 48% 92%,rgba(157,96,39,.10) 0,transparent 50rem),
    linear-gradient(145deg,#100b09 0%,#1a110d 38%,#120c0a 72%,#0b0807 100%)!important;
  background-attachment:fixed!important;
}
html[data-theme="dark"] main,
html[data-theme="dark"] .archive-page,
html[data-theme="dark"] .hero,
html[data-theme="dark"] .section{
  background:linear-gradient(135deg,rgba(42,27,18,.48),rgba(19,14,12,.28) 48%,rgba(48,18,22,.16))!important;
}
html[data-theme="dark"] .site-header,
html[data-theme="dark"] .site-footer{
  background:
    linear-gradient(105deg,rgba(110,65,30,.20),transparent 42%,rgba(71,15,27,.20)),
    linear-gradient(180deg,#21160f,#17100d)!important;
  box-shadow:0 5px 24px rgba(0,0,0,.28),inset 0 1px rgba(226,185,112,.07);
}
html[data-theme="dark"] .folio-card,
html[data-theme="dark"] .paper-card,
html[data-theme="dark"] .auth-card,
html[data-theme="dark"] .upload-card,
html[data-theme="dark"] .home-search-box,
html[data-theme="dark"] .archive-folders,
html[data-theme="dark"] .archive-folder-content,
html[data-theme="dark"] .location-sidebar,
html[data-theme="dark"] .map-panel,
html[data-theme="dark"] .modal-card,
html[data-theme="dark"] .site-menu-panel,
html[data-theme="dark"] .record-card,
html[data-theme="dark"] .inbox-item,
html[data-theme="dark"] .activity-log-item,
html[data-theme="dark"] .notice,
html[data-theme="dark"] .generation,
html[data-theme="dark"] .ancestor-card{
  background:
    radial-gradient(ellipse at 8% 0%,rgba(190,130,65,.105),transparent 58%),
    linear-gradient(135deg,#2a1c15 0%,#211611 52%,#241418 100%)!important;
  box-shadow:inset 0 1px rgba(239,203,139,.075),0 10px 28px rgba(0,0,0,.22);
}
html[data-theme="dark"] .chronology-section,
html[data-theme="dark"] .activity-log-section,
html[data-theme="dark"] .research-band{
  background:
    radial-gradient(ellipse at 78% 0%,rgba(166,103,47,.13),transparent 55%),
    linear-gradient(115deg,#24170f 0%,#1a110e 54%,#2b1018 100%)!important;
}
html[data-theme="dark"] .ticker{
  background:linear-gradient(90deg,#250b12 0%,#4a1a1d 28%,#382015 65%,#250b12 100%)!important;
  box-shadow:inset 0 1px rgba(232,190,119,.13),inset 0 -1px rgba(0,0,0,.4);
}
html[data-theme="dark"] .button-dark,
html[data-theme="dark"] .site-header>.site-menu-toggle,
html[data-theme="dark"] .site-menu-action:hover{
  background:linear-gradient(145deg,#63202a 0%,#3b101a 58%,#260b12 100%)!important;
  box-shadow:inset 0 1px rgba(246,211,151,.17),0 4px 14px rgba(0,0,0,.3),0 0 18px rgba(174,112,57,.08);
}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] .search-input,
html[data-theme="dark"] .search-fields input,
html[data-theme="dark"] .search-fields select,
html[data-theme="dark"] .auth-card input,
html[data-theme="dark"] .upload-card input,
html[data-theme="dark"] .upload-card select,
html[data-theme="dark"] .upload-card textarea,
html[data-theme="dark"] .record-filters input,
html[data-theme="dark"] .record-filters select,
html[data-theme="dark"] .modal-card input{
  background:linear-gradient(145deg,#100b09,#19100c 72%,#160c10)!important;
  box-shadow:inset 0 1px 5px rgba(0,0,0,.35);
}
html[data-theme="dark"] .folio-card{
  box-shadow:inset 0 1px rgba(245,209,147,.12),0 0 28px rgba(174,111,48,.07),8px 10px 28px rgba(0,0,0,.28);
}
html[data-theme="dark"] .eyebrow,
html[data-theme="dark"] .folio-label,
html[data-theme="dark"] .record-category,
html[data-theme="dark"] .timeline-date,
html[data-theme="dark"] .folder-number,
html[data-theme="dark"] .search-label,
html[data-theme="dark"] .location-record-heading{
  text-shadow:0 0 14px rgba(221,174,96,.16);
}
html[data-theme="dark"] .monogram,
html[data-theme="dark"] .site-header>.site-menu-toggle{
  filter:drop-shadow(0 0 8px rgba(208,159,83,.16));
}
html[data-theme="dark"] .rule,
html[data-theme="dark"] .timeline,
html[data-theme="dark"] .timeline-item,
html[data-theme="dark"] .archive-grid{
  border-color:rgba(177,135,78,.48)!important;
}


/* Living candlelight: a slow, layered flicker that breathes across the dark study. */
html[data-theme="dark"] body::before{
  content:"";
  position:fixed;
  z-index:0;
  inset:-12%;
  pointer-events:none;
  opacity:.20;
  background:
    radial-gradient(ellipse 28rem 22rem at 12% 12%,rgba(255,190,94,.20),transparent 72%),
    radial-gradient(ellipse 24rem 30rem at 78% 38%,rgba(197,112,48,.13),transparent 72%),
    radial-gradient(ellipse 30rem 20rem at 44% 88%,rgba(255,170,76,.11),transparent 74%);
  mix-blend-mode:screen;
  transform:translate3d(0,0,0) scale(1);
  transform-origin:18% 18%;
  animation:tylka-candle-breathe 7.8s ease-in-out infinite alternate;
}
@keyframes tylka-candle-breathe{
  0%{opacity:.12;filter:blur(2px) brightness(.82);transform:translate3d(-.7%,.3%,0) scale(.985)}
  17%{opacity:.22;filter:blur(0) brightness(1.08);transform:translate3d(.2%,-.2%,0) scale(1.005)}
  31%{opacity:.16;filter:blur(1.5px) brightness(.91);transform:translate3d(-.15%,.25%,0) scale(.995)}
  54%{opacity:.25;filter:blur(.4px) brightness(1.14);transform:translate3d(.55%,-.15%,0) scale(1.012)}
  73%{opacity:.14;filter:blur(2px) brightness(.88);transform:translate3d(-.35%,.15%,0) scale(.99)}
  100%{opacity:.21;filter:blur(.5px) brightness(1.04);transform:translate3d(.25%,-.25%,0) scale(1.008)}
}
@media(prefers-reduced-motion:reduce){
  html[data-theme="dark"] body::before{animation:none!important;opacity:.15}
}


/* Complete dark-mode pass for ChronoSearch and the Location Registry. */
html[data-theme="dark"] body.chronosearch-page,
html[data-theme="dark"] body:has(.location-page){
  color:#f0e2c9!important;
}
html[data-theme="dark"] .chronosearch-page .chrono-main,
html[data-theme="dark"] .location-page,
html[data-theme="dark"] .location-page #location-workspace{
  color:#f0e2c9!important;
}
html[data-theme="dark"] .chrono-main *,
html[data-theme="dark"] .location-page *:not(img):not(svg):not(path){
  color:#f0e2c9!important;
}
html[data-theme="dark"] .chrono-filter-panel,
html[data-theme="dark"] .chrono-year-column,
html[data-theme="dark"] .chrono-record-card,
html[data-theme="dark"] .location-sidebar,
html[data-theme="dark"] .map-panel,
html[data-theme="dark"] .location-records-panel,
html[data-theme="dark"] .location-route-tools,
html[data-theme="dark"] .location-detail,
html[data-theme="dark"] .location-record,
html[data-theme="dark"] .empty-state,
html[data-theme="dark"] .notice{
  background:
    radial-gradient(ellipse at 10% 0%,rgba(177,119,57,.10),transparent 58%),
    linear-gradient(145deg,#2a1b14 0%,#1c130f 58%,#281319 100%)!important;
  background-color:#211611!important;
  border-color:rgba(177,135,78,.48)!important;
  color:#f0e2c9!important;
  box-shadow:inset 0 1px rgba(239,203,139,.07),0 8px 22px rgba(0,0,0,.24);
}
html[data-theme="dark"] .chrono-filter-grid label,
html[data-theme="dark"] .chrono-year-heading h2,
html[data-theme="dark"] .chrono-record-location,
html[data-theme="dark"] .location-record-heading,
html[data-theme="dark"] .location-page .eyebrow{
  color:#dfb86f!important;
}
html[data-theme="dark"] .chrono-year-heading span,
html[data-theme="dark"] .chrono-record-card p,
html[data-theme="dark"] .chrono-scroll-hint,
html[data-theme="dark"] .chrono-filter-footer,
html[data-theme="dark"] .location-page .connection-status,
html[data-theme="dark"] .location-page .map-caption,
html[data-theme="dark"] .location-page .location-item small,
html[data-theme="dark"] .location-page .location-record small,
html[data-theme="dark"] .location-page .location-record p{
  color:#c9b99f!important;
}
html[data-theme="dark"] .chrono-filter-grid input,
html[data-theme="dark"] .chrono-filter-grid select,
html[data-theme="dark"] .location-page input,
html[data-theme="dark"] .location-page select,
html[data-theme="dark"] .location-page textarea{
  background:linear-gradient(145deg,#100b09,#1d120e 72%,#1b0e12)!important;
  color:#f4e7d1!important;
  border-color:#8a6840!important;
  caret-color:#e2bd77;
}
html[data-theme="dark"] .chrono-filter-grid input::placeholder,
html[data-theme="dark"] .location-page input::placeholder{
  color:#b6a184!important;
}
html[data-theme="dark"] .chrono-year-column:before{
  background:#2a1b14!important;
  border-color:#d2a45d!important;
}
html[data-theme="dark"] .chrono-record-card .record-thumbnail{
  background:linear-gradient(135deg,#21160f,#32151b)!important;
  border-color:#765634!important;
}
html[data-theme="dark"] .chrono-record-card .record-thumbnail-placeholder{
  color:#e2c58e!important;
}
html[data-theme="dark"] .chrono-record-card .record-filename{
  border-color:rgba(177,135,78,.4)!important;
}
html[data-theme="dark"] .location-page .location-item{
  background:linear-gradient(135deg,#2c1d15,#241419)!important;
  border-color:#765634!important;
  color:#f0e2c9!important;
}
html[data-theme="dark"] .location-page .location-item:hover,
html[data-theme="dark"] .location-page .location-item.is-selected{
  background:linear-gradient(135deg,#54202a,#35131b)!important;
  border-color:#c49a5c!important;
}
html[data-theme="dark"] .chrono-timeline{
  scrollbar-color:#a77b45 #211611!important;
}
html[data-theme="dark"] .chrono-timeline:before{
  background:linear-gradient(90deg,#b58b50,#7d2936,#b58b50)!important;
}
html[data-theme="dark"] .chrono-ornament,
html[data-theme="dark"] .chrono-ornament span{
  color:#d5ae6b!important;
}
html[data-theme="dark"] .location-page .text-link,
html[data-theme="dark"] .chrono-main .text-link{
  color:#e0b96f!important;
}
html[data-theme="dark"] .location-page button,
html[data-theme="dark"] .chrono-main button{
  color:#f3e5cd!important;
  border-color:#947044!important;
}
html[data-theme="dark"] .location-page button:hover,
html[data-theme="dark"] .chrono-main button:hover{
  background:linear-gradient(135deg,#63202a,#351019)!important;
  color:#fff0d4!important;
}

/* Leaflet controls, popups, and attribution use the same dark walnut palette. */
html[data-theme="dark"] #family-map{
  background:#120d0b!important;
  border-color:#765634!important;
}
html[data-theme="dark"] #family-map .leaflet-control-zoom a,
html[data-theme="dark"] #family-map .leaflet-bar a,
html[data-theme="dark"] #family-map .leaflet-control-layers,
html[data-theme="dark"] #family-map .leaflet-control-attribution{
  background:rgba(30,20,15,.96)!important;
  color:#ead8b8!important;
  border-color:#765634!important;
}
html[data-theme="dark"] #family-map .leaflet-control-zoom a:hover,
html[data-theme="dark"] #family-map .leaflet-bar a:hover{
  background:#4a1922!important;
  color:#ffe9c4!important;
}
html[data-theme="dark"] #family-map .leaflet-popup-content-wrapper,
html[data-theme="dark"] #family-map .leaflet-popup-tip{
  background:#241711!important;
  color:#f0e2c9!important;
  border:1px solid #8a6840!important;
  box-shadow:0 8px 24px rgba(0,0,0,.4);
}
html[data-theme="dark"] #family-map .leaflet-popup-content{
  color:#f0e2c9!important;
}
html[data-theme="dark"] #family-map .leaflet-popup-close-button{
  color:#dfb86f!important;
}
html[data-theme="dark"] #family-map .leaflet-control-attribution a{
  color:#dfb86f!important;
}
html[data-theme="dark"] #family-map .leaflet-container{
  background:#120d0b!important;
}


/* API-key-free OSM tiles with a dark-study treatment. Keep controls and markers untouched. */
html[data-theme="dark"] #family-map .leaflet-tile-pane{
  filter:invert(1) hue-rotate(180deg) brightness(.72) contrast(1.12) saturate(.72);
}
html[data-theme="dark"] #family-map .leaflet-overlay-pane,
html[data-theme="dark"] #family-map .leaflet-marker-pane,
html[data-theme="dark"] #family-map .leaflet-tooltip-pane,
html[data-theme="dark"] #family-map .leaflet-popup-pane{
  filter:none!important;
}


/* High-visibility pin for the currently selected family-history location. */
#family-map .registry-pin-icon{
  background:transparent!important;
  border:0!important;
}
#family-map .registry-map-pin{
  position:relative;
  display:block;
  width:30px;
  height:30px;
  margin:2px;
  border:3px solid #fff4dc;
  border-radius:50% 50% 50% 0;
  background:linear-gradient(145deg,#c84c45,#761b2a 72%);
  box-shadow:0 2px 5px rgba(0,0,0,.72),0 0 0 3px rgba(214,171,99,.9),0 0 18px rgba(219,159,76,.9);
  transform:rotate(-45deg);
}
#family-map .registry-map-pin span{
  position:absolute;
  width:9px;
  height:9px;
  top:7px;
  left:7px;
  border-radius:50%;
  background:#fff3d6;
  box-shadow:0 0 5px rgba(255,239,205,.9);
}
html[data-theme="dark"] #family-map .registry-map-pin{
  border-color:#fff1d1;
  box-shadow:0 2px 6px rgba(0,0,0,.85),0 0 0 3px #d4a85f,0 0 20px rgba(220,164,83,.95);
}


/* Persistent label for the currently selected location pin. */
#family-map .registry-location-label{
  background:linear-gradient(135deg,#3a2118,#24130f)!important;
  border:1px solid #d5ad68!important;
  border-radius:999px!important;
  color:#fff0d0!important;
  font:600 12px/1.2 Georgia,serif!important;
  letter-spacing:.02em;
  padding:5px 10px!important;
  box-shadow:0 3px 12px rgba(0,0,0,.55)!important;
}
#family-map .registry-location-label:before{
  border-top-color:#d5ad68!important;
}
html[data-theme="light"] #family-map .registry-location-label{
  background:#fff8e9!important;
  color:#572a25!important;
  border-color:#9c713c!important;
}


/* ═══════════════════════════════════════════════════════════════════════
   THE GRAND ARCHIVE MOTION SYSTEM — cinematic transitions + living details
   ═══════════════════════════════════════════════════════════════════════ */
:root{
  --motion-cinema:cubic-bezier(.19,1,.22,1);
  --motion-elastic:cubic-bezier(.2,1.55,.45,1);
  --motion-gold:rgba(211,170,103,.72);
  --motion-wine:rgba(115,24,39,.72);
}
html{scroll-behavior:smooth}
body{isolation:isolate}
#tylka-page-veil{
  position:fixed;inset:0;z-index:99999;pointer-events:none;opacity:0;
  background:
    radial-gradient(ellipse at 50% 45%,rgba(222,178,104,.28),transparent 34%),
    radial-gradient(ellipse at 12% 90%,rgba(116,25,39,.7),transparent 48%),
    linear-gradient(135deg,#160d0a 0%,#382116 42%,#541522 72%,#120b09 100%);
  clip-path:circle(0% at 50% 50%);
  filter:saturate(1.15);
}
#tylka-page-veil:before,#tylka-page-veil:after{
  content:"";position:absolute;inset:-40%;pointer-events:none;
}
#tylka-page-veil:before{
  background:repeating-conic-gradient(from 0deg at 50% 50%,transparent 0deg 8deg,rgba(230,190,119,.13) 8.2deg 8.5deg,transparent 8.8deg 16deg);
  animation:archive-veil-spin 9s linear infinite;
}
#tylka-page-veil:after{
  background:linear-gradient(110deg,transparent 35%,rgba(255,225,166,.22) 48%,transparent 59%);
  transform:translateX(-70%) rotate(-12deg);
  animation:archive-veil-glass 1.1s var(--motion-cinema) both;
}
body.page-leaving #tylka-page-veil{
  opacity:1;clip-path:circle(150% at 50% 50%);
  transition:clip-path .92s var(--motion-cinema),opacity .18s ease;
}
body.page-leaving main,body.page-leaving .site-header,body.page-leaving .site-footer{
  filter:blur(8px) brightness(.62) saturate(.7);
  transform:scale(.975) translateY(-10px);
  opacity:0;
  transition:filter .65s ease,transform .82s var(--motion-cinema),opacity .52s ease;
}
body.page-leaving .site-header{transform:translateY(-24px);letter-spacing:.04em}
body.page-leaving .site-footer{transform:translateY(24px)}
body.page-enter{opacity:0;transform:scale(1.018);filter:blur(7px)}
body.page-enter-active{opacity:1;transform:none;filter:none;transition:opacity .9s ease,transform 1.1s var(--motion-cinema),filter 1s ease}
body.page-enter-active .site-header{animation:archive-header-arrive 1.15s var(--motion-cinema) both}
body.page-enter-active main>*{animation:archive-stagger-arrive 1.1s var(--motion-cinema) both}
body.page-enter-active main>*:nth-child(2){animation-delay:.08s}
body.page-enter-active main>*:nth-child(3){animation-delay:.15s}
body.page-enter-active main>*:nth-child(4){animation-delay:.22s}
body.page-enter-active main>*:nth-child(5){animation-delay:.29s}
body.page-enter-active .site-footer{animation:archive-footer-arrive 1.2s var(--motion-cinema) .25s both}
@keyframes archive-header-arrive{0%{opacity:0;transform:translateY(-35px);filter:blur(12px)}65%{opacity:1}100%{transform:none;filter:none}}
@keyframes archive-stagger-arrive{0%{opacity:0;transform:translateY(35px) scale(.985);filter:blur(8px);clip-path:inset(0 0 12% 0)}100%{opacity:1;transform:none;filter:none;clip-path:inset(0)}}
@keyframes archive-footer-arrive{0%{opacity:0;transform:translateY(28px);filter:blur(7px)}100%{opacity:1;transform:none;filter:none}}
@keyframes archive-veil-spin{to{transform:rotate(360deg)}}
@keyframes archive-veil-glass{0%{transform:translateX(-75%) rotate(-12deg)}100%{transform:translateX(75%) rotate(-12deg)}}

/* Slow candlelit shimmer across the page; texture is decorative and never interactive. */
body:after{
  content:"";position:fixed;inset:-30%;z-index:50;pointer-events:none;opacity:.16;
  background:linear-gradient(112deg,transparent 38%,rgba(221,178,109,.13) 47%,rgba(255,232,183,.08) 50%,transparent 59%);
  transform:translateX(-35%) rotate(-8deg);
  animation:archive-atmosphere-drift 24s ease-in-out infinite alternate;
}
@keyframes archive-atmosphere-drift{0%{transform:translate3d(-8%,2%,0) rotate(-8deg);opacity:.08}50%{opacity:.22}100%{transform:translate3d(8%,-2%,0) rotate(-8deg);opacity:.12}}

/* Living gilt edges, ink-like underlines, and dimensional hover responses. */
.site-header{position:relative}
.site-header:after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;transform:scaleX(.25);transform-origin:center;
  background:linear-gradient(90deg,transparent,var(--motion-gold),var(--motion-wine),var(--motion-gold),transparent);
  animation:archive-gilt-rule 8s ease-in-out infinite;
}
@keyframes archive-gilt-rule{0%,100%{transform:scaleX(.22);opacity:.35}50%{transform:scaleX(1);opacity:.95}}
.wordmark .monogram{position:relative;overflow:hidden;transition:transform .7s var(--motion-elastic),box-shadow .6s ease}
.wordmark:hover .monogram{transform:rotate(8deg) scale(1.09);box-shadow:0 0 0 4px rgba(196,151,83,.12),0 0 22px rgba(196,151,83,.3)}
.wordmark .monogram:after{content:"";position:absolute;inset:-80% 35%;background:linear-gradient(90deg,transparent,rgba(255,239,201,.75),transparent);transform:rotate(35deg) translateX(-160%);transition:transform .9s ease}
.wordmark:hover .monogram:after{transform:rotate(35deg) translateX(220%)}
.primary-nav a{position:relative;transition:color .35s ease,transform .35s var(--motion-elastic)}
.primary-nav a:after{content:"";position:absolute;left:50%;right:50%;bottom:-7px;height:1px;background:linear-gradient(90deg,var(--accent),#d9b26f);transition:left .45s var(--motion-cinema),right .45s var(--motion-cinema)}
.primary-nav a:hover{transform:translateY(-3px)}
.primary-nav a:hover:after,.primary-nav a[aria-current=page]:after{left:0;right:0}
button,.button,.small-button,.owner-sign-in-button,.archive-folder,.location-item,.paper-card,.record-card,.ancestor-card,.folio-card,.modal-card{
  transition:transform .55s var(--motion-elastic),box-shadow .55s ease,border-color .4s ease,background-color .4s ease,filter .4s ease!important;
}
button:hover,.button:hover,.small-button:hover,.owner-sign-in-button:hover,.archive-folder:hover,.location-item:hover,.paper-card:hover,.record-card:hover,.ancestor-card:hover,.folio-card:hover{
  filter:brightness(1.045) saturate(1.08);
  box-shadow:0 12px 28px rgba(62,34,22,.13),0 0 0 1px rgba(199,158,93,.12);
}
.paper-card,.record-card,.ancestor-card,.archive-folder,.location-item,.folio-card,.modal-card,.map-panel,.location-sidebar,.location-records-panel{
  position:relative;isolation:isolate;
}
.paper-card:before,.record-card:before,.ancestor-card:before,.archive-folder:before,.location-item:before,.folio-card:before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;
  background:linear-gradient(115deg,transparent 20%,rgba(255,239,203,.22) 48%,transparent 70%);
  transform:translateX(-115%);transition:opacity .35s ease;
}
.paper-card:hover:before,.record-card:hover:before,.ancestor-card:hover:before,.archive-folder:hover:before,.location-item:hover:before,.folio-card:hover:before{
  opacity:1;animation:archive-card-glint 1.15s var(--motion-cinema) both;
}
@keyframes archive-card-glint{to{transform:translateX(115%)}}
h1,h2{position:relative}
h1:after,h2:after{
  content:"";display:block;width:clamp(44px,8vw,86px);height:1px;margin-top:.28em;
  background:linear-gradient(90deg,var(--accent),rgba(211,170,103,.15));
  transform-origin:left;animation:archive-heading-rule 1.8s var(--motion-cinema) both;
}
@keyframes archive-heading-rule{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}
input,select,textarea{transition:box-shadow .4s ease,border-color .4s ease,background-color .4s ease,transform .4s var(--motion-elastic)!important}
input:focus,select:focus,textarea:focus{box-shadow:0 0 0 1px var(--accent),0 0 0 5px rgba(196,151,83,.13),0 8px 24px rgba(65,36,20,.12)!important;transform:translateY(-2px)}
.site-modal:not([hidden]){animation:archive-modal-veil .55s ease both}
.site-modal:not([hidden]) .modal-card{animation:archive-modal-arrive .8s var(--motion-cinema) both}
@keyframes archive-modal-veil{from{opacity:0;backdrop-filter:blur(0)}to{opacity:1;backdrop-filter:blur(9px)}}
@keyframes archive-modal-arrive{0%{opacity:0;transform:translateY(42px) scale(.91) rotateX(8deg);filter:blur(10px)}70%{opacity:1}100%{transform:none;filter:none}}
.back-to-top{overflow:hidden}
.back-to-top:before{content:"";position:absolute;inset:-80%;background:linear-gradient(90deg,transparent,rgba(255,236,192,.4),transparent);transform:rotate(35deg) translateX(-120%);animation:archive-top-glimmer 6s ease-in-out infinite}
@keyframes archive-top-glimmer{0%,65%,100%{transform:rotate(35deg) translateX(-120%)}82%{transform:rotate(35deg) translateX(120%)}}
::selection{background:rgba(139,46,52,.28);color:inherit}
html[data-theme="dark"] body:after{opacity:.23}
html.reduce-motion #tylka-page-veil,html.reduce-motion body:after{display:none!important}
html.reduce-motion *,html.reduce-motion *:before,html.reduce-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){
  #tylka-page-veil,body:after{display:none!important}
  body.page-enter,body.page-enter-active,body.page-leave,body.page-leaving{opacity:1!important;transform:none!important;filter:none!important}
  body.page-leaving main,body.page-leaving .site-header,body.page-leaving .site-footer{opacity:1!important;transform:none!important;filter:none!important}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media(max-width:700px){
  body.page-enter-active main>*{animation-duration:.8s}
  .primary-nav a:hover{transform:none}
}

/* Keep the canvas visible while the cinematic curtain travels across it. */
body.page-leaving.page-leave{opacity:1!important;transform:none!important;transition:none!important}

/* Soft blended page-to-page transition: dissolve, crossfade and warm color wash. */
#tylka-page-veil{
  clip-path:none!important;
  opacity:0!important;
  background:
    radial-gradient(ellipse at 18% 28%,rgba(181,111,63,.12),transparent 48%),
    radial-gradient(ellipse at 82% 72%,rgba(107,31,46,.15),transparent 52%),
    linear-gradient(125deg,rgba(42,25,18,.16),rgba(123,73,42,.10),rgba(75,25,35,.16))!important;
  -webkit-backdrop-filter:blur(0) saturate(1);
  backdrop-filter:blur(0) saturate(1);
  mix-blend-mode:soft-light;
  transition:opacity .72s ease,-webkit-backdrop-filter .72s ease,backdrop-filter .72s ease!important;
}
#tylka-page-veil:before{
  opacity:.18!important;
  background:radial-gradient(ellipse at 50% 50%,rgba(236,197,130,.18),transparent 68%)!important;
  animation:archive-blend-breathe 5s ease-in-out infinite alternate!important;
}
#tylka-page-veil:after{
  opacity:.28!important;
  background:linear-gradient(105deg,transparent 25%,rgba(255,231,185,.14) 48%,rgba(130,57,49,.08) 53%,transparent 72%)!important;
  transform:translateX(-22%) rotate(-5deg)!important;
  animation:archive-blend-drift 2.4s ease-in-out both!important;
}
body.page-leaving #tylka-page-veil{
  opacity:1!important;
  clip-path:none!important;
  -webkit-backdrop-filter:blur(7px) saturate(1.12);
  backdrop-filter:blur(7px) saturate(1.12);
  transition:opacity .72s ease,-webkit-backdrop-filter .72s ease,backdrop-filter .72s ease!important;
}
body.page-leaving main,body.page-leaving .site-header,body.page-leaving .site-footer{
  filter:blur(3px) brightness(.9) saturate(.94)!important;
  transform:translateY(-3px) scale(.995)!important;
  opacity:.18!important;
  transition:filter .68s ease,transform .72s ease,opacity .68s ease!important;
}
body.page-leaving .site-header{transform:translateY(-5px)!important}
body.page-leaving .site-footer{transform:translateY(5px)!important}
body.page-enter{
  opacity:0!important;transform:scale(1.006)!important;filter:blur(4px)!important;
}
body.page-enter-active{
  opacity:1!important;transform:none!important;filter:none!important;
  transition:opacity .9s ease,transform 1s ease,filter .9s ease!important;
}
body.page-enter-active main>*{
  animation:archive-blended-arrive .95s ease both!important;
}
body.page-enter-active main>*:nth-child(2){animation-delay:.035s!important}
body.page-enter-active main>*:nth-child(3){animation-delay:.07s!important}
body.page-enter-active main>*:nth-child(4){animation-delay:.105s!important}
body.page-enter-active main>*:nth-child(5){animation-delay:.14s!important}
@keyframes archive-blended-arrive{
  0%{opacity:0;filter:blur(5px);transform:translateY(9px) scale(.997)}
  100%{opacity:1;filter:none;transform:none}
}
@keyframes archive-blend-breathe{
  from{transform:scale(.92);opacity:.12}
  to{transform:scale(1.08);opacity:.3}
}
@keyframes archive-blend-drift{
  0%{transform:translateX(-30%) rotate(-5deg);opacity:0}
  45%{opacity:1}
  100%{transform:translateX(30%) rotate(-5deg);opacity:.35}
}
@media(prefers-reduced-motion:reduce){
  #tylka-page-veil{display:none!important}
  body.page-enter,body.page-enter-active{opacity:1!important;transform:none!important;filter:none!important}
}


/* Desktop reading scale: slightly tighter typography and spacing across the archive. */
@media(min-width:900px){
  html{font-size:15px}
  body{font-size:15px;line-height:1.58}
  .site-header{min-height:74px;padding-top:.8rem;padding-bottom:.8rem;gap:1.5rem}
  .wordmark strong{font-size:1.27rem}
  .monogram{width:34px;height:34px;font-size:1.35rem}
  .primary-nav{gap:clamp(.65rem,1.5vw,1.45rem)}
  .primary-nav a{font-size:.74rem}
  .hero{min-height:500px;padding-top:clamp(3.4rem,7vw,6.8rem);padding-bottom:clamp(3.4rem,7vw,6.8rem);gap:clamp(2rem,5vw,5rem)}
  h1{font-size:clamp(2.65rem,5.2vw,5.15rem)}
  h2{font-size:clamp(2.1rem,3.8vw,3.65rem)}
  .section{padding-top:clamp(3.3rem,6.5vw,5.8rem);padding-bottom:clamp(3.3rem,6.5vw,5.8rem)}
  .archive-page{padding-top:clamp(2.6rem,5.5vw,5rem);padding-bottom:clamp(2.6rem,5.5vw,5rem)}
  .archive-page h1{font-size:clamp(2.55rem,4.6vw,4.2rem)}
  .button{min-height:42px;padding:.65rem 1rem}
  .paper-card{min-height:215px;padding:1.3rem}
  .location-toolbar{margin:2.4rem 0 1.1rem}
  .location-layout{grid-template-columns:minmax(220px,300px) minmax(0,1fr) minmax(245px,300px);gap:1rem}
  #family-map{height:470px}
  .location-sidebar,.map-panel{padding:.85rem}
  .location-item{padding:.72rem .85rem}
  .location-detail h3{font-size:1.45rem}
}

/* Associated location records: compact closed bars that expand in place. */
.location-record{
  margin:0;
  padding:0;
  border-top:1px solid var(--line);
}
.location-record-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.8rem;
  min-height:46px;
  padding:.55rem .65rem;
  cursor:pointer;
  list-style:none;
  border-radius:2px;
  transition:background .25s ease,color .25s ease,padding .25s ease;
}
.location-record-bar::-webkit-details-marker{display:none}
.location-record-bar:hover,
.location-record[open]>.location-record-bar{
  background:rgba(174,137,83,.13);
}
.location-record-labels{display:flex;align-items:center;gap:.65rem;min-width:0;flex-wrap:wrap}
.location-record-labels strong{
  display:block;
  font:1rem var(--serif);
  line-height:1.25;
}
.location-record-labels small{
  display:inline-block;
  color:var(--muted);
  font-size:.65rem;
  letter-spacing:.04em;
  text-transform:capitalize;
}
.location-record-chevron{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:25px;height:25px;
  border:1px solid var(--line);
  border-radius:50%;
  color:var(--accent);
  font-size:.95rem;
  transition:transform .3s ease,background .3s ease,color .3s ease;
}
.location-record[open] .location-record-chevron{
  transform:rotate(45deg);
  background:var(--accent-dark);
  color:var(--paper-light);
}
.location-record-body{
  padding:.1rem .8rem 1rem;
  animation:location-record-expand .32s ease both;
}
.location-record-body>p{
  margin:.45rem 0 .8rem;
  color:var(--muted);
  font-size:.86rem;
  white-space:pre-wrap;
}
.location-record-body .record-preview{max-width:100%;margin:.65rem 0}
.location-record-body .record-preview img{max-height:420px}
.location-record-body .text-link{font-size:.82rem}
@keyframes location-record-expand{
  from{opacity:0;transform:translateY(-5px)}
  to{opacity:1;transform:none}
}
@media(prefers-reduced-motion:reduce){
  .location-record-body{animation:none}
  .location-record-bar,.location-record-chevron{transition:none}
}

/* Performance pass: keep the archive's visual identity while avoiding costly always-on effects. */
html{scroll-behavior:auto}
body:after{display:none!important;animation:none!important}
.site-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#tylka-page-veil{display:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;mix-blend-mode:normal!important}
#tylka-page-veil:before,#tylka-page-veil:after{display:none!important;animation:none!important}
body.page-leaving main,body.page-leaving .site-header,body.page-leaving .site-footer{
  filter:none!important;transform:translateY(-2px)!important;opacity:.12!important;
  transition:opacity .3s ease,transform .3s ease!important;
}
body.page-enter{opacity:0!important;transform:none!important;filter:none!important}
body.page-enter-active{opacity:1!important;transform:none!important;filter:none!important;transition:opacity .3s ease!important}
body.page-enter-active main>*{animation:archive-fast-arrive .32s ease both!important;filter:none!important;clip-path:none!important}
body.page-enter-active main>*:nth-child(n){animation-delay:0s!important}
@keyframes archive-fast-arrive{from{opacity:.72;transform:translateY(4px)}to{opacity:1;transform:none}}
.site-header:after,.ticker:after,.site-footer:before,.back-to-top:before{animation:none!important}
h1:after,h2:after{animation:none!important}
button,.button,.small-button,.owner-sign-in-button,.archive-folder,.location-item,.paper-card,.record-card,.ancestor-card,.folio-card,.modal-card{
  will-change:auto!important;filter:none!important;
  transition:background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
button:hover,.button:hover,.small-button:hover,.owner-sign-in-button:hover,.archive-folder:hover,.location-item:hover,.paper-card:hover,.record-card:hover,.ancestor-card:hover,.folio-card:hover{
  filter:none!important;box-shadow:0 5px 14px rgba(62,34,22,.09)!important;
}
.paper-card:before,.record-card:before,.ancestor-card:before,.archive-folder:before,.location-item:before,.folio-card:before{display:none!important;animation:none!important}
input,select,textarea{transition:border-color .16s ease,box-shadow .16s ease!important}
input:focus,select:focus,textarea:focus{transform:none!important;box-shadow:0 0 0 2px rgba(196,151,83,.13)!important}
.site-modal:not([hidden]),.site-modal:not([hidden]) .modal-card{animation-duration:.22s!important;backdrop-filter:none!important}
.motion-reveal,.reveal{filter:none!important;transition:opacity .22s ease,transform .22s ease!important}
.motion-ripple{display:none!important}
@media(prefers-reduced-motion:reduce){
  body.page-leaving main,body.page-leaving .site-header,body.page-leaving .site-footer{opacity:1!important}
}

/* Disable staggered per-card entrance work on large archive result sets. */
body,.site-header,.brand-banner,.brand-banner:before,.brand-banner-inner>*,.site-footer,
.record-card,.activity-log-item,.location-item,.archive-folder,.chrono-year-column,.chrono-record-card,.ticker i{
  animation:none!important;
}


/* Final responsiveness pass: keep long lists cheap to paint and scroll. */
.record-card,.activity-log-item,.chrono-record-card,.location-item,.ancestor-card{
  content-visibility:auto;
  contain-intrinsic-size:auto 190px;
}
.chrono-year-column{content-visibility:auto;contain-intrinsic-size:auto 420px}
.location-record-body img{content-visibility:auto}
@media(prefers-reduced-motion:reduce){
  .record-card,.activity-log-item,.chrono-record-card,.location-item,.ancestor-card{
    content-visibility:visible;
  }
}


/* Lo-fi study-room palette: warmer, richer color on desktop without heavy filters. */
:root{
  --paper:#e6d6b7;
  --paper-light:#f2e7d0;
  --paper-dark:#cdb58d;
  --ink:#35251f;
  --ink-soft:#594035;
  --muted:#80634e;
  --accent:#9b493b;
  --accent-dark:#713027;
  --gold:#c39a55;
  --border:#b69a70;
  --shadow:rgba(54,31,22,.16);
}
html{background:#d7c09a}
body{
  background-color:var(--paper);
  background-image:
    radial-gradient(ellipse at 12% 8%,rgba(194,137,75,.17),transparent 42%),
    radial-gradient(ellipse at 88% 30%,rgba(137,65,48,.10),transparent 38%),
    linear-gradient(135deg,rgba(255,241,208,.18),rgba(110,69,43,.045));
  color:var(--ink);
}
.site-header,.site-footer{
  background-color:rgba(83,47,35,.97);
  border-color:#bd9254;
}
.brand-banner{
  background-color:#7d392e;
  background-image:linear-gradient(115deg,#673027 0%,#914737 48%,#6d342a 100%);
  color:#f6e4c1;
}
.brand-banner h1,.brand-banner h2,.brand-banner p{color:#f6e4c1}
.paper-card,.record-card,.ancestor-card,.folio-card,.archive-folder,.location-item,
.chrono-year-column,.chrono-record-card,.modal-card,.search-panel,.registry-panel{
  background-color:rgba(246,232,204,.94);
  border-color:rgba(143,101,61,.56);
  color:#3b2921;
}
button,.button,.small-button,.owner-sign-in-button{
  background-color:#8d4033;
  border-color:#bd9254;
  color:#fff0d2;
}
button:hover,.button:hover,.small-button:hover,.owner-sign-in-button:hover{
  background-color:#a94f3e;
  border-color:#d4ad6b;
  box-shadow:0 4px 12px rgba(91,44,30,.18)!important;
}
a{color:#8b3f32}
a:hover{color:#b15b40}
input,select,textarea{
  background-color:#f6ecd8;
  color:#35251f;
  border-color:#b69a70;
}
::selection{background:#a95a43;color:#fff0d2}
/* A quiet paper grain, rendered as a static texture to keep scrolling smooth. */
body:before{
  opacity:.13;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.19'/%3E%3C/svg%3E");
  pointer-events:none;
}
body.dark-mode,html.dark-mode{
  --paper:#211916;
  --paper-light:#33251f;
  --paper-dark:#17110f;
  --ink:#f0dfbf;
  --ink-soft:#d3b995;
  --muted:#c1a17e;
  --accent:#a94e3c;
  --accent-dark:#793329;
  --gold:#d0a45b;
  --border:#71513b;
  --shadow:rgba(0,0,0,.35);
  background-color:#17110f;
  color:var(--ink);
}
body.dark-mode{
  background-image:
    radial-gradient(ellipse at 14% 5%,rgba(157,92,48,.19),transparent 42%),
    radial-gradient(ellipse at 85% 32%,rgba(113,35,31,.22),transparent 43%),
    linear-gradient(145deg,#251a16,#17110f 72%);
}
.dark-mode .site-header,.dark-mode .site-footer{background-color:rgba(29,19,16,.98);border-color:#8b653b}
.dark-mode .brand-banner{
  background-image:linear-gradient(115deg,#321916 0%,#56251e 48%,#291714 100%);
  color:#f0d5a1;
}
.dark-mode .brand-banner h1,.dark-mode .brand-banner h2,.dark-mode .brand-banner p{color:#f0d5a1}
.dark-mode .paper-card,.dark-mode .record-card,.dark-mode .ancestor-card,.dark-mode .folio-card,
.dark-mode .archive-folder,.dark-mode .location-item,.dark-mode .chrono-year-column,
.dark-mode .chrono-record-card,.dark-mode .modal-card,.dark-mode .search-panel,.dark-mode .registry-panel{
  background-color:#30221c;
  border-color:#765238;
  color:#f0dfbf;
}
.dark-mode button,.dark-mode .button,.dark-mode .small-button,.dark-mode .owner-sign-in-button{
  background-color:#713329;border-color:#a57b42;color:#f4dfb5;
}
.dark-mode button:hover,.dark-mode .button:hover,.dark-mode .small-button:hover,.dark-mode .owner-sign-in-button:hover{
  background-color:#914333;border-color:#d0a45b;
}
.dark-mode a{color:#e0b56d}
.dark-mode a:hover{color:#f1d49b}
.dark-mode input,.dark-mode select,.dark-mode textarea{background-color:#211815;color:#f0dfbf;border-color:#765238}
.dark-mode ::selection{background:#a94e3c;color:#fff0d2}
/* Desktop screens often flatten the palette; restore warm contrast without oversaturating text. */
@media(min-width:900px){
  body{background-color:#e2d0ad}
  .paper-card,.record-card,.ancestor-card,.folio-card,.archive-folder,.location-item,
  .chrono-year-column,.chrono-record-card,.modal-card,.search-panel,.registry-panel{
    box-shadow:0 5px 18px rgba(68,39,24,.09);
  }
  .brand-banner{background-image:linear-gradient(115deg,#71352b,#a4513b 52%,#75382d)}
  .dark-mode{background-color:#17110f}
  .dark-mode .brand-banner{background-image:linear-gradient(115deg,#321916,#61291f 52%,#291714)}
}
@media(prefers-reduced-motion:reduce){body:before{display:none}}

/* Match the reference parchment: fibrous tan paper, naturally darkened edges, no glossy gradients. */
body{
  background-color:#c9a779!important;
  background-image:
    radial-gradient(ellipse at 50% 42%,rgba(255,239,199,.40) 0%,rgba(230,201,151,.16) 56%,rgba(99,57,32,.22) 100%),
    linear-gradient(90deg,rgba(99,57,32,.25),transparent 5%,transparent 95%,rgba(99,57,32,.25)),
    repeating-linear-gradient(0deg,rgba(105,74,43,.035) 0px,rgba(105,74,43,.035) 1px,transparent 1px,transparent 4px),
    linear-gradient(180deg,#ddc398 0%,#d2b184 38%,#c7a274 100%)!important;
  background-attachment:fixed!important;
}
body:before{
  opacity:.22!important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 240'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.035 .42' numOctaves='3' seed='8' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)' opacity='.48'/%3E%3C/svg%3E")!important;
  background-size:240px 240px!important;
  mix-blend-mode:multiply;
}
.paper-card,.record-card,.ancestor-card,.folio-card,.archive-folder,.location-item,
.chrono-year-column,.chrono-record-card,.modal-card,.search-panel,.registry-panel{
  background-color:rgba(240,222,187,.88)!important;
  background-image:linear-gradient(135deg,rgba(255,246,218,.22),rgba(139,91,48,.055))!important;
  border-color:rgba(128,83,47,.45)!important;
}
@media(min-width:900px){
  body{background-color:#d0b184!important}
  .paper-card,.record-card,.ancestor-card,.folio-card,.archive-folder,.location-item,
  .chrono-year-column,.chrono-record-card,.modal-card,.search-panel,.registry-panel{
    box-shadow:0 3px 12px rgba(73,45,26,.10)!important;
  }
}
body.dark-mode{
  background-color:#211814!important;
  background-image:
    radial-gradient(ellipse at 50% 35%,rgba(109,72,43,.24),transparent 66%),
    repeating-linear-gradient(0deg,rgba(193,147,88,.025) 0px,rgba(193,147,88,.025) 1px,transparent 1px,transparent 4px),
    linear-gradient(180deg,#30221b,#1d1411 100%)!important;
}
.dark-mode .paper-card,.dark-mode .record-card,.dark-mode .ancestor-card,.dark-mode .folio-card,
.dark-mode .archive-folder,.dark-mode .location-item,.dark-mode .chrono-year-column,
.dark-mode .chrono-record-card,.dark-mode .modal-card,.dark-mode .search-panel,.dark-mode .registry-panel{
  background-color:rgba(48,34,27,.94)!important;
  background-image:linear-gradient(135deg,rgba(194,145,79,.055),rgba(0,0,0,.08))!important;
}

/* Give the archive toolbar actions comfortable inset spacing. */
.archive-toolbar{gap:1.25rem}
.archive-toolbar .add-record-trigger{margin:.45rem .75rem .45rem 0;align-self:center}
@media(max-width:700px){
  .archive-toolbar .add-record-trigger{margin:.25rem .25rem .25rem 0}
}

/* Global comfort spacing: nothing should touch the edges of its parent or viewport. */
:root{--edge-breathing-room:clamp(12px,2.4vw,28px)}
*,*::before,*::after{box-sizing:border-box}
img,video,canvas,iframe,svg{max-width:100%}
main{width:min(100% - 2*var(--edge-breathing-room),1200px);margin-inline:auto}
.site-header,.site-footer{padding-inline:var(--edge-breathing-room)}
main>section,main>.section,main>.paper-card,main>.panel,main>.content-panel{margin-inline:auto;max-width:100%}
.paper-card,.record-card,.ancestor-card,.folio-card,.archive-folder,.location-item,
.chrono-year-column,.chrono-record-card,.modal-card,.search-panel,.registry-panel,
.archive-toolbar,.archive-grid,.record-grid,.ancestor-grid,.chrono-results,.location-layout,
form,.form-section,.detail-source,.detail-transcription{
  min-width:0;
}
.paper-card,.record-card,.ancestor-card,.folio-card,.modal-card,.search-panel,.registry-panel,
.archive-toolbar,.archive-grid,.record-grid,.ancestor-grid,.chrono-results,.location-layout{
  padding-inline:clamp(12px,2vw,24px);
}
button,.button,.small-button,.owner-sign-in-button,input,select,textarea{
  max-width:100%;
}
button,.button,.small-button,.owner-sign-in-button{margin-block:2px}
input,select,textarea{padding:.65rem .8rem}
.archive-toolbar{gap:1rem;padding-block:.75rem}
.archive-toolbar .add-record-trigger{margin:.45rem .5rem}
.site-modal{padding:clamp(12px,3vw,32px)}
.site-modal .modal-card{width:min(100%,1100px);margin:0 auto}
.record-detail-grid,.location-layout,.archive-grid,.ancestor-grid{gap:clamp(12px,2vw,24px)}
.record-detail-grid>* ,.location-layout>* ,.archive-grid>* ,.ancestor-grid>*{min-width:0}
@media(max-width:700px){
  main{width:calc(100% - 24px)}
  .site-header,.site-footer{padding-inline:12px}
  .paper-card,.record-card,.ancestor-card,.folio-card,.modal-card,.search-panel,.registry-panel,
  .archive-toolbar,.archive-grid,.record-grid,.ancestor-grid,.chrono-results,.location-layout{
    padding-inline:12px;
  }
  .site-modal{padding:10px}
  button,.button,.small-button,.owner-sign-in-button{white-space:normal}
  pre,code,.record-detail-grid,.location-layout{overflow-wrap:anywhere}
}

.detail-download-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:.8rem 0}.detail-download-actions button{padding:.7rem 1rem}
.chrono-record-card{cursor:pointer}.chrono-record-card:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

.site-header{
  background-color:#e7d2aa!important;
  background-image:linear-gradient(90deg,#ead8b7 0%,#d6b17b 24%,#9d5942 57%,#54271f 100%)!important;
  color:#2d1c16!important;
  border-bottom:1px solid #b18a50!important;
}
.site-header .wordmark,.site-header .wordmark strong,.site-header .wordmark small{
  color:#302018!important;
  text-shadow:0 1px rgba(255,240,208,.38);
}
.site-header .monogram{
  background:#f1dfbb!important;
  color:#653126!important;
  border-color:#a77a42!important;
}
.site-header .primary-nav a{
  color:#fff0d2!important;
  text-shadow:0 1px 2px rgba(25,12,8,.5);
}
.site-header .primary-nav a:hover,.site-header .primary-nav a[aria-current="page"]{
  color:#ffe0a0!important;
}
.site-header .menu-toggle{
  color:#3a2118!important;
  background:rgba(255,239,207,.88)!important;
  border-color:#a87a43!important;
}
.site-header .owner-sign-in-button{
  color:#fff0d2!important;
  background:#673126!important;
  border-color:#d0a45b!important;
}
/* Global contrast guard: dark surfaces always use light text; pale surfaces use dark text. */
.dark-mode .site-header,.dark-mode .site-footer{
  background-image:linear-gradient(90deg,#3a271f 0%,#4b2b22 34%,#6e3428 66%,#251714 100%)!important;
  color:#f3e3c4!important;
}
.dark-mode .site-header .wordmark,.dark-mode .site-header .wordmark strong,
.dark-mode .site-header .wordmark small,.dark-mode .site-header .primary-nav a,
.dark-mode .site-header .menu-toggle{color:#f3e3c4!important}
.dark-mode .site-header .menu-toggle{background:#38251e!important;border-color:#9a7040!important}
.dark-mode .paper-card,.dark-mode .record-card,.dark-mode .ancestor-card,.dark-mode .folio-card,
.dark-mode .archive-folder,.dark-mode .location-item,.dark-mode .chrono-year-column,
.dark-mode .chrono-record-card,.dark-mode .modal-card,.dark-mode .search-panel,.dark-mode .registry-panel,
.dark-mode .chrono-filter-panel,.dark-mode .site-modal .modal-card{
  color:#f0dfbf!important;
}
.dark-mode .paper-card p,.dark-mode .record-card p,.dark-mode .ancestor-card p,
.dark-mode .folio-card p,.dark-mode .archive-folder p,.dark-mode .location-item p,
.dark-mode .chrono-year-column p,.dark-mode .chrono-record-card p,
.dark-mode .modal-card p,.dark-mode .search-panel p,.dark-mode .registry-panel p,
.dark-mode .paper-card h1,.dark-mode .paper-card h2,.dark-mode .paper-card h3,
.dark-mode .record-card h1,.dark-mode .record-card h2,.dark-mode .record-card h3,
.dark-mode .modal-card h1,.dark-mode .modal-card h2,.dark-mode .modal-card h3{color:#f0dfbf!important}
.dark-mode input,.dark-mode select,.dark-mode textarea{
  color:#f0dfbf!important;background-color:#211815!important;border-color:#765238!important;
}
.dark-mode input::placeholder,.dark-mode textarea::placeholder{color:#c3a785!important;opacity:1}
.dark-mode label,.dark-mode small,.dark-mode .muted,.dark-mode .connection-status{color:#d7bd99}
.dark-mode button,.dark-mode .button,.dark-mode .small-button,.dark-mode .owner-sign-in-button{
  color:#fff0d2!important;
}
.dark-mode .leaflet-popup-content,.dark-mode .leaflet-popup-content-wrapper,
.dark-mode .leaflet-popup-tip{color:#f0dfbf!important;background:#30221c!important}

/* Header nav contrast states: dark ink when idle, ivory when active/red. */
.site-header .primary-nav a{
  color:#35231a!important;
  text-shadow:none!important;
}
.site-header .primary-nav a:hover,
.site-header .primary-nav a:focus-visible,
.site-header .primary-nav a[aria-current="page"],
.site-header .primary-nav a.active,
.site-header .primary-nav a.selected{
  color:#fff0d2!important;
  background-color:#8d3b30!important;
  text-shadow:0 1px 2px rgba(35,14,10,.35)!important;
}
.dark-mode .site-header .primary-nav a{
  color:#35231a!important;
}
.dark-mode .site-header .primary-nav a:hover,
.dark-mode .site-header .primary-nav a:focus-visible,
.dark-mode .site-header .primary-nav a[aria-current="page"],
.dark-mode .site-header .primary-nav a.active,
.dark-mode .site-header .primary-nav a.selected{
  color:#fff0d2!important;
  background-color:#8d3b30!important;
}


/* Selected-folder drawer: keep the folder header fixed while the contents unfold downward. */
.archive-folder-content.is-opening .records-heading{
  animation:none!important;
}
.archive-folder-content.is-opening .records-list{
  transform-origin:top center;
  animation:folder-contents-unfold .58s cubic-bezier(.16,1,.3,1) both!important;
}
@keyframes folder-contents-unfold{
  0%{opacity:.35;clip-path:inset(0 0 100% 0);transform:translateY(-8px) scaleY(.985)}
  65%{opacity:1;clip-path:inset(0);transform:translateY(2px) scaleY(1.005)}
  100%{opacity:1;clip-path:inset(0);transform:translateY(0) scaleY(1)}
}
@media(max-width:760px){
  .archive-folder-content.is-opening .records-list{
    animation:folder-contents-unfold-mobile .48s cubic-bezier(.16,1,.3,1) both!important;
  }
  @keyframes folder-contents-unfold-mobile{
    from{opacity:.3;clip-path:inset(0 0 100% 0);transform:translateY(-6px)}
    to{opacity:1;clip-path:inset(0);transform:translateY(0)}
  }
}
@media(prefers-reduced-motion:reduce){
  .archive-folder-content.is-opening .records-list{animation:none!important}
}


/* Keep the header navigation compact and tucked beside the settings gear. */
.site-header .primary-nav{
  gap:clamp(.25rem,.65vw,.6rem)!important;
  margin-right:.35rem!important;
  align-items:center;
}
.site-header .primary-nav a,
.site-header .primary-nav .owner-sign-in-button{
  padding:.48rem .62rem!important;
  border:1px solid transparent!important;
  border-radius:3px;
  line-height:1.25;
  white-space:nowrap;
}
.site-header .primary-nav a:hover,
.site-header .primary-nav a:focus-visible,
.site-header .primary-nav a[aria-current="page"],
.site-header .primary-nav a.active,
.site-header .primary-nav a.selected,
.site-header .primary-nav .owner-sign-in-button:hover{
  color:#fff0d2!important;
  background:#8d3b30!important;
  border-color:#b47755!important;
}
.site-header .site-menu-toggle{margin-left:0!important;flex-shrink:0}
@media(max-width:1000px){
  .site-header .primary-nav{gap:.3rem!important;margin-right:.2rem!important}
  .site-header .primary-nav a,.site-header .primary-nav .owner-sign-in-button{padding:.42rem .48rem!important;font-size:.74rem}
}
@media(max-width:800px){
  .site-header .primary-nav{margin-right:0!important;gap:0!important}
  .site-header .primary-nav a,.site-header .primary-nav .owner-sign-in-button{padding:.7rem .6rem!important}
}

/* Selected archive folder uses the same oxblood-red active state as header buttons. */
.archive-folders .archive-folder.is-active,
.archive-folders .archive-folder[aria-pressed="true"]{
  color:#fff0d2!important;
  background:#8d3b30!important;
  border-color:#b47755!important;
  box-shadow:inset 3px 0 0 #d4aa69,0 3px 10px rgba(55,20,15,.12);
}
.archive-folders .archive-folder.is-active:before,
.archive-folders .archive-folder[aria-pressed="true"]:before{
  background:#d4aa69!important;
  border-color:#f0d6a0!important;
}
.archive-folders .archive-folder.is-active:hover,
.archive-folders .archive-folder[aria-pressed="true"]:hover{
  background:#9c4437!important;
}
html[data-theme="dark"] .archive-folders .archive-folder.is-active,
html[data-theme="dark"] .archive-folders .archive-folder[aria-pressed="true"]{
  color:#fff0d2!important;background:#8d3b30!important;border-color:#d0a45b!important;
}


/* Archive folder interaction: one deliberate top-to-bottom contents reveal only.
   Neutralize older cabinet/slide/ink animations on the right-hand panel so they
   cannot override or compete with the records-list unfolding motion. */
body[data-page="archive"] .archive-folder-content,
body[data-page="archive"] .archive-folder-content.is-opening{
  animation:none!important;
  transform:none!important;
  clip-path:none!important;
}
body[data-page="archive"] .archive-folder-content.is-opening .records-heading{
  animation:none!important;
  transform:none!important;
}
body[data-page="archive"] .archive-folder-content .records-list,
body[data-page="archive"] .archive-folder-content.is-opening .records-list{
  animation:none!important;
  transition:none!important;
}
@media(prefers-reduced-motion:reduce){
  body[data-page="archive"] .archive-folder-content,
  body[data-page="archive"] .archive-folder-content.is-opening,
  body[data-page="archive"] .archive-folder-content .records-list{
    animation:none!important;transition:none!important;transform:none!important;clip-path:none!important;
  }
}


/* Header navigation: spread buttons for readability while keeping the group tucked
   close to the settings gear. */
.site-header .primary-nav{
  display:flex!important;
  align-items:center!important;
  gap:clamp(.7rem,1.15vw,1.15rem)!important;
  margin-left:auto!important;
  margin-right:.12rem!important;
}
.site-header .primary-nav a,
.site-header .primary-nav .owner-sign-in-button{
  padding:.52rem .78rem!important;
}
.site-header>.site-menu-toggle,
.site-header .site-menu-toggle{
  margin-left:.12rem!important;
  flex-shrink:0!important;
}
@media(max-width:1000px){
  .site-header .primary-nav{gap:.55rem!important;margin-right:.08rem!important}
  .site-header .primary-nav a,.site-header .primary-nav .owner-sign-in-button{padding:.46rem .58rem!important}
}
@media(max-width:800px){
  .site-header .primary-nav{gap:.4rem!important;margin-right:0!important}
  .site-header .primary-nav a,.site-header .primary-nav .owner-sign-in-button{padding:.65rem .58rem!important}
}


/* Keep owner controls available without the large archive intro panel. */
.archive-actions{display:flex;justify-content:flex-end;align-items:center;gap:.65rem;margin:.6rem 0 1rem;min-height:0}
.archive-actions .owner-tools{display:flex;align-items:center;gap:.5rem}
@media(max-width:700px){.archive-actions{justify-content:flex-start;flex-wrap:wrap}}


.dark-mode .site-header,
.dark-mode .site-footer{
  background-image:linear-gradient(90deg,#493027 0%,#583329 34%,#733b30 66%,#3b2822 100%)!important;
}
html[data-theme="dark"] .site-header,
html[data-theme="dark"] .site-footer{
  background-image:linear-gradient(90deg,#493027 0%,#583329 34%,#733b30 66%,#3b2822 100%)!important;
}
.brand-banner{
  background:linear-gradient(118deg,#762c27 0%,#8d3b30 52%,#a3483b 100%),radial-gradient(ellipse at 82% 12%,rgba(255,203,169,.16),transparent 48%)!important;
  border-bottom-color:#d2a16f!important;
}
html[data-theme="dark"] .brand-banner,
.dark-mode .brand-banner{
  background:linear-gradient(118deg,#692720 0%,#842f28 52%,#993b32 100%),radial-gradient(ellipse at 82% 12%,rgba(255,203,169,.12),transparent 48%)!important;
  border-bottom-color:#b88b68!important;
}


/* Dark-mode contrast safeguard: owner sign-in dialog and header controls. */
html[data-theme="dark"] #owner-sign-in-modal .owner-sign-in-card,
html[data-theme="dark"] #owner-sign-in-modal .owner-sign-in-card *,
.dark-mode #owner-sign-in-modal .owner-sign-in-card,
.dark-mode #owner-sign-in-modal .owner-sign-in-card *{color:#f3e3c4!important}
html[data-theme="dark"] #owner-sign-in-modal .owner-sign-in-card .eyebrow,
.dark-mode #owner-sign-in-modal .owner-sign-in-card .eyebrow{color:#e1b96d!important}
html[data-theme="dark"] #owner-sign-in-modal input,
html[data-theme="dark"] #owner-sign-in-modal select,
html[data-theme="dark"] #owner-sign-in-modal textarea,
.dark-mode #owner-sign-in-modal input,
.dark-mode #owner-sign-in-modal select,
.dark-mode #owner-sign-in-modal textarea{
 background:#211611!important;color:#fff0d2!important;border-color:#9b7545!important;caret-color:#e1b96d!important
}
html[data-theme="dark"] #owner-sign-in-modal input::placeholder,
.dark-mode #owner-sign-in-modal input::placeholder{color:#c9b99f!important;opacity:1!important}
html[data-theme="dark"] #owner-sign-in-modal .button-dark,
html[data-theme="dark"] #owner-sign-in-modal .small-button,
.dark-mode #owner-sign-in-modal .button-dark,
.dark-mode #owner-sign-in-modal .small-button{
 background:#8d3b30!important;color:#fff0d2!important;border-color:#c49a5a!important
}
html[data-theme="dark"] .site-header .owner-sign-in-button,
.dark-mode .site-header .owner-sign-in-button{background:#8d3b30!important;color:#fff0d2!important;border-color:#c49a5a!important}
html[data-theme="dark"] .site-header .primary-nav a,
.dark-mode .site-header .primary-nav a{color:#f3e3c4!important}
html[data-theme="dark"] .site-header .primary-nav a[aria-current="page"],
html[data-theme="dark"] .site-header .primary-nav a:hover,
.dark-mode .site-header .primary-nav a[aria-current="page"],
.dark-mode .site-header .primary-nav a:hover{background:#8d3b30!important;color:#fff0d2!important}


/* Performance pass: keep the parchment design, remove costly ambient effects. */
html{scroll-behavior:auto!important}
*,*::before,*::after{
 animation:none!important;
 transition-duration:.12s!important;
 scroll-behavior:auto!important;
}
.site-header,.site-menu-panel,.site-modal,.modal-card,.map-panel,.location-sidebar,
.paper-card,.folio-card,.record-card,.activity-log-item,.generation,.notice,
.archive-folder,.chrono-year-column,.chrono-record-card,.location-item,
.button,.small-button,.primary-nav a,button,input,select,textarea{
 will-change:auto!important;
}
.site-header,.site-modal,.modal-card,.map-panel,.location-sidebar{
 backdrop-filter:none!important;
 -webkit-backdrop-filter:none!important;
}
.motion-reveal,.reveal{opacity:1!important;transform:none!important;filter:none!important}
.motion-ripple,.archive-scroll-progress:after{display:none!important}


html[data-theme="dark"] .site-header,
html[data-theme="dark"] .site-footer{
  background:
    linear-gradient(105deg,rgba(143,76,43,.24),transparent 42%,rgba(105,29,39,.24)),
    linear-gradient(180deg,#38241d 0%,#30201a 52%,#2b1c18 100%)!important;
}





/* Installable Tylka app controls */
.pwa-install-button{position:fixed;right:18px;bottom:18px;z-index:9998;padding:11px 17px;border:1px solid #b99558;border-radius:3px;background:linear-gradient(145deg,#543323,#2b1c18);color:#f0dfbb;font:600 .88rem Georgia,serif;letter-spacing:.03em;box-shadow:0 4px 16px rgba(0,0,0,.28);cursor:pointer}.pwa-install-button[hidden]{display:none}.pwa-install-button:hover{border-color:#e0c17d;background:#68412b}@media(prefers-reduced-motion:reduce){.pwa-install-button{transition:none!important}}


/* Standalone phone app: compact, touch-friendly layouts without changing desktop web. */
@media (display-mode:standalone) and (max-width:760px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  body{font-size:14px;line-height:1.48;padding-bottom:env(safe-area-inset-bottom)}
  .site-header{min-height:58px;padding:.5rem .75rem;gap:.45rem;position:sticky;top:0;z-index:1100}
  .wordmark{gap:.45rem;min-width:0}
  .wordmark strong{font-size:1.05rem}
  .wordmark small{font-size:.53rem;letter-spacing:.11em}
  .monogram{width:32px;height:32px;font-size:1.25rem;flex:0 0 32px}
  .site-menu-toggle{width:40px;height:38px;font-size:1.35rem}
  .site-menu-panel{position:fixed;top:calc(58px + env(safe-area-inset-top));right:.5rem;width:min(300px,calc(100vw - 1rem));max-height:calc(100dvh - 76px);overflow:auto}
  .site-header .primary-nav{display:none!important}
  .brand-banner{padding:1.15rem .9rem!important;min-height:0!important}
  .brand-banner-inner{padding:0!important}
  .brand-banner-kicker{font-size:.62rem;margin:0 0 .25rem}
  .brand-banner h1,.brand-banner-inner h1{font-size:clamp(1.65rem,8vw,2.35rem);line-height:1.08;margin:0}
  .archive-page,.chrono-main,.location-page,.ancestor-page{width:100%;max-width:none;margin:0 auto;padding:1rem .8rem 2rem}
  .section-intro{margin:.25rem 0 .9rem!important}
  .section-intro h1,.archive-page>h1,.chrono-main h1,.location-page h1,.ancestor-page h1{font-size:clamp(1.65rem,7vw,2.25rem);line-height:1.12;margin:.1rem 0 .4rem}
  .section-intro p,.section-intro .intro-text{font-size:.86rem;line-height:1.4;margin:.35rem 0}
  .eyebrow{font-size:.59rem;letter-spacing:.12em;margin-bottom:.35rem}
  h2{font-size:1.35rem}
  h3{font-size:1.08rem}
  .button,.small-button,.archive-actions button,.archive-actions a{min-height:40px;padding:.55rem .72rem;font-size:.82rem}
  input,select,textarea{font-size:16px!important;max-width:100%;min-width:0}
  .archive-actions{gap:.4rem;margin:.35rem 0 .7rem}
  .archive-actions .owner-tools{gap:.35rem;flex-wrap:wrap}
  .folder-archive-layout{display:flex;flex-direction:column;gap:.65rem;margin:.7rem 0}
  .archive-folders{position:static;width:100%;padding:.55rem;overflow:visible}
  .archive-folders h3{font-size:1.05rem;margin:.1rem 0 .35rem}
  .archive-folders .eyebrow,.archive-folders .cabinet-hint{display:none}
  .archive-folder-list,.archive-folders-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem}
  .archive-folder{min-width:0;margin:0;padding:.62rem .55rem;font-size:.78rem;line-height:1.2;border:1px solid var(--line);overflow-wrap:anywhere}
  .archive-folder:before{margin-right:.35rem}
  .archive-folder-content{width:100%;min-width:0;padding:.7rem!important}
  .records-heading{gap:.4rem;flex-wrap:wrap}
  .records-heading h2{font-size:1.2rem}
  .record-filters{display:grid;grid-template-columns:1fr;gap:.4rem}
  .records-list{grid-template-columns:1fr!important;gap:.6rem}
  .record-card,.paper-card,.folio-card{min-width:0}
  .chrono-filter-panel{margin:.65rem 0;padding:.7rem}
  .chrono-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
  .chrono-filter-grid label{font-size:.72rem}
  .chrono-filter-grid input,.chrono-filter-grid select{min-height:42px;padding:.5rem;font-size:16px}
  .chrono-filter-footer{align-items:stretch;flex-direction:column;gap:.45rem}
  .chrono-timeline{min-height:0;gap:.55rem;padding:.6rem 0 1rem}
  .chrono-year-column{flex-basis:min(78vw,270px);padding:.65rem}
  .location-toolbar{display:block;margin:.7rem 0}
  .location-toolbar h2{font-size:1.3rem}
  .location-layout{grid-template-columns:minmax(0,1fr);gap:.6rem}
  .location-sidebar,.map-panel,.location-records-panel{padding:.65rem;min-width:0}
  .location-list{max-height:190px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem}
  .location-item{padding:.55rem;font-size:.8rem;min-width:0}
  .location-item strong{font-size:.88rem;overflow-wrap:anywhere}
  #family-map{height: min(48vh,340px);min-height:230px}
  .location-route-tools{display:flex;flex-wrap:wrap;gap:.35rem}
  .location-records-panel{margin-top:.1rem}
  .ancestor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
  .ancestor-card-body{padding:.55rem}
  .ancestor-card-body h3{font-size:.95rem}
  .ancestor-source{font-size:.75rem}
  .site-footer{padding:1rem .8rem;font-size:.75rem}
  .site-footer .footer-end{display:none}
  .site-modal{padding:.4rem!important;align-items:flex-end!important}
  .modal-card,.modal-wide,.record-detail-card{width:100%!important;max-width:none!important;max-height:92dvh!important;margin:0!important;padding:.85rem!important;overflow:auto!important;border-radius:8px 8px 0 0}
  .modal-card h2,.record-detail-card h2{font-size:1.35rem}
  .record-detail-grid,.form-grid{grid-template-columns:minmax(0,1fr)!important;gap:.55rem}
  .record-form-section{padding:.65rem}
  .record-form-section-heading{gap:.35rem}
  .detail-image-viewport{max-height:42vh}
  .pwa-install-button{right:.55rem;bottom:calc(.55rem + env(safe-area-inset-bottom));font-size:.78rem;padding:.6rem .8rem}
  .connection-status{font-size:.72rem}
  .activity-log-list{gap:.45rem}
}
@media (display-mode:standalone) and (max-width:380px){
  .archive-folder-list,.archive-folders-list{grid-template-columns:1fr 1fr}
  .chrono-filter-grid{grid-template-columns:1fr}
  .location-list{grid-template-columns:1fr}
  .ancestor-grid{grid-template-columns:1fr 1fr}
  .wordmark small{letter-spacing:.07em}
}
@media (display-mode:standalone) and (orientation:landscape) and (max-height:500px){
  .site-header{position:relative}
  .location-layout{grid-template-columns:minmax(180px,35%) minmax(0,1fr)}
  #family-map{height:55vh;min-height:180px}
  .modal-card,.modal-wide,.record-detail-card{max-height:88dvh!important}
}

@media (display-mode:standalone) and (max-width:760px){
  .archive-folders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem}
  .archive-folders>h3,.archive-folders>.eyebrow,.archive-folders>.cabinet-hint{grid-column:1/-1}
  .archive-folders>.archive-folder{width:100%;min-width:0}
}


html[data-theme="dark"] .site-header,
.dark-mode .site-header{
  background:
    linear-gradient(105deg,rgba(164,103,62,.22),transparent 44%,rgba(125,48,47,.22)),
    linear-gradient(180deg,#594033 0%,#50372b 52%,#493126 100%)!important;
  background-color:#493126!important;
  border-bottom-color:#96734d!important;
  color:#f3e3c4!important;
}


/* Footer readability and in-footer app installation control. */
.site-footer{
  color:#f4e8d2!important;
  background:linear-gradient(110deg,#392820 0%,#493126 58%,#512d29 100%)!important;
  border-top:3px double #a98758!important;
}
.site-footer p,
.site-footer .footer-end,
.site-footer .footer-mark,
.site-footer .footer-mark strong,
.site-footer .footer-mark small{
  color:#f4e8d2!important;
}
.site-footer .footer-mark .monogram{
  color:#fff4df!important;
  background:#70472f!important;
  border:1px solid #b99a69!important;
}
.site-footer .pwa-install-button{
  position:static!important;
  inset:auto!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:auto;
  max-width:100%;
  margin:.25rem 0 0;
  padding:.62rem 1rem;
  border:1px solid #c6a36b;
  border-radius:5px;
  background:linear-gradient(135deg,#70452e,#512d29);
  color:#fff2d8!important;
  font:600 .82rem/1.2 inherit;
  letter-spacing:.035em;
  box-shadow:0 3px 10px rgba(0,0,0,.2);
}
.site-footer .pwa-install-button:hover{background:linear-gradient(135deg,#805438,#633631)}
.site-footer .pwa-install-button[hidden]{display:none!important}
@media(max-width:600px){
  .site-footer{gap:.7rem;padding:1.1rem .9rem!important}
  .site-footer .pwa-install-button{align-self:flex-start}
}


html[data-theme="dark"] body .site-header{
  background-color:#594033!important;
  background-image:linear-gradient(100deg,rgba(185,128,76,.30) 0%,rgba(89,64,51,.10) 46%,rgba(117,42,43,.34) 100%),linear-gradient(180deg,#684b38 0%,#594033 58%,#4b3429 100%)!important;
  border-bottom:2px solid #b08a55!important;
  color:#f7e8ca!important;
}
html[data-theme="dark"] body .site-header .wordmark,
html[data-theme="dark"] body .site-header .wordmark strong,
html[data-theme="dark"] body .site-header .wordmark small,
html[data-theme="dark"] body .site-header .primary-nav a{color:#f7e8ca!important}
html[data-theme="dark"] body .site-header .primary-nav a[aria-current="page"],
html[data-theme="dark"] body .site-header .primary-nav a:hover,
html[data-theme="dark"] body .site-header .owner-sign-in-button{background:#71352e!important;color:#fff0d2!important;border-color:#c6a36b!important}
html[data-theme="dark"] body .site-header .monogram{background:#70472f!important;color:#fff4df!important;border-color:#c6a36b!important}

 
/* Installed phone app: unified, full-width, single-column layout.
   Scoped to standalone mode so the desktop website and mobile browser remain unchanged. */
@media (display-mode:standalone) and (max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  body{font-size:15px;line-height:1.55}
  .site-header{
    min-height:0;padding:.7rem .85rem;gap:.55rem;
    display:flex;align-items:center;flex-wrap:wrap;
  }
  .site-header .wordmark{gap:.55rem;min-width:0}
  .site-header .wordmark strong{font-size:1.15rem}
  .site-header .wordmark small{font-size:.53rem}
  .site-header .monogram{width:34px;height:34px;font-size:1.25rem}
  .site-header .site-menu-toggle{width:40px;height:40px;margin-left:auto}
  .site-header .primary-nav{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}
  .site-header .primary-nav a,.site-header .primary-nav button{
    min-width:0;min-height:40px;padding:.55rem .45rem;text-align:center;
    font-size:.75rem;overflow-wrap:anywhere;
  }
  .archive-page,.home-search-page,.location-page,.chrono-main,.ancestor-page{
    width:calc(100% - 1.1rem)!important;max-width:none!important;
    margin:0 auto!important;padding:1.05rem 0 1.5rem!important;
  }
  main>h1,.archive-page>h1{font-size:clamp(2rem,9vw,2.65rem);line-height:1.08;margin:.2rem 0 .65rem}
  .section-intro{font-size:.9rem;line-height:1.55;margin:.45rem 0 1rem}
  .eyebrow{font-size:.64rem;letter-spacing:.12em}
  .location-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:.45rem;margin:.9rem 0 .8rem}
  .location-toolbar h2{font-size:1.45rem;line-height:1.15}
  .location-toolbar .text-link{align-self:flex-start}
  .location-layout{
    display:flex!important;flex-direction:column!important;align-items:stretch;
    gap:.7rem!important;width:100%;min-width:0;
  }
  .location-sidebar,.map-panel,.location-records-panel{
    display:block;width:100%;min-width:0;margin:0!important;padding:.85rem!important;
    border-radius:6px;
  }
  .location-sidebar{order:1}
  .map-panel{order:2;display:flex;flex-direction:column;gap:.55rem}
  .location-records-panel{order:3}
  .location-sidebar .search-input{width:100%;min-height:46px;margin:.35rem 0 .65rem}
  .location-list{
    display:grid;grid-template-columns:minmax(0,1fr)!important;
    gap:.4rem;max-height:230px;overflow-y:auto;
  }
  .location-item{width:100%;min-width:0;padding:.7rem .75rem;font-size:.86rem}
  .location-item strong{font-size:1rem}
  .location-route-tools{
    order:2;display:grid;grid-template-columns:minmax(0,1fr) auto;
    align-items:center;gap:.35rem .55rem;padding:.2rem 0 .45rem;
  }
  .location-route-tools .eyebrow,.location-route-tools>p:not(.eyebrow){grid-column:1/-1;margin:.1rem 0}
  .location-route-tools .eyebrow{font-size:.64rem}
  .location-route-tools>p:not(.eyebrow){font-size:.8rem;line-height:1.4}
  .location-route-tools #build-family-route{grid-column:1/-1;justify-self:start;min-height:40px}
  #route-status{grid-column:1/-1;margin:0}
  #family-map{
    order:1;width:100%!important;height:clamp(260px,72vw,360px)!important;
    min-height:250px!important;border-radius:4px;overflow:hidden;
  }
  .map-caption{order:3;margin:.1rem 0 .15rem;font-size:.68rem;line-height:1.4}
  .location-records-panel h2{font-size:1.45rem;margin:.15rem 0 .7rem}
  .location-detail{padding-top:.75rem}
  .location-detail h3{font-size:1.3rem;line-height:1.2}
  .location-record{padding:.7rem 0}
  .location-record strong{font-size:.9rem}
  .location-record p{font-size:.8rem}
  .notice{margin:.8rem 0;padding:.75rem;font-size:.78rem}
  .folder-archive-layout{display:flex!important;flex-direction:column;gap:.7rem;margin:.8rem 0}
  .archive-folders,.archive-folder-content{width:100%;min-width:0;padding:.8rem!important;position:static}
  .archive-folders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}
  .archive-folders>h3,.archive-folders>.eyebrow,.archive-folders>.cabinet-hint{grid-column:1/-1}
  .archive-folders>.archive-folder{width:100%;min-width:0;margin:0;padding:.65rem .55rem!important;font-size:.78rem}
  .records-heading,.archive-toolbar,.section-heading{display:flex;flex-direction:column;align-items:stretch;gap:.5rem}
  .record-filters,.search-fields,.chrono-filter-grid{display:grid;grid-template-columns:minmax(0,1fr)!important;width:100%;max-width:none;gap:.55rem}
  .search-fields>div:first-child{grid-column:auto}
  .record-filters input,.record-filters select,.search-fields input,.search-fields select,
  .chrono-filter-grid input,.chrono-filter-grid select{width:100%;min-width:0;min-height:44px}
  .records-list,.activity-log-list{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:.6rem}
  .record-card,.activity-log-item{width:100%;min-width:0;padding:.8rem;gap:.65rem}
  .chrono-filter-panel{padding:.8rem;margin:.7rem 0}
  .chrono-filter-footer{display:flex;flex-direction:column;align-items:stretch;gap:.5rem}
  .chrono-timeline{max-width:100%;min-height:0;gap:.6rem;padding:.55rem 0 1rem}
  .chrono-year-column{flex:0 0 min(84vw,330px);min-width:0;padding:.7rem}
  .chrono-record-card{padding:.75rem}
  .ancestor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.55rem}
  .ancestor-card,.ancestor-card-body{min-width:0}
  .home-search-box{margin:.8rem 0;padding:.85rem}
  .activity-log-section{padding:1.1rem .85rem;margin:1rem -.55rem 0}
  .site-footer{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;padding:1rem .85rem!important}
  .site-footer>p{margin:0}
  .site-footer .footer-end{display:none}
  .site-modal{padding:.35rem!important;align-items:flex-end!important}
  .modal-card,.modal-wide,.record-detail-card{
    width:100%!important;max-width:none!important;max-height:92dvh!important;
    margin:0!important;padding:.85rem!important;overflow:auto!important;
    border-radius:9px 9px 0 0;
  }
  .record-detail-grid,.form-grid{grid-template-columns:minmax(0,1fr)!important;gap:.6rem}
  .detail-image-viewport{max-height:42vh}
  .button,.small-button{min-height:42px}
  input,select,textarea{font-size:16px!important;max-width:100%;min-width:0}
}
@media (display-mode:standalone) and (max-width:380px){
  .archive-folders{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ancestor-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (display-mode:standalone) and (orientation:landscape) and (max-height:500px){
  .location-layout{display:flex!important;flex-direction:column!important}
  #family-map{height:52vh!important;min-height:190px!important}
}

/* Home search record tiles — installed phone app only. */
@media (display-mode:standalone) and (max-width:760px){
  #home-search-workspace #home-results.home-record-tiles{
    display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:.48rem!important;align-items:stretch;width:100%;margin:.65rem 0 1rem;
  }
  #home-results.home-record-tiles .home-record-tile{
    appearance:none;-webkit-appearance:none;display:flex;flex-direction:column;
    align-items:stretch;justify-content:flex-start;gap:.22rem;min-width:0;
    width:100%;aspect-ratio:1/1;overflow:hidden;padding:.38rem;
    border:1px solid #ad9067;border-radius:3px;
    background:linear-gradient(145deg,rgba(255,249,231,.88),rgba(232,216,185,.96));
    color:#38271e;text-align:left;cursor:pointer;box-shadow:0 2px 6px rgba(55,35,20,.08);
  }
  #home-results .home-record-tile:active{transform:scale(.975);background:#e9d6b4}
  #home-results .home-record-tile:focus-visible{outline:2px solid var(--burgundy);outline-offset:2px}
  #home-results .home-record-tile .record-category{
    display:block;min-width:0;max-width:100%;margin:0;padding:0;
    border:0;background:none;color:#793c32;font-size:.48rem;line-height:1.15;
    letter-spacing:.045em;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  #home-results .home-tile-thumbnail{
    flex:0 0 auto;width:100%;height:30%;min-height:0;overflow:hidden;
    display:flex;align-items:center;justify-content:center;
    border:1px solid rgba(112,75,50,.25);background:#d1bd98;
  }
  #home-results .home-tile-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}
  #home-results .home-tile-file{font-family:serif;color:#704b32;font-size:.57rem;letter-spacing:.06em}
  #home-results .home-record-tile h3{
    display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
    overflow:hidden;margin:.05rem 0 0;color:#38271e;font-size:.67rem;line-height:1.12;
    overflow-wrap:anywhere;
  }
  #home-results .home-record-tile p,#home-results .home-record-tile small{
    display:block;min-width:0;margin:0;color:#705943;font-size:.52rem;line-height:1.15;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  #home-results .home-record-tile .home-tile-source{opacity:.8}
  .home-record-detail-modal{z-index:10050}
  .home-record-detail-card{width:100%;max-width:none;max-height:92dvh;overflow:auto;padding:.9rem}
  .home-record-detail-card h2{font-size:1.55rem;line-height:1.15;overflow-wrap:anywhere}
  .home-detail-attachment{width:100%;max-height:48dvh;min-height:130px;display:flex;justify-content:center;align-items:center;overflow:auto;background:rgba(115,83,54,.10);border:1px solid var(--line);margin:.6rem 0}
  .home-detail-attachment img{display:block;max-width:100%;max-height:46dvh;width:auto;height:auto;object-fit:contain}
  .home-detail-attachment iframe{width:100%;height:46dvh;border:0}
  .home-detail-metadata{padding:.65rem .75rem;border:1px solid var(--line);background:rgba(239,227,204,.45)}
  .home-detail-metadata p{margin:.25rem 0;font-size:.85rem;overflow-wrap:anywhere}
  .home-detail-description{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.85rem;line-height:1.55}
}
@media (display-mode:standalone) and (max-width:370px){
  #home-search-workspace #home-results.home-record-tiles{gap:.32rem!important}
  #home-results.home-record-tiles .home-record-tile{padding:.3rem}
  #home-results .home-record-tile h3{font-size:.61rem}
  #home-results .home-record-tile p,#home-results .home-record-tile small{font-size:.47rem}
}

/* Definitive home-search index tile design: five compact parchment squares per row. */
#home-search-workspace #home-results.home-record-tiles{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;align-items:stretch!important;gap:.65rem!important;width:100%!important;margin:.7rem 0 1.2rem!important;padding:0!important}
#home-search-workspace #home-results.home-record-tiles>.home-record-tile{appearance:none!important;-webkit-appearance:none!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:.24rem!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;aspect-ratio:1/1!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:hidden!important;padding:.48rem!important;border:1px solid #ad9067!important;border-radius:2px!important;background:#f5e8cf!important;background-image:none!important;color:#432b20!important;text-align:left!important;text-decoration:none!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.32),0 2px 5px rgba(55,35,20,.07)!important;transform:none!important;animation:none!important;cursor:pointer!important}
#home-search-workspace #home-results.home-record-tiles>.home-record-tile:hover,#home-search-workspace #home-results.home-record-tiles>.home-record-tile:active{background:#efe0c2!important;color:#432b20!important;border-color:#94754d!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4),0 3px 8px rgba(55,35,20,.1)!important}
#home-search-workspace #home-results.home-record-tiles .record-category{display:block!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:#793c32!important;font-size:.58rem!important;line-height:1.15!important;letter-spacing:.055em!important;font-weight:700!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#home-search-workspace #home-results.home-record-tiles .home-tile-thumbnail{display:flex!important;flex:0 0 37%!important;width:100%!important;height:37%!important;min-height:0!important;max-height:none!important;overflow:hidden!important;align-items:center!important;justify-content:center!important;margin:.06rem 0!important;border:1px solid #c5ad85!important;border-radius:0!important;background:#dfcfad!important}
#home-search-workspace #home-results.home-record-tiles .home-tile-thumbnail img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
#home-search-workspace #home-results.home-record-tiles .home-tile-file{color:#76583a!important;font-family:Georgia,serif!important;font-size:.65rem!important;letter-spacing:.06em!important}
#home-search-workspace #home-results.home-record-tiles .home-record-tile h3{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;margin:.08rem 0 0!important;padding:0!important;overflow:hidden!important;color:#432b20!important;font-family:Georgia,serif!important;font-size:.83rem!important;font-weight:600!important;line-height:1.15!important;overflow-wrap:anywhere!important}
#home-search-workspace #home-results.home-record-tiles .home-record-tile p,#home-search-workspace #home-results.home-record-tiles .home-record-tile small{display:block!important;min-width:0!important;margin:0!important;padding:0!important;color:#795f46!important;font-size:.66rem!important;line-height:1.18!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#home-search-workspace #home-results.home-record-tiles .home-record-tile small{font-size:.59rem!important}
@media(max-width:760px){#home-search-workspace #home-results.home-record-tiles{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:.38rem!important}#home-search-workspace #home-results.home-record-tiles>.home-record-tile{padding:.32rem!important;gap:.17rem!important}#home-search-workspace #home-results.home-record-tiles .record-category{font-size:.47rem!important}#home-search-workspace #home-results.home-record-tiles .home-tile-thumbnail{flex-basis:35%!important;height:35%!important}#home-search-workspace #home-results.home-record-tiles .home-record-tile h3{font-size:.61rem!important}#home-search-workspace #home-results.home-record-tiles .home-record-tile p{font-size:.49rem!important}#home-search-workspace #home-results.home-record-tiles .home-record-tile small{font-size:.44rem!important}}
@media(max-width:380px){#home-search-workspace #home-results.home-record-tiles{gap:.25rem!important}#home-search-workspace #home-results.home-record-tiles>.home-record-tile{padding:.25rem!important}#home-search-workspace #home-results.home-record-tiles .record-category{font-size:.4rem!important}#home-search-workspace #home-results.home-record-tiles .home-record-tile h3{font-size:.54rem!important}#home-search-workspace #home-results.home-record-tiles .home-record-tile p{font-size:.43rem!important}#home-search-workspace #home-results.home-record-tiles .home-record-tile small{font-size:.39rem!important}}

/* Softer corners and archive-style popup for home record tiles. */
#home-search-workspace #home-results.home-record-tiles>.home-record-tile{border-radius:7px!important}
#home-search-workspace #home-results.home-record-tiles .home-tile-thumbnail{border-radius:3px!important;overflow:hidden}
.home-record-detail-card{border-radius:8px!important}
.home-detail-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:1rem}
.home-record-detail-card .detail-source,.home-record-detail-card .detail-transcription{min-width:0}
.home-record-detail-card .detail-image-viewport{min-height:180px;max-height:65vh;overflow:auto;display:flex;align-items:center;justify-content:center;background:#e2d4b9;border:1px solid var(--line)}
.home-record-detail-card #home-detail-image{display:block;max-width:100%;max-height:63vh;width:auto;height:auto;object-fit:contain}
.home-record-detail-card #home-detail-image[hidden]{display:none}
.home-record-detail-card #home-detail-description{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6}
.home-record-detail-card .home-detail-metadata{margin-top:1rem;padding:.8rem 1rem;border:1px solid var(--line);background:rgba(203,185,154,.2)}
.home-record-detail-card .home-detail-metadata p{margin:.25rem 0;overflow-wrap:anywhere}
@media(max-width:760px){
 .home-record-detail-card{border-radius:10px 10px 0 0!important}
 .home-detail-grid{grid-template-columns:minmax(0,1fr);gap:.8rem}
 .home-record-detail-card .detail-image-viewport{min-height:130px;max-height:45vh}
 .home-record-detail-card #home-detail-image{max-height:43vh}
}

/* Single source of truth for the header palette. */
html[data-theme="light"] body .site-header{
  background-color:#5b382b!important;
  background-image:linear-gradient(100deg,#d8bd91 0%,#a87955 36%,#744333 70%,#512a25 100%)!important;
  border-bottom:2px solid #b08a55!important;
  color:#fff0d2!important;
}
html[data-theme="light"] body .site-header .wordmark,
html[data-theme="light"] body .site-header .wordmark strong,
html[data-theme="light"] body .site-header .wordmark small{color:#fff0d2!important;text-shadow:0 1px 2px rgba(35,18,10,.35)}
html[data-theme="light"] body .site-header .monogram{background:#f1dfbb!important;color:#653126!important;border-color:#c6a36b!important}
html[data-theme="light"] body .site-header .primary-nav a{color:#fff0d2!important}
html[data-theme="light"] body .site-header .primary-nav a:hover,
html[data-theme="light"] body .site-header .primary-nav a[aria-current="page"]{background:#71352e!important;color:#fff0d2!important;border-color:#c6a36b!important}
html[data-theme="light"] body .site-header .owner-sign-in-button{background:#71352e!important;color:#fff0d2!important;border-color:#c6a36b!important}
html[data-theme="light"] body .site-header .site-menu-toggle{background:#f1dfbb!important;color:#4a2b20!important;border-color:#c6a36b!important}

html[data-theme="dark"] body .site-header{
  background-color:#38271f!important;
  background-image:linear-gradient(100deg,#50382b 0%,#463025 43%,#38241e 72%,#2c1b19 100%)!important;
  border-bottom:2px solid #b08a55!important;
  color:#f7e8ca!important;
}
html[data-theme="dark"] body .site-header .wordmark,
html[data-theme="dark"] body .site-header .wordmark strong,
html[data-theme="dark"] body .site-header .wordmark small,
html[data-theme="dark"] body .site-header .primary-nav a{color:#f7e8ca!important}
html[data-theme="dark"] body .site-header .monogram{background:#70472f!important;color:#fff4df!important;border-color:#c6a36b!important}
html[data-theme="dark"] body .site-header .primary-nav a:hover,
html[data-theme="dark"] body .site-header .primary-nav a[aria-current="page"],
html[data-theme="dark"] body .site-header .owner-sign-in-button{background:#71352e!important;color:#fff0d2!important;border-color:#c6a36b!important}
html[data-theme="dark"] body .site-header .site-menu-toggle{background:#38251e!important;color:#f7e8ca!important;border-color:#c6a36b!important}

/* Wordmark lettering only: match the flowing calligraphic Tylka lettering in logo concept 5. */
.site-header .wordmark strong{font-family:"Great Vibes",cursive!important;font-size:2.15rem!important;font-weight:400!important;letter-spacing:0!important;line-height:1.15!important}

/* Final dark header correction: visibly lighter walnut, retaining oxblood warmth. */
html[data-theme="dark"] body .site-header{background-color:#49352b!important;background-image:linear-gradient(100deg,#684c39 0%,#5d4232 43%,#51392d 72%,#493229 100%)!important;border-bottom:2px solid #c09a60!important;color:#f7e8ca!important}
html[data-theme="dark"] body .site-header .wordmark,html[data-theme="dark"] body .site-header .wordmark strong,html[data-theme="dark"] body .site-header .wordmark small,html[data-theme="dark"] body .site-header .primary-nav a{color:#f7e8ca!important}
html[data-theme="dark"] body .site-header .site-menu-toggle{background:#51392d!important;color:#f7e8ca!important;border-color:#c09a60!important}
/* Stability pass: consistent antique dark theme, restrained motion, compact desktop layout */
html[data-theme="dark"],body[data-theme="dark"],html.theme-dark,body.theme-dark{
 --paper:#211811;--paper-light:#302318;--paper-dark:#3d2a1b;--ink:#ead9b7;--muted:#c0a77d;--line:#715332;--accent:#c29a53;--accent-dark:#180f0b;
 color-scheme:dark;background:var(--paper);color:var(--ink)
}
html[data-theme="dark"] body,body[data-theme="dark"],html.theme-dark body,body.theme-dark{
 background:radial-gradient(ellipse at 50% 0%,rgba(112,68,25,.18),transparent 55%),linear-gradient(180deg,#1a100c 0%,#271a12 48%,#1d120e 100%);color:var(--ink)
}
html[data-theme="dark"] .site-header,body[data-theme="dark"] .site-header,html.theme-dark .site-header,body.theme-dark .site-header{background:linear-gradient(100deg,#2b1a12,#402318 55%,#27150f);border-color:#76542e}
html[data-theme="dark"] .archive-folders,body[data-theme="dark"] .archive-folders,html.theme-dark .archive-folders,body.theme-dark .archive-folders,
html[data-theme="dark"] .archive-folder-content,body[data-theme="dark"] .archive-folder-content,html.theme-dark .archive-folder-content,body.theme-dark .archive-folder-content,
html[data-theme="dark"] .location-sidebar,body[data-theme="dark"] .location-sidebar,html.theme-dark .location-sidebar,body.theme-dark .location-sidebar,
html[data-theme="dark"] .map-panel,body[data-theme="dark"] .map-panel,html.theme-dark .map-panel,body.theme-dark .map-panel,
html[data-theme="dark"] .chrono-filter-panel,body[data-theme="dark"] .chrono-filter-panel,html.theme-dark .chrono-filter-panel,body.theme-dark .chrono-filter-panel,
html[data-theme="dark"] .chrono-year-column,body[data-theme="dark"] .chrono-year-column,html.theme-dark .chrono-year-column,body.theme-dark .chrono-year-column,
html[data-theme="dark"] .record-card,body[data-theme="dark"] .record-card,html.theme-dark .record-card,body.theme-dark .record-card,
html[data-theme="dark"] .modal-card,body[data-theme="dark"] .modal-card,html.theme-dark .modal-card,body.theme-dark .modal-card{background-color:#302117;color:var(--ink);border-color:#715332}
html[data-theme="dark"] input,html[data-theme="dark"] textarea,html[data-theme="dark"] select,body[data-theme="dark"] input,body[data-theme="dark"] textarea,body[data-theme="dark"] select,html.theme-dark input,html.theme-dark textarea,html.theme-dark select,body.theme-dark input,body.theme-dark textarea,body.theme-dark select{background:#241810!important;color:#ead9b7!important;border-color:#765832!important}
html[data-theme="dark"] .eyebrow,body[data-theme="dark"] .eyebrow,html.theme-dark .eyebrow,body.theme-dark .eyebrow{color:#d1ad68}
html[data-theme="dark"] #family-map,body[data-theme="dark"] #family-map,html.theme-dark #family-map,body.theme-dark #family-map{background:#211811}
@media(min-width:1000px){.archive-page{max-width:1560px;margin-inline:auto;padding:clamp(2rem,4vw,4rem) clamp(1.5rem,4vw,4rem)}.chrono-main,.location-page{max-width:1560px}.record-card-expanded .record-preview img{max-height:420px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Ensure all interactive subpanels follow the same dark palette */
html[data-theme="dark"] .chrono-record-card,html[data-theme="dark"] .location-records-panel,html[data-theme="dark"] .location-record,html[data-theme="dark"] .ancestor-card,html[data-theme="dark"] .chrono-record-notes,html[data-theme="dark"] .chrono-record-date,
html[data-theme="dark"] .activity-log-section,html[data-theme="dark"] .activity-log-item,html[data-theme="dark"] .research-band,html[data-theme="dark"] .generation,html[data-theme="dark"] .folio-card,
html[data-theme="dark"] .location-route-tools,html[data-theme="dark"] .location-record-body,html[data-theme="dark"] .chrono-year-heading,
body[data-theme="dark"] .chrono-record-card,body[data-theme="dark"] .location-records-panel,body[data-theme="dark"] .location-record,body[data-theme="dark"] .ancestor-card,body[data-theme="dark"] .chrono-record-notes,body[data-theme="dark"] .chrono-record-date,
body[data-theme="dark"] .activity-log-section,body[data-theme="dark"] .activity-log-item,body[data-theme="dark"] .research-band,body[data-theme="dark"] .generation,body[data-theme="dark"] .folio-card,
body[data-theme="dark"] .location-route-tools,body[data-theme="dark"] .location-record-body,body[data-theme="dark"] .chrono-year-heading{background-color:#2a1c13!important;color:#ead9b7!important;border-color:#715332!important}
html[data-theme="dark"] .chrono-record-card p,html[data-theme="dark"] .location-record p,html[data-theme="dark"] .ancestor-source,html[data-theme="dark"] .chrono-record-location,
body[data-theme="dark"] .chrono-record-card p,body[data-theme="dark"] .location-record p,body[data-theme="dark"] .ancestor-source,body[data-theme="dark"] .chrono-record-location{color:#c0a77d!important}


/* Accessibility foundation — WCAG-oriented focus, contrast, reflow and motion safeguards. */
.skip-link {
  position: fixed !important; left: .75rem !important; top: .75rem !important;
  z-index: 100000 !important; transform: translateY(-180%); transition: transform .12s ease;
  display: inline-flex; align-items: center; min-height: 44px; padding: .7rem 1rem;
  background: #fff8e8 !important; color: #24170f !important; border: 3px solid #7a4a14;
  border-radius: .2rem; font-weight: 700; text-decoration: underline;
}
.skip-link:focus { transform: translateY(0); left: .75rem !important; top: .75rem !important; }
:where(a,button,input,select,textarea,iframe,[tabindex]):focus-visible {
  outline: 3px solid #b77b24 !important; outline-offset: 3px !important;
  box-shadow: 0 0 0 2px #fff5d8 !important;
}
:where(button,a,input,select,textarea) { touch-action: manipulation; }
button, .small-button, .owner-sign-in-button, .menu-toggle { min-height: 44px; }
input, select, textarea { max-width: 100%; font: inherit; }
label { display: block; font-weight: 600; }
.visually-hidden, .sr-only {
  position: absolute !important; width: 1px !important; height: 1px !important;
  padding: 0 !important; margin: -1px !important; overflow: hidden !important;
  clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important;
}
[aria-current="page"] { text-decoration: underline !important; text-decoration-thickness: 2px !important; text-underline-offset: .3em !important; }
[aria-invalid="true"], .message-error { border-color: #9c2929 !important; }
.message-error { color: #7e1717 !important; font-weight: 700; }
html[data-theme="dark"] .message-error { color: #ffb5a9 !important; }
html[data-theme="dark"] {
  --ink: #f4e6c9; --muted: #d8c5a3; --line: #9a8056;
}
html[data-theme="dark"] :where(.eyebrow,.section-intro,.file-hint,.field-hint,.connection-status,.record-location,.record-date,.chrono-record-location,.chrono-record-date,.map-caption,small) {
  color: #d8c5a3;
}
html[data-theme="dark"] :where(input,select,textarea) {
  color: #fff1d6; background-color: #261913; border-color: #a78a5a;
}
html[data-theme="dark"] :where(input::placeholder,textarea::placeholder) { color: #c8b99f; opacity: 1; }
html[data-theme="dark"] :where(button,a,.text-link) { text-underline-offset: .2em; }
html[data-theme="dark"] .message-error { color: #ffb5a9; }
html[data-text-size="large"] body { font-size: 1.2rem; }
html[data-text-size="large"] :where(input,select,textarea,button) { font-size: 1.05em; }
html { scroll-padding-top: 1rem; }
main[id] { scroll-margin-top: 1rem; }
.site-modal[role="dialog"]:not([hidden]) { overscroll-behavior: contain; }
.site-modal[role="dialog"]:not([hidden]) .modal-card { max-height: min(90vh, 60rem); overflow-y: auto; }
.chrono-view-toggle { margin: 0 0 1rem; }
.chrono-list-mode .chrono-timeline { display: block !important; overflow: visible !important; max-width: 100% !important; }
.chrono-list-mode .chrono-year-column { width: 100% !important; min-width: 0 !important; max-width: none !important; margin: 0 0 1rem !important; }
.chrono-list-mode .chrono-year-column .chrono-record-card { display: grid; grid-template-columns: minmax(0, 1fr); }
.chrono-list-mode .chrono-scroll-hint { display: none; }
#family-map { min-height: 18rem; }
@media (max-width: 700px) {
  .site-header { gap: .65rem; flex-wrap: wrap; }
  .primary-nav { max-width: 100%; }
  .site-modal { padding: .5rem !important; }
  .site-modal .modal-card { width: 100% !important; max-width: 100% !important; padding: 1rem !important; }
  .search-fields, .chrono-filter-grid, .form-grid { grid-template-columns: minmax(0,1fr) !important; }
  .site-footer { flex-wrap: wrap; }
}
@media (forced-colors: active) {
  :where(a,button,input,select,textarea,[tabindex]):focus-visible { outline: 3px solid Highlight !important; box-shadow: none !important; }
  .button, .small-button, button { border: 1px solid ButtonText; }
}
@media (prefers-reduced-motion: reduce), .system-reduced-motion, .reduce-motion {
  *, *::before, *::after {
    animation-duration: .01ms !important; animation-iteration-count: 1 !important;
    scroll-behavior: auto !important; transition-duration: .01ms !important;
  }
}

/* Mobile navigation remains separate from the settings gear. */
.mobile-nav-toggle { display: none; }
@media (max-width: 800px) {
  .mobile-nav-toggle {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 5rem; padding: .5rem .75rem; color: var(--ink);
    background: var(--paper-light); border: 1px solid var(--line);
    font: inherit; font-weight: 700; cursor: pointer;
  }
  .site-header .primary-nav.is-open {
    display: flex !important; width: 100%; flex-direction: column; gap: 0;
    padding: .5rem 0; border-top: 1px solid var(--line);
  }
  .site-header .primary-nav.is-open a,
  .site-header .primary-nav.is-open button {
    min-height: 44px; padding: .65rem .25rem; text-align: left;
  }
}


/* Final repair: keep the footer in normal document flow and prevent its contents colliding. */
.site-footer{
  position:relative!important;
  inset:auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;
  align-items:center!important;
  justify-items:start;
  gap:1rem clamp(.8rem,2vw,2rem)!important;
  width:100%;
  min-width:0;
  height:auto!important;
  min-height:0!important;
  margin-top:clamp(2rem,5vw,4rem)!important;
  padding:1.25rem clamp(1rem,3vw,2.5rem)!important;
  overflow:hidden;
  transform:none;
}
.site-footer>*{min-width:0;max-width:100%;position:relative}
.site-footer .wordmark{display:flex!important;align-items:center;gap:.7rem;min-width:0;overflow-wrap:anywhere}
.site-footer .wordmark>span:last-child{min-width:0}
.site-footer .wordmark strong{display:block;overflow-wrap:anywhere}
.site-footer .wordmark small{display:block}
.site-footer p{margin:0!important;max-width:48ch;overflow-wrap:anywhere}
.site-footer .footer-end{justify-self:end;white-space:normal;text-align:right;overflow-wrap:anywhere}
@media(max-width:760px){
  .site-footer{grid-template-columns:minmax(0,1fr)!important;align-items:start!important;gap:.65rem!important;padding:1rem!important}
  .site-footer .wordmark{max-width:100%}
  .site-footer p{max-width:none}
  .site-footer .footer-end{display:none!important}
}

/* Dark theme cleanup: remove leftover cream/white panels across every page and popup. */
html[data-theme="dark"],html.theme-dark,body[data-theme="dark"],body.theme-dark,body.dark-mode,html.dark-mode{
  --paper:#211710!important;--paper-light:#302116!important;--paper-dark:#432b1b!important;
  --ink:#f0dfbd!important;--muted:#cbb38b!important;--line:#765936!important;
  --accent:#c39a55!important;--accent-dark:#1a100b!important;
  color-scheme:dark;
}
html[data-theme="dark"] body,html.theme-dark body,body[data-theme="dark"],body.theme-dark,body.dark-mode,html.dark-mode body{
  background-color:#211710!important;color:#f0dfbd!important;
  background-image:radial-gradient(ellipse at 50% 0%,rgba(135,83,32,.16),transparent 54%),linear-gradient(180deg,#1b110c 0%,#2b1d13 48%,#211710 100%)!important;
}
html[data-theme="dark"] :is(.site-footer,.archive-page,.home-search-box,.search-results,.home-record-tile,.home-record-detail-card,.home-detail-metadata,.empty-state,.paper-card,.auth-card,.upload-card,.archive-folders,.archive-folder-content,.archive-folder,.record-card,.record-detail-content,.record-detail-grid,.detail-transcription,.detail-source,.detail-image-viewport,.location-sidebar,.map-panel,.location-records-panel,.location-detail,.location-record,.location-record-body,.location-route-tools,.location-item,.chrono-filter-panel,.chrono-timeline,.chrono-year-column,.chrono-record-card,.chrono-record-notes,.chrono-record-date,.chrono-year-heading,.ancestor-card,.generation,.folio-card,.activity-log-section,.activity-log-item,.research-band,.site-modal .modal-card,.home-record-detail-card .home-detail-metadata),
html.theme-dark :is(.site-footer,.archive-page,.home-search-box,.search-results,.home-record-tile,.home-record-detail-card,.home-detail-metadata,.empty-state,.paper-card,.auth-card,.upload-card,.archive-folders,.archive-folder-content,.archive-folder,.record-card,.record-detail-content,.record-detail-grid,.detail-transcription,.detail-source,.detail-image-viewport,.location-sidebar,.map-panel,.location-records-panel,.location-detail,.location-record,.location-record-body,.location-route-tools,.location-item,.chrono-filter-panel,.chrono-timeline,.chrono-year-column,.chrono-record-card,.chrono-record-notes,.chrono-record-date,.chrono-year-heading,.ancestor-card,.generation,.folio-card,.activity-log-section,.activity-log-item,.research-band,.site-modal .modal-card,.home-record-detail-card .home-detail-metadata),
body.dark-mode :is(.site-footer,.archive-page,.home-search-box,.search-results,.home-record-tile,.home-record-detail-card,.home-detail-metadata,.empty-state,.paper-card,.auth-card,.upload-card,.archive-folders,.archive-folder-content,.archive-folder,.record-card,.record-detail-content,.record-detail-grid,.detail-transcription,.detail-source,.detail-image-viewport,.location-sidebar,.map-panel,.location-records-panel,.location-detail,.location-record,.location-record-body,.location-route-tools,.location-item,.chrono-filter-panel,.chrono-timeline,.chrono-year-column,.chrono-record-card,.chrono-record-notes,.chrono-record-date,.chrono-year-heading,.ancestor-card,.generation,.folio-card,.activity-log-section,.activity-log-item,.research-band,.site-modal .modal-card,.home-record-detail-card .home-detail-metadata){
  background-color:#302116!important;color:#f0dfbd!important;border-color:#765936!important;
}
html[data-theme="dark"] :is(.home-record-tile,.record-card,.chrono-record-card,.location-record,.location-item,.ancestor-card,.archive-folder,.folio-card,.activity-log-item),
html.theme-dark :is(.home-record-tile,.record-card,.chrono-record-card,.location-record,.location-item,.ancestor-card,.archive-folder,.folio-card,.activity-log-item),
body.dark-mode :is(.home-record-tile,.record-card,.chrono-record-card,.location-record,.location-item,.ancestor-card,.archive-folder,.folio-card,.activity-log-item){
  background-image:linear-gradient(135deg,rgba(205,161,89,.06),transparent 58%)!important;
}
html[data-theme="dark"] :is(input,select,textarea,.search-input,.search-fields input,.search-fields select,.chrono-filter-panel input,.chrono-filter-panel select),
html.theme-dark :is(input,select,textarea,.search-input,.search-fields input,.search-fields select,.chrono-filter-panel input,.chrono-filter-panel select),
body.dark-mode :is(input,select,textarea,.search-input,.search-fields input,.search-fields select,.chrono-filter-panel input,.chrono-filter-panel select){
  background:#211710!important;color:#f7e9ce!important;border-color:#8a6a3f!important;
}
html[data-theme="dark"] :is(input,textarea)::placeholder,html.theme-dark :is(input,textarea)::placeholder,body.dark-mode :is(input,textarea)::placeholder{color:#cbb894!important;opacity:1!important}
html[data-theme="dark"] :is(.detail-image-viewport,.home-record-detail-card .detail-image-viewport,.face-crop-canvas-wrap),
html.theme-dark :is(.detail-image-viewport,.home-record-detail-card .detail-image-viewport,.face-crop-canvas-wrap),
body.dark-mode :is(.detail-image-viewport,.home-record-detail-card .detail-image-viewport,.face-crop-canvas-wrap){background:#19110c!important;border-color:#765936!important}
html[data-theme="dark"] :is(.site-footer,.site-footer p,.site-footer .wordmark small,.site-footer .footer-end),
html.theme-dark :is(.site-footer,.site-footer p,.site-footer .wordmark small,.site-footer .footer-end),
body.dark-mode :is(.site-footer,.site-footer p,.site-footer .wordmark small,.site-footer .footer-end){color:#e9d5ad!important}
html[data-theme="dark"] .site-footer .monogram,html.theme-dark .site-footer .monogram,body.dark-mode .site-footer .monogram{background:#593622!important;color:#fff0d2!important;border-color:#a8844b!important}
html[data-theme="dark"] .small-button,html.theme-dark .small-button,body.dark-mode .small-button{background:#3b281b!important;color:#f0dfbd!important;border-color:#8a6a3f!important}
html[data-theme="dark"] .small-button:hover,html.theme-dark .small-button:hover,body.dark-mode .small-button:hover{background:#573625!important;color:#fff0d2!important}
html[data-theme="dark"] .notice,html.theme-dark .notice,body.dark-mode .notice{background:#302116!important;color:#f0dfbd!important;border-color:#765936!important}
html[data-theme="dark"] .detail-file-fallback,html.theme-dark .detail-file-fallback,body.dark-mode .detail-file-fallback{color:#e9d5ad!important}


/* Archive folder records use the same compact square-card visual language as Home search. */
#private-archive .archive-folder-content .records-list{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:.65rem!important;
  width:100%!important;
  margin:1rem 0 1.2rem!important;
}
#private-archive .archive-folder-content .records-list>.record-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:.3rem!important;
  position:relative!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  height:auto!important;
  max-height:none!important;
  overflow:hidden!important;
  padding:.55rem!important;
  border:1px solid #ad9067!important;
  border-radius:7px!important;
  background:#f5e8cf!important;
  background-image:none!important;
  color:#432b20!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.32),0 2px 5px rgba(55,35,20,.07)!important;
  transform:none!important;
  animation:none!important;
}
#private-archive .archive-folder-content .records-list>.record-card:hover{
  background:#efe0c2!important;
  border-color:#94754d!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.4),0 4px 10px rgba(55,35,20,.12)!important;
}
#private-archive .archive-folder-content .record-card>.record-thumbnail{
  display:flex!important;
  flex:0 0 37%!important;
  width:100%!important;
  height:37%!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  border:1px solid #c5ad85!important;
  border-radius:3px!important;
  background:#dfcfad!important;
  box-shadow:none!important;
}
#private-archive .archive-folder-content .record-card>.record-thumbnail img{
  display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;
}
#private-archive .archive-folder-content .record-card>div:nth-child(2){
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:.15rem!important;
  min-width:0!important;
  width:100%!important;
  grid-column:auto!important;
  overflow:hidden!important;
}
#private-archive .archive-folder-content .record-card .record-category{
  display:block!important;margin:0!important;padding:0!important;
  color:#793c32!important;font-size:.57rem!important;line-height:1.15!important;
  letter-spacing:.055em!important;font-weight:700!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
#private-archive .archive-folder-content .record-card h3{
  display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;
  margin:.05rem 0 0!important;padding:0!important;overflow:hidden!important;
  color:#432b20!important;font-family:Georgia,serif!important;font-size:.83rem!important;
  font-weight:600!important;line-height:1.15!important;overflow-wrap:anywhere!important;
}
#private-archive .archive-folder-content .record-card p{
  display:block!important;min-width:0!important;margin:0!important;padding:0!important;
  color:#795f46!important;font-size:.65rem!important;line-height:1.18!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
#private-archive .archive-folder-content .record-card .record-location{font-size:.61rem!important}
#private-archive .archive-folder-content .record-card .record-location-link{color:#795f46!important}
#private-archive .archive-folder-content .record-card .confidence-badge{display:none!important}
#private-archive .archive-folder-content .record-card .record-date{
  display:block!important;margin-top:auto!important;padding-top:.12rem!important;
  color:#795f46!important;font-size:.59rem!important;line-height:1.1!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
#private-archive .archive-folder-content .record-card .record-view-button{
  display:block!important;align-self:flex-start!important;
  min-height:0!important;margin:.08rem 0 0!important;padding:.12rem .25rem!important;
  border:1px solid #ad9067!important;border-radius:3px!important;
  background:#ead7b5!important;color:#432b20!important;
  font-size:.61rem!important;line-height:1.2!important;
}
#private-archive .archive-folder-content .record-card>.record-actions{
  display:flex!important;flex:0 0 auto!important;flex-wrap:wrap!important;
  gap:.2rem!important;width:100%!important;min-width:0!important;
  grid-column:auto!important;align-self:stretch!important;
}
#private-archive .archive-folder-content .record-card>.record-actions .small-button{
  min-height:0!important;padding:.12rem .28rem!important;font-size:.58rem!important;
}
#private-archive .archive-folder-content .records-list>.empty-state{
  grid-column:1/-1!important;
}
html[data-theme="dark"] #private-archive .archive-folder-content .records-list>.record-card,
body[data-theme="dark"] #private-archive .archive-folder-content .records-list>.record-card,
html.theme-dark #private-archive .archive-folder-content .records-list>.record-card,
body.theme-dark #private-archive .archive-folder-content .records-list>.record-card,
body.dark-mode #private-archive .archive-folder-content .records-list>.record-card{
  background:#302116!important;background-image:linear-gradient(135deg,rgba(205,161,89,.06),transparent 58%)!important;
  color:#f0dfbd!important;border-color:#765936!important;
}
html[data-theme="dark"] #private-archive .archive-folder-content .record-card h3,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card h3,
html.theme-dark #private-archive .archive-folder-content .record-card h3,
body.theme-dark #private-archive .archive-folder-content .record-card h3,
body.dark-mode #private-archive .archive-folder-content .record-card h3{color:#f0dfbd!important}
html[data-theme="dark"] #private-archive .archive-folder-content .record-card p,
html[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-date,
html[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-location-link,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card p,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-date,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-location-link,
html.theme-dark #private-archive .archive-folder-content .record-card p,
html.theme-dark #private-archive .archive-folder-content .record-card .record-date,
html.theme-dark #private-archive .archive-folder-content .record-card .record-location-link,
body.theme-dark #private-archive .archive-folder-content .record-card p,
body.theme-dark #private-archive .archive-folder-content .record-card .record-date,
body.theme-dark #private-archive .archive-folder-content .record-card .record-location-link,
body.dark-mode #private-archive .archive-folder-content .record-card p,
body.dark-mode #private-archive .archive-folder-content .record-card .record-date,
body.dark-mode #private-archive .archive-folder-content .record-card .record-location-link{color:#cbb894!important}
html[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-category,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-category,
html.theme-dark #private-archive .archive-folder-content .record-card .record-category,
body.theme-dark #private-archive .archive-folder-content .record-card .record-category,
body.dark-mode #private-archive .archive-folder-content .record-card .record-category{color:#d7a66f!important}
html[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-thumbnail,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-thumbnail,
html.theme-dark #private-archive .archive-folder-content .record-card .record-thumbnail,
body.theme-dark #private-archive .archive-folder-content .record-card .record-thumbnail,
body.dark-mode #private-archive .archive-folder-content .record-card .record-thumbnail{background:#19110c!important;border-color:#765936!important}
@media(max-width:1100px){
  #private-archive .archive-folder-content .records-list{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:.55rem!important}
}
@media(max-width:760px){
  #private-archive .archive-folder-content .records-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.4rem!important}
  #private-archive .archive-folder-content .records-list>.record-card{padding:.35rem!important;gap:.18rem!important}
  #private-archive .archive-folder-content .record-card .record-category{font-size:.47rem!important}
  #private-archive .archive-folder-content .record-card h3{font-size:.61rem!important}
  #private-archive .archive-folder-content .record-card p{font-size:.49rem!important}
  #private-archive .archive-folder-content .record-card .record-date{font-size:.44rem!important}
  #private-archive .archive-folder-content .record-card .record-view-button{font-size:.48rem!important;padding:.1rem .16rem!important}
  #private-archive .archive-folder-content .record-card>.record-actions .small-button{font-size:.46rem!important;padding:.08rem .12rem!important}
}
@media(max-width:380px){
  #private-archive .archive-folder-content .records-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.35rem!important}
}




/* Definitive homepage banner sizing override; min-height:0 avoids adding an oversized content box. */
body .brand-banner[aria-label="Tylka Genealogical Log banner"]{
  box-sizing:border-box!important;
  min-height:0!important;
  height:auto!important;
  padding:2rem 1.3rem!important;
}
body .brand-banner[aria-label="Tylka Genealogical Log banner"] .brand-banner-kicker{
  margin:0 0 .55rem!important;
}
body .brand-banner[aria-label="Tylka Genealogical Log banner"] .brand-banner-inner>p:last-child{
  margin:.65rem auto 0!important;
}
@media(max-width:600px){
  body .brand-banner[aria-label="Tylka Genealogical Log banner"]{
    min-height:0!important;
    padding:1.55rem 1rem!important;
  }
  body .brand-banner[aria-label="Tylka Genealogical Log banner"]:before{inset:9px!important}
  body .brand-banner[aria-label="Tylka Genealogical Log banner"]:after{inset:16px!important}
}


/* Archive folder cards: readable rectangular cards in three-column rows. */
#private-archive .archive-folder-content .records-list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:1rem!important;
  width:100%!important;
}
#private-archive .archive-folder-content .records-list>.record-card{
  display:flex!important;
  flex-direction:column!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  min-height:230px!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  overflow:visible!important;
  padding:.8rem!important;
  gap:.5rem!important;
  border:1px solid #ad9067!important;
  border-radius:7px!important;
  background:#f5e8cf!important;
  color:#432b20!important;
  box-shadow:0 3px 9px rgba(55,35,20,.09)!important;
  transform:none!important;
  animation:none!important;
}
#private-archive .archive-folder-content .records-list>.record-card:hover{
  background:#efe0c2!important;border-color:#94754d!important;
}
#private-archive .archive-folder-content .record-card>.record-thumbnail{
  display:flex!important;flex:0 0 auto!important;
  width:100%!important;height:105px!important;min-height:105px!important;max-height:105px!important;
  aspect-ratio:auto!important;overflow:hidden!important;align-items:center!important;justify-content:center!important;
  margin:0!important;border:1px solid #c5ad85!important;border-radius:4px!important;background:#dfcfad!important;
}
#private-archive .archive-folder-content .record-card>.record-thumbnail img{
  display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;
}
#private-archive .archive-folder-content .record-card>div:nth-child(2){
  display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:stretch!important;
  justify-content:flex-start!important;gap:.28rem!important;min-width:0!important;width:100%!important;overflow:visible!important;
}
#private-archive .archive-folder-content .record-card .record-category{
  display:block!important;margin:0!important;padding:0!important;color:#793c32!important;
  font-size:.68rem!important;line-height:1.25!important;letter-spacing:.055em!important;font-weight:700!important;
  white-space:normal!important;overflow-wrap:anywhere!important;
}
#private-archive .archive-folder-content .record-card h3{
  display:block!important;margin:0!important;padding:0!important;overflow:visible!important;
  color:#432b20!important;font-family:Georgia,serif!important;font-size:1rem!important;font-weight:600!important;
  line-height:1.25!important;overflow-wrap:anywhere!important;
}
#private-archive .archive-folder-content .record-card p{
  display:block!important;min-width:0!important;margin:0!important;padding:0!important;color:#795f46!important;
  font-size:.78rem!important;line-height:1.3!important;white-space:normal!important;overflow:visible!important;
  overflow-wrap:anywhere!important;text-overflow:clip!important;
}
#private-archive .archive-folder-content .record-card .record-location{font-size:.75rem!important}
#private-archive .archive-folder-content .record-card .record-location-link{color:#795f46!important;overflow-wrap:anywhere!important}
#private-archive .archive-folder-content .record-card .confidence-badge{display:inline-flex!important;align-self:flex-start!important}
#private-archive .archive-folder-content .record-card .record-date{
  display:block!important;margin-top:.1rem!important;padding:0!important;color:#795f46!important;
  font-size:.74rem!important;line-height:1.25!important;white-space:normal!important;overflow:visible!important;
  overflow-wrap:anywhere!important;text-overflow:clip!important;
}
#private-archive .archive-folder-content .record-card .record-view-button{
  display:inline-flex!important;align-self:flex-start!important;min-height:32px!important;margin:.2rem 0 0!important;
  padding:.35rem .55rem!important;border:1px solid #ad9067!important;border-radius:4px!important;
  background:#ead7b5!important;color:#432b20!important;font-size:.75rem!important;line-height:1.2!important;
}
#private-archive .archive-folder-content .record-card>.record-actions{
  display:flex!important;flex:0 0 auto!important;flex-wrap:wrap!important;gap:.35rem!important;
  width:100%!important;min-width:0!important;align-self:stretch!important;margin-top:.15rem!important;
}
#private-archive .archive-folder-content .record-card>.record-actions .small-button{
  min-height:30px!important;padding:.3rem .5rem!important;font-size:.72rem!important;
}
#private-archive .archive-folder-content .records-list>.empty-state{grid-column:1/-1!important}
html[data-theme="dark"] #private-archive .archive-folder-content .records-list>.record-card,
body[data-theme="dark"] #private-archive .archive-folder-content .records-list>.record-card,
html.theme-dark #private-archive .archive-folder-content .records-list>.record-card,
body.theme-dark #private-archive .archive-folder-content .records-list>.record-card,
body.dark-mode #private-archive .archive-folder-content .records-list>.record-card{
  background:#302116!important;background-image:linear-gradient(135deg,rgba(205,161,89,.06),transparent 58%)!important;
  color:#f0dfbd!important;border-color:#765936!important;
}
html[data-theme="dark"] #private-archive .archive-folder-content .record-card h3,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card h3,
html.theme-dark #private-archive .archive-folder-content .record-card h3,
body.theme-dark #private-archive .archive-folder-content .record-card h3,
body.dark-mode #private-archive .archive-folder-content .record-card h3{color:#f0dfbd!important}
html[data-theme="dark"] #private-archive .archive-folder-content .record-card p,
html[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-date,
html[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-location-link,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card p,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-date,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-location-link,
html.theme-dark #private-archive .archive-folder-content .record-card p,
html.theme-dark #private-archive .archive-folder-content .record-card .record-date,
html.theme-dark #private-archive .archive-folder-content .record-card .record-location-link,
body.theme-dark #private-archive .archive-folder-content .record-card p,
body.theme-dark #private-archive .archive-folder-content .record-card .record-date,
body.theme-dark #private-archive .archive-folder-content .record-card .record-location-link,
body.dark-mode #private-archive .archive-folder-content .record-card p,
body.dark-mode #private-archive .archive-folder-content .record-card .record-date,
body.dark-mode #private-archive .archive-folder-content .record-card .record-location-link{color:#cbb894!important}
html[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-category,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-category,
html.theme-dark #private-archive .archive-folder-content .record-card .record-category,
body.theme-dark #private-archive .archive-folder-content .record-card .record-category,
body.dark-mode #private-archive .archive-folder-content .record-card .record-category{color:#d7a66f!important}
html[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-thumbnail,
body[data-theme="dark"] #private-archive .archive-folder-content .record-card .record-thumbnail,
html.theme-dark #private-archive .archive-folder-content .record-card .record-thumbnail,
body.theme-dark #private-archive .archive-folder-content .record-card .record-thumbnail,
body.dark-mode #private-archive .archive-folder-content .record-card .record-thumbnail{background:#19110c!important;border-color:#765936!important}
@media(max-width:900px){
  #private-archive .archive-folder-content .records-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.7rem!important}
}
@media(max-width:520px){
  #private-archive .archive-folder-content .records-list{grid-template-columns:1fr!important;gap:.65rem!important}
  #private-archive .archive-folder-content .records-list>.record-card{min-height:0!important;padding:.7rem!important}
  #private-archive .archive-folder-content .record-card>.record-thumbnail{height:130px!important;min-height:130px!important;max-height:130px!important}
}



/* SINGLE AUTHORITATIVE HEADER STYLE — older duplicate visual override blocks removed. */
html body header.site-header{
  position:relative!important;z-index:20!important;isolation:isolate;min-height:78px!important;
  background:linear-gradient(105deg,#e1d0ad 0%,#c9b18a 45%,#bda07a 100%)!important;
  background-color:#d5c19d!important;border-bottom:3px double #80603b!important;
  box-shadow:inset 0 1px rgba(255,248,224,.65),0 5px 16px rgba(42,25,13,.18)!important;color:#38251a!important;
}
html body header.site-header .wordmark{display:flex!important;align-items:center!important;gap:.85rem!important;flex-shrink:0!important;text-decoration:none!important}
html body header.site-header .wordmark strong{color:#38251a!important;font-family:"Great Vibes",cursive!important;font-size:2.15rem!important;font-weight:400!important;letter-spacing:0!important;line-height:1.15!important}
html body header.site-header .wordmark small{color:#5a4330!important;font-size:.62rem!important;letter-spacing:.13em!important}
html body header.site-header .monogram{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;background:#6f342b!important;color:#fff0d2!important;border:1px solid #b99558!important;border-radius:3px!important}
html body header.site-header .primary-nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.5rem .65rem}
html body header.site-header .primary-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.55rem .85rem;border:1px solid rgba(128,96,59,.55);border-radius:3px;background:rgba(255,244,220,.24)!important;color:#38251a!important;text-shadow:none!important;text-decoration:none!important;transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease!important}
html body header.site-header .primary-nav a:hover,html body header.site-header .primary-nav a:focus-visible,html body header.site-header .primary-nav a[aria-current="page"],html body header.site-header .owner-sign-in-button{background:#6f342b!important;color:#fff0d2!important;border-color:#b99558!important}
html body header.site-header .primary-nav a:hover{transform:translateY(-2px)}
html body header.site-header .site-menu-toggle{background:#f1dfbb!important;color:#4a2b20!important;border:1px solid #b99558!important}
html[data-theme="dark"] body header.site-header,body[data-theme="dark"] header.site-header,html.theme-dark body header.site-header,body.theme-dark header.site-header,body.dark-mode header.site-header{background:linear-gradient(105deg,#684c39 0%,#5d4232 43%,#51392d 72%,#493229 100%)!important;background-color:#49352b!important;border-bottom:3px double #c09a60!important;box-shadow:inset 0 1px rgba(231,190,116,.2),0 6px 20px rgba(0,0,0,.3)!important;color:#fff0d2!important}
html[data-theme="dark"] body header.site-header .wordmark strong,html[data-theme="dark"] body header.site-header .wordmark small,html[data-theme="dark"] body header.site-header .primary-nav a,body[data-theme="dark"] header.site-header .wordmark strong,body[data-theme="dark"] header.site-header .wordmark small,body[data-theme="dark"] header.site-header .primary-nav a,html.theme-dark body header.site-header .wordmark strong,html.theme-dark body header.site-header .wordmark small,html.theme-dark body header.site-header .primary-nav a,body.theme-dark header.site-header .wordmark strong,body.theme-dark header.site-header .wordmark small,body.theme-dark header.site-header .primary-nav a,body.dark-mode header.site-header .wordmark strong,body.dark-mode header.site-header .wordmark small,body.dark-mode header.site-header .primary-nav a{color:#fff0d2!important;text-shadow:none!important}
html[data-theme="dark"] body header.site-header .monogram,body[data-theme="dark"] header.site-header .monogram,html.theme-dark body header.site-header .monogram,body.theme-dark header.site-header .monogram,body.dark-mode header.site-header .monogram{background:#70472f!important;color:#fff4df!important;border-color:#c6a36b!important}
html[data-theme="dark"] body header.site-header .primary-nav a:hover,html[data-theme="dark"] body header.site-header .primary-nav a[aria-current="page"],html[data-theme="dark"] body header.site-header .owner-sign-in-button,body[data-theme="dark"] header.site-header .primary-nav a:hover,body[data-theme="dark"] header.site-header .primary-nav a[aria-current="page"],body[data-theme="dark"] header.site-header .owner-sign-in-button,html.theme-dark body header.site-header .primary-nav a:hover,html.theme-dark body header.site-header .primary-nav a[aria-current="page"],body.theme-dark header.site-header .primary-nav a:hover,body.theme-dark header.site-header .primary-nav a[aria-current="page"],body.dark-mode header.site-header .primary-nav a:hover,body.dark-mode header.site-header .primary-nav a[aria-current="page"]{background:#71352e!important;color:#fff0d2!important;border-color:#c6a36b!important}
html[data-theme="dark"] body header.site-header .site-menu-toggle,body[data-theme="dark"] header.site-header .site-menu-toggle,html.theme-dark body header.site-header .site-menu-toggle,body.theme-dark header.site-header .site-menu-toggle,body.dark-mode header.site-header .site-menu-toggle{background:#38251e!important;color:#f7e8ca!important;border-color:#c09a60!important}
html body header.site-header:before{content:"";position:absolute;left:-45%;top:0;width:35%;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,#80603b,#d7a66f,#80603b,transparent);animation:footer-glint 8s ease-in-out infinite}
html body header.site-header .wordmark,html body header.site-header .wordmark .monogram{animation:antique-ink 8s ease-in-out infinite!important}
@media(max-width:800px){html body header.site-header{gap:.65rem!important;flex-wrap:wrap!important}html body header.site-header .primary-nav{display:none!important;width:100%!important;flex-direction:column!important;align-items:stretch!important;gap:0!important}html body header.site-header .primary-nav.is-open{display:flex!important;padding:.45rem 0 .8rem!important;border-top:1px solid #80603b}html body header.site-header .primary-nav a{justify-content:flex-start!important;width:100%!important;min-height:44px!important;margin:.18rem 0!important;padding:.7rem .9rem!important}html body header.site-header .wordmark strong{font-size:1.65rem!important}}
@media(max-width:420px){html body header.site-header .wordmark strong{font-size:1.35rem!important}html body header.site-header .wordmark small{font-size:.52rem!important}}
@media(prefers-reduced-motion:reduce){html body header.site-header:before,html body header.site-header .wordmark,html body header.site-header .wordmark .monogram{animation:none!important}html body header.site-header .primary-nav a{transition:none!important}}


/* MATCHED HEADER + FOOTER DESIGN: identical palette, typography, trim and logo treatment. */
html body header.site-header,
html body footer.site-footer{
  background:linear-gradient(105deg,#e1d0ad 0%,#c9b18a 45%,#bda07a 100%)!important;
  background-color:#d5c19d!important;
  color:#38251a!important;
  border-color:#80603b!important;
  box-shadow:inset 0 1px rgba(255,248,224,.65),0 5px 16px rgba(42,25,13,.18)!important;
}
html body header.site-header{border-bottom:3px double #80603b!important;border-top:0!important}
html body footer.site-footer{border-top:3px double #80603b!important;border-bottom:0!important}
html body header.site-header .wordmark strong,
html body footer.site-footer .wordmark strong,
html body header.site-header .wordmark small,
html body footer.site-footer .wordmark small,
html body footer.site-footer p,
html body footer.site-footer .footer-end{color:#38251a!important;text-shadow:none!important}
html body header.site-header .wordmark strong,
html body footer.site-footer .wordmark strong{
  font-family:"Great Vibes",cursive!important;font-size:2.15rem!important;font-weight:400!important;letter-spacing:0!important;line-height:1.15!important;
}
html body header.site-header .monogram,
html body footer.site-footer .monogram{
  background:#6f342b!important;color:#fff0d2!important;border:1px solid #b99558!important;border-radius:3px!important;
}
html[data-theme="dark"] body header.site-header,
html[data-theme="dark"] body footer.site-footer,
body[data-theme="dark"] header.site-header,
body[data-theme="dark"] footer.site-footer,
html.theme-dark body header.site-header,
html.theme-dark body footer.site-footer,
body.theme-dark header.site-header,
body.theme-dark footer.site-footer,
body.dark-mode header.site-header,
body.dark-mode footer.site-footer{
  background:linear-gradient(105deg,#684c39 0%,#5d4232 43%,#51392d 72%,#493229 100%)!important;
  background-color:#49352b!important;color:#fff0d2!important;border-color:#c09a60!important;
  box-shadow:inset 0 1px rgba(231,190,116,.2),0 6px 20px rgba(0,0,0,.3)!important;
}
html[data-theme="dark"] body header.site-header,
body[data-theme="dark"] header.site-header,
html.theme-dark body header.site-header,
body.theme-dark header.site-header,
body.dark-mode header.site-header{border-bottom:3px double #c09a60!important;border-top:0!important}
html[data-theme="dark"] body footer.site-footer,
body[data-theme="dark"] footer.site-footer,
html.theme-dark body footer.site-footer,
body.theme-dark footer.site-footer,
body.dark-mode footer.site-footer{border-top:3px double #c09a60!important;border-bottom:0!important}
html[data-theme="dark"] body header.site-header .wordmark strong,
html[data-theme="dark"] body header.site-header .wordmark small,
html[data-theme="dark"] body footer.site-footer .wordmark strong,
html[data-theme="dark"] body footer.site-footer .wordmark small,
html[data-theme="dark"] body footer.site-footer p,
html[data-theme="dark"] body footer.site-footer .footer-end,
body[data-theme="dark"] header.site-header .wordmark strong,
body[data-theme="dark"] footer.site-footer .wordmark strong,
body[data-theme="dark"] footer.site-footer .wordmark small,
body[data-theme="dark"] footer.site-footer p,
body[data-theme="dark"] footer.site-footer .footer-end,
html.theme-dark body header.site-header .wordmark strong,
html.theme-dark body footer.site-footer .wordmark strong,
html.theme-dark body footer.site-footer .wordmark small,
html.theme-dark body footer.site-footer p,
html.theme-dark body footer.site-footer .footer-end,
body.theme-dark header.site-header .wordmark strong,
body.theme-dark footer.site-footer .wordmark strong,
body.theme-dark footer.site-footer .wordmark small,
body.theme-dark footer.site-footer p,
body.theme-dark footer.site-footer .footer-end,
body.dark-mode header.site-header .wordmark strong,
body.dark-mode footer.site-footer .wordmark strong,
body.dark-mode footer.site-footer .wordmark small,
body.dark-mode footer.site-footer p,
body.dark-mode footer.site-footer .footer-end{color:#fff0d2!important;text-shadow:none!important}
html[data-theme="dark"] body header.site-header .monogram,
html[data-theme="dark"] body footer.site-footer .monogram,
body[data-theme="dark"] header.site-header .monogram,
body[data-theme="dark"] footer.site-footer .monogram,
html.theme-dark body header.site-header .monogram,
html.theme-dark body footer.site-footer .monogram,
body.theme-dark header.site-header .monogram,
body.theme-dark footer.site-footer .monogram,
body.dark-mode header.site-header .monogram,
body.dark-mode footer.site-footer .monogram{background:#70472f!important;color:#fff4df!important;border-color:#c6a36b!important}
html body header.site-header .wordmark,
html body footer.site-footer .wordmark,
html body header.site-header .wordmark .monogram,
html body footer.site-footer .wordmark .monogram{animation:antique-ink 8s ease-in-out infinite!important}
@media(max-width:800px){
  html body header.site-header .wordmark strong,
  html body footer.site-footer .wordmark strong{font-size:1.65rem!important}
}
@media(max-width:420px){
  html body header.site-header .wordmark strong,
  html body footer.site-footer .wordmark strong{font-size:1.35rem!important}
}
@media(prefers-reduced-motion:reduce){
  html body header.site-header .wordmark,
  html body footer.site-footer .wordmark,
  html body header.site-header .wordmark .monogram,
  html body footer.site-footer .wordmark .monogram{animation:none!important}
}

/* PAGE SWITCH SCOPE FIX: transitions belong to main content only, never the shared header or footer. */
body.page-leaving main{
  filter:blur(8px) brightness(.62) saturate(.7);
  transform:scale(.975) translateY(-10px);
  opacity:0;
  transition:filter .65s ease,transform .82s var(--motion-cinema),opacity .52s ease;
}
body.page-leaving .site-header,
body.page-leaving .site-footer{
  filter:none!important;
  transform:none!important;
  opacity:1!important;
  letter-spacing:normal!important;
  transition:none!important;
  animation:none!important;
}
body.page-enter,
body.page-enter-active{
  opacity:1!important;
  transform:none!important;
  filter:none!important;
  transition:none!important;
}
body.page-enter main{opacity:0;transform:scale(1.018);filter:blur(7px)}
body.page-enter-active main{
  opacity:1;transform:none;filter:none;
  transition:opacity .9s ease,transform 1.1s var(--motion-cinema),filter 1s ease;
}
body.page-enter-active .site-header,
body.page-enter-active .site-footer{
  opacity:1!important;
  transform:none!important;
  filter:none!important;
  animation:none!important;
}
@media(prefers-reduced-motion:reduce){
  body.page-leaving main,body.page-enter main,body.page-enter-active main{
    opacity:1!important;transform:none!important;filter:none!important;transition:none!important;
  }
}


/* NOV 2026 HEADER VISIBILITY FIX — deliberately high-contrast, shared across all pages. */
html body header.site-header{
  position:relative!important;isolation:isolate!important;
  background:linear-gradient(110deg,#4b2925 0%,#60372d 42%,#704638 72%,#59352d 100%)!important;
  background-color:#60372d!important;color:#f7e8c8!important;
  border:0!important;border-bottom:3px double #c9a765!important;
  box-shadow:inset 0 1px rgba(255,235,190,.18),0 7px 22px rgba(28,15,10,.32)!important;
}
html body header.site-header .wordmark,
html body header.site-header .wordmark strong,
html body header.site-header .wordmark small,
html body header.site-header .primary-nav a,
html body header.site-header .owner-sign-in-button,
html body header.site-header .menu-toggle{color:#f7e8c8!important}
html body header.site-header .wordmark strong{
  font-family:"Great Vibes",cursive!important;font-size:2.35rem!important;
  font-weight:400!important;letter-spacing:0!important;line-height:1.05!important;
  text-shadow:0 1px 0 #2b1713,0 0 12px rgba(226,181,103,.18)!important;
}
html body header.site-header .wordmark small{font-family:Georgia,serif!important;letter-spacing:.13em!important;text-transform:uppercase!important;font-size:.62rem!important}
html body header.site-header .monogram{background:#7a3c30!important;color:#fff0d2!important;border:1px solid #d2b06b!important;box-shadow:0 0 12px rgba(201,167,101,.18)!important}
html body header.site-header .primary-nav a,
html body header.site-header .owner-sign-in-button{
  border:1px solid rgba(215,181,116,.38)!important;border-radius:2px!important;
  background:rgba(28,15,12,.16)!important;padding:.62rem .82rem!important;
  text-decoration:none!important;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease!important;
}
html body header.site-header .primary-nav a:hover,
html body header.site-header .owner-sign-in-button:hover{
  background:rgba(220,183,109,.17)!important;border-color:#e0bd79!important;
  box-shadow:0 0 15px rgba(218,174,97,.22)!important;transform:translateY(-2px)!important;
}
html body header.site-header:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,#e3bd75 20%,#f0d99f 50%,#e3bd75 80%,transparent);opacity:.85;animation:footer-glint 8s ease-in-out infinite}
html[data-theme="dark"] body header.site-header,
body[data-theme="dark"] header.site-header,
html.theme-dark body header.site-header,
body.theme-dark header.site-header,
body.dark-mode header.site-header{
  background:linear-gradient(110deg,#634a38 0%,#59402f 40%,#51382b 72%,#493128 100%)!important;
  background-color:#59402f!important;color:#fff0d2!important;border-bottom:3px double #d0ab68!important;
  box-shadow:inset 0 1px rgba(231,190,116,.24),0 7px 22px rgba(0,0,0,.35)!important;
}
html[data-theme="dark"] body header.site-header .wordmark,
html[data-theme="dark"] body header.site-header .wordmark strong,
html[data-theme="dark"] body header.site-header .wordmark small,
html[data-theme="dark"] body header.site-header .primary-nav a,
html[data-theme="dark"] body header.site-header .owner-sign-in-button,
body[data-theme="dark"] header.site-header .wordmark,
body[data-theme="dark"] header.site-header .wordmark strong,
body[data-theme="dark"] header.site-header .wordmark small,
body[data-theme="dark"] header.site-header .primary-nav a,
body[data-theme="dark"] header.site-header .owner-sign-in-button,
html.theme-dark body header.site-header .wordmark,
html.theme-dark body header.site-header .wordmark strong,
html.theme-dark body header.site-header .wordmark small,
html.theme-dark body header.site-header .primary-nav a,
html.theme-dark body header.site-header .owner-sign-in-button,
body.theme-dark header.site-header .wordmark,
body.theme-dark header.site-header .wordmark strong,
body.theme-dark header.site-header .wordmark small,
body.theme-dark header.site-header .primary-nav a,
body.theme-dark header.site-header .owner-sign-in-button,
body.dark-mode header.site-header .wordmark,
body.dark-mode header.site-header .wordmark strong,
body.dark-mode header.site-header .wordmark small,
body.dark-mode header.site-header .primary-nav a,
body.dark-mode header.site-header .owner-sign-in-button{color:#fff0d2!important}
@media(max-width:800px){html body header.site-header .wordmark strong{font-size:1.8rem!important}}
@media(max-width:420px){html body header.site-header .wordmark strong{font-size:1.5rem!important}}


/* Ancestors page intro alignment: match the left-aligned page headings used elsewhere. */
html body main.ancestor-page>.section-intro{
  text-align:left!important;
  align-items:flex-start!important;
  margin-left:0!important;
  margin-right:0!important;
}
html body main.ancestor-page>.section-intro>h1,
html body main.ancestor-page>.section-intro>.eyebrow,
html body main.ancestor-page>.section-intro>p{
  text-align:left!important;
  margin-left:0!important;
  margin-right:0!important;
}


/* Reliable touch and mouse selection in the ancestor portrait cropper. */
.face-crop-canvas-wrap{position:relative;overflow:auto;overscroll-behavior:contain;}
.face-crop-canvas-wrap canvas#face-crop-canvas{display:block;max-width:100%;height:auto;touch-action:none!important;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;cursor:crosshair;pointer-events:auto;}


/* Horizontal brand lockup and install action beside the logo. */
html body header.site-header{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:1rem!important;}
html body header.site-header .wordmark{display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;gap:.7rem!important;white-space:nowrap!important;}
html body header.site-header .wordmark .wordmark-title{display:flex!important;flex-direction:row!important;align-items:baseline!important;gap:.7rem!important;white-space:nowrap!important;}
html body header.site-header .wordmark .wordmark-title strong{font-size:2.25rem!important;line-height:1!important;}
html body header.site-header .wordmark .wordmark-title small{font-family:Georgia,serif!important;font-size:.68rem!important;letter-spacing:.11em!important;text-transform:uppercase!important;white-space:nowrap!important;}
html body header.site-header .pwa-install-button{order:1!important;flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;margin:0 .4rem 0 0!important;padding:.58rem .8rem!important;border:1px solid #c9a765!important;border-radius:2px!important;background:rgba(28,15,12,.22)!important;color:#f7e8c8!important;font:600 .78rem Georgia,serif!important;letter-spacing:.04em!important;white-space:nowrap!important;cursor:pointer!important;}
html body header.site-header .pwa-install-button[hidden]{display:none!important;}
html body header.site-header .menu-toggle{margin-left:auto!important;flex:0 0 auto!important;}
html body header.site-header .primary-nav{margin-left:auto!important;}
@media(max-width:800px){
 html body header.site-header{gap:.5rem!important;flex-wrap:wrap!important;}
 html body header.site-header .wordmark{gap:.45rem!important;}
 html body header.site-header .wordmark .wordmark-title{gap:.4rem!important;}
 html body header.site-header .wordmark .wordmark-title strong{font-size:1.65rem!important;}
 html body header.site-header .wordmark .wordmark-title small{font-size:.55rem!important;letter-spacing:.06em!important;}
 html body header.site-header .pwa-install-button{font-size:.68rem!important;padding:.48rem .55rem!important;margin-right:0!important;}
 html body header.site-header .menu-toggle{margin-left:auto!important;}
}
@media(max-width:420px){
 html body header.site-header{column-gap:.35rem!important;}
 html body header.site-header .wordmark .wordmark-title{gap:.28rem!important;}
 html body header.site-header .wordmark .wordmark-title strong{font-size:1.4rem!important;}
 html body header.site-header .wordmark .wordmark-title small{font-size:.48rem!important;letter-spacing:.025em!important;}
 html body header.site-header .pwa-install-button{font-size:.61rem!important;padding:.4rem .42rem!important;}
}


/* Refined antique-brass settings medallion and crisp custom gear artwork. */
.site-header>.site-menu-toggle{
  width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;
  flex:0 0 48px!important;border:1px solid #b58a50!important;border-radius:14px!important;
  background:linear-gradient(145deg,#54202a 0%,#35151b 58%,#241512 100%)!important;
  color:#e7c58a!important;box-shadow:inset 0 1px rgba(255,235,190,.2),inset 0 -3px 8px rgba(0,0,0,.28),0 3px 12px rgba(54,26,17,.2)!important;
  position:relative;overflow:hidden;
}
.site-header>.site-menu-toggle:before{content:"";position:absolute;inset:4px;border:1px solid rgba(218,181,117,.3);border-radius:10px;pointer-events:none}
.site-header>.site-menu-toggle .settings-gear-art{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px rgba(0,0,0,.45));transition:transform .35s ease,color .25s}
.site-header>.site-menu-toggle:hover,.site-header>.site-menu-toggle:focus-visible,.site-header>.site-menu-toggle[aria-expanded=true]{background:linear-gradient(145deg,#70402a 0%,#4b1b21 65%,#2c1714 100%)!important;color:#ffe0a1!important;border-color:#d2aa6c!important;box-shadow:0 0 0 3px rgba(181,138,80,.16),inset 0 1px rgba(255,235,190,.25),0 5px 16px rgba(35,15,12,.28)!important;outline:none}
.site-header>.site-menu-toggle:hover .settings-gear-art{transform:rotate(45deg)}
.site-header>.site-menu-toggle[aria-expanded=true] .settings-gear-art{transform:rotate(30deg)}
@media(max-width:560px){.site-header>.site-menu-toggle{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;flex-basis:42px!important}.site-header>.site-menu-toggle .settings-gear-art{width:22px;height:22px}}

/* Multi-face ancestor portrait cards and full portrait viewer. */
.ancestor-card-open{display:flex;flex-direction:column;width:100%;height:100%;padding:0;text-align:left;background:transparent;border:0;color:inherit;cursor:pointer}
.ancestor-card-open .ancestor-portrait{width:100%;height:220px;object-fit:cover;display:block}
.ancestor-card-open .ancestor-card-body{width:100%}
.ancestor-card-open .small-button{display:inline-block;margin-top:.35rem}
.ancestor-multi-card{overflow:hidden;cursor:pointer}
.ancestor-face-viewer{width:min(760px,calc(100vw - 2rem));max-height:90vh;overflow:auto}
.ancestor-viewer-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:.6rem;margin:.8rem 0}
.ancestor-viewer-image{display:block;max-width:100%;width:auto;height:auto;max-height:58vh;object-fit:contain;margin:auto;background:#160f0c;border:1px solid #a9824e;box-shadow:0 8px 26px rgba(0,0,0,.25)}
.ancestor-face-arrow{width:42px;height:42px;border:1px solid #ad874e;background:#3b211b;color:#f1d49b;font-size:2rem;line-height:1;cursor:pointer}
.ancestor-face-position,.ancestor-face-source{text-align:center;color:var(--muted)}
.ancestor-face-thumbnails{display:flex;gap:.55rem;overflow-x:auto;padding:.5rem 0}
.ancestor-face-thumb{flex:0 0 66px;width:66px;height:66px;padding:3px;border:1px solid var(--line);background:var(--paper-light);cursor:pointer}
.ancestor-face-thumb img{width:100%;height:100%;object-fit:cover}
.ancestor-face-thumb.is-active{border:2px solid #b58a50;box-shadow:0 0 0 2px rgba(181,138,80,.2)}
html[data-theme="dark"] .ancestor-face-viewer{background:#211713;color:var(--ink);border-color:#9a7445}
@media(max-width:560px){.ancestor-card-open .ancestor-portrait{height:175px}.ancestor-viewer-stage{grid-template-columns:34px minmax(0,1fr) 34px;gap:.3rem}.ancestor-face-arrow{width:32px;height:38px}.ancestor-viewer-image{max-height:52vh}}


/* Ancestor portrait card refinement: generous inset spacing and balanced content. */
.ancestor-grid{padding:0!important;gap:clamp(14px,2.2vw,24px)!important;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr))!important;align-items:stretch}
.ancestor-multi-card{display:flex;flex-direction:column;min-width:0;padding:10px!important;overflow:hidden;border:1px solid rgba(181,138,80,.62)!important;border-radius:7px!important;background:linear-gradient(145deg,#f0e3c8,#dfcba6)!important;box-shadow:0 7px 20px rgba(50,29,17,.13),inset 0 1px rgba(255,250,231,.75)!important}
.ancestor-card-open{gap:0;border-radius:4px;overflow:hidden}
.ancestor-card-open .ancestor-portrait{width:100%;height:clamp(170px,20vw,230px);object-fit:cover;border:1px solid rgba(116,78,44,.35);border-radius:3px;background:#241811}
.ancestor-card-open .ancestor-card-body{display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:100%;padding:15px 8px 8px!important}
.ancestor-card-open .ancestor-card-body h3{margin:0!important;font:1.45rem/1.2 Georgia,serif;overflow-wrap:anywhere}
.ancestor-card-open .ancestor-source{margin:0!important;font-size:.82rem;opacity:.82}
.ancestor-card-open .small-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;margin-top:7px;padding:.5rem .85rem;border:1px solid #9b7445;border-radius:3px;background:rgba(255,248,229,.55);color:#4b3021}
.ancestor-face-viewer .ancestor-set-thumbnail{display:block;width:fit-content;min-height:42px;margin:.85rem auto .2rem;padding:.55rem 1rem;border:1px solid #b58a50;border-radius:3px;background:#4a2b20;color:#f5dfb5;font:600 .9rem Georgia,serif;cursor:pointer}
.ancestor-face-viewer .ancestor-set-thumbnail:disabled{opacity:.75;cursor:default}
html[data-theme="dark"] .ancestor-multi-card,body[data-theme="dark"] .ancestor-multi-card,html.theme-dark .ancestor-multi-card,body.dark-mode .ancestor-multi-card{background:linear-gradient(145deg,#35251b,#261914)!important;border-color:#80603a!important}
html[data-theme="dark"] .ancestor-card-open .small-button,body[data-theme="dark"] .ancestor-card-open .small-button,html.theme-dark .ancestor-card-open .small-button,body.dark-mode .ancestor-card-open .small-button{background:#3b281e;color:#f0dfbf;border-color:#927044}
@media(max-width:560px){.ancestor-grid{gap:11px!important}.ancestor-multi-card{padding:7px!important}.ancestor-card-open .ancestor-portrait{height:150px}.ancestor-card-open .ancestor-card-body{padding:11px 5px 6px!important}.ancestor-card-open .ancestor-card-body h3{font-size:1.16rem}}

/* Birth and death dates shown on ancestor cards. */
.ancestor-card-open .ancestor-life-dates{margin:3px 0 2px!important;color:#68452e;font-size:.88rem;line-height:1.5;font-family:Georgia,serif;font-variant-numeric:oldstyle-nums;overflow-wrap:anywhere}
.ancestor-card-open .ancestor-life-dates[hidden]{display:none!important}
html[data-theme="dark"] .ancestor-card-open .ancestor-life-dates,body[data-theme="dark"] .ancestor-card-open .ancestor-life-dates,html.theme-dark .ancestor-card-open .ancestor-life-dates,body.dark-mode .ancestor-card-open .ancestor-life-dates{color:#e1c18b}

/* Separate location, person, and migration controls */
.location-sidebar{display:grid;gap:.8rem;align-content:start}
.location-tool-box{position:relative;min-width:0;padding:.9rem;border:1px solid var(--line);border-radius:6px;background:rgba(238,229,210,.78);box-shadow:0 4px 14px rgba(65,25,30,.045)}
.location-tool-box>.eyebrow{margin:0 0 .65rem}
.location-tool-box .search-input{width:100%;margin:.35rem 0 .5rem}
.person-picker-trigger{display:flex;width:100%;min-height:48px;align-items:center;justify-content:space-between;gap:.8rem;padding:.65rem .8rem;border:1px solid var(--line);border-radius:4px;background:var(--paper-light);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.person-picker-trigger:hover,.person-picker-trigger[aria-expanded="true"]{border-color:var(--accent);box-shadow:0 0 0 2px rgba(160,115,61,.12)}
.person-picker-menu{display:grid;gap:.3rem;max-height:310px;overflow:auto;margin-top:.45rem;padding:.35rem;border:1px solid var(--line);border-radius:5px;background:var(--paper-light);box-shadow:0 12px 28px rgba(30,18,12,.18)}
.person-picker-menu[hidden]{display:none}
.person-picker-option{display:flex;width:100%;align-items:center;gap:.7rem;padding:.45rem .5rem;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}
.person-picker-option:hover,.person-picker-option:focus-visible{border-color:var(--accent);background:var(--paper-dark)}
.person-picker-avatar{flex:0 0 42px;width:42px;height:42px;object-fit:cover;border:1px solid var(--line);border-radius:50%;background:var(--paper-dark)}
.person-picker-avatar-empty{display:block;background:linear-gradient(135deg,var(--paper-dark),var(--paper-light))}
.person-picker-copy{display:grid;min-width:0;gap:2px}
.person-picker-name{overflow-wrap:anywhere;font-family:var(--serif);font-size:.98rem}
.person-picker-copy small{color:var(--muted);font-size:.7rem}
.location-tool-box .connection-status{margin:.55rem 0 0;font-size:.76rem;line-height:1.45}
html[data-theme="dark"] .location-tool-box,body[data-theme="dark"] .location-tool-box,html.theme-dark .location-tool-box{background:#2a1c13;color:#ead9b7;border-color:#715332}
html[data-theme="dark"] .person-picker-trigger,html[data-theme="dark"] .person-picker-menu,body[data-theme="dark"] .person-picker-trigger,body[data-theme="dark"] .person-picker-menu{background:#21160f;color:#ead9b7;border-color:#715332}
html[data-theme="dark"] .person-picker-option:hover,body[data-theme="dark"] .person-picker-option:hover{background:#493020}


/* Compact record previews inside the selected-location map pin popup */
.registry-pin-popup-container .leaflet-popup-content-wrapper{background:var(--panel,#241a16);color:var(--ink,#f1e2c4);border:1px solid rgba(190,151,91,.65);border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.35)}
.registry-pin-popup-container .leaflet-popup-tip{background:var(--panel,#241a16)}
.registry-pin-popup{min-width:170px;max-width:230px}
.registry-pin-popup-title{display:block;font-family:inherit;font-size:14px;line-height:1.35;margin:0 0 9px;color:inherit}
.registry-pin-popup-images{display:flex;align-items:center;gap:7px}
.registry-pin-popup-image{width:70px;height:54px;flex:0 0 70px;overflow:hidden;border-radius:6px;background:rgba(166,127,75,.18);border:1px solid rgba(190,151,91,.45);display:flex;align-items:center;justify-content:center}
.registry-pin-popup-image img{width:100%;height:100%;object-fit:cover;display:block}
.registry-pin-popup-image span{font-size:10px;text-align:center;padding:4px;color:inherit;opacity:.8}
.registry-pin-popup-more{font-weight:700;font-size:13px;color:inherit;white-space:nowrap;padding:5px 7px;border-radius:20px;background:rgba(166,127,75,.2);border:1px solid rgba(190,151,91,.45)}


/* Ensure the custom teardrop is the only visible selected-location pin. */
#family-map .leaflet-marker-icon.registry-pin-icon{
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
  overflow:visible!important;
}
#family-map .leaflet-marker-icon.registry-pin-icon:before,
#family-map .leaflet-marker-icon.registry-pin-icon:after{
  content:none!important;
  display:none!important;
}
#family-map .registry-map-pin{
  background:linear-gradient(145deg,#fff2c9 0%,#f2c66f 48%,#d99a3e 100%)!important;
  border:3px solid #fffdf4!important;
  box-shadow:0 2px 7px rgba(80,45,15,.38),0 0 0 3px #b77b32,0 0 16px rgba(255,202,105,.9)!important;
}
#family-map .registry-map-pin span{
  background:#fffdf4!important;
  box-shadow:0 0 7px rgba(255,255,255,.95)!important;
}
html[data-theme="dark"] #family-map .registry-map-pin{
  background:linear-gradient(145deg,#fff0bd 0%,#f4c66c 50%,#d99a3e 100%)!important;
  border-color:#fffdf4!important;
  box-shadow:0 2px 7px rgba(0,0,0,.42),0 0 0 3px #e1b35f,0 0 18px rgba(255,202,105,.95)!important;
}


/* Location pin popup cleanup: one clean parchment card, no legacy popup layers. */
#family-map .leaflet-popup.registry-pin-popup-container{
  margin-bottom:8px!important;
  filter:none!important;
}
#family-map .registry-pin-popup-container .leaflet-popup-content-wrapper{
  background:linear-gradient(145deg,#fff8e8 0%,#f1dfbd 100%)!important;
  color:#493020!important;
  border:1px solid #bd9658!important;
  border-radius:10px!important;
  box-shadow:0 5px 18px rgba(49,29,16,.24),inset 0 1px rgba(255,255,255,.85)!important;
  overflow:hidden!important;
}
#family-map .registry-pin-popup-container .leaflet-popup-tip{
  background:#f1dfbd!important;
  border:1px solid #bd9658!important;
  box-shadow:3px 3px 8px rgba(49,29,16,.12)!important;
}
#family-map .registry-pin-popup-container .leaflet-popup-content{
  margin:11px 13px!important;
  color:#493020!important;
}
#family-map .registry-pin-popup-container .leaflet-popup-close-button{
  color:#80572f!important;
}
#family-map .registry-pin-popup-container:before,
#family-map .registry-pin-popup-container:after,
#family-map .registry-pin-popup-container .leaflet-popup-content-wrapper:before,
#family-map .registry-pin-popup-container .leaflet-popup-content-wrapper:after{
  content:none!important;display:none!important;
}
/* Bright ivory-and-gold location marker; suppress every remnant of the older pin artwork. */
#family-map .leaflet-marker-icon.registry-pin-icon,
#family-map .leaflet-marker-icon.registry-pin-icon:before,
#family-map .leaflet-marker-icon.registry-pin-icon:after{
  background:transparent!important;border:0!important;box-shadow:none!important;
  content:none!important;filter:none!important;
}
#family-map .leaflet-marker-icon.registry-pin-icon .registry-map-pin{
  width:30px!important;height:30px!important;margin:2px!important;
  background:linear-gradient(145deg,#fffdf2 0%,#ffe5a0 48%,#f3bd59 100%)!important;
  border:3px solid #fffef8!important;
  box-shadow:0 2px 7px rgba(67,39,15,.28),0 0 0 3px #e0ad4e,0 0 17px rgba(255,213,119,.95)!important;
}
#family-map .leaflet-marker-icon.registry-pin-icon .registry-map-pin:before,
#family-map .leaflet-marker-icon.registry-pin-icon .registry-map-pin:after{
  content:none!important;display:none!important;
}
#family-map .leaflet-marker-icon.registry-pin-icon .registry-map-pin>span{
  width:9px!important;height:9px!important;top:7px!important;left:7px!important;
  background:#fff!important;box-shadow:0 0 8px rgba(255,255,255,.98)!important;
}
html[data-theme="dark"] #family-map .leaflet-marker-icon.registry-pin-icon .registry-map-pin{
  background:linear-gradient(145deg,#fffdf2 0%,#ffe5a0 48%,#f3bd59 100%)!important;
  border-color:#fffef8!important;
  box-shadow:0 2px 7px rgba(35,19,8,.35),0 0 0 3px #edbd60,0 0 19px rgba(255,213,119,.98)!important;
}
html[data-theme="dark"] #family-map .registry-pin-popup-container .leaflet-popup-content-wrapper{
  background:linear-gradient(145deg,#fff8e8 0%,#f1dfbd 100%)!important;
  color:#493020!important;border-color:#bd9658!important;
}
html[data-theme="dark"] #family-map .registry-pin-popup-container .leaflet-popup-content,
html[data-theme="dark"] #family-map .registry-pin-popup-title{color:#493020!important}


/* FINAL LOCATION PREVIEW OVERRIDE — remove stacked legacy popup layers in every theme. */
#family-map .leaflet-popup.registry-pin-popup-container{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
  padding:0!important;
}
#family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content-wrapper{
  display:block!important;
  background:#fff8e8!important;
  background-image:none!important;
  color:#382316!important;
  border:1px solid #c69b58!important;
  border-radius:9px!important;
  box-shadow:0 4px 12px rgba(40,24,12,.22)!important;
  outline:0!important;
  overflow:hidden!important;
}
#family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content{
  margin:10px 12px!important;
  padding:0!important;
  background:transparent!important;
  color:#382316!important;
}
#family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-tip-container{
  background:transparent!important;
  filter:none!important;
}
#family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-tip{
  background:#fff8e8!important;
  border:0!important;
  box-shadow:none!important;
}
#family-map .leaflet-popup.registry-pin-popup-container:before,
#family-map .leaflet-popup.registry-pin-popup-container:after,
#family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content-wrapper:before,
#family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content-wrapper:after,
#family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content:before,
#family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content:after{
  content:none!important;
  display:none!important;
  background:none!important;
  box-shadow:none!important;
}
#family-map .registry-pin-popup{
  min-width:170px!important;
  max-width:230px!important;
  background:transparent!important;
  color:#382316!important;
}
#family-map .registry-pin-popup-title,
#family-map .registry-pin-popup-image span,
#family-map .registry-pin-popup-more{
  color:#382316!important;
  text-shadow:none!important;
  opacity:1!important;
}
#family-map .registry-pin-popup-image{
  background:#ead8b8!important;
  border:1px solid #bd9658!important;
}
#family-map .registry-pin-popup-more{
  background:#f0dfbd!important;
  border:1px solid #bd9658!important;
}
#family-map .registry-pin-popup-container .leaflet-popup-close-button{
  color:#70451f!important;
  text-shadow:none!important;
}
html[data-theme="dark"] #family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content-wrapper,
body[data-theme="dark"] #family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content-wrapper,
html.theme-dark #family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content-wrapper,
body.dark-mode #family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content-wrapper,
.dark-mode #family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content-wrapper{
  background:#fff8e8!important;
  background-image:none!important;
  color:#382316!important;
  border-color:#c69b58!important;
}
html[data-theme="dark"] #family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content,
body[data-theme="dark"] #family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content,
html.theme-dark #family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content,
body.dark-mode #family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content,
.dark-mode #family-map .leaflet-popup.registry-pin-popup-container .leaflet-popup-content,
html[data-theme="dark"] #family-map .registry-pin-popup,
body[data-theme="dark"] #family-map .registry-pin-popup,
html.theme-dark #family-map .registry-pin-popup,
body.dark-mode #family-map .registry-pin-popup,
.dark-mode #family-map .registry-pin-popup{
  background:transparent!important;
  color:#382316!important;
}


/* Hide the small gold location marker while keeping its preview popup anchored on the map. */
#family-map .leaflet-marker-icon.registry-pin-icon{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}


/* Parchment-and-ink cartography for the Location Registry.
   Apply the treatment only to map tiles so pins, routes, labels and popups stay crisp. */
#family-map.leaflet-container{
  background:#c9a875!important;
  border:1px solid #9b713f!important;
  box-shadow:inset 0 0 0 5px rgba(83,48,25,.16),inset 0 0 38px rgba(74,39,17,.28),0 8px 24px rgba(35,20,12,.18)!important;
}
#family-map .leaflet-tile-pane{
  filter:sepia(.78) saturate(.88) contrast(1.08) brightness(1.03)!important;
}
#family-map .leaflet-overlay-pane,
#family-map .leaflet-marker-pane,
#family-map .leaflet-tooltip-pane,
#family-map .leaflet-popup-pane{
  filter:none!important;
}
#family-map .leaflet-control-zoom a{
  background:linear-gradient(145deg,#f5e6c8,#d8bd8e)!important;
  color:#4a2c1a!important;
  border-color:#a17a49!important;
  box-shadow:inset 0 1px rgba(255,255,255,.65)!important;
}
#family-map .leaflet-control-attribution{
  background:rgba(244,229,199,.88)!important;
  color:#5b4029!important;
  border:1px solid rgba(139,99,53,.45)!important;
}
#family-map .leaflet-control-attribution a{color:#70451f!important}
#family-map .registry-location-label{
  background:#f1dfba!important;
  color:#402719!important;
  border:1px solid #967044!important;
  box-shadow:0 2px 7px rgba(54,31,15,.2)!important;
}
#family-map .leaflet-popup-content-wrapper,
#family-map .leaflet-popup-tip{
  background:#f5e6c8!important;
  color:#432a1a!important;
  border:1px solid #a17a49!important;
}
html[data-theme="dark"] #family-map.leaflet-container,
html[data-theme="dark"] #family-map .leaflet-control-attribution{
  background-color:#c9a875!important;
}
html[data-theme="dark"] #family-map .leaflet-tile-pane{
  filter:sepia(.82) saturate(.82) contrast(1.1) brightness(.98)!important;
}


/* Deeper, higher-contrast antique cartography. */
#family-map.leaflet-container{
  background:#8e6841!important;
  border-color:#684426!important;
  box-shadow:inset 0 0 0 5px rgba(48,25,12,.34),inset 0 0 48px rgba(35,17,8,.42),0 9px 26px rgba(25,13,7,.3)!important;
}
#family-map .leaflet-tile-pane{
  filter:sepia(1) saturate(1.12) contrast(1.34) brightness(.78)!important;
}
html[data-theme="dark"] #family-map .leaflet-tile-pane{
  filter:sepia(1) saturate(1.18) contrast(1.42) brightness(.68)!important;
}
#family-map .leaflet-control-zoom a{
  background:linear-gradient(145deg,#d9bd8c,#a98251)!important;
  color:#29180e!important;
  border-color:#684426!important;
}
#family-map .leaflet-control-attribution{
  background:rgba(218,193,151,.94)!important;
  color:#392313!important;
  border-color:#77512e!important;
}
#family-map .leaflet-control-attribution a{color:#4b2814!important}
#family-map .registry-location-label{
  background:#d9bd8c!important;
  color:#2d1a0d!important;
  border-color:#684426!important;
  font-weight:700!important;
  text-shadow:0 1px rgba(255,244,216,.5)!important;
}
#family-map .leaflet-popup-content-wrapper,
#family-map .leaflet-popup-tip{
  background:#e3c99d!important;
  color:#2e1b10!important;
  border-color:#79532e!important;
}


/* Match all map lettering to the site's antique parchment typeface. */
#family-map,
#family-map .leaflet-tooltip,
#family-map .leaflet-popup,
#family-map .leaflet-popup-content,
#family-map .leaflet-popup-content strong,
#family-map .registry-location-label,
#family-map .registry-pin-popup,
#family-map .registry-pin-popup-title,
#family-map .registry-pin-popup-image span,
#family-map .registry-pin-popup-more{
  font-family:"IM Fell English","EB Garamond",Georgia,serif!important;
}
#family-map .registry-location-label{
  font-size:13px!important;
  font-weight:400!important;
  letter-spacing:.015em!important;
}
#family-map .leaflet-tooltip{
  font-size:13px;
  letter-spacing:.01em;
}
#family-map .registry-pin-popup-title{
  font-size:16px!important;
  font-weight:400!important;
}


/* Final map palette: warm parchment land, muted sepia water, dark ink linework. */
#family-map.leaflet-container{
  background:#d2b98c!important;
  border:2px solid #75502f!important;
  box-shadow:inset 0 0 0 5px rgba(73,43,22,.25),inset 0 0 42px rgba(71,39,17,.22),0 8px 24px rgba(35,20,12,.24)!important;
}
#family-map .leaflet-tile-pane{
  filter:grayscale(1) sepia(1) saturate(1.35) contrast(1.48) brightness(.96)!important;
}
html[data-theme="dark"] #family-map .leaflet-tile-pane{
  filter:grayscale(1) sepia(1) saturate(1.28) contrast(1.52) brightness(.84)!important;
}
#family-map .leaflet-overlay-pane,
#family-map .leaflet-marker-pane,
#family-map .leaflet-tooltip-pane,
#family-map .leaflet-popup-pane{filter:none!important}
#family-map .leaflet-control-zoom a{
  background:#e2cda5!important;color:#382313!important;border-color:#805a35!important;
}
#family-map .leaflet-control-attribution{
  background:rgba(226,205,165,.96)!important;color:#382313!important;border:1px solid #805a35!important;
}
#family-map .leaflet-control-attribution a{color:#4d2d17!important}
#family-map .registry-location-label{
  background:#e8d5af!important;color:#342012!important;border:1px solid #674323!important;
  box-shadow:0 2px 7px rgba(48,28,13,.28)!important;
}
#family-map .leaflet-popup-content-wrapper,
#family-map .leaflet-popup-tip{
  background:#ead8b5!important;color:#342012!important;border-color:#805a35!important;
}


/* Location Registry: retain Leaflet's original, unfiltered OpenStreetMap colors. */
#family-map .leaflet-tile-pane{
  filter:none!important;
}
html[data-theme="dark"] #family-map .leaflet-tile-pane{
  filter:none!important;
}


/* ChronoSearch year labels sit independently above the record cards. */
.chrono-year-heading{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:.65rem!important;
  width:100%!important;
  margin:0 0 .85rem!important;
  padding:.15rem 0!important;
  text-align:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.chrono-year-heading h2{
  width:auto!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.chrono-year-heading span{background:transparent!important;border:0!important;box-shadow:none!important}

.page-name-identifications{margin:1rem 0;padding:.8rem 1rem;border:1px solid var(--line);border-radius:8px;background:var(--paper-light)}
.page-name-identifications h3{margin:0 0 .45rem;font-family:var(--serif);font-size:1rem}
.page-name-identifications ul{display:grid;gap:.35rem;margin:0;padding:0;list-style:none}
.page-name-identifications li{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.35rem 0;border-bottom:1px solid var(--line);font-size:.9rem}
#page-name-canvas{display:block;width:100%;height:auto;max-height:65vh;object-fit:contain;touch-action:none;cursor:crosshair}
#page-name-modal .face-crop-canvas-wrap{max-height:68vh;overflow:auto}

/* Saved name labels are drawn directly over the original scan and follow zoom/pan. */
#page-name-overlay{position:absolute;left:0;top:0;width:auto;height:auto;max-width:none;max-height:none;object-fit:fill;transform-origin:center;pointer-events:none;z-index:2}


/* Unified record identity panel: relationships and page-name identifications share the right column. */
.record-detail-grid{align-items:start}
.detail-transcription{display:flex;flex-direction:column;min-width:0}
.detail-family-information{margin:1.15rem 0 0;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:8px;background:var(--paper-light);box-shadow:inset 0 1px rgba(255,255,255,.35)}
.detail-family-information h3{margin:0 0 .7rem;font-family:var(--serif);font-size:1.08rem}
.detail-family-information dl{display:grid;grid-template-columns:minmax(105px,.8fr) minmax(0,1.5fr);gap:.38rem .8rem;margin:0}
.detail-family-information dt{font-size:.82rem;font-weight:700;color:var(--muted)}
.detail-family-information dd{margin:0;font-size:.9rem;overflow-wrap:anywhere}
.combined-identified-names{display:grid;gap:.35rem;margin:.7rem 0 0;padding:.65rem 0 0;border-top:1px solid var(--line);list-style:none}
.combined-identified-names:empty{display:none}
.combined-identified-names li{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.28rem 0;font-size:.88rem;border-bottom:1px solid var(--line)}
.combined-identified-names li:last-child{border-bottom:0}
html[data-theme="dark"] .detail-family-information,body[data-theme="dark"] .detail-family-information{background:#2a1c13;border-color:#715332;color:#ead9b7}
@media(max-width:760px){.detail-family-information dl{grid-template-columns:1fr;gap:.15rem}.detail-family-information dd{margin-bottom:.45rem}}


/* Separate transcription and identified-family panels with hover-linked scan highlights. */
.detail-right-column{display:grid;gap:1rem;min-width:0}
.detail-transcription{display:block;margin:0}
.detail-family-information{margin:0;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:6px;background:var(--paper-light);box-shadow:inset 0 1px rgba(255,255,255,.28)}
.detail-family-information h3{margin:0 0 .8rem;font:1.2rem var(--serif)}
.identified-family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.identified-family-card{display:flex;flex-direction:column;gap:.2rem;min-width:0;padding:.7rem .75rem;border:1px solid var(--line);background:rgba(203,185,154,.28);transition:background .18s,border-color .18s,box-shadow .18s}
.identified-family-card:hover,.identified-family-card:focus{outline:none;border-color:#c08b25;background:rgba(255,218,91,.24);box-shadow:0 0 0 2px rgba(255,196,35,.18)}
.identified-family-card>span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.identified-family-card strong{font:1rem var(--serif);overflow-wrap:anywhere}
.identified-family-card .small-button{align-self:flex-start;margin-top:.2rem;padding:.25rem .5rem;font-size:.72rem}
.combined-identified-names{display:grid;gap:.35rem;margin:.8rem 0 0;padding:.75rem 0 0;border-top:1px solid var(--line);list-style:none}
.combined-identified-names li{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.4rem .2rem;border-bottom:1px solid var(--line);font-size:.86rem}
.identified-name-actions{display:flex;gap:.35rem;flex-shrink:0}
.identified-name-actions .small-button{padding:.25rem .5rem;font-size:.72rem}
.identified-family-hint{margin:.7rem 0 0;color:var(--muted);font-size:.72rem}
html[data-theme="dark"] .identified-family-card,body[data-theme="dark"] .identified-family-card{background:#342318;border-color:#715332;color:#ead9b7}
@media(max-width:760px){.identified-family-grid{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.identified-family-grid{grid-template-columns:1fr}}

/* Keep owner-only research assessment controls hidden for public visitors. */
#confidence-editor[hidden]{display:none!important}

/* LOW-HEAT MODE: preserve the archive palette and interaction transitions,
   but stop background/looping animations and expensive blur effects. */
*,*::before,*::after{
  animation:none!important;
}
html[data-theme="dark"] body::before{
  animation:none!important;
  filter:none!important;
  transform:none!important;
  opacity:.15!important;
}
html body header.site-header:before,
html body header.site-header:after,
html body header.site-header .wordmark,
html body header.site-header .wordmark .monogram,
html body footer.site-footer:before,
html body footer.site-footer .wordmark,
html body footer.site-footer .wordmark .monogram,
body:after,
#tylka-page-veil,
#tylka-page-veil:before,
#tylka-page-veil:after{
  animation:none!important;
  filter:none!important;
}
.site-header,.site-footer,.site-modal,.modal-card{
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}


/* Record details: show only actual transcription text and group scan boxes by relationship. */
#detail-transcription-panel[hidden],
#detail-family-information[hidden],
#other-page-names[hidden]{display:none!important}
.identified-family-group{margin:.25rem 0 .9rem}
.identified-family-group h4,.other-page-names h4{margin:0 0 .5rem;font:600 .86rem var(--serif);color:var(--muted);letter-spacing:.045em;text-transform:uppercase}
.identified-family-group .identified-family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
.identified-family-card{align-items:flex-start}
.identified-family-card .identified-name-actions{display:flex;flex-wrap:wrap;margin-top:.25rem}
.identified-family-card .small-button{align-self:auto}
.identified-family-card:focus-visible{outline:2px solid #c08b25;outline-offset:2px}
.other-page-names{margin-top:.8rem;padding-top:.75rem;border-top:1px solid var(--line)}
.identified-name-row{display:flex;align-items:center;justify-content:space-between;gap:.65rem;padding:.45rem .2rem;border-bottom:1px solid var(--line)}
.identified-name-row>span{overflow-wrap:anywhere}
@media(max-width:760px){.identified-family-group .identified-family-grid{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.identified-family-group .identified-family-grid{grid-template-columns:1fr}}

/* Photograph face identifications use the right-hand record panel. */
.detail-face-identifications{min-width:0}.detail-face-identifications .combined-identified-names{margin-top:.35rem;padding-top:0;border-top:0}.detail-face-identifications .identified-name-row{cursor:pointer;border-radius:4px;padding:.55rem .45rem;transition:background .16s ease}.detail-face-identifications .identified-name-row:hover,.detail-face-identifications .identified-name-row:focus{outline:none;background:rgba(255,213,83,.2)}

/* Keep manual selection canvases at the exact displayed image ratio for pointer accuracy. */
.face-crop-canvas-wrap{overflow:auto}.face-crop-canvas-wrap canvas{flex:none;object-fit:fill}


/* PERFORMANCE: reduce off-screen layout and paint work on long archive pages. */
@media (min-width: 700px) {
  .home-record-tile,
  .activity-log-item,
  .record-card,
  .archive-record-card,
  .chrono-record-card,
  .location-record-item,
  .ancestor-card {
    content-visibility: auto;
    contain-intrinsic-size: 1px 230px;
  }
}
.home-record-tile img,
.record-card img,
.archive-record-card img,
.chrono-record-card img,
.ancestor-card img {
  content-visibility: auto;
}
html { scroll-behavior: auto; }
.site-header, .site-footer, .home-search-box, .home-record-tile,
.activity-log-item, .modal-card, .site-modal {
  transition-duration: .12s !important;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}


/* Homepage: compact square activity log tucked to the lower left. */
.home-search-page #home-activity-log.activity-log-section{
  width:min(100%,330px)!important;
  min-height:0!important;
  margin:2rem 0 0!important;
  padding:1rem!important;
  border:1px solid var(--line)!important;
  border-radius:8px!important;
  background:var(--paper-light)!important;
  box-shadow:0 5px 18px rgba(44,29,18,.08);
}
.home-search-page .activity-log-heading{margin:0 0 .65rem}
.home-search-page .activity-log-heading .eyebrow{margin:0 0 .2rem;font-size:.62rem;letter-spacing:.12em}
.home-search-page .activity-log-heading h2{margin:0;font-size:1.25rem;line-height:1.2}
.home-search-page .activity-log-list{display:grid;gap:.35rem;max-width:none}
.home-search-page .activity-log-item{
  display:grid;gap:.12rem;padding:.48rem .58rem!important;
  border:1px solid var(--line);border-radius:4px;
  background:rgba(203,185,154,.2);box-shadow:none!important;
  animation:none!important;transform:none!important;
}
.home-search-page .activity-log-entry-title{display:block;font:600 .78rem/1.25 var(--serif);overflow-wrap:anywhere}
.home-search-page .activity-log-entry-meta{display:block;color:var(--muted);font-size:.65rem;line-height:1.25}
.home-search-page #home-activity-list>.empty-state{margin:0;padding:.5rem;font-size:.75rem}
@media(max-width:600px){
 .home-search-page #home-activity-log.activity-log-section{width:100%!important;max-width:330px!important;margin:1.25rem 0 0!important;padding:.85rem!important}
}


/* Homepage search header: title on the left, query controls on the right. */
.home-search-page #home-search-workspace.home-search-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(320px,1.08fr)!important;
  align-items:center!important;
  column-gap:clamp(1.5rem,4vw,4rem)!important;
  row-gap:1.25rem!important;
}
.home-search-page .home-search-intro{grid-column:1;align-self:center;max-width:620px}
.home-search-page .home-search-intro h1{margin:.2rem 0 .7rem}
.home-search-page .home-search-intro .section-intro{margin:0;max-width:48ch}
.home-search-page #home-search-workspace>.home-search-box{grid-column:2;grid-row:1;margin:0;min-width:0}
.home-search-page #home-search-workspace>#home-results{grid-column:1/-1;grid-row:2;min-width:0}
@media(max-width:760px){
 .home-search-page #home-search-workspace.home-search-layout{grid-template-columns:minmax(0,1fr)!important;gap:1rem!important}
 .home-search-page .home-search-intro,.home-search-page #home-search-workspace>.home-search-box,.home-search-page #home-search-workspace>#home-results{grid-column:1!important;grid-row:auto!important}
}

/* Slightly wider search panel, tucked closer to its heading. */
@media(min-width:761px){.home-search-page #home-search-workspace.home-search-layout{grid-template-columns:minmax(0,.92fr) minmax(380px,1.18fr)!important;column-gap:clamp(1rem,2.2vw,2rem)!important}.home-search-page #home-search-workspace>.home-search-box{width:100%;padding:clamp(1.35rem,3vw,2.15rem)}}


/* Desktop performance mode: keep the antique palette and short interactions,
   but stop continuously repainting decorative layers while the site is open. */
@media (min-width: 761px) {
  html:not(.reduce-motion) body::before,
  html:not(.reduce-motion) body::after,
  html:not(.reduce-motion) .site-header,
  html:not(.reduce-motion) .site-header::before,
  html:not(.reduce-motion) .site-header::after,
  html:not(.reduce-motion) .site-footer::before,
  html:not(.reduce-motion) .ticker::after,
  html:not(.reduce-motion) .ticker i,
  html:not(.reduce-motion) .wordmark,
  html:not(.reduce-motion) .wordmark .monogram,
  html:not(.reduce-motion) .primary-nav a,
  html:not(.reduce-motion) .archive-toolbar,
  html:not(.reduce-motion) .chrono-filter-panel,
  html:not(.reduce-motion) .upload-card,
  html:not(.reduce-motion) .auth-card,
  html:not(.reduce-motion) .record-card,
  html:not(.reduce-motion) .ancestor-card,
  html:not(.reduce-motion) .location-item,
  html:not(.reduce-motion) .paper-card,
  html:not(.reduce-motion) .archive-folder,
  html:not(.reduce-motion) .brand-banner,
  html:not(.reduce-motion) input,
  html:not(.reduce-motion) select,
  html:not(.reduce-motion) textarea,
  html:not(.reduce-motion) .chrono-ornament b,
  html:not(.reduce-motion) .chrono-main::before,
  html:not(.reduce-motion) .back-to-top::before,
  html:not(.reduce-motion) .home-search-page * {
    animation: none !important;
  }
  html:not(.reduce-motion) body::before {
    filter: none !important;
    opacity: .12 !important;
  }
  html:not(.reduce-motion) body::after {
    display: none !important;
    animation: none !important;
  }
  html:not(.reduce-motion) .site-header,
  html:not(.reduce-motion) .record-card,
  html:not(.reduce-motion) .ancestor-card,
  html:not(.reduce-motion) .location-item,
  html:not(.reduce-motion) .paper-card {
    will-change: auto !important;
  }
}

@media (min-width: 761px) { html:not(.reduce-motion) body *, html:not(.reduce-motion) body *::before, html:not(.reduce-motion) body *::after { animation-iteration-count: 1 !important; } }


/* Header layout guard: keep the brand and navigation in normal flow,
   and allow the navigation to wrap rather than collide with page content. */
.site-header{
  position:relative!important;
  inset:auto!important;
  display:flex!important;
  flex-flow:row wrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:.85rem 1.25rem!important;
  width:100%;
  min-width:0;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  z-index:20;
}
.site-header>.wordmark{
  position:relative;
  flex:0 1 auto;
  min-width:0;
  max-width:100%;
  margin:0;
}
.site-header>.primary-nav{
  position:relative!important;
  inset:auto!important;
  flex:1 1 560px;
  min-width:0;
  width:auto;
  max-width:100%;
  display:flex;
  flex-flow:row wrap;
  align-items:center;
  justify-content:flex-end;
  gap:.35rem .8rem;
  margin:0;
  padding:0;
  transform:none;
}
.site-header>.primary-nav>*{
  position:relative;
  flex:0 1 auto;
  min-width:0;
  max-width:100%;
  white-space:normal;
}
.site-header+.brand-banner,
.site-header+main,
.site-header+#main-content{
  position:relative;
  margin-top:0!important;
  clear:both;
}
@media(max-width:800px){
  .site-header{
    align-items:center!important;
    gap:.65rem .8rem!important;
    padding:.8rem 1rem!important;
  }
  .site-header>.wordmark{flex:1 1 auto}
  .site-header>.primary-nav{
    flex:1 0 100%;
    width:100%;
    display:none;
    flex-flow:column nowrap;
    align-items:stretch;
    justify-content:flex-start;
    gap:.25rem;
    padding:.4rem 0 .65rem;
  }
  .site-header>.primary-nav.is-open{display:flex}
  .site-header>.primary-nav>*{width:100%;max-width:none}
  .site-header>.primary-nav a,
  .site-header>.primary-nav .owner-sign-in-button{
    box-sizing:border-box;
    min-height:42px;
    padding:.65rem .85rem;
    white-space:normal;
    overflow-wrap:anywhere;
  }
}
@media(min-width:801px) and (max-width:1100px){
  .site-header>.primary-nav{flex-basis:100%;justify-content:flex-start}
}


/* ChronoSearch is always a left-to-right horizontal timeline.
   Disable the retired vertical/list presentation at every breakpoint. */
.chrono-main .chrono-timeline,
.chrono-list-mode .chrono-timeline{
  display:flex!important;
  flex-flow:row nowrap!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  width:100%;
  max-width:100%;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
}
.chrono-main .chrono-year-column,
.chrono-list-mode .chrono-year-column{
  display:block!important;
  flex:0 0 clamp(250px,27vw,340px)!important;
  width:auto!important;
  min-width:250px!important;
  max-width:none!important;
  margin:0!important;
}
@media(max-width:650px){
  .chrono-main .chrono-year-column,
  .chrono-list-mode .chrono-year-column{
    flex-basis:84vw!important;
    min-width:0!important;
  }
}


/* Homepage search results: compact versions of the Archive record cards. */
#home-results.home-search-record-grid{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:.65rem!important;align-items:stretch;width:100%;margin:.75rem 0 1rem;
}
#home-results .home-search-record-card{
  display:grid!important;grid-template-columns:minmax(76px,96px) minmax(0,1fr)!important;
  align-items:stretch!important;justify-content:stretch!important;gap:.65rem!important;
  min-width:0;min-height:124px;padding:.58rem!important;
  border:1px solid var(--line);border-radius:3px;
  background:rgba(223,208,179,.78);color:var(--ink);
  box-shadow:0 2px 6px rgba(55,35,20,.08);
}
#home-results .home-search-record-card>.record-thumbnail{
  width:100%;height:100%;min-height:108px;max-width:none;aspect-ratio:auto;
  margin:0!important;align-self:stretch;
}
#home-results .home-search-record-card>.record-thumbnail img{
  width:100%;height:100%;object-fit:contain;
}
#home-results .home-search-record-details{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:.18rem}
#home-results .home-search-record-details .record-category{font-size:.58rem;line-height:1.2;overflow-wrap:anywhere}
#home-results .home-search-record-details h3{
  margin:.08rem 0 .12rem;font-size:.92rem;line-height:1.18;overflow-wrap:anywhere;
}
#home-results .home-search-record-details p{margin:.08rem 0;font-size:.68rem;line-height:1.25;color:var(--muted);overflow-wrap:anywhere}
#home-results .home-search-record-details .record-view-button{
  margin:.12rem 0 .18rem;padding:.34rem .55rem;font-size:.66rem;min-height:30px;
}
@media(max-width:1050px){
  #home-results.home-search-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  #home-results.home-search-record-grid{grid-template-columns:1fr!important;gap:.55rem!important}
  #home-results .home-search-record-card{grid-template-columns:92px minmax(0,1fr)!important;min-height:112px;padding:.5rem!important}
  #home-results .home-search-record-card>.record-thumbnail{min-height:96px}
}
html[data-theme="dark"] #home-results .home-search-record-card,
body[data-theme="dark"] #home-results .home-search-record-card,
html.theme-dark #home-results .home-search-record-card,
body.theme-dark #home-results .home-search-record-card,
body.dark-mode #home-results .home-search-record-card,
.dark-mode #home-results .home-search-record-card{
  background:rgba(48,32,23,.94)!important;border-color:#765936!important;color:#f0dfc0!important;
}
html[data-theme="dark"] #home-results .home-search-record-details p,
body[data-theme="dark"] #home-results .home-search-record-details p,
html.theme-dark #home-results .home-search-record-details p,
body.theme-dark #home-results .home-search-record-details p,
body.dark-mode #home-results .home-search-record-details p,
.dark-mode #home-results .home-search-record-details p{color:#cbb894!important}
html[data-theme="dark"] #home-results .home-search-record-details .record-category,
body[data-theme="dark"] #home-results .home-search-record-details .record-category,
html.theme-dark #home-results .home-search-record-details .record-category,
body.theme-dark #home-results .home-search-record-details .record-category,
body.dark-mode #home-results .home-search-record-details .record-category,
.dark-mode #home-results .home-search-record-details .record-category{color:#d7a66f!important}


/* Ancestor gallery: compact portrait cards with legible life dates. */
#ancestor-grid.ancestor-grid{
  grid-template-columns:repeat(auto-fill,minmax(160px,1fr))!important;
  gap:.75rem!important;align-items:stretch;
}
#ancestor-grid .ancestor-card{min-width:0;max-width:100%;border-radius:4px}
#ancestor-grid .ancestor-card-open .ancestor-portrait{
  width:100%;height:148px!important;aspect-ratio:1/1;object-fit:cover;
}
#ancestor-grid .ancestor-card-open .ancestor-card-body{
  padding:.62rem .7rem .7rem!important;display:flex;flex-direction:column;align-items:flex-start;gap:.18rem;
}
#ancestor-grid .ancestor-card-open .ancestor-card-body h3{
  margin:0!important;font-size:1rem!important;line-height:1.18;overflow-wrap:anywhere;
}
#ancestor-grid .ancestor-card-open .ancestor-source{
  margin:0!important;font-size:.72rem;line-height:1.25;
}
#ancestor-grid .ancestor-card-open .ancestor-life-dates{
  display:block;margin:.2rem 0 .1rem!important;font-size:.73rem!important;line-height:1.35!important;
  font-family:Georgia,serif;font-variant-numeric:oldstyle-nums;overflow-wrap:anywhere;
}
#ancestor-grid .ancestor-card-open .ancestor-life-dates[hidden]{display:none!important}
#ancestor-grid .ancestor-card-open .small-button{
  margin-top:.28rem!important;padding:.32rem .55rem!important;font-size:.68rem;min-height:30px;
}
@media(max-width:760px){
  #ancestor-grid.ancestor-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.6rem!important}
  #ancestor-grid .ancestor-card-open .ancestor-portrait{height:clamp(112px,34vw,150px)!important}
}
@media(max-width:360px){
  #ancestor-grid .ancestor-card-open .ancestor-card-body{padding:.5rem!important}
  #ancestor-grid .ancestor-card-open .ancestor-card-body h3{font-size:.9rem!important}
}
html[data-theme="dark"] #ancestor-grid .ancestor-card-open .ancestor-life-dates,
body[data-theme="dark"] #ancestor-grid .ancestor-card-open .ancestor-life-dates,
html.theme-dark #ancestor-grid .ancestor-card-open .ancestor-life-dates,
body.dark-mode #ancestor-grid .ancestor-card-open .ancestor-life-dates{color:#e1c18b!important}


/* Homepage search: tighten the title-to-panel spacing and separate results with a strong archival red rule. */
.home-search-page #home-search-workspace.home-search-layout{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  gap:.35rem!important;max-width:1120px;margin:0 auto;
}
.home-search-page .home-search-intro{grid-column:1!important;margin:0!important;padding:0!important}
.home-search-page .home-search-intro .eyebrow{margin-bottom:.45rem!important}
.home-search-page .home-search-intro h1{margin:0 0 .25rem!important;line-height:1.02}
.home-search-page .home-search-intro .section-intro{margin:.35rem 0 .25rem!important;max-width:760px}
.home-search-page #home-search-workspace>.home-search-box{
  grid-column:1!important;margin:.25rem 0 .35rem!important;width:100%;
  padding:clamp(1rem,2.2vw,1.5rem)!important;
}
.home-search-page .home-search-divider{
  grid-column:1!important;display:block!important;position:relative;
  width:min(100%,980px);height:15px;margin:1.15rem auto 1.55rem!important;
  border:0!important;background:transparent!important;
}
.home-search-page .home-search-divider::before{
  content:"";position:absolute;left:0;right:0;top:7px;height:2px;
  background:linear-gradient(90deg,transparent 0%,#6f1721 9%,#8f202b 50%,#6f1721 91%,transparent 100%);
  box-shadow:0 1px 0 rgba(48,13,16,.28),0 0 9px rgba(117,24,34,.2);
}
.home-search-page .home-search-divider::after{
  content:"";position:absolute;left:50%;top:1px;transform:translateX(-50%) rotate(45deg);
  width:13px;height:13px;background:#7d1b27;border:2px solid #c7a878;
  box-shadow:0 0 0 3px var(--paper);
}
.home-search-page #home-search-workspace>#home-results{grid-column:1!important;margin-top:.15rem!important}
@media(max-width:700px){
 .home-search-page #home-search-workspace.home-search-layout{gap:.25rem!important}
 .home-search-page .home-search-intro h1{font-size:clamp(2.5rem,12vw,3.8rem)}
 .home-search-page #home-search-workspace>.home-search-box{margin-top:.2rem!important}
 .home-search-page .home-search-divider{margin:.8rem auto 1.1rem!important}
}

/* Keep every saved ancestor visible, including people whose portrait is not attached yet. */
#ancestor-grid .ancestor-card-open{width:100%;height:100%;display:flex;flex-direction:column;align-items:stretch;text-align:left;overflow:hidden}
#ancestor-grid .ancestor-portrait-placeholder{height:148px;display:grid;place-items:center;background:linear-gradient(135deg,#b7a17d,#d8c6a4);color:#493321;border-bottom:1px solid var(--line);font:italic 1rem var(--serif)}
#ancestor-grid .ancestor-card-open:disabled{cursor:default;opacity:1}
#ancestor-grid .ancestor-life-dates{display:block;margin:.3rem 0 0;color:#60452e;font-size:.78rem;line-height:1.4}


/* Homepage search cards without scans use the full text width; no empty thumbnail slot. */
#home-results .home-search-record-card.no-scan{grid-template-columns:minmax(0,1fr)!important}
#home-results .home-search-record-card.no-scan>.home-search-record-details{grid-column:1/-1;min-width:0}
#home-results .home-search-record-card.has-scan{grid-template-columns:112px minmax(0,1fr)}
@media(max-width:760px){
 #home-results .home-search-record-card.has-scan{grid-template-columns:92px minmax(0,1fr)}
 #home-results .home-search-record-card.no-scan{grid-template-columns:minmax(0,1fr)!important}
}


/* Final homepage flow: explicitly pin every section to its own row so older
   desktop grid rules cannot push the heading beneath the search results. */
.home-search-page #home-search-workspace.home-search-layout{
 display:grid!important;grid-template-columns:minmax(0,1fr)!important;
 grid-auto-flow:row!important;grid-auto-rows:auto!important;align-items:start!important;
 row-gap:.25rem!important;
}
.home-search-page #home-search-workspace>.home-search-intro{grid-column:1!important;grid-row:1!important;order:0!important;}
.home-search-page #home-search-workspace>.home-search-box{grid-column:1!important;grid-row:2!important;order:0!important;margin:.12rem 0 .15rem!important;}
.home-search-page #home-search-workspace>.home-search-divider{grid-column:1!important;grid-row:3!important;order:0!important;margin:.55rem auto .85rem!important;}
.home-search-page #home-search-workspace>#home-results{grid-column:1!important;grid-row:4!important;order:0!important;margin:.1rem 0 1rem!important;}
.home-search-page .home-search-intro h1{margin:0!important;line-height:1!important;}
.home-search-page .home-search-intro .section-intro{margin:.2rem 0 .1rem!important;}
#home-results .home-search-record-card{cursor:pointer;}
#home-results .home-search-record-card:focus-visible{outline:2px solid #8f202b;outline-offset:3px;}


/* Footer mirrors the antique header; install control occupies the far-right end. */
html body footer.site-footer{
  position:relative!important;isolation:isolate!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  flex-flow:row nowrap!important;gap:clamp(.75rem,2vw,2rem)!important;
  min-height:82px!important;padding:1rem clamp(1.2rem,5vw,5rem)!important;
  background:linear-gradient(110deg,#4b2925 0%,#60372d 42%,#704638 72%,#59352d 100%)!important;
  background-color:#60372d!important;color:#f7e8c8!important;
  border:0!important;border-top:3px double #c9a765!important;
  box-shadow:inset 0 1px rgba(255,235,190,.18),0 -7px 22px rgba(28,15,10,.2)!important;
}
html body footer.site-footer:after{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent,#e3bd75 20%,#f0d99f 50%,#e3bd75 80%,transparent);
  opacity:.85;animation:footer-glint 8s ease-in-out infinite;
}
html body footer.site-footer .wordmark,
html body footer.site-footer .wordmark strong,
html body footer.site-footer .wordmark small,
html body footer.site-footer p,
html body footer.site-footer .footer-end{color:#f7e8c8!important}
html body footer.site-footer .wordmark strong{
  font-family:"Great Vibes",cursive!important;font-size:2.35rem!important;
  font-weight:400!important;letter-spacing:0!important;line-height:1.05!important;
  text-shadow:0 1px 0 #2b1713,0 0 12px rgba(226,181,103,.18)!important;
}
html body footer.site-footer .wordmark small{
  font-family:Georgia,serif!important;letter-spacing:.13em!important;
  text-transform:uppercase!important;font-size:.62rem!important;
}
html body footer.site-footer .monogram{
  background:#7a3c30!important;color:#fff0d2!important;border:1px solid #d2b06b!important;
  box-shadow:0 0 12px rgba(201,167,101,.18)!important;
}
html body footer.site-footer p{flex:1 1 auto;max-width:430px;margin:0!important;font-size:.78rem!important;opacity:.9}
html body footer.site-footer .footer-end{flex:0 0 auto;font-size:.6rem;letter-spacing:.1em}
html body footer.site-footer .pwa-install-button{
  position:relative!important;inset:auto!important;z-index:1!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 auto!important;order:10!important;min-height:48px!important;min-width:48px!important;
  margin:0 0 0 auto!important;padding:.65rem .9rem!important;
  border:1px solid #b58a50!important;border-radius:14px!important;
  background:linear-gradient(145deg,#54202a 0%,#35151b 58%,#241512 100%)!important;
  color:#e7c58a!important;font:600 .75rem/1.2 Arial,Helvetica,sans-serif!important;
  letter-spacing:.04em!important;text-transform:uppercase!important;
  box-shadow:inset 0 1px rgba(255,235,190,.2),inset 0 -3px 8px rgba(0,0,0,.28),0 3px 12px rgba(54,26,17,.2)!important;
  cursor:pointer!important;
}
html body footer.site-footer .pwa-install-button:hover,
html body footer.site-footer .pwa-install-button:focus-visible{
  background:linear-gradient(145deg,#70402a 0%,#4b1b21 65%,#2c1714 100%)!important;
  color:#ffe0a1!important;border-color:#e0bd79!important;
  box-shadow:0 0 15px rgba(218,174,97,.22)!important;
}
html body footer.site-footer .pwa-install-button[hidden]{display:none!important}
html[data-theme="dark"] body footer.site-footer,
body[data-theme="dark"] footer.site-footer,
html.theme-dark body footer.site-footer,
body.theme-dark footer.site-footer,
body.dark-mode footer.site-footer{
  background:linear-gradient(110deg,#634a38 0%,#59402f 40%,#51382b 72%,#493128 100%)!important;
  background-color:#59402f!important;color:#fff0d2!important;border-top:3px double #d0ab68!important;
  box-shadow:inset 0 1px rgba(231,190,116,.24),0 -7px 22px rgba(0,0,0,.35)!important;
}
html[data-theme="dark"] body footer.site-footer :is(.wordmark,.wordmark strong,.wordmark small,p,.footer-end),
body[data-theme="dark"] footer.site-footer :is(.wordmark,.wordmark strong,.wordmark small,p,.footer-end),
html.theme-dark body footer.site-footer :is(.wordmark,.wordmark strong,.wordmark small,p,.footer-end),
body.theme-dark footer.site-footer :is(.wordmark,.wordmark strong,.wordmark small,p,.footer-end),
body.dark-mode footer.site-footer :is(.wordmark,.wordmark strong,.wordmark small,p,.footer-end){color:#fff0d2!important}
@media(max-width:800px){
  html body footer.site-footer{flex-wrap:wrap!important;align-items:center!important;padding:.8rem 1rem!important;gap:.65rem .8rem!important}
  html body footer.site-footer .wordmark{flex:1 1 auto}
  html body footer.site-footer p{flex:1 1 100%;order:3}
  html body footer.site-footer .footer-end{order:4}
  html body footer.site-footer .pwa-install-button{margin-left:auto!important;order:2!important}
  html body footer.site-footer .wordmark strong{font-size:1.8rem!important}
}
@media(max-width:420px){
  html body footer.site-footer{column-gap:.35rem!important}
  html body footer.site-footer .wordmark strong{font-size:1.5rem!important}
  html body footer.site-footer .wordmark small{font-size:.48rem!important;letter-spacing:.025em!important}
  html body footer.site-footer .pwa-install-button{font-size:.61rem!important;padding:.4rem .42rem!important}
}


/* Homepage desktop composition: heading and search panel sit side by side,
   with enough room for the explanatory copy and every search field. */
@media(min-width:1051px){
  .home-search-page #home-search-workspace.home-search-layout{
    display:grid!important;
    grid-template-columns:minmax(300px,.82fr) minmax(560px,1.38fr)!important;
    grid-template-rows:auto auto auto!important;
    grid-auto-flow:row!important;
    column-gap:clamp(1.1rem,2.2vw,2rem)!important;
    row-gap:.35rem!important;
    align-items:center!important;
    max-width:1320px!important;
  }
  .home-search-page #home-search-workspace>.home-search-intro{
    grid-column:1!important;grid-row:1!important;
    align-self:center!important;min-width:0!important;
    padding:0!important;margin:0!important;
  }
  .home-search-page .home-search-intro h1{
    max-width:100%!important;
    font-size:clamp(2.8rem,4.1vw,4.6rem)!important;
    line-height:1.04!important;overflow-wrap:normal!important;
    text-wrap:balance;
  }
  .home-search-page .home-search-intro .section-intro{
    max-width:36rem!important;
    font-size:clamp(.92rem,1.05vw,1.08rem)!important;
    line-height:1.55!important;margin:.65rem 0 0!important;
  }
  .home-search-page #home-search-workspace>.home-search-box{
    grid-column:2!important;grid-row:1!important;
    align-self:center!important;width:100%!important;min-width:0!important;
    margin:0!important;padding:clamp(1.1rem,1.8vw,1.65rem)!important;
  }
  .home-search-page #home-search-workspace>.home-search-divider{
    grid-column:1/-1!important;grid-row:2!important;
    width:100%!important;margin:.8rem auto 1rem!important;
  }
  .home-search-page #home-search-workspace>#home-results{
    grid-column:1/-1!important;grid-row:3!important;
    margin:.1rem 0 1rem!important;
  }
}
@media(min-width:761px) and (max-width:1050px){
  .home-search-page #home-search-workspace.home-search-layout{
    grid-template-columns:minmax(250px,.8fr) minmax(400px,1.2fr)!important;
    column-gap:1rem!important;
  }
  .home-search-page #home-search-workspace>.home-search-intro{grid-column:1!important;grid-row:1!important}
  .home-search-page #home-search-workspace>.home-search-box{grid-column:2!important;grid-row:1!important}
  .home-search-page #home-search-workspace>.home-search-divider{grid-column:1/-1!important;grid-row:2!important}
  .home-search-page #home-search-workspace>#home-results{grid-column:1/-1!important;grid-row:3!important}
  .home-search-page .home-search-intro h1{font-size:clamp(2.3rem,4vw,3.3rem)!important}
  .home-search-page .home-search-intro .section-intro{font-size:.85rem!important;line-height:1.4!important}
}
@media(max-width:760px){
  .home-search-page #home-search-workspace.home-search-layout{
    grid-template-columns:minmax(0,1fr)!important;row-gap:.4rem!important;
  }
  .home-search-page #home-search-workspace>.home-search-intro{grid-column:1!important;grid-row:1!important}
  .home-search-page #home-search-workspace>.home-search-box{grid-column:1!important;grid-row:2!important}
  .home-search-page #home-search-workspace>.home-search-divider{grid-column:1!important;grid-row:3!important}
  .home-search-page #home-search-workspace>#home-results{grid-column:1!important;grid-row:4!important}
}

/* ChronoSearch dates are plain text, never badges, pills, or boxed metadata. */
.chrono-record-date{
 display:block!important;width:max-content!important;max-width:100%!important;
 margin:.25rem 0 .45rem!important;padding:0!important;
 border:0!important;border-radius:0!important;outline:0!important;
 background:transparent!important;box-shadow:none!important;
 font:italic .88rem/1.35 Georgia,serif!important;letter-spacing:.015em!important;
 color:var(--muted)!important;
}
html[data-theme="dark"] .chrono-record-date,body[data-theme="dark"] .chrono-record-date,
html.theme-dark .chrono-record-date,body.theme-dark .chrono-record-date,
body.dark-mode .chrono-record-date{background:transparent!important;border:0!important;box-shadow:none!important;color:#d8bd8b!important}


/* ChronoSearch: archive-style compact record cards with a larger scan preview */
.chrono-year-column .chrono-record-date{
  display:block!important;position:relative!important;margin:1rem 0 .28rem!important;
  padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;
  color:var(--accent-dark)!important;font-size:.78rem!important;font-weight:700!important;
  line-height:1.35!important;letter-spacing:.025em!important;
}
.chrono-year-column .chrono-record-card{
  display:grid!important;grid-template-columns:minmax(112px,148px) minmax(0,1fr)!important;
  align-items:center!important;gap:.85rem!important;
  width:100%!important;min-height:0!important;margin:0 0 .65rem!important;
  padding:.7rem!important;border:1px solid var(--line)!important;border-radius:3px!important;
  background:rgba(223,208,179,.78)!important;box-shadow:0 3px 8px rgba(45,24,17,.07)!important;
}
.chrono-year-column .chrono-record-card .record-thumbnail{
  grid-column:1!important;grid-row:1!important;
  width:100%!important;max-width:none!important;height:112px!important;aspect-ratio:auto!important;
  margin:0!important;border:1px solid rgba(90,62,42,.22)!important;
  background:rgba(115,83,54,.10)!important;
}
.chrono-year-column .chrono-record-card .record-thumbnail img{
  width:100%!important;height:100%!important;object-fit:contain!important;background:#e9dfcb!important;
}
.chrono-record-details{grid-column:2!important;grid-row:1!important;min-width:0!important}
.chrono-record-details h3{margin:.15rem 0 .3rem!important;font-size:1.05rem!important;line-height:1.2!important;overflow-wrap:anywhere}
.chrono-record-details p{margin:.2rem 0!important;font-size:.75rem!important;line-height:1.35!important}
.chrono-record-details .record-category{margin:0 0 .2rem!important;padding:0!important;border:0!important;background:transparent!important;font-size:.62rem!important}
.chrono-record-details .chrono-record-location{color:var(--accent-dark)!important;font-weight:600!important}
.chrono-record-details .chrono-record-notes{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
html[data-theme="dark"] .chrono-year-column .chrono-record-date,
body[data-theme="dark"] .chrono-year-column .chrono-record-date{background:transparent!important;border:0!important;box-shadow:none!important;color:#d8bd8b!important}
html[data-theme="dark"] .chrono-year-column .chrono-record-card,
body[data-theme="dark"] .chrono-year-column .chrono-record-card{background:#2a1c13!important;color:#ead9b7!important;border-color:#715332!important}
html[data-theme="dark"] .chrono-record-details .chrono-record-location,
body[data-theme="dark"] .chrono-record-details .chrono-record-location{color:#c0a77d!important}
@media(max-width:650px){
  .chrono-year-column .chrono-record-card{grid-template-columns:minmax(92px,34%) minmax(0,1fr)!important;gap:.6rem!important;padding:.58rem!important}
  .chrono-year-column .chrono-record-card .record-thumbnail{height:104px!important}
  .chrono-record-details h3{font-size:.96rem!important}
}


/* Final ChronoSearch card normalization: apply to every card, not only later timeline items */
.chrono-main .chrono-timeline .chrono-year-column article.chrono-record-card.record-card.record-card-expanded{
  display:grid!important;flex:none!important;grid-template-columns:minmax(112px,148px) minmax(0,1fr)!important;
  grid-template-rows:minmax(0,auto)!important;align-items:center!important;justify-content:initial!important;
  gap:.85rem!important;width:100%!important;max-width:none!important;min-width:0!important;
  min-height:0!important;height:auto!important;margin:.0rem 0 .65rem!important;padding:.7rem!important;
  box-sizing:border-box!important;overflow:hidden!important;
}
.chrono-main .chrono-timeline .chrono-year-column article.chrono-record-card .record-thumbnail{
  display:flex!important;position:relative!important;grid-column:1!important;grid-row:1!important;
  flex:none!important;width:100%!important;max-width:none!important;height:112px!important;min-height:112px!important;
  aspect-ratio:auto!important;margin:0!important;padding:0!important;box-sizing:border-box!important;
}
.chrono-main .chrono-timeline .chrono-year-column article.chrono-record-card .record-thumbnail img{
  display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;
}
.chrono-main .chrono-timeline .chrono-year-column article.chrono-record-card .chrono-record-details{
  display:block!important;grid-column:2!important;grid-row:1!important;min-width:0!important;width:auto!important;
}
.chrono-main .chrono-timeline .chrono-year-column .chrono-record-date,
.chrono-main .chrono-timeline .chrono-year-column>div.chrono-record-date{
  display:block!important;position:static!important;width:auto!important;min-height:0!important;
  margin:1rem 0 .3rem!important;padding:0!important;
  border:0!important;border-radius:0!important;outline:0!important;
  background:none!important;background-color:transparent!important;box-shadow:none!important;
  color:var(--accent-dark)!important;font-size:.8rem!important;font-weight:700!important;
  line-height:1.35!important;letter-spacing:.02em!important;
}
.chrono-main .chrono-timeline .chrono-year-column .chrono-record-date:before,
.chrono-main .chrono-timeline .chrono-year-column .chrono-record-date:after{display:none!important;content:none!important}
html[data-theme="dark"] .chrono-main .chrono-timeline .chrono-year-column .chrono-record-date,
body[data-theme="dark"] .chrono-main .chrono-timeline .chrono-year-column .chrono-record-date{background:none!important;background-color:transparent!important;color:#d8bd8b!important}
@media(max-width:650px){
 .chrono-main .chrono-timeline .chrono-year-column article.chrono-record-card.record-card.record-card-expanded{
  grid-template-columns:minmax(92px,34%) minmax(0,1fr)!important;gap:.6rem!important;padding:.58rem!important
 }
 .chrono-main .chrono-timeline .chrono-year-column article.chrono-record-card .record-thumbnail{height:104px!important;min-height:104px!important}
}
.records-list.all-records-view{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:.65rem!important;align-items:stretch;width:100%;margin:.75rem 0 1rem;
}
.records-list.all-records-view .home-search-record-card{
  display:grid!important;grid-template-columns:minmax(76px,96px) minmax(0,1fr)!important;
  align-items:stretch!important;justify-content:stretch!important;gap:.65rem!important;
  min-width:0;min-height:124px;padding:.58rem!important;
  border:1px solid var(--line);border-radius:3px;
  background:rgba(223,208,179,.78);color:var(--ink);
  box-shadow:0 2px 6px rgba(55,35,20,.08);
}
.records-list.all-records-view .home-search-record-card>.record-thumbnail{
  width:100%;height:100%;min-height:108px;max-width:none;aspect-ratio:auto;
  margin:0!important;align-self:stretch;
}
.records-list.all-records-view .home-search-record-card>.record-thumbnail img{
  width:100%;height:100%;object-fit:contain;
}
.records-list.all-records-view .home-search-record-details{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:.18rem}
.records-list.all-records-view .home-search-record-details .record-category{font-size:.58rem;line-height:1.2;overflow-wrap:anywhere}
.records-list.all-records-view .home-search-record-details h3{
  margin:.08rem 0 .12rem;font-size:.92rem;line-height:1.18;overflow-wrap:anywhere;
}
.records-list.all-records-view .home-search-record-details p{margin:.08rem 0;font-size:.68rem;line-height:1.25;color:var(--muted);overflow-wrap:anywhere}
.records-list.all-records-view .home-search-record-details .record-view-button{
  margin:.12rem 0 .18rem;padding:.34rem .55rem;font-size:.66rem;min-height:30px;
}
@media(max-width:1050px){
  .records-list.all-records-view{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  .records-list.all-records-view{grid-template-columns:1fr!important;gap:.55rem!important}
  .records-list.all-records-view .home-search-record-card{grid-template-columns:92px minmax(0,1fr)!important;min-height:112px;padding:.5rem!important}
  .records-list.all-records-view .home-search-record-card>.record-thumbnail{min-height:96px}
}
html[data-theme="dark"] .records-list.all-records-view .home-search-record-card,
body[data-theme="dark"] .records-list.all-records-view .home-search-record-card,
html.theme-dark .records-list.all-records-view .home-search-record-card,
body.theme-dark .records-list.all-records-view .home-search-record-card,
body.dark-mode .records-list.all-records-view .home-search-record-card,
.dark-mode .records-list.all-records-view .home-search-record-card{
  background:rgba(48,32,23,.94)!important;border-color:#765936!important;color:#f0dfc0!important;
}
html[data-theme="dark"] .records-list.all-records-view .home-search-record-details p,
body[data-theme="dark"] .records-list.all-records-view .home-search-record-details p,
html.theme-dark .records-list.all-records-view .home-search-record-details p,
body.theme-dark .records-list.all-records-view .home-search-record-details p,
body.dark-mode .records-list.all-records-view .home-search-record-details p,
.dark-mode .records-list.all-records-view .home-search-record-details p{color:#cbb894!important}
html[data-theme="dark"] .records-list.all-records-view .home-search-record-details .record-category,
body[data-theme="dark"] .records-list.all-records-view .home-search-record-details .record-category,
html.theme-dark .records-list.all-records-view .home-search-record-details .record-category,
body.theme-dark .records-list.all-records-view .home-search-record-details .record-category,
body.dark-mode .records-list.all-records-view .home-search-record-details .record-category,
.dark-mode .records-list.all-records-view .home-search-record-details .record-category{color:#d7a66f!important}



/* The homepage layout is used only by the Archive's All records view. */
#private-archive .records-list.all-records-view{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.65rem!important;align-items:stretch}
#private-archive .records-list.all-records-view .home-search-record-card.no-scan{grid-template-columns:minmax(0,1fr)!important}
#private-archive .records-list.all-records-view .home-search-record-card.no-scan>.home-search-record-details{grid-column:1/-1}
#private-archive .records-list.all-records-view .home-search-record-card>.record-actions{grid-column:1/-1;display:flex;gap:.4rem;flex-wrap:wrap}
@media(max-width:1050px){#private-archive .records-list.all-records-view{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){#private-archive .records-list.all-records-view{grid-template-columns:1fr!important}}


/* ChronoSearch final override: each dated record gets an unboxed full-date label
   and every card uses the same compact horizontal layout from the first column. */
.chrono-main #chrono-timeline .chrono-year-column>.chrono-record-date{
  display:block!important;float:none!important;position:static!important;
  width:auto!important;height:auto!important;min-height:0!important;
  margin:.9rem 0 .28rem!important;padding:0!important;
  border:0!important;border-width:0!important;border-radius:0!important;
  outline:0!important;background:transparent!important;background-image:none!important;
  box-shadow:none!important;text-shadow:none!important;
  color:#65472f!important;font:700 .8rem/1.35 Georgia,serif!important;
}
.chrono-main #chrono-timeline .chrono-year-column>.chrono-record-date:before,
.chrono-main #chrono-timeline .chrono-year-column>.chrono-record-date:after{
  content:none!important;display:none!important;border:0!important;background:none!important;box-shadow:none!important;
}
.chrono-main #chrono-timeline .chrono-year-column>article.chrono-record-card{
  display:grid!important;grid-template-columns:minmax(112px,148px) minmax(0,1fr)!important;
  grid-template-rows:auto!important;align-items:center!important;justify-content:stretch!important;
  width:100%!important;min-width:0!important;max-width:none!important;
  height:auto!important;min-height:0!important;max-height:none!important;
  margin:0 0 .65rem!important;padding:.7rem!important;gap:.85rem!important;
  box-sizing:border-box!important;overflow:hidden!important;
}
.chrono-main #chrono-timeline .chrono-year-column>article.chrono-record-card>.record-thumbnail{
  display:flex!important;grid-column:1!important;grid-row:1!important;
  width:100%!important;height:112px!important;min-height:112px!important;max-height:112px!important;
  margin:0!important;aspect-ratio:auto!important;flex:none!important;
}
.chrono-main #chrono-timeline .chrono-year-column>article.chrono-record-card>.record-thumbnail img{
  display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;
}
.chrono-main #chrono-timeline .chrono-year-column>article.chrono-record-card>.chrono-record-details{
  display:block!important;grid-column:2!important;grid-row:1!important;min-width:0!important;
}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-year-column>.chrono-record-date,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-year-column>.chrono-record-date{
  color:#d8bd8b!important;background:transparent!important;border:0!important;box-shadow:none!important;
}
@media(max-width:650px){
 .chrono-main #chrono-timeline .chrono-year-column>article.chrono-record-card{grid-template-columns:minmax(92px,34%) minmax(0,1fr)!important;gap:.6rem!important;padding:.58rem!important}
 .chrono-main #chrono-timeline .chrono-year-column>article.chrono-record-card>.record-thumbnail{height:104px!important;min-height:104px!important;max-height:104px!important}
}


/* ChronoSearch search header now mirrors the homepage search composition. */
@media(min-width:761px){
  .chrono-main .chrono-search-layout{
    display:grid!important;
    grid-template-columns:minmax(280px,.82fr) minmax(420px,1.38fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:clamp(1.1rem,2.2vw,2rem)!important;
    row-gap:.35rem!important;
    align-items:center!important;
    max-width:1320px!important;
    margin:0 auto 1rem!important;
  }
  .chrono-main .chrono-search-intro{
    grid-column:1!important;grid-row:1!important;
    align-self:center!important;min-width:0!important;
    padding:0!important;margin:0!important;
  }
  .chrono-main .chrono-search-intro h1{
    max-width:100%!important;
    margin:0!important;
    font-size:clamp(2.8rem,4.1vw,4.6rem)!important;
    line-height:1.04!important;letter-spacing:-.045em!important;
    text-wrap:balance;
  }
  .chrono-main .chrono-search-intro .section-intro{
    max-width:36rem!important;
    font-size:clamp(.92rem,1.05vw,1.08rem)!important;
    line-height:1.55!important;margin:.65rem 0 0!important;
  }
  .chrono-main .chrono-search-intro .chrono-ornament{margin:.6rem 0!important;max-width:260px}
  .chrono-main .chrono-filter-panel{
    grid-column:2!important;grid-row:1!important;
    align-self:center!important;width:100%!important;min-width:0!important;
    margin:0!important;padding:clamp(1.1rem,1.8vw,1.65rem)!important;
    border:1px solid var(--line)!important;
    background:var(--paper-light)!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .chrono-main .chrono-filter-grid{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:1rem!important;
  }
  .chrono-main .chrono-filter-grid label{
    display:block!important;margin-bottom:.4rem!important;
    color:var(--accent-dark)!important;font-size:.78rem!important;font-weight:700!important;
  }
  .chrono-main .chrono-filter-grid input,
  .chrono-main .chrono-filter-grid select{
    width:100%!important;min-height:48px!important;padding:.7rem .8rem!important;
    border:1px solid var(--line)!important;border-radius:0!important;
    background:#e6d8bd!important;color:var(--ink)!important;font:inherit!important;
  }
}
.chrono-main .chrono-filter-panel{
  border:1px solid var(--line);
  background:var(--paper-light);
  border-radius:0;
  box-shadow:none;
}
.chrono-main .chrono-filter-footer{
  display:flex;align-items:center;justify-content:space-between;gap:.8rem;
  margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--line);
}
.chrono-main .chrono-filter-footer .connection-status{margin:0}
@media(max-width:760px){
  .chrono-main .chrono-search-layout{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    gap:.4rem!important;margin-bottom:.8rem!important;
  }
  .chrono-main .chrono-search-intro{grid-column:1!important;grid-row:1!important}
  .chrono-main .chrono-search-intro h1{font-size:clamp(2.5rem,9vw,3.5rem)!important}
  .chrono-main .chrono-filter-panel{
    grid-column:1!important;grid-row:2!important;
    width:100%!important;margin:.5rem 0 0!important;padding:1.1rem!important;
    border:1px solid var(--line)!important;background:var(--paper-light)!important;
  }
}
html[data-theme="dark"] .chrono-main .chrono-filter-panel,
body[data-theme="dark"] .chrono-main .chrono-filter-panel{
  background:linear-gradient(145deg,#302016,#241710)!important;
  border-color:#765936!important;
}
html[data-theme="dark"] .chrono-main .chrono-filter-grid label,
body[data-theme="dark"] .chrono-main .chrono-filter-grid label{color:#ead9b7!important}
html[data-theme="dark"] .chrono-main .chrono-filter-grid input,
html[data-theme="dark"] .chrono-main .chrono-filter-grid select,
body[data-theme="dark"] .chrono-main .chrono-filter-grid input,
body[data-theme="dark"] .chrono-main .chrono-filter-grid select{
  background:#38271b!important;color:#f0dfc0!important;border-color:#765936!important;
}


/* SITE-WIDE AGED ARCHIVAL PAPER FINISH
   Subtle fibers, foxing, uneven parchment tone and worn edges.
   Texture stays behind content and never intercepts interaction. */
:root{
  --paper-light:#f0e3c9;
  --paper:#e5d2ae;
  --paper-dark:#cbb28b;
  --line:#a98b68;
}
html,body{
  background-color:#d8c39e!important;
  background-image:
    radial-gradient(ellipse at 13% 8%,rgba(255,249,226,.58),transparent 38%),
    radial-gradient(ellipse at 88% 24%,rgba(133,88,48,.13),transparent 42%),
    radial-gradient(ellipse at 48% 92%,rgba(112,72,39,.12),transparent 48%),
    linear-gradient(112deg,rgba(255,255,255,.12),transparent 28%,rgba(105,68,38,.07) 78%,transparent)!important;
  background-attachment:fixed!important;
}
body{position:relative;isolation:isolate}
body:before{
  content:"";position:fixed;inset:0;z-index:9000;pointer-events:none;
  opacity:.22;mix-blend-mode:multiply;
  background-image:
    radial-gradient(ellipse at 7% 16%,rgba(117,70,34,.22) 0 1px,transparent 2px),
    radial-gradient(ellipse at 83% 37%,rgba(126,79,39,.18) 0 1px,transparent 2.4px),
    radial-gradient(ellipse at 31% 78%,rgba(117,70,34,.16) 0 1px,transparent 2px),
    radial-gradient(ellipse at 94% 88%,rgba(139,91,45,.15) 0 1.2px,transparent 2.8px),
    repeating-linear-gradient(2deg,rgba(104,74,42,.035) 0 1px,transparent 1px 4px),
    repeating-linear-gradient(91deg,rgba(255,255,255,.11) 0 1px,transparent 1px 5px),
    radial-gradient(ellipse at center,transparent 54%,rgba(92,57,29,.12) 100%);
  background-size:137px 113px,181px 157px,211px 173px,163px 197px,auto,auto,100% 100%;
}
body:after{
  content:"";position:fixed;inset:0;z-index:8999;pointer-events:none;
  opacity:.24;
  background:
    radial-gradient(ellipse at 0% 0%,rgba(111,68,35,.17),transparent 23%),
    radial-gradient(ellipse at 100% 0%,rgba(111,68,35,.13),transparent 22%),
    radial-gradient(ellipse at 0% 100%,rgba(111,68,35,.16),transparent 25%),
    radial-gradient(ellipse at 100% 100%,rgba(111,68,35,.18),transparent 24%);
}
main,.archive-page,.home-search-page,.ancestor-page{
  background-color:transparent;
}
:is(.home-search-box,.chrono-filter-panel,.location-sidebar,.map-panel,
.location-records-panel,.archive-folder-content,.archive-folder,
.record-card,.home-search-record-card,.ancestor-card,.activity-log-item,
.inbox-item,.modal-content,.dialog-content,.settings-panel,.search-panel){
  background-image:
    radial-gradient(ellipse at 12% 8%,rgba(255,250,231,.28),transparent 58%),
    repeating-linear-gradient(0deg,rgba(118,82,45,.018) 0 1px,transparent 1px 4px);
}
:is(.home-search-box,.chrono-filter-panel,.location-sidebar,.map-panel,
.location-records-panel,.archive-folder-content,.record-card,
.home-search-record-card,.ancestor-card){
  box-shadow:inset 0 1px rgba(255,250,229,.38),0 2px 8px rgba(67,43,25,.07);
}
.archive-folder-content,.home-search-box,.chrono-filter-panel{
  border-color:rgba(125,91,57,.58)!important;
}
.record-thumbnail,.record-preview,.face-crop-canvas-wrap{
  background-color:#d8c5a2;
}
.record-thumbnail img,.record-preview img{
  /* Preserve original archival scans without tinting or texture overlays. */
  filter:none!important;
}
html[data-theme="dark"],body[data-theme="dark"],html.theme-dark,body.theme-dark,body.dark-mode{
  background-color:#241910!important;
  background-image:
    radial-gradient(ellipse at 14% 12%,rgba(157,111,57,.12),transparent 38%),
    radial-gradient(ellipse at 88% 32%,rgba(91,43,28,.18),transparent 44%),
    radial-gradient(ellipse at 50% 100%,rgba(12,8,5,.45),transparent 58%),
    linear-gradient(115deg,rgba(197,151,82,.035),transparent 48%,rgba(0,0,0,.16))!important;
}
html[data-theme="dark"] body:before,body[data-theme="dark"]:before,
html.theme-dark body:before,body.theme-dark:before,body.dark-mode:before{
  opacity:.18;mix-blend-mode:screen;
  background-image:
    radial-gradient(ellipse at 7% 16%,rgba(221,177,111,.12) 0 1px,transparent 2px),
    radial-gradient(ellipse at 83% 37%,rgba(190,133,71,.12) 0 1px,transparent 2.4px),
    radial-gradient(ellipse at 31% 78%,rgba(221,177,111,.10) 0 1px,transparent 2px),
    repeating-linear-gradient(2deg,rgba(224,185,123,.025) 0 1px,transparent 1px 4px),
    repeating-linear-gradient(91deg,rgba(255,225,172,.035) 0 1px,transparent 1px 5px);
  background-size:137px 113px,181px 157px,211px 173px,auto,auto;
}
html[data-theme="dark"] body:after,body[data-theme="dark"]:after,
html.theme-dark body:after,body.theme-dark:after,body.dark-mode:after{
  opacity:.3;
  background:
    radial-gradient(ellipse at 0% 0%,rgba(0,0,0,.38),transparent 25%),
    radial-gradient(ellipse at 100% 0%,rgba(0,0,0,.32),transparent 24%),
    radial-gradient(ellipse at 0% 100%,rgba(0,0,0,.4),transparent 26%),
    radial-gradient(ellipse at 100% 100%,rgba(0,0,0,.4),transparent 25%);
}
html[data-theme="dark"] :is(.home-search-box,.chrono-filter-panel,.location-sidebar,
.map-panel,.location-records-panel,.archive-folder-content,.record-card,
.home-search-record-card,.ancestor-card),
body[data-theme="dark"] :is(.home-search-box,.chrono-filter-panel,.location-sidebar,
.map-panel,.location-records-panel,.archive-folder-content,.record-card,
.home-search-record-card,.ancestor-card){
  background-image:
    radial-gradient(ellipse at 12% 8%,rgba(208,166,103,.055),transparent 58%),
    repeating-linear-gradient(0deg,rgba(226,190,133,.018) 0 1px,transparent 1px 4px);
  box-shadow:inset 0 1px rgba(255,220,164,.06),0 3px 10px rgba(0,0,0,.18);
}
@media(prefers-reduced-motion:reduce){
  body:before,body:after{scroll-behavior:auto}
}


/* Match the footer wordmark to the header lockup: title and descriptor on one line,
   and give the header seal the same antique-brass finish as the footer seal. */
html body footer.site-footer .footer-mark .wordmark-title{
  display:flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  gap:.65rem!important;
  white-space:nowrap!important;
}
html body footer.site-footer .footer-mark .wordmark-title strong{
  display:inline!important;
  margin:0!important;
}
html body footer.site-footer .footer-mark .wordmark-title small{
  display:inline!important;
  white-space:nowrap!important;
}
html body header.site-header .wordmark .monogram{
  color:#fff4df!important;
  background:#70472f!important;
  border:1px solid #b99a69!important;
  box-shadow:inset 0 1px rgba(255,239,201,.18),0 2px 8px rgba(48,28,18,.2)!important;
}
html body header.site-header .wordmark:hover .monogram{
  color:#fff4df!important;
}
@media(max-width:800px){
  html body footer.site-footer .footer-mark .wordmark-title{gap:.4rem!important}
}
@media(max-width:420px){
  html body footer.site-footer .footer-mark .wordmark-title{gap:.28rem!important}
}


/* Ancestor cards restored to the original portrait-first gallery format. */
#ancestor-grid .ancestor-card-open{width:100%;height:100%;display:flex;flex-direction:column;align-items:stretch;text-align:left;overflow:hidden}
#ancestor-grid .ancestor-card-open .ancestor-portrait{width:100%;height:clamp(170px,20vw,230px);min-height:0;max-height:none;aspect-ratio:auto;object-fit:cover}
#ancestor-grid .ancestor-card-open .ancestor-portrait-placeholder{height:clamp(170px,20vw,230px);display:grid;place-items:center;background:linear-gradient(135deg,#b7a17d,#d8c6a4);color:#493321;border-bottom:1px solid var(--line);font:italic 1rem Georgia,serif}
#ancestor-grid .ancestor-card-open .ancestor-card-body{display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:100%;padding:15px 8px 8px!important}
#ancestor-grid .ancestor-card-open .ancestor-card-body h3{margin:0!important;font:1.3rem/1.2 Georgia,serif;overflow-wrap:anywhere}
#ancestor-grid .ancestor-card-open .ancestor-source{margin:0!important;font-size:.82rem;opacity:.82}
#ancestor-grid .ancestor-card-open .ancestor-life-dates{display:block;margin:3px 0 2px!important;color:#68452e;font-size:.84rem;line-height:1.5;font-family:Georgia,serif;overflow-wrap:anywhere}
#ancestor-grid .ancestor-card-open .ancestor-life-dates[hidden]{display:none!important}
#ancestor-grid .ancestor-card-open .small-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;margin-top:7px;padding:.45rem .8rem;border:1px solid #9b7445;border-radius:3px;background:rgba(255,248,229,.55);color:#4b3021}
#ancestor-grid .ancestor-card-open:focus-visible{outline:2px solid #b58a50;outline-offset:3px}
html[data-theme="dark"] #ancestor-grid .ancestor-card-open .ancestor-life-dates,body[data-theme="dark"] #ancestor-grid .ancestor-card-open .ancestor-life-dates{color:#e1c18b}
html[data-theme="dark"] #ancestor-grid .ancestor-card-open .small-button,body[data-theme="dark"] #ancestor-grid .ancestor-card-open .small-button{background:#3b281e;color:#f0dfbf;border-color:#927044}
.ancestor-profile-viewer{width:min(900px,calc(100vw - 2rem));max-height:90vh;overflow:auto}
.ancestor-profile-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:1rem 0 1.25rem}
.ancestor-profile-fact{min-width:0;padding:.65rem .75rem;border:1px solid var(--line);background:rgba(135,99,54,.07)}
.ancestor-profile-fact h4{margin:0 0 .25rem;font:600 .73rem Georgia,serif;letter-spacing:.1em;text-transform:uppercase;color:var(--accent,#80552f)}
.ancestor-profile-fact p{margin:0;font-size:.9rem;line-height:1.45;overflow-wrap:anywhere}
.ancestor-profile-gallery{border-top:1px solid var(--line);padding-top:.8rem}
.ancestor-profile-gallery>h3{margin:.1rem 0 .8rem;font:1.15rem Georgia,serif}
.ancestor-gallery-empty{padding:1rem;border:1px dashed var(--line);text-align:center;color:var(--muted)}
.ancestor-profile-viewer .ancestor-viewer-stage[hidden],.ancestor-profile-viewer .ancestor-viewer-actions[hidden]{display:none!important}
html[data-theme="dark"] .ancestor-profile-fact,body[data-theme="dark"] .ancestor-profile-fact{background:rgba(195,154,92,.08);border-color:#705333}
@media(max-width:560px){#ancestor-grid .ancestor-card-open .ancestor-portrait,#ancestor-grid .ancestor-card-open .ancestor-portrait-placeholder{height:150px}.ancestor-profile-facts{grid-template-columns:1fr;gap:.45rem}.ancestor-profile-viewer{padding:1rem!important}}


/* Ancestor profile dialog: family details left, photo controls/gallery right. */
.ancestor-profile-viewer{width:min(1040px,calc(100vw - 2rem))!important;max-height:90vh!important;padding:clamp(1.1rem,2.4vw,2rem)!important;overflow:auto!important}
.ancestor-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(1rem,2.5vw,2rem);align-items:start}
.ancestor-profile-info{min-width:0;padding:0 .25rem 0 0}
.ancestor-profile-info .eyebrow{margin:.2rem 0 .45rem}
.ancestor-profile-info .ancestor-viewer-name{margin:0 0 1rem;font:clamp(1.65rem,3vw,2.25rem)/1.15 Georgia,serif;overflow-wrap:anywhere}
.ancestor-profile-facts{grid-template-columns:minmax(0,1fr)!important;gap:.55rem!important;margin:.5rem 0!important}
.ancestor-profile-fact{padding:.7rem .8rem!important;border-radius:3px}
.ancestor-profile-gallery{min-width:0;border-top:0!important;border-left:1px solid var(--line);padding:.2rem 0 .2rem clamp(1rem,2vw,1.5rem)!important}
.ancestor-profile-gallery>h3{margin:0 0 .8rem!important;font:1.2rem Georgia,serif}
.ancestor-profile-gallery .ancestor-viewer-stage{grid-template-columns:36px minmax(0,1fr) 36px;gap:.45rem;margin:.4rem 0 .6rem}
.ancestor-profile-gallery .ancestor-viewer-image{width:100%;max-width:100%;height:clamp(220px,48vh,440px);max-height:48vh;object-fit:contain}
.ancestor-profile-gallery .ancestor-face-position,.ancestor-profile-gallery .ancestor-face-source{font-size:.8rem;line-height:1.4}
.ancestor-profile-gallery .ancestor-viewer-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
.ancestor-profile-gallery .ancestor-set-thumbnail{margin:.35rem 0!important}
.ancestor-profile-gallery .ancestor-face-thumbnails{max-width:100%}
.ancestor-profile-gallery .ancestor-gallery-empty{margin:.5rem 0;padding:1.25rem}
@media(max-width:700px){
 .ancestor-profile-layout{grid-template-columns:minmax(0,1fr);gap:1rem}
 .ancestor-profile-gallery{border-left:0!important;border-top:1px solid var(--line)!important;padding:1rem 0 0!important}
 .ancestor-profile-gallery .ancestor-viewer-image{height:clamp(190px,42vh,340px);max-height:42vh}
 .ancestor-profile-facts{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:440px){.ancestor-profile-facts{grid-template-columns:minmax(0,1fr)!important}.ancestor-profile-viewer{padding:1rem!important}}

/* ChronoSearch formatting reset: the timeline is a sequence of year columns;
   every record is a centered date marker above its own compact archive card. */
.chrono-main #chrono-timeline.chrono-timeline{
 display:flex!important;flex-direction:row!important;align-items:flex-start!important;
 gap:1rem!important;min-height:0!important;height:auto!important;padding:2.8rem .25rem 1.2rem!important;
 overflow-x:auto!important;overflow-y:visible!important;scroll-snap-type:x proximity;
}
.chrono-main #chrono-timeline>.chrono-year-column{
 display:flex!important;flex:0 0 clamp(250px,27vw,340px)!important;flex-direction:column!important;
 align-items:stretch!important;position:relative!important;min-width:0!important;max-width:340px!important;
 min-height:0!important;height:auto!important;margin:0!important;padding:1.65rem .25rem .25rem!important;
 border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
 scroll-snap-align:start;overflow:visible!important;
}
.chrono-main #chrono-timeline>.chrono-year-column:before{
 content:attr(data-year)!important;display:block!important;position:absolute!important;z-index:3!important;
 top:-2.35rem!important;left:50%!important;transform:translateX(-50%)!important;
 min-width:3.5rem!important;padding:.22rem .65rem!important;border:1px solid #987448!important;
 border-radius:999px!important;background:var(--paper-light,#f0e3c9)!important;color:#65472f!important;
 text-align:center!important;font:700 .86rem/1.35 Georgia,serif!important;letter-spacing:.04em!important;
 box-shadow:0 0 0 4px var(--paper,#e5d2ae)!important;
}
.chrono-main #chrono-timeline>.chrono-year-column:after{
 content:""!important;position:absolute!important;z-index:1!important;top:-1.55rem!important;
 left:50%!important;width:calc(100% + 1rem)!important;height:1px!important;
 background:#987448!important;pointer-events:none!important;
}
.chrono-main #chrono-timeline>.chrono-year-column:last-child:after{width:0!important}
.chrono-main #chrono-timeline .chrono-event{
 display:flex!important;flex-direction:column!important;align-items:stretch!important;
 width:100%!important;min-width:0!important;margin:0 0 1.1rem!important;position:relative!important;
}
.chrono-main #chrono-timeline .chrono-event>.chrono-record-date{
 display:block!important;position:relative!important;width:100%!important;max-width:none!important;
 box-sizing:border-box!important;text-align:center!important;margin:0 0 .7rem!important;
 padding:0 0 .85rem!important;border:0!important;border-radius:0!important;
 background:transparent!important;box-shadow:none!important;color:#65472f!important;
 font:700 .82rem/1.4 Georgia,serif!important;letter-spacing:.015em!important;
}
.chrono-main #chrono-timeline .chrono-event>.chrono-record-date:before{
 content:""!important;display:block!important;position:absolute!important;z-index:2!important;
 left:50%!important;bottom:.05rem!important;transform:translateX(-50%)!important;
 width:.5rem!important;height:.5rem!important;border:1px solid #76532f!important;
 border-radius:50%!important;background:#c6a36b!important;
 box-shadow:0 0 0 3px var(--paper,#e5d2ae)!important;
}
.chrono-main #chrono-timeline .chrono-event>.chrono-record-date:after{
 content:""!important;display:block!important;position:absolute!important;z-index:1!important;
 left:50%!important;bottom:-.42rem!important;transform:translateX(-50%)!important;
 width:1px!important;height:.48rem!important;background:#987448!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card{
 display:grid!important;grid-template-columns:minmax(88px,34%) minmax(0,1fr)!important;
 grid-template-rows:auto!important;align-items:center!important;gap:.65rem!important;
 width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;
 min-height:0!important;max-height:none!important;margin:0!important;padding:.65rem!important;
 box-sizing:border-box!important;overflow:hidden!important;border:1px solid var(--line)!important;
 border-radius:4px!important;background:rgba(223,208,179,.78)!important;
 box-shadow:0 3px 8px rgba(45,24,17,.08)!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail{
 display:flex!important;grid-column:1!important;grid-row:1!important;width:100%!important;
 height:108px!important;min-height:108px!important;max-height:108px!important;margin:0!important;
 aspect-ratio:auto!important;overflow:hidden!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail img{
 display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.chrono-record-details{
 display:block!important;grid-column:2!important;grid-row:1!important;min-width:0!important;width:auto!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details h3{margin:.15rem 0 .3rem!important;font-size:.98rem!important;line-height:1.2!important;overflow-wrap:anywhere}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details p{margin:.18rem 0!important;font-size:.74rem!important;line-height:1.35!important;overflow-wrap:anywhere}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details .chrono-record-notes{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
html[data-theme="dark"] .chrono-main #chrono-timeline>.chrono-year-column:before,body[data-theme="dark"] .chrono-main #chrono-timeline>.chrono-year-column:before{background:#382719!important;color:#e0c18e!important;border-color:#c39a5c!important;box-shadow:0 0 0 4px #241912!important}
html[data-theme="dark"] .chrono-main #chrono-timeline>.chrono-year-column:after,body[data-theme="dark"] .chrono-main #chrono-timeline>.chrono-year-column:after{background:#c39a5c!important}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-record-date{color:#e0c18e!important}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-record-date:before{background:#c39a5c!important;border-color:#e0c18e!important;box-shadow:0 0 0 3px #241912!important}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-record-date:after{background:#c39a5c!important}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>article.chrono-record-card,body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>article.chrono-record-card{background:#2a1c13!important;color:#ead9b7!important;border-color:#715332!important}
@media(max-width:650px){
 .chrono-main #chrono-timeline.chrono-timeline{gap:.7rem!important;padding-top:2.65rem!important}
 .chrono-main #chrono-timeline>.chrono-year-column{flex-basis:min(84vw,330px)!important;padding-top:1.4rem!important}
 .chrono-main #chrono-timeline .chrono-event>article.chrono-record-card{grid-template-columns:minmax(76px,32%) minmax(0,1fr)!important;gap:.55rem!important;padding:.55rem!important}
 .chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail{height:94px!important;min-height:94px!important;max-height:94px!important}
}


/* Site-wide typography: use the same IM Fell English face as the page titles. */
html body,html body *:not(svg):not(svg *){
 font-family:'IM Fell English',Georgia,'Times New Roman',serif!important;
}


/* Ancestors intro: keep the heading on the left and move its description to the right. */
html body main.ancestor-page>.section-intro{
 display:grid!important;
 grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr)!important;
 grid-template-rows:auto auto auto!important;
 column-gap:clamp(1.5rem,4vw,4rem)!important;
 row-gap:.35rem!important;
 align-items:center!important;
}
html body main.ancestor-page>.section-intro>.eyebrow{
 grid-column:1/-1!important;grid-row:1!important;margin:0 0 .25rem!important;
}
html body main.ancestor-page>.section-intro>h1{
 grid-column:1!important;grid-row:2!important;align-self:center!important;
 margin:0!important;
}
html body main.ancestor-page>.section-intro>p:not(.connection-status){
 grid-column:2!important;grid-row:2!important;align-self:center!important;
 max-width:58ch!important;margin:0!important;font-size:1.04rem!important;line-height:1.55!important;
}
html body main.ancestor-page>.section-intro>.connection-status{
 grid-column:1/-1!important;grid-row:3!important;margin:.6rem 0 0!important;
}
@media(max-width:700px){
 html body main.ancestor-page>.section-intro{
  grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important;
  row-gap:.45rem!important;
 }
 html body main.ancestor-page>.section-intro>.eyebrow,
 html body main.ancestor-page>.section-intro>h1,
 html body main.ancestor-page>.section-intro>p:not(.connection-status),
 html body main.ancestor-page>.section-intro>.connection-status{
  grid-column:1!important;grid-row:auto!important;
 }
 html body main.ancestor-page>.section-intro>p:not(.connection-status){margin:.2rem 0!important}
}


/* ChronoSearch record cards: richer source summaries without exposing scan annotation geometry. */
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card{
 min-height:184px!important;align-items:stretch!important;grid-template-columns:minmax(104px,34%) minmax(0,1fr)!important;
 gap:.85rem!important;padding:.8rem!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail{
 height:100%!important;min-height:148px!important;max-height:220px!important;align-self:stretch!important;
 background:rgba(111,78,43,.09)!important;border:1px solid rgba(139,118,88,.55)!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details{
 display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:.22rem!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details .record-category{
 font-size:.66rem!important;line-height:1.3!important;letter-spacing:.09em!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details h3{
 margin:.1rem 0 .25rem!important;font-size:1.08rem!important;line-height:1.22!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details p{
 margin:.12rem 0!important;font-size:.79rem!important;line-height:1.4!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details .chrono-record-notes{
 display:-webkit-box!important;-webkit-line-clamp:4!important;-webkit-box-orient:vertical!important;
 overflow:hidden!important;white-space:pre-line!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details .chrono-record-people{
 color:var(--accent)!important;font-weight:600!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details .chrono-record-source{
 display:block!important;max-width:100%!important;margin-top:.2rem!important;padding-top:.28rem!important;
 border-top:1px solid rgba(139,118,88,.45)!important;color:var(--muted)!important;
 font-size:.67rem!important;line-height:1.3!important;overflow-wrap:anywhere!important;
}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-record-details .chrono-record-people,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-record-details .chrono-record-people{color:#d9b779!important}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-record-details .chrono-record-source,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-record-details .chrono-record-source{border-color:#715332!important;color:#c5b08d!important}
@media(max-width:650px){
 .chrono-main #chrono-timeline .chrono-event>article.chrono-record-card{min-height:166px!important;gap:.6rem!important;padding:.62rem!important}
 .chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail{min-height:132px!important}
 .chrono-main #chrono-timeline .chrono-event .chrono-record-details h3{font-size:.98rem!important}
 .chrono-main #chrono-timeline .chrono-event .chrono-record-details p{font-size:.73rem!important}
}


/* ChronoSearch final card layout: equal card heights and clearly grouped record facts. */
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card{
 display:grid!important;grid-template-columns:minmax(104px,31%) minmax(0,1fr)!important;
 align-items:stretch!important;gap:.8rem!important;width:100%!important;
 height:360px!important;min-height:360px!important;max-height:360px!important;
 padding:.8rem!important;overflow:hidden!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card.chrono-no-thumbnail{
 grid-template-columns:minmax(0,1fr)!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail{
 grid-column:1!important;grid-row:1!important;width:100%!important;height:100%!important;
 min-height:0!important;max-height:none!important;align-self:stretch!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.chrono-card-info{
 grid-column:2!important;grid-row:1!important;min-width:0!important;min-height:0!important;overflow:hidden!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card.chrono-no-thumbnail>.chrono-card-info{
 grid-column:1!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details{
 display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:.38rem!important;
 width:100%!important;height:100%!important;min-width:0!important;overflow:hidden!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details>.record-category{
 font-size:.63rem!important;line-height:1.25!important;letter-spacing:.08em!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details>h3{
 margin:0!important;font-size:1.02rem!important;line-height:1.2!important;overflow-wrap:anywhere!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-facts-grid,
.chrono-main #chrono-timeline .chrono-event .chrono-family-grid{
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.35rem!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-info-box{
 min-width:0!important;padding:.36rem .48rem!important;border:1px solid rgba(139,118,88,.55)!important;
 border-radius:3px!important;background:rgba(135,99,54,.075)!important;overflow:hidden!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-info-label{
 display:block!important;margin:0 0 .1rem!important;color:var(--muted)!important;
 font-size:.59rem!important;line-height:1.2!important;letter-spacing:.06em!important;text-transform:uppercase!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-info-value{
 display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;
 margin:0!important;overflow:hidden!important;font-size:.72rem!important;line-height:1.25!important;
 overflow-wrap:anywhere!important;white-space:pre-line!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-family-panel{
 display:grid!important;gap:.35rem!important;padding:.42rem!important;
 border:1px solid var(--line)!important;border-radius:3px!important;background:rgba(135,99,54,.045)!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-panel-title,
.chrono-main #chrono-timeline .chrono-event .chrono-subpanel-title{
 margin:0!important;font-size:.68rem!important;line-height:1.2!important;color:var(--accent)!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-grandparents{
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.4rem!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-family-group{display:grid!important;gap:.25rem!important;min-width:0!important}
.chrono-main #chrono-timeline .chrono-event .chrono-family-group .chrono-family-grid{grid-template-columns:minmax(0,1fr)!important}
.chrono-main #chrono-timeline .chrono-event .chrono-notes-box{min-height:0!important}
.chrono-main #chrono-timeline .chrono-event .chrono-notes-box .chrono-info-value{
 -webkit-line-clamp:4!important;line-height:1.28!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-photo-people .chrono-info-value{
 -webkit-line-clamp:3!important;
}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-info-box,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-info-box{
 background:rgba(195,154,92,.09)!important;border-color:#715332!important;
}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-family-panel,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-family-panel{
 background:rgba(195,154,92,.06)!important;border-color:#715332!important;
}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-panel-title,
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-subpanel-title,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-panel-title,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-subpanel-title{color:#d9b779!important}
@media(max-width:650px){
 .chrono-main #chrono-timeline .chrono-event>article.chrono-record-card{
  height:360px!important;min-height:360px!important;max-height:360px!important;
  grid-template-columns:minmax(76px,29%) minmax(0,1fr)!important;gap:.5rem!important;padding:.55rem!important;
 }
 .chrono-main #chrono-timeline .chrono-event>article.chrono-record-card.chrono-no-thumbnail{grid-template-columns:minmax(0,1fr)!important}
 .chrono-main #chrono-timeline .chrono-event .chrono-grandparents{grid-template-columns:minmax(0,1fr)!important}
 .chrono-main #chrono-timeline .chrono-event .chrono-record-details>h3{font-size:.94rem!important}
 .chrono-main #chrono-timeline .chrono-event .chrono-info-value{font-size:.68rem!important}
}

.chrono-main #chrono-timeline .chrono-event .chrono-heading-box{
 display:grid!important;gap:.12rem!important;min-width:0!important;padding:.4rem .5rem!important;
 border:1px solid rgba(139,118,88,.55)!important;border-radius:3px!important;
 background:rgba(135,99,54,.075)!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-heading-box>.record-category{margin:0!important}
.chrono-main #chrono-timeline .chrono-event .chrono-heading-box>h3{margin:0!important}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-heading-box,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event .chrono-heading-box{background:rgba(195,154,92,.09)!important;border-color:#715332!important}


/* ChronoSearch event heading: prominent date, location, and a plain-language event caption. */
.chrono-main #chrono-timeline .chrono-event>.chrono-event-meta{
 display:flex!important;align-items:baseline!important;flex-wrap:wrap!important;
 gap:.35rem .7rem!important;margin:0 0 .12rem!important;padding:0 .12rem!important;
}
.chrono-main #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-record-date{
 display:inline-flex!important;align-items:center!important;gap:.48rem!important;
 margin:0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;
 color:var(--accent)!important;font-size:1.42rem!important;font-weight:600!important;
 line-height:1.2!important;letter-spacing:.005em!important;
}
.chrono-main #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-record-date:before{
 content:""!important;display:inline-block!important;flex:0 0 8px!important;width:8px!important;height:8px!important;
 border-radius:50%!important;background:var(--accent)!important;box-shadow:0 0 0 3px rgba(139,118,88,.18)!important;
}
.chrono-main #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-event-location{
 color:var(--muted)!important;font-size:.82rem!important;line-height:1.35!important;
}
.chrono-main #chrono-timeline .chrono-event>.chrono-event-description{
 margin:.12rem 0 .65rem!important;padding:0 .12rem .38rem!important;
 color:var(--accent-dark)!important;font-size:.91rem!important;font-weight:600!important;
 line-height:1.35!important;letter-spacing:.015em!important;
 border-bottom:1px solid rgba(139,118,88,.48)!important;
}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-record-date,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-record-date{color:#e0c18e!important}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-record-date:before,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-record-date:before{background:#c39a5c!important;box-shadow:0 0 0 3px rgba(195,154,92,.18)!important}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-event-location,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-event-location{color:#c5b08d!important}
html[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-event-description,
body[data-theme="dark"] .chrono-main #chrono-timeline .chrono-event>.chrono-event-description{color:#e0c18e!important;border-color:#715332!important}
@media(max-width:650px){
 .chrono-main #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-record-date{font-size:1.2rem!important}
 .chrono-main #chrono-timeline .chrono-event>.chrono-event-description{font-size:.83rem!important;margin-bottom:.5rem!important}
}


/* Simplified ChronoSearch cards: scan first, then only essential record details. */
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card{
 display:flex!important;flex-direction:column!important;align-items:stretch!important;
 height:360px!important;min-height:360px!important;max-height:360px!important;
 gap:0!important;padding:.65rem!important;overflow:hidden!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail{
 order:0!important;display:block!important;flex:0 0 118px!important;
 width:100%!important;height:118px!important;min-height:118px!important;max-height:118px!important;
 margin:0 0 .55rem!important;overflow:hidden!important;border:1px solid rgba(139,118,88,.55)!important;
 background:rgba(111,78,43,.09)!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail img{
 display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.chrono-card-info{
 order:1!important;display:flex!important;flex:1 1 auto!important;min-width:0!important;min-height:0!important;
 width:100%!important;overflow:hidden!important;
}
.chrono-main #chrono-timeline .chrono-event>article.chrono-record-card.chrono-no-thumbnail>.chrono-card-info{
 width:100%!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details{
 gap:.42rem!important;justify-content:flex-start!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-record-details>.chrono-heading-box,
.chrono-main #chrono-timeline .chrono-event .chrono-record-details>.record-category,
.chrono-main #chrono-timeline .chrono-event .chrono-record-details>h3{
 display:none!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-family-panel{
 padding:.38rem!important;gap:.28rem!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-family-grid{
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.chrono-main #chrono-timeline .chrono-event .chrono-info-box{padding:.32rem .42rem!important}
.chrono-main #chrono-timeline .chrono-event .chrono-notes-box .chrono-info-value{
 -webkit-line-clamp:3!important;
}
@media(max-width:650px){
 .chrono-main #chrono-timeline .chrono-event>article.chrono-record-card{
  height:360px!important;min-height:360px!important;max-height:360px!important;
  display:flex!important;flex-direction:column!important;
 }
 .chrono-main #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail{
  flex-basis:104px!important;height:104px!important;min-height:104px!important;max-height:104px!important;
 }
}


/* Pencil overlay and in-place crop/reposition editor for the original scan thumbnail. */
.chrono-main #chrono-timeline .chrono-source-preview{
 position:relative!important;isolation:isolate!important;
}
.chrono-main #chrono-timeline .chrono-source-preview>img{
 transform-origin:center center!important;transition:transform .08s ease-out,object-position .08s ease-out!important;
}
.chrono-main #chrono-timeline .chrono-thumbnail-pencil{
 position:absolute!important;z-index:4!important;right:8px!important;bottom:8px!important;
 display:grid!important;place-items:center!important;width:30px!important;height:30px!important;
 padding:0!important;border:1px solid rgba(239,218,178,.75)!important;border-radius:50%!important;
 background:rgba(48,31,20,.88)!important;color:#f1d6a4!important;
 box-shadow:0 2px 8px rgba(0,0,0,.35)!important;font-family:Georgia,serif!important;
 font-size:21px!important;line-height:1!important;cursor:pointer!important;
}
.chrono-main #chrono-timeline .chrono-thumbnail-pencil:hover,
.chrono-main #chrono-timeline .chrono-thumbnail-pencil.is-active{
 background:#8b6239!important;color:#fff0d0!important;transform:scale(1.06)!important;
}
.chrono-main #chrono-timeline .chrono-thumbnail-editor{
 position:absolute!important;z-index:3!important;left:7px!important;right:43px!important;bottom:7px!important;
 display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:4px 7px!important;
 padding:6px 8px!important;border:1px solid rgba(226,195,145,.65)!important;border-radius:4px!important;
 background:rgba(39,27,19,.94)!important;color:#f4e4c8!important;
 box-shadow:0 2px 9px rgba(0,0,0,.35)!important;font-size:.68rem!important;
}
.chrono-main #chrono-timeline .chrono-thumbnail-editor[hidden]{display:none!important}
.chrono-main #chrono-timeline .chrono-thumbnail-hint{flex:1 1 100%!important;font-size:.65rem!important;color:#e2c89f!important}
.chrono-main #chrono-timeline .chrono-thumbnail-zoom-label{font-size:.65rem!important;color:#f4e4c8!important}
.chrono-main #chrono-timeline .chrono-thumbnail-editor input[type="range"]{flex:1 1 70px!important;min-width:55px!important;height:14px!important;accent-color:#c49a61!important}
.chrono-main #chrono-timeline .chrono-thumbnail-actions{display:flex!important;gap:4px!important;margin-left:auto!important}
.chrono-main #chrono-timeline .chrono-thumbnail-editor .small-button{
 min-height:23px!important;padding:2px 7px!important;font-size:.64rem!important;line-height:1.1!important;
}
.chrono-main #chrono-timeline .chrono-source-preview.is-editing>img{cursor:grab!important;touch-action:none!important}
.chrono-main #chrono-timeline .chrono-source-preview.is-editing>img:active{cursor:grabbing!important}


/* Ancestors introduction: title and description read naturally left-to-right. */
.ancestor-page>.section-intro{
 display:grid!important;
 grid-template-columns:minmax(250px,.82fr) minmax(0,1.18fr)!important;
 column-gap:clamp(1.5rem,4vw,4.5rem)!important;
 row-gap:.45rem!important;
 align-items:center!important;
 max-width:none!important;
 width:100%!important;
}
.ancestor-page>.section-intro>.eyebrow{
 grid-column:1/-1!important;
 margin:0 0 .15rem!important;
}
.ancestor-page>.section-intro>h1{
 grid-column:1!important;
 grid-row:2!important;
 align-self:center!important;
 margin:0!important;
 max-width:100%!important;
}
.ancestor-page>.section-intro>p:not(.eyebrow):not(.connection-status){
 grid-column:2!important;
 grid-row:2!important;
 align-self:center!important;
 max-width:62ch!important;
 margin:0!important;
 font-size:1rem!important;
 line-height:1.75!important;
}
.ancestor-page>.section-intro>.connection-status{
 grid-column:1/-1!important;
 margin:.55rem 0 0!important;
}
@media(max-width:700px){
 .ancestor-page>.section-intro{
  grid-template-columns:minmax(0,1fr)!important;
  row-gap:.55rem!important;
 }
 .ancestor-page>.section-intro>.eyebrow,
 .ancestor-page>.section-intro>h1,
 .ancestor-page>.section-intro>p:not(.eyebrow):not(.connection-status),
 .ancestor-page>.section-intro>.connection-status{
  grid-column:1!important;grid-row:auto!important;
 }
 .ancestor-page>.section-intro>p:not(.eyebrow):not(.connection-status){max-width:68ch!important}
}

/* Show known siblings directly on each People Index card. */
.ancestor-card .ancestor-siblings{
 margin:.25rem 0 .55rem!important;
 color:var(--muted-ink,#75624d)!important;
 font-size:.88rem!important;
 line-height:1.45!important;
 overflow-wrap:anywhere!important;
}
.ancestor-card .ancestor-siblings[hidden]{display:none!important}


/* ChronoSearch notes: keep prose readable and prevent metadata/long tokens
   from distorting the compact card layout. */
.chrono-main #chrono-timeline .chrono-notes-box{
 min-width:0!important;max-width:100%!important;overflow:hidden!important;
}
.chrono-main #chrono-timeline .chrono-notes-box .chrono-info-value{
 min-width:0!important;max-width:100%!important;
 overflow-wrap:anywhere!important;word-break:normal!important;
 white-space:pre-line!important;line-height:1.45!important;
}
.chrono-main #chrono-timeline .chrono-family-panel,
.chrono-main #chrono-timeline .chrono-family-grid,
.chrono-main #chrono-timeline .chrono-record-details{
 min-width:0!important;max-width:100%!important;
}
.chrono-main #chrono-timeline .chrono-info-box{
 min-width:0!important;overflow:hidden!important;
}


/* Classic single-piece Tylka banner.
   Keep the banner as one background layer; no nested panels or overlapping frames. */
.home-search-layout,
.chrono-search-layout,
.ancestor-page,
.location-page,
.archive-page:not(.home-search-page):not(.chrono-main){
 position:relative;
 isolation:isolate;
}
.home-search-layout::before,
.chrono-search-layout::before,
.ancestor-page::before,
.location-page::before,
.archive-page:not(.home-search-page):not(.chrono-main)::before{
 content:"";
 position:absolute;
 z-index:-1;
 pointer-events:none;
 top:0;
 left:50%;
 transform:translateX(-50%);
 width:100vw;
 height:clamp(300px,36vw,390px);
 background:
  radial-gradient(ellipse at 80% 15%,rgba(199,123,118,.25),transparent 48%),
  linear-gradient(120deg,rgba(56,13,26,.98),rgba(126,31,53,.96) 58%,rgba(151,62,70,.93));
 border-bottom:5px solid #c69a78;
}
.home-search-layout::after,
.chrono-search-layout::after,
.ancestor-page::after,
.location-page::after,
.archive-page:not(.home-search-page):not(.chrono-main)::after{
 content:"";
 position:absolute;
 z-index:-1;
 pointer-events:none;
 top:18px;
 left:50%;
 transform:translateX(-50%);
 width:calc(100vw - 44px);
 height:calc(clamp(300px,36vw,390px) - 36px);
 border:1px solid rgba(255,235,218,.22);
}
.home-search-intro,
.chrono-search-intro,
.ancestor-page>.section-intro{
 position:relative;
 z-index:1;
 padding:2rem 1.5rem 1rem!important;
 margin:0!important;
 border:0!important;
 border-radius:0!important;
 background:transparent!important;
 box-shadow:none!important;
 color:#f1dcd4!important;
 text-align:center;
}
.home-search-intro h1,
.chrono-search-intro h1,
.ancestor-page>.section-intro h1,
.archive-page:not(.home-search-page):not(.chrono-main)>h1{
 color:#fff9f4!important;
 text-shadow:0 3px 18px rgba(20,0,5,.22);
}
.home-search-intro .eyebrow,
.chrono-search-intro .eyebrow,
.ancestor-page>.section-intro .eyebrow,
.archive-page:not(.home-search-page):not(.chrono-main)>.eyebrow{
 color:#e9c7b8!important;
}
.home-search-intro>p:last-child,
.chrono-search-intro>p:last-child,
.ancestor-page>.section-intro>p{
 color:#f1dcd4!important;
}
.home-search-box,
.chrono-filter-panel,
.location-tool-box,
.location-records-panel{
 position:relative;
 z-index:1;
 border:0!important;
 border-radius:0!important;
 background:transparent!important;
 box-shadow:none!important;
}
.home-search-box{
 padding:.8rem 1.5rem 1.4rem!important;
}
.chrono-filter-panel{
 padding:.5rem 1.5rem 1.3rem!important;
}
.home-search-box label,
.chrono-filter-panel label,
.location-tool-box label,
.location-tool-box .search-label{
 color:#fff3e9!important;
}
.home-search-box .connection-status,
.chrono-filter-panel .connection-status{
 color:#f1dcd4!important;
}
.home-search-box input,
.home-search-box select,
.chrono-filter-panel input,
.chrono-filter-panel select,
.location-tool-box input,
.location-tool-box select,
.location-tool-box .person-picker-trigger{
 background:#fffaf6!important;
 color:#3b241b!important;
 border:1px solid rgba(198,154,120,.85)!important;
 box-shadow:0 2px 8px rgba(20,0,5,.12)!important;
}
.archive-page:not(.home-search-page):not(.chrono-main)> .eyebrow,
.archive-page:not(.home-search-page):not(.chrono-main)>h1,
.archive-page:not(.home-search-page):not(.chrono-main)>.section-intro{
 position:relative;
 z-index:1;
 width:auto!important;
 max-width:100%!important;
 margin-left:0!important;
 padding-left:0!important;
 border:0!important;
 border-radius:0!important;
 background:transparent!important;
 box-shadow:none!important;
}
.archive-page:not(.home-search-page):not(.chrono-main)> .eyebrow{
 padding-top:1.8rem!important;
}
.archive-page:not(.home-search-page):not(.chrono-main)>.section-intro{
 color:#f1dcd4!important;
}
.archive-page:not(.home-search-page):not(.chrono-main)>.section-intro{
 margin-bottom:1.1rem!important;
}
.location-page .location-toolbar{
 position:relative;
 z-index:1;
}
body.dark-mode .home-search-layout::before,
body.dark-mode .chrono-search-layout::before,
body.dark-mode .ancestor-page::before,
body.dark-mode .location-page::before,
body.dark-mode .archive-page:not(.home-search-page):not(.chrono-main)::before{
 background:
  radial-gradient(ellipse at 80% 15%,rgba(184,119,82,.18),transparent 48%),
  linear-gradient(120deg,#281018,#4b1928 58%,#54232b);
 border-bottom-color:#9f7955;
}
@media(max-width:800px){
 .home-search-layout::before,.chrono-search-layout::before,.ancestor-page::before,
 .location-page::before,.archive-page:not(.home-search-page):not(.chrono-main)::before{
  height:clamp(350px,92vw,470px);
 }
 .home-search-layout::after,.chrono-search-layout::after,.ancestor-page::after,
 .location-page::after,.archive-page:not(.home-search-page):not(.chrono-main)::after{
  height:calc(clamp(350px,92vw,470px) - 36px);
 }
 .home-search-intro,.chrono-search-intro,.ancestor-page>.section-intro{
  padding:1.8rem 1rem .7rem!important;
 }
 .home-search-box,.chrono-filter-panel{
  padding:.5rem 1rem 1.2rem!important;
 }
}


/* 2026-11-02: calm parchment color, tighter page mastheads, true oxblood-red banners. */
body:before{
  filter:blur(30px) saturate(1)!important;
  opacity:.58!important;
  animation:paper-aurora-drift 28s ease-in-out infinite alternate!important;
}
@keyframes ambient-hue-shift{from{filter:blur(30px) saturate(1)}to{filter:blur(30px) saturate(1)}}
body:after{
  opacity:.22!important;
  animation:grain-shimmer 12s steps(4,end) infinite!important;
}
@media(max-width:800px){
  body:before{filter:blur(24px) saturate(.96)!important;opacity:.42!important}
  body:after{opacity:.16!important}
}

/* Page mastheads begin directly beneath the global navigation. */
.site-header{margin-bottom:0!important}
main.archive-page{
  margin-top:0!important;
  padding-top:0!important;
}
.home-search-page,.chrono-main,.ancestor-page,.location-page,
.archive-page:not(.home-search-page):not(.chrono-main){
  margin-top:0!important;
}
.home-search-layout,.chrono-search-layout{
  margin-top:0!important;
}
.home-search-intro,.chrono-search-intro,.ancestor-page>.section-intro{
  padding-top:1.55rem!important;
}
.archive-page:not(.home-search-page):not(.chrono-main)> .eyebrow{
  padding-top:1.55rem!important;
}
@media(max-width:800px){
  .home-search-intro,.chrono-search-intro,.ancestor-page>.section-intro{
    padding-top:1.25rem!important;
  }
  .archive-page:not(.home-search-page):not(.chrono-main)> .eyebrow{
    padding-top:1.25rem!important;
  }
}

/* Consistent red-wine masthead: deliberately red, not violet or plum. */
.home-search-layout::before,
.chrono-search-layout::before,
.ancestor-page::before,
.location-page::before,
.archive-page:not(.home-search-page):not(.chrono-main)::before{
  background:
    radial-gradient(ellipse at 80% 14%,rgba(255,190,151,.16),transparent 48%),
    linear-gradient(120deg,#681018 0%,#941b25 52%,#b92c35 100%)!important;
  border-bottom-color:#c99a68!important;
}
html[data-theme="dark"] .home-search-layout::before,
html[data-theme="dark"] .chrono-search-layout::before,
html[data-theme="dark"] .ancestor-page::before,
html[data-theme="dark"] .location-page::before,
html[data-theme="dark"] .archive-page:not(.home-search-page):not(.chrono-main)::before,
body.dark-mode .home-search-layout::before,
body.dark-mode .chrono-search-layout::before,
body.dark-mode .ancestor-page::before,
body.dark-mode .location-page::before,
body.dark-mode .archive-page:not(.home-search-page):not(.chrono-main)::before{
  background:
    radial-gradient(ellipse at 80% 14%,rgba(220,139,102,.12),transparent 48%),
    linear-gradient(120deg,#400b12 0%,#68121c 52%,#861c26 100%)!important;
  border-bottom-color:#98734e!important;
}


/* Homepage masthead ends after the search controls; result cards stay on parchment. */
.home-search-layout::before,
.home-search-layout::after{content:none!important;display:none!important}
.home-search-header{
  position:relative;
  isolation:isolate;
  width:100vw;
  margin-left:calc(50% - 50vw);
  padding:0 clamp(1.25rem,8vw,8rem) 1.2rem;
}
.home-search-header::before{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  inset:0;
  background:
    radial-gradient(ellipse at 80% 14%,rgba(255,190,151,.16),transparent 48%),
    linear-gradient(120deg,#681018 0%,#941b25 52%,#b92c35 100%);
  border-bottom:5px solid #c99a68;
}
.home-search-header::after{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  inset:18px 22px 22px;
  border:1px solid rgba(255,235,218,.22);
}
.home-search-header .home-search-intro,
.home-search-header .home-search-box{
  position:relative;
  z-index:1;
  max-width:1200px;
  margin-left:auto!important;
  margin-right:auto!important;
}
.home-search-header .home-search-intro{
  padding:1.55rem 1rem .65rem!important;
}
.home-search-header .home-search-box{
  margin-top:0!important;
  margin-bottom:0!important;
  padding:.5rem 1rem .6rem!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.home-search-header .home-search-box label{color:#fff3e9!important}
.home-search-header .home-search-box input,
.home-search-header .home-search-box select{
  background:#fffaf6!important;
  color:#3b241b!important;
}
.home-search-header .home-search-box .connection-status{color:#f1dcd4!important}
.home-search-divider{margin-top:1.4rem!important}
#home-results{position:relative;z-index:0;margin-top:0!important}
html[data-theme="dark"] .home-search-header::before,
body.dark-mode .home-search-header::before{
  background:
    radial-gradient(ellipse at 80% 14%,rgba(220,139,102,.12),transparent 48%),
    linear-gradient(120deg,#400b12 0%,#68121c 52%,#861c26 100%);
  border-bottom-color:#98734e;
}
@media(max-width:800px){
  .home-search-header{padding:0 1rem 1rem}
  .home-search-header .home-search-intro{padding:1.25rem .25rem .55rem!important}
  .home-search-header .home-search-box{padding:.45rem .25rem .5rem!important}
  .home-search-header::after{inset:12px}
}


/* Every page masthead is a self-contained header: no banner behind page content. */
.ancestor-page::before,.ancestor-page::after,
.location-page::before,.location-page::after,
.archive-page:not(.home-search-page):not(.chrono-main)::before,
.archive-page:not(.home-search-page):not(.chrono-main)::after{
  content:none!important;
  display:none!important;
}
.archive-page-header,.ancestor-page-header,.location-page-header{
  position:relative;
  isolation:isolate;
  width:100vw;
  margin-left:calc(50% - 50vw);
  padding:1.55rem clamp(1.25rem,8vw,8rem) 1.5rem;
}
.archive-page-header::before,.ancestor-page-header::before,.location-page-header::before{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  inset:0;
  background:
    radial-gradient(ellipse at 80% 14%,rgba(255,190,151,.16),transparent 48%),
    linear-gradient(120deg,#681018 0%,#941b25 52%,#b92c35 100%);
  border-bottom:5px solid #c99a68;
}
.archive-page-header::after,.ancestor-page-header::after,.location-page-header::after{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  inset:18px 22px 22px;
  border:1px solid rgba(255,235,218,.22);
}
.archive-page-header>*,.ancestor-page-header>*,.location-page-header>*{
  position:relative;
  z-index:1;
  max-width:1200px;
  margin-left:auto!important;
  margin-right:auto!important;
}
.archive-page-header .eyebrow,.ancestor-page-header .eyebrow,.location-page-header .eyebrow,
.archive-page-header h1,.ancestor-page-header h1,.location-page-header h1,
.archive-page-header .section-intro,.ancestor-page-header .section-intro,.location-page-header .section-intro{
  color:#f5e4d9!important;
}
.archive-page-header h1,.ancestor-page-header h1,.location-page-header h1{
  margin-top:.2rem!important;
  margin-bottom:.55rem!important;
}
.archive-page-header .section-intro,.ancestor-page-header .section-intro,.location-page-header .section-intro{
  max-width: min(900px,100%)!important;
  margin-top:.3rem!important;
  margin-bottom:0!important;
}
.location-page-header{padding-top:1.55rem;padding-bottom:1.5rem}
html[data-theme="dark"] .archive-page-header::before,
html[data-theme="dark"] .ancestor-page-header::before,
html[data-theme="dark"] .location-page-header::before,
body.dark-mode .archive-page-header::before,
body.dark-mode .ancestor-page-header::before,
body.dark-mode .location-page-header::before{
  background:
    radial-gradient(ellipse at 80% 14%,rgba(220,139,102,.12),transparent 48%),
    linear-gradient(120deg,#400b12 0%,#68121c 52%,#861c26 100%);
  border-bottom-color:#98734e;
}
@media(max-width:800px){
  .archive-page-header,.ancestor-page-header,.location-page-header{
    padding:1.25rem 1rem 1.1rem;
  }
  .archive-page-header::after,.ancestor-page-header::after,.location-page-header::after{inset:12px}
}


/* 2026-11-02: unified masthead alignment and legible page-header typography. */
.home-search-header,
.chrono-search-layout{
  display:grid!important;
  grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr)!important;
  align-items:center!important;
  column-gap:clamp(1.5rem,4vw,4.5rem)!important;
  row-gap:.35rem!important;
  width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  padding:clamp(1.4rem,3vw,2.5rem) clamp(1.25rem,7vw,7rem) 1.5rem!important;
  box-sizing:border-box!important;
  min-height:260px;
}
.home-search-header::before,
.chrono-search-layout::before{
  inset:0!important;
  height:auto!important;
}
.home-search-header::after,
.chrono-search-layout::after{
  inset:14px 22px 18px!important;
  height:auto!important;
}
.home-search-header .home-search-intro,
.chrono-search-layout .chrono-search-intro{
  width:100%!important;
  max-width:650px!important;
  padding:0!important;
  margin:0!important;
  text-align:left!important;
  justify-self:start!important;
}
.home-search-header .home-search-intro h1,
.chrono-search-layout .chrono-search-intro h1{
  margin:.25rem 0 .7rem!important;
  max-width:100%!important;
  color:#fffaf5!important;
  font-size:clamp(2.35rem,4.2vw,4.1rem)!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  text-wrap:balance;
  text-shadow:0 2px 3px rgba(20,0,5,.45),0 8px 22px rgba(20,0,5,.22)!important;
}
.home-search-header .home-search-intro .eyebrow,
.chrono-search-layout .chrono-search-intro .eyebrow,
.archive-page-header .eyebrow,
.ancestor-page-header .eyebrow,
.location-page-header .eyebrow{
  color:#ffe0cb!important;
  font-size:.76rem!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  line-height:1.5!important;
  text-transform:uppercase;
  text-shadow:0 1px 3px rgba(20,0,5,.35);
}
.home-search-header .home-search-intro .section-intro,
.chrono-search-layout .chrono-search-intro .section-intro{
  max-width:580px!important;
  margin:.5rem 0 0!important;
  color:#fff1e8!important;
  font-size:clamp(.96rem,1.2vw,1.08rem)!important;
  font-weight:500!important;
  line-height:1.65!important;
  text-shadow:0 1px 3px rgba(20,0,5,.48)!important;
}
.chrono-search-layout .chrono-ornament{margin:.55rem 0!important;max-width:250px}
.home-search-header .home-search-box,
.chrono-search-layout .chrono-filter-panel{
  width:100%!important;
  max-width:900px!important;
  min-width:0!important;
  justify-self:stretch!important;
  align-self:center!important;
  margin:0!important;
  padding:1rem 1.15rem!important;
  border:1px solid rgba(255,235,218,.34)!important;
  border-radius:12px!important;
  background:rgba(49,10,18,.27)!important;
  box-shadow:0 12px 28px rgba(24,0,6,.2),inset 0 1px rgba(255,255,255,.12)!important;
  backdrop-filter:blur(5px);
}
.home-search-header .home-search-box .search-fields{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.8rem 1rem!important;
}
.home-search-header .home-search-box .search-fields>div:first-child{grid-column:1/-1}
.home-search-header .home-search-box label,
.chrono-search-layout .chrono-filter-panel label{
  display:block!important;
  margin:0 0 .35rem!important;
  color:#fff7ef!important;
  font-size:.78rem!important;
  font-weight:750!important;
  line-height:1.4!important;
  text-shadow:0 1px 2px rgba(20,0,5,.45);
}
.home-search-header .home-search-box input,
.home-search-header .home-search-box select,
.chrono-search-layout .chrono-filter-panel input,
.chrono-search-layout .chrono-filter-panel select{
  width:100%!important;
  min-height:44px!important;
  padding:.65rem .8rem!important;
  border:1px solid #d5bda6!important;
  border-radius:7px!important;
  background:#fffaf5!important;
  color:#34231d!important;
  font-size:.92rem!important;
  line-height:1.35!important;
  box-shadow:0 2px 7px rgba(24,0,6,.12)!important;
}
.home-search-header .home-search-box .connection-status,
.chrono-search-layout .chrono-filter-panel .connection-status{
  color:#fff0e5!important;
  font-size:.82rem!important;
  line-height:1.5!important;
  text-shadow:0 1px 3px rgba(20,0,5,.5);
}
.chrono-search-layout .chrono-filter-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.85rem 1rem!important;
}
.chrono-search-layout .chrono-filter-footer{
  align-items:center!important;
  margin-top:.75rem!important;
}
.chrono-search-layout .chrono-filter-footer .small-button{
  flex:0 0 auto;
}
.archive-page-header,
.ancestor-page-header,
.location-page-header{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:190px;
  text-align:center!important;
  padding:1.8rem clamp(1rem,7vw,6rem) 1.7rem!important;
}
.archive-page-header .eyebrow,
.ancestor-page-header .eyebrow,
.location-page-header .eyebrow,
.archive-page-header h1,
.ancestor-page-header h1,
.location-page-header h1,
.archive-page-header .section-intro,
.ancestor-page-header .section-intro,
.location-page-header .section-intro{
  width:100%!important;
  text-align:center!important;
}
.archive-page-header h1,
.ancestor-page-header h1,
.location-page-header h1{
  max-width:1000px!important;
  margin:.25rem auto .6rem!important;
  color:#fffaf5!important;
  font-size:clamp(2.2rem,4vw,3.6rem)!important;
  line-height:1.12!important;
  text-wrap:balance;
  text-shadow:0 2px 3px rgba(20,0,5,.45),0 8px 22px rgba(20,0,5,.22)!important;
}
.archive-page-header .section-intro,
.ancestor-page-header .section-intro,
.location-page-header .section-intro{
  max-width:780px!important;
  margin:.25rem auto 0!important;
  color:#fff1e8!important;
  font-size:1rem!important;
  line-height:1.65!important;
  font-weight:500!important;
  text-shadow:0 1px 3px rgba(20,0,5,.48)!important;
}
.records-heading{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:1.1rem!important;
  flex-wrap:wrap!important;
}
.records-heading>div:first-child{min-width:0}
.records-heading .record-filters{flex:0 1 360px!important;min-width:min(240px,100%)}
.records-heading .record-filters input{width:100%!important;min-height:44px!important}
.location-page-header .section-intro strong,
.ancestor-page-header .section-intro strong{color:#fffaf5!important}
@media(max-width:800px){
  .home-search-header,.chrono-search-layout{
    grid-template-columns:minmax(0,1fr)!important;
    gap:.85rem!important;
    min-height:0!important;
    padding:1.25rem 1rem 1.1rem!important;
  }
  .home-search-header .home-search-intro,
  .chrono-search-layout .chrono-search-intro{
    max-width:680px!important;
    justify-self:center!important;
    text-align:center!important;
  }
  .home-search-header .home-search-intro h1,
  .chrono-search-layout .chrono-search-intro h1{
    font-size:clamp(2.1rem,8vw,3.15rem)!important;
  }
  .home-search-header .home-search-intro .section-intro,
  .chrono-search-layout .chrono-search-intro .section-intro{
    margin-left:auto!important;
    margin-right:auto!important;
    font-size:.94rem!important;
  }
  .chrono-search-layout .chrono-ornament{margin:.45rem auto!important}
  .home-search-header .home-search-box,
  .chrono-search-layout .chrono-filter-panel{
    padding:.85rem!important;
  }
  .home-search-header .home-search-box .search-fields,
  .chrono-search-layout .chrono-filter-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:.65rem!important;
  }
  .home-search-header .home-search-box .search-fields>div:first-child{grid-column:auto}
  .archive-page-header,.ancestor-page-header,.location-page-header{
    min-height:0!important;
    padding:1.35rem 1rem 1.25rem!important;
  }
  .archive-page-header h1,.ancestor-page-header h1,.location-page-header h1{
    font-size:clamp(2rem,8vw,2.8rem)!important;
  }
  .archive-page-header .section-intro,.ancestor-page-header .section-intro,.location-page-header .section-intro{
    font-size:.94rem!important;
  }
}
@media(max-width:480px){
  .home-search-header::after,.chrono-search-layout::after,
  .archive-page-header::after,.ancestor-page-header::after,.location-page-header::after{
    inset:9px!important;
  }
  .records-heading{align-items:stretch!important}
  .records-heading .record-filters{flex-basis:100%!important}
}


/* 2026-11-02: keep ChronoSearch controls transparent over the full red masthead,
   and constrain the home masthead grid so neither column can push off-screen. */
.chrono-search-layout{
  position:relative!important;
  isolation:isolate!important;
  width:100vw!important;
  max-width:100vw!important;
  left:50%!important;
  margin-left:-50vw!important;
  box-sizing:border-box!important;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;
  padding-left:clamp(1rem,5vw,5rem)!important;
  padding-right:clamp(1rem,5vw,5rem)!important;
  overflow:hidden;
}
.chrono-search-layout::before,
.chrono-search-layout::after{
  z-index:-1!important;
  pointer-events:none!important;
}
.chrono-search-layout .chrono-search-intro,
.chrono-search-layout .chrono-filter-panel{
  position:relative!important;
  z-index:1!important;
  min-width:0!important;
}
.chrono-search-layout .chrono-filter-panel{
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.home-search-page #home-search-workspace{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
  overflow:visible!important;
}
.home-search-header{
  position:relative!important;
  left:50%!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:-50vw!important;
  box-sizing:border-box!important;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;
  padding-left:clamp(1rem,5vw,5rem)!important;
  padding-right:clamp(1rem,5vw,5rem)!important;
  overflow:hidden;
}
.home-search-header::before,
.home-search-header::after{pointer-events:none!important}
.home-search-header .home-search-intro,
.home-search-header .home-search-box{
  min-width:0!important;
  max-width:100%!important;
}
.home-search-header .home-search-intro{
  justify-self:stretch!important;
  text-align:center!important;
}
.home-search-header .home-search-intro .section-intro{
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:800px){
  .home-search-header,.chrono-search-layout{
    left:50%!important;
    width:100vw!important;
    max-width:100vw!important;
    margin-left:-50vw!important;
    padding-left:1rem!important;
    padding-right:1rem!important;
    grid-template-columns:minmax(0,1fr)!important;
    overflow:hidden!important;
  }
  .home-search-header .home-search-intro,
  .home-search-header .home-search-box,
  .chrono-search-layout .chrono-search-intro,
  .chrono-search-layout .chrono-filter-panel{
    width:100%!important;
    max-width:680px!important;
    justify-self:center!important;
    min-width:0!important;
  }
}


/* 2026-11-02: correct full-bleed masthead positioning.
   These headers live inside centered, max-width page containers: use one
   centering offset only. A relative left:50% plus -50vw margin double-shifted
   the banner and made its contents appear outside the viewport. */
.home-search-header,
.chrono-search-layout{
  position:relative!important;
  left:auto!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:0!important;
  box-sizing:border-box!important;
  min-width:0!important;
}
.home-search-header .home-search-intro,
.home-search-header .home-search-box,
.chrono-search-layout .chrono-search-intro,
.chrono-search-layout .chrono-filter-panel{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.home-search-header .home-search-box,
.chrono-search-layout .chrono-filter-panel{
  width:100%!important;
}
.home-search-header .home-search-intro h1,
.chrono-search-layout .chrono-search-intro h1,
.home-search-header .home-search-intro .section-intro,
.chrono-search-layout .chrono-search-intro .section-intro{
  overflow-wrap:anywhere;
}
@media(max-width:800px){
  .home-search-header,
  .chrono-search-layout{
    left:auto!important;
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:0!important;
    padding-left:1rem!important;
    padding-right:1rem!important;
  }
}


/* 2026-11-02: align full-bleed mastheads to the viewport, not the padded
   content edge of the centered main element. The previous calc omitted the
   main element's horizontal padding, leaving the banner displaced by that
   exact amount. Chrono's main overflow rule also clipped the bleed. */
.home-search-header,
.chrono-search-layout{
  position:relative!important;
  left:auto!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw - clamp(1.25rem,8vw,8rem))!important;
  margin-right:0!important;
  box-sizing:border-box!important;
  min-width:0!important;
  transform:none!important;
}
.chrono-main{
  overflow:visible!important;
}
.home-search-header .home-search-intro,
.home-search-header .home-search-box,
.chrono-search-layout .chrono-search-intro,
.chrono-search-layout .chrono-filter-panel{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:800px){
  .home-search-header,
  .chrono-search-layout{
    margin-left:calc(50% - 50vw - clamp(1.25rem,8vw,8rem))!important;
    padding-left:1rem!important;
    padding-right:1rem!important;
  }
}


/* 2026-11-02: definitive masthead centering.
   Center each full-viewport banner on the centered page container. The home
   masthead is one grid item containing both title and search controls, so it
   must span the full parent grid rather than occupying only its first column. */
.home-search-header,
.chrono-search-layout{
  position:relative!important;
  left:50%!important;
  right:auto!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:translateX(-50%)!important;
  box-sizing:border-box!important;
  min-width:0!important;
}
.home-search-header{
  grid-column:1 / -1!important;
  justify-self:stretch!important;
}
.home-search-header::before,
.home-search-header::after,
.chrono-search-layout::before,
.chrono-search-layout::after{
  left:0!important;
  right:0!important;
  transform:none!important;
  box-sizing:border-box!important;
}
.home-search-header::after,
.chrono-search-layout::after{
  left:22px!important;
  right:22px!important;
}
.home-search-header .home-search-intro,
.home-search-header .home-search-box,
.chrono-search-layout .chrono-search-intro,
.chrono-search-layout .chrono-filter-panel{
  min-width:0!important;
  box-sizing:border-box!important;
}
@media(max-width:800px){
  .home-search-header,
  .chrono-search-layout{
    left:50%!important;
    width:100vw!important;
    max-width:100vw!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:translateX(-50%)!important;
    padding-left:1rem!important;
    padding-right:1rem!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  .home-search-header{grid-column:1 / -1!important}
  .home-search-header::after,
  .chrono-search-layout::after{
    left:12px!important;
    right:12px!important;
  }
}


/* 2026-11-02: keep navigation transitions inside the page content.
   The shared header/footer remain stationary; no full-screen color veil is used. */
main.page-enter{
  opacity:0!important;
  transform:translateY(9px)!important;
  filter:blur(2px)!important;
}
main.page-enter.page-enter-active{
  opacity:1!important;
  transform:none!important;
  filter:none!important;
  transition:opacity .34s ease,transform .42s ease,filter .34s ease!important;
}
main.page-leaving.page-leave{
  opacity:0!important;
  transform:translateY(-5px)!important;
  filter:blur(2px)!important;
  transition:opacity .28s ease,transform .28s ease,filter .28s ease!important;
}
body.page-leaving,body.page-enter,body.page-enter-active,body.page-leave{
  opacity:1!important;
  transform:none!important;
  filter:none!important;
}
body.page-leaving .site-header,
body.page-leaving .site-footer{
  opacity:1!important;
  transform:none!important;
  filter:none!important;
}
body.page-leaving #tylka-page-veil,
#tylka-page-veil{
  display:none!important;
}

/* Masthead layout is scoped to the two pages that actually own these headers. */
.home-search-page #home-search-workspace > .home-search-header,
.chronosearch-page .chrono-main > .chrono-search-layout{
  position:relative!important;
  left:50%!important;
  right:auto!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:translateX(-50%)!important;
  box-sizing:border-box!important;
  min-width:0!important;
}
.home-search-page #home-search-workspace > .home-search-header{
  grid-column:1 / -1!important;
  justify-self:stretch!important;
}
.home-search-page #home-search-workspace > .home-search-header::before,
.home-search-page #home-search-workspace > .home-search-header::after,
.chronosearch-page .chrono-main > .chrono-search-layout::before,
.chronosearch-page .chrono-main > .chrono-search-layout::after{
  left:0!important;
  right:0!important;
  transform:none!important;
  box-sizing:border-box!important;
}
.home-search-page #home-search-workspace > .home-search-header::after,
.chronosearch-page .chrono-main > .chrono-search-layout::after{
  left:22px!important;
  right:22px!important;
}
@media(max-width:800px){
  .home-search-page #home-search-workspace > .home-search-header,
  .chronosearch-page .chrono-main > .chrono-search-layout{
    left:50%!important;
    width:100vw!important;
    max-width:100vw!important;
    margin:0!important;
    transform:translateX(-50%)!important;
    padding-left:1rem!important;
    padding-right:1rem!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  .home-search-page #home-search-workspace > .home-search-header::after,
  .chronosearch-page .chrono-main > .chrono-search-layout::after{
    left:12px!important;
    right:12px!important;
  }
}


/* 2026-11-02 ChronoSearch layout cleanup: remove conflicting legacy card sizing
   and keep the masthead directly beneath the shared site header. */
body.chronosearch-page main.chrono-main{
  padding-top:0!important;
  overflow:visible!important;
}
body.chronosearch-page main.chrono-main>.chrono-search-layout{
  position:relative!important;
  left:50%!important;
  right:auto!important;
  width:100vw!important;
  max-width:100vw!important;
  margin:0!important;
  transform:translateX(-50%)!important;
  min-height:0!important;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;
  align-items:center!important;
}
body.chronosearch-page .chrono-search-intro,
body.chronosearch-page .chrono-filter-panel{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
}
body.chronosearch-page .chrono-filter-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.75rem!important;
}
body.chronosearch-page .chrono-filter-footer{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:.65rem 1rem!important;
  justify-content:space-between!important;
}
body.chronosearch-page .chrono-scroll-hint,
body.chronosearch-page #chrono-timeline,
body.chronosearch-page>.chrono-main>.notice,
body.chronosearch-page>.chrono-main>.text-link{
  max-width:100%!important;
}
body.chronosearch-page #chrono-timeline{
  align-items:stretch!important;
  gap:.85rem!important;
  padding:1rem .15rem 1.5rem!important;
}
body.chronosearch-page #chrono-timeline>.chrono-year-column{
  flex:0 0 clamp(250px,25vw,330px)!important;
  min-width:0!important;
  padding:.8rem!important;
  overflow:hidden!important;
}
body.chronosearch-page #chrono-timeline>.chrono-year-column>.chrono-year-heading{
  position:relative!important;
  display:flex!important;
  align-items:baseline!important;
  justify-content:space-between!important;
  gap:.5rem!important;
  margin:0 0 .7rem!important;
  padding:0 0 .55rem!important;
  border-bottom:1px solid var(--line)!important;
}
body.chronosearch-page #chrono-timeline>.chrono-year-column>.chrono-year-heading h2{
  margin:0!important;
  font-size:1.65rem!important;
  line-height:1.1!important;
  color:var(--accent)!important;
}
body.chronosearch-page #chrono-timeline>.chrono-year-column>.chrono-year-heading span{
  color:var(--muted)!important;
  font-size:.7rem!important;
  white-space:nowrap!important;
}
body.chronosearch-page #chrono-timeline .chrono-event>article.chrono-record-card{
  display:grid!important;
  grid-template-columns:minmax(82px,34%) minmax(0,1fr)!important;
  align-items:stretch!important;
  gap:.6rem!important;
  width:100%!important;
  height:auto!important;
  min-height:145px!important;
  max-height:190px!important;
  padding:.55rem!important;
  overflow:hidden!important;
}
body.chronosearch-page #chrono-timeline .chrono-event>article.chrono-record-card.chrono-no-thumbnail{
  grid-template-columns:minmax(0,1fr)!important;
}
body.chronosearch-page #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail{
  grid-column:1!important;
  grid-row:1!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  overflow:hidden!important;
}
body.chronosearch-page #chrono-timeline .chrono-event>article.chrono-record-card>.record-thumbnail img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
body.chronosearch-page #chrono-timeline .chrono-event>article.chrono-record-card>.chrono-card-info{
  grid-column:2!important;
  grid-row:1!important;
  display:flex!important;
  min-width:0!important;
  min-height:0!important;
  width:100%!important;
  overflow:hidden!important;
}
body.chronosearch-page #chrono-timeline .chrono-event>article.chrono-record-card.chrono-no-thumbnail>.chrono-card-info{
  grid-column:1!important;
}
body.chronosearch-page #chrono-timeline .chrono-event .chrono-record-details{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:.3rem!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  overflow:hidden!important;
}
body.chronosearch-page #chrono-timeline .chrono-event .chrono-info-box{
  min-width:0!important;
  padding:.3rem .4rem!important;
}
body.chronosearch-page #chrono-timeline .chrono-event .chrono-info-value{
  font-size:.7rem!important;
  line-height:1.25!important;
  overflow-wrap:anywhere!important;
}
body.chronosearch-page #chrono-timeline .chrono-event>.chrono-event-meta{
  gap:.3rem .55rem!important;
}
body.chronosearch-page #chrono-timeline .chrono-event>.chrono-event-meta>.chrono-record-date{
  font-size:1.05rem!important;
  line-height:1.2!important;
}
body.chronosearch-page #chrono-timeline .chrono-event>.chrono-event-description{
  font-size:.8rem!important;
  margin:.1rem 0 .45rem!important;
}
@media(max-width:800px){
  body.chronosearch-page main.chrono-main>.chrono-search-layout{
    grid-template-columns:minmax(0,1fr)!important;
    gap:.75rem!important;
    padding:1.2rem 1rem 1rem!important;
  }
  body.chronosearch-page .chrono-search-intro{
    text-align:center!important;
    justify-self:center!important;
  }
  body.chronosearch-page .chrono-ornament{margin:.45rem auto!important}
  body.chronosearch-page .chrono-filter-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.chronosearch-page #chrono-timeline>.chrono-year-column{
    flex-basis:min(82vw,320px)!important;
  }
}
@media(max-width:520px){
  body.chronosearch-page .chrono-filter-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.chronosearch-page #chrono-timeline .chrono-event>article.chrono-record-card{
    min-height:138px!important;
    max-height:172px!important;
    grid-template-columns:minmax(76px,32%) minmax(0,1fr)!important;
  }
}


/* 2026-11-02: prevent the full-bleed ChronoSearch masthead from widening the
   document canvas and creating a blank strip at the side of the viewport. */
html:has(body.chronosearch-page),
body.chronosearch-page{
  width:100%!important;
  max-width:100%!important;
  overflow-x:clip!important;
}
body.chronosearch-page main.chrono-main{
  width:100%!important;
  max-width:1800px!important;
  box-sizing:border-box!important;
  margin-left:auto!important;
  margin-right:auto!important;
  overflow-x:clip!important;
}
body.chronosearch-page main.chrono-main>.chrono-search-layout{
  left:50%!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:translateX(-50%)!important;
  box-sizing:border-box!important;
}
body.chronosearch-page #chrono-timeline{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
body.chronosearch-page .chrono-scroll-hint,
body.chronosearch-page main.chrono-main>.notice,
body.chronosearch-page main.chrono-main>.text-link{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
@supports not (overflow:clip){
  body.chronosearch-page{overflow-x:hidden!important}
  body.chronosearch-page main.chrono-main{overflow-x:hidden!important}
}


/* 2026-11-02: improve readability and spacing on the Ancestors / People Index page. */
body:has(main.ancestor-page) main.ancestor-page{
  padding-top:clamp(2.4rem,4.5vw,4.25rem)!important;
  padding-bottom:3.5rem!important;
}
body:has(main.ancestor-page) .ancestor-page-header{
  margin:0 0 clamp(2rem,3.5vw,3rem)!important;
}
body:has(main.ancestor-page) .section-intro{
  max-width:980px!important;
}
body:has(main.ancestor-page) .section-intro .eyebrow{
  margin:0 0 .8rem!important;
  font-size:.88rem!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  color:#7c302f!important;
}
body:has(main.ancestor-page) .section-intro h1{
  margin:0 0 1rem!important;
}
body:has(main.ancestor-page) .section-intro>p:not(.eyebrow){
  max-width:900px!important;
  color:#45352c!important;
  font-size:1.04rem!important;
  line-height:1.75!important;
}
body:has(main.ancestor-page) #ancestor-storage-note{
  color:#665344!important;
  font-size:.92rem!important;
}
body:has(main.ancestor-page) .section-heading{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:1rem!important;
  margin:0 0 1.15rem!important;
}
body:has(main.ancestor-page) .section-heading h2{
  margin:0!important;
  font-size:clamp(1.45rem,2.5vw,1.9rem)!important;
  line-height:1.2!important;
  color:#492b25!important;
}
body:has(main.ancestor-page) #ancestor-count{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:.45rem 1rem!important;
  border:1px solid rgba(115,72,48,.42)!important;
  border-radius:4px!important;
  background:rgba(220,195,153,.48)!important;
  color:#39251e!important;
  font-size:1.12rem!important;
  font-weight:800!important;
  letter-spacing:.015em!important;
  line-height:1.2!important;
  font-variant-numeric:tabular-nums!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45)!important;
}
body:has(main.ancestor-page) .ancestor-card-body h3{
  color:#39271f!important;
  font-size:1.08rem!important;
  line-height:1.35!important;
}
body:has(main.ancestor-page) .ancestor-source,
body:has(main.ancestor-page) .ancestor-life-dates,
body:has(main.ancestor-page) .ancestor-siblings{
  color:#5d493a!important;
  font-size:.9rem!important;
  line-height:1.55!important;
}
html[data-theme="dark"] body:has(main.ancestor-page) .section-intro>p:not(.eyebrow),
html.theme-dark body:has(main.ancestor-page) .section-intro>p:not(.eyebrow),
body.dark-mode:has(main.ancestor-page) .section-intro>p:not(.eyebrow){
  color:#eadcc2!important;
}
html[data-theme="dark"] body:has(main.ancestor-page) #ancestor-storage-note,
html.theme-dark body:has(main.ancestor-page) #ancestor-storage-note,
body.dark-mode:has(main.ancestor-page) #ancestor-storage-note{
  color:#cbb58f!important;
}
html[data-theme="dark"] body:has(main.ancestor-page) .section-heading h2,
html.theme-dark body:has(main.ancestor-page) .section-heading h2,
body.dark-mode:has(main.ancestor-page) .section-heading h2{
  color:#f0dfbd!important;
}
html[data-theme="dark"] body:has(main.ancestor-page) #ancestor-count,
html.theme-dark body:has(main.ancestor-page) #ancestor-count,
body.dark-mode:has(main.ancestor-page) #ancestor-count{
  background:rgba(91,52,35,.78)!important;
  border-color:rgba(205,164,104,.55)!important;
  color:#fff0d1!important;
}
html[data-theme="dark"] body:has(main.ancestor-page) .ancestor-card-body h3,
html.theme-dark body:has(main.ancestor-page) .ancestor-card-body h3,
body.dark-mode:has(main.ancestor-page) .ancestor-card-body h3{
  color:#f3e4c8!important;
}
html[data-theme="dark"] body:has(main.ancestor-page) .ancestor-source,
html[data-theme="dark"] body:has(main.ancestor-page) .ancestor-life-dates,
html[data-theme="dark"] body:has(main.ancestor-page) .ancestor-siblings,
html.theme-dark body:has(main.ancestor-page) .ancestor-source,
html.theme-dark body:has(main.ancestor-page) .ancestor-life-dates,
html.theme-dark body:has(main.ancestor-page) .ancestor-siblings,
body.dark-mode:has(main.ancestor-page) .ancestor-source,
body.dark-mode:has(main.ancestor-page) .ancestor-life-dates,
body.dark-mode:has(main.ancestor-page) .ancestor-siblings{
  color:#d7c3a1!important;
}
@media(max-width:600px){
  body:has(main.ancestor-page) main.ancestor-page{padding-top:2rem!important}
  body:has(main.ancestor-page) .section-heading{align-items:flex-start!important}
  body:has(main.ancestor-page) #ancestor-count{min-height:40px!important;font-size:1.05rem!important}
}

/* 2026-11-02: ChronoSearch banner filter uses the same deeper red panel treatment as home search. */
body.chronosearch-page .chrono-search-layout .chrono-filter-panel{
  border:1px solid rgba(255,224,210,.42)!important;
  border-radius:12px!important;
  background:rgba(76,12,24,.78)!important;
  background-image:linear-gradient(135deg,rgba(112,24,39,.58),rgba(57,8,18,.82))!important;
  box-shadow:0 12px 30px rgba(24,0,6,.28),inset 0 1px rgba(255,235,220,.16)!important;
  backdrop-filter:blur(6px)!important;
}
body.chronosearch-page .chrono-search-layout .chrono-filter-panel:before{color:#f5d8c9!important}
body.chronosearch-page .chrono-search-layout .chrono-filter-panel label{color:#fff5ed!important}
body.chronosearch-page .chrono-search-layout .chrono-filter-panel .connection-status{color:#ffede2!important}


/* 2026-11-02: Ancestors masthead full-bleed alignment and readable contrast. */
body:has(main.ancestor-page) .ancestor-page-header{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:0!important;
  box-sizing:border-box!important;
  text-align:center!important;
}
body:has(main.ancestor-page) .ancestor-page-header .section-intro{
  width:min(100%,900px)!important;
  max-width:900px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
body:has(main.ancestor-page) .ancestor-page-header .section-intro>p{
  color:#fff1e8!important;
  text-shadow:0 1px 3px rgba(20,0,5,.72)!important;
  line-height:1.65!important;
}
body:has(main.ancestor-page) .ancestor-page-header .section-intro>p strong{
  color:#fffaf5!important;
}


/* 2026-11-02: final Ancestors banner alignment and contrast correction. */
body:has(main.ancestor-page) .ancestor-page-header{
  position:relative!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  width:100vw!important;
  max-width:100vw!important;
  margin:0 0 clamp(2rem,3.5vw,3rem)!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
body:has(main.ancestor-page) .ancestor-page-header .section-intro{
  width:min(100%,900px)!important;
  max-width:900px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
body:has(main.ancestor-page) .ancestor-page-header .section-intro .eyebrow{
  color:#ffe2cf!important;
  text-shadow:0 1px 3px rgba(20,0,5,.8)!important;
}
body:has(main.ancestor-page) .ancestor-page-header .section-intro>p,
body:has(main.ancestor-page) .ancestor-page-header .section-intro>p:not(.eyebrow),
body:has(main.ancestor-page) .ancestor-page-header #ancestor-storage-note{
  color:#fff3eb!important;
  text-shadow:0 1px 3px rgba(20,0,5,.85)!important;
  opacity:1!important;
}
body:has(main.ancestor-page) .ancestor-page-header .section-intro>p strong{
  color:#ffffff!important;
}
@media(max-width:700px){
  body:has(main.ancestor-page) .ancestor-page-header{
    min-height:0!important;
    padding:1.35rem 1.15rem!important;
  }
  body:has(main.ancestor-page) .ancestor-page-header::after{inset:10px!important}
  body:has(main.ancestor-page) .ancestor-page-header .section-intro>p{
    font-size:.95rem!important;
    line-height:1.55!important;
  }
}


/* 2026-11-02: unified archival mastheads and refined ancestor portraits/profiles. */
.archive-page-header,.ancestor-page-header,.location-page-header,.chrono-page-header{
 position:relative!important;isolation:isolate!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
 width:100vw!important;max-width:100vw!important;min-height:190px!important;left:50%!important;transform:translateX(-50%)!important;
 margin:0 0 clamp(2rem,3.5vw,3rem)!important;padding:1.8rem clamp(1rem,7vw,6rem)!important;box-sizing:border-box!important;text-align:center!important;
 background:linear-gradient(120deg,#681018 0%,#941b25 52%,#b92c35 100%)!important;border-bottom:5px solid #c99a68!important;
}
.archive-page-header::after,.ancestor-page-header::after,.location-page-header::after,.chrono-page-header::after{
 content:"";position:absolute;z-index:-1;pointer-events:none;inset:18px 22px 22px;border:1px solid rgba(255,235,218,.28);
}
.archive-page-header>*,.ancestor-page-header>*,.location-page-header>*,.chrono-page-header>*{
 width:min(100%,900px)!important;max-width:900px!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;
}
.archive-page-header .eyebrow,.ancestor-page-header .eyebrow,.location-page-header .eyebrow,.chrono-page-header .eyebrow{color:#ffe2cf!important;text-shadow:0 1px 3px rgba(20,0,5,.8)!important;letter-spacing:.16em!important}
.archive-page-header h1,.ancestor-page-header h1,.location-page-header h1,.chrono-page-header h1{
 max-width:1000px!important;color:#fffaf5!important;font-size:clamp(2.2rem,4vw,3.6rem)!important;line-height:1.12!important;margin:.25rem auto .6rem!important;
 text-shadow:0 2px 3px rgba(20,0,5,.45),0 8px 22px rgba(20,0,5,.22)!important;
}
.archive-page-header .section-intro,.ancestor-page-header .section-intro,.location-page-header .section-intro,.chrono-page-header .section-intro{
 color:#fff3eb!important;font-size:1rem!important;line-height:1.65!important;text-shadow:0 1px 3px rgba(20,0,5,.72)!important;
}
.chrono-page-header .chrono-ornament{color:#f1c99d!important}
.ancestor-grid .ancestor-card{border:1px solid rgba(112,73,44,.48)!important;border-radius:5px!important;background:linear-gradient(180deg,#f1e3c7,#dfcba8)!important;overflow:hidden!important}
.ancestor-card-open{display:flex!important;flex-direction:column!important;width:100%!important;height:100%!important;text-align:left!important;background:transparent!important}
.ancestor-card-open .ancestor-portrait,.ancestor-card-open .ancestor-portrait-placeholder{
 width:100%!important;height:clamp(180px,21vw,245px)!important;min-height:180px!important;object-fit:cover!important;object-position:center 35%!important;border:0!important;border-bottom:1px solid rgba(112,73,44,.4)!important;
}
.ancestor-card-open .ancestor-card-body{display:flex!important;flex:1!important;flex-direction:column!important;align-items:flex-start!important;gap:7px!important;padding:15px 14px 14px!important}
.ancestor-card-open .ancestor-card-body h3{font:1.3rem/1.2 Georgia,serif!important;color:#3e251c!important}
.ancestor-card-open .ancestor-source,.ancestor-card-open .ancestor-life-dates,.ancestor-card-open .ancestor-siblings,.ancestor-card-evidence{margin:0!important;color:#624a37!important;font-size:.84rem!important;line-height:1.5!important}
.ancestor-card-evidence{font-weight:700!important;color:#78412f!important}
.ancestor-card-open .small-button{margin-top:auto!important;padding:.5rem .9rem!important;border:1px solid #9b7445!important;background:rgba(255,248,229,.72)!important;color:#4b3021!important}
.ancestor-profile-viewer{max-width:1120px!important;width:min(1120px,calc(100vw - 2rem))!important;max-height:92vh!important;overflow:auto!important}
.ancestor-profile-layout{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr)!important;gap:clamp(1.2rem,3vw,2.5rem)!important;align-items:start!important}
.ancestor-profile-facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.75rem!important}
.ancestor-profile-fact,.ancestor-profile-sources{padding:.85rem!important;border:1px solid rgba(139,118,88,.55)!important;background:rgba(223,208,179,.45)!important}
.ancestor-profile-fact h4{margin:0 0 .35rem!important;color:#6c352b!important;font:700 .75rem/1.3 Arial,sans-serif!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.ancestor-profile-fact p{margin:0!important;overflow-wrap:anywhere!important}
.ancestor-profile-sources{margin-top:1rem!important}.ancestor-profile-sources h3{margin:0 0 .65rem!important;font:1.25rem Georgia,serif!important}
.ancestor-profile-source-list{display:grid!important;gap:.55rem!important}
.ancestor-source-reference{display:flex!important;flex-direction:column!important;gap:.2rem!important;padding:.65rem .75rem!important;border-left:3px solid #8b3b32!important;background:rgba(255,248,229,.58)!important;text-decoration:none!important;color:#38261d!important}
.ancestor-source-reference:hover{background:#fff4dc!important;text-decoration:underline!important}
.ancestor-source-reference span,.ancestor-no-sources{font-size:.8rem!important;color:#665344!important}
@media(max-width:700px){
 .archive-page-header,.ancestor-page-header,.location-page-header,.chrono-page-header{min-height:0!important;padding:1.35rem 1.15rem!important}
 .archive-page-header::after,.ancestor-page-header::after,.location-page-header::after,.chrono-page-header::after{inset:10px!important}
 .ancestor-profile-layout{grid-template-columns:1fr!important}.ancestor-profile-facts{grid-template-columns:1fr!important}
 .ancestor-card-open .ancestor-portrait,.ancestor-card-open .ancestor-portrait-placeholder{height:160px!important;min-height:160px!important}
}


/* 2026-11-03: Interactive ancestor relationship links and historical location profile details. */
.ancestor-relationship-links,.location-profile-people{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.ancestor-relationship-link,.location-profile-person{border:1px solid rgba(132,73,48,.42);border-radius:999px;background:rgba(115,34,39,.09);color:var(--ink,#39251e);padding:7px 12px;font:inherit;font-size:.9rem;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.ancestor-relationship-link:hover,.location-profile-person:hover{background:rgba(115,34,39,.18);border-color:rgba(132,73,48,.75);transform:translateY(-1px)}
.ancestor-relationship-unlinked{display:inline-flex;align-items:center;border:1px dashed rgba(132,73,48,.38);border-radius:999px;padding:7px 12px;font-size:.9rem}
.location-profile-summary{margin:14px 0 18px;padding:15px;border:1px solid rgba(164,125,76,.42);border-radius:12px;background:rgba(154,112,69,.09)}
.location-profile-summary h3{margin:0 0 10px;color:var(--heading,#61202a);font-family:Georgia,serif;font-size:1.15rem}
.location-profile-summary h4{margin:14px 0 6px;font-size:.92rem;color:var(--heading,#61202a)}
.location-profile-fact,.location-profile-note{margin:7px 0;color:var(--ink,#39251e);line-height:1.55;font-size:.92rem}
.location-profile-note{font-style:italic;opacity:.82}
body.dark-mode .ancestor-relationship-link,body.dark-mode .location-profile-person{color:#f0dfc4;border-color:rgba(205,165,104,.42);background:rgba(91,43,31,.48)}
body.dark-mode .ancestor-relationship-unlinked{color:#e8d5b8;border-color:rgba(205,165,104,.38)}
body.dark-mode .location-profile-summary{background:rgba(56,29,23,.78);border-color:rgba(190,145,83,.42)}
body.dark-mode .location-profile-summary h3,body.dark-mode .location-profile-summary h4{color:#e6c58d}
body.dark-mode .location-profile-fact,body.dark-mode .location-profile-note{color:#eadcc5}
@media(max-width:640px){.location-profile-summary{padding:12px}.ancestor-relationship-link,.location-profile-person{font-size:.86rem;padding:7px 10px}}


/* Ancestor index: compact, consistent-height people cards */
.ancestor-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
  grid-auto-rows:1fr;
  align-items:stretch;
  gap:.8rem;
}
.ancestor-card{display:flex;min-height:0;height:100%}
.ancestor-card-open{
  display:flex;width:100%;height:100%;min-width:0;flex-direction:column;
  padding:0;border:0;background:transparent;color:inherit;text-align:left;
}
.ancestor-portrait,.ancestor-portrait-placeholder{
  display:block;width:100%;height:112px;min-height:112px;aspect-ratio:auto;
  object-fit:cover;background:var(--paper-dark);
}
.ancestor-portrait-placeholder{
  display:flex;align-items:center;justify-content:center;padding:.5rem;
  font-size:.8rem;text-align:center;color:var(--muted);
}
.ancestor-card-body{
  display:flex;flex:1;min-width:0;flex-direction:column;
  padding:.65rem .7rem .7rem;gap:.2rem;
}
.ancestor-card-body h3{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
  overflow:hidden;min-height:2.5em;margin:0 0 .15rem;font-size:1rem;line-height:1.25;
}
.ancestor-card-body .ancestor-source,
.ancestor-card-body .ancestor-life-dates,
.ancestor-card-body .ancestor-siblings,
.ancestor-card-body .ancestor-card-evidence{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
  overflow:hidden;margin:.05rem 0;font-size:.78rem;line-height:1.3;
}
.ancestor-card-body .ancestor-life-dates[hidden],
.ancestor-card-body .ancestor-siblings[hidden]{display:none}
.ancestor-card-body .small-button{margin-top:auto;padding:.38rem .55rem;min-height:32px;font-size:.78rem}
@media(max-width:1100px){.ancestor-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:850px){.ancestor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){
 .ancestor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
 .ancestor-portrait,.ancestor-portrait-placeholder{height:96px;min-height:96px}
 .ancestor-card-body{padding:.55rem}
}

/* Complete All Locations gazetteer */
.all-locations-section{margin:2rem 0 1.5rem;padding:1.2rem 1.3rem;border:1px solid var(--line);background:var(--panel,rgba(230,214,184,.28))}
.all-locations-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.all-locations-heading h2{margin:.15rem 0 .35rem}
.all-locations-heading .section-intro{margin:0;max-width:48rem}
.all-locations-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}
.all-location-card{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:.3rem;padding:.75rem .85rem;border:1px solid var(--line);border-radius:4px;background:rgba(174,137,88,.09);color:var(--ink);text-align:left;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.all-location-card:hover,.all-location-card:focus-visible,.all-location-card.is-selected{background:rgba(128,48,42,.13);border-color:var(--accent,#8c3c35);transform:translateY(-1px)}
.all-location-card strong{overflow-wrap:anywhere}
.all-location-card span{font-size:.8rem;color:var(--muted)}
@media(max-width:900px){.all-locations-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.all-locations-section{padding:.9rem}.all-locations-heading{align-items:flex-start;flex-direction:column}.all-locations-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.all-location-card{padding:.65rem}}


/* Keep the all-locations map action beside its index heading. */
.location-index-heading{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin:0 0 .65rem}
.location-index-heading>.eyebrow{margin:0}
.location-index-heading .small-button{flex:0 0 auto;margin:0;padding:.42rem .7rem;min-height:34px;font-size:.78rem;white-space:nowrap}
