.story-page{max-width:52rem;margin:0 auto;padding:1.5rem 1.1rem 0}.story-head{margin:0 0 1.1rem}.story-head h1{margin:.15rem 0 .5rem;font:700 clamp(1.75rem,5vw,2.6rem)/1.15 var(--serif);letter-spacing:-.03em}.story-head h1:focus{outline:none}.story-head p{margin:0 0 .8rem;color:var(--ink-soft);max-width:40rem}.eyebrow{margin:0;color:var(--blue)!important;font-weight:700;font-size:.95rem}.map{position:relative;overflow:hidden;background:#fff;border:2px solid var(--blue);border-radius:20px}.map:after{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px solid rgba(36,71,143,.5);border-radius:14px;pointer-events:none}.map canvas{display:block;width:100%;height:100%}.map-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;margin:0;color:var(--ink-soft)}.map--hero{height:clamp(15rem,42vh,26rem)}.map--journey{height:clamp(16rem,46vh,28rem)}.map--small{height:clamp(13rem,34vh,20rem);margin:0 0 1rem}.map--card{height:100%;border:0;border-radius:0}.map--card:after{display:none}.story-body{padding:.5rem 0 2.5rem}.story-side{padding-top:1.8rem}.story-side h2{margin:0 0 .2rem;font:700 1.45rem/1.3 var(--serif)}.story-side>.muted{margin:0 0 .9rem}.journey-card{gap:.35rem}.journey-card-route{color:var(--ink-soft)}.journey-card-note{color:var(--plum);font-style:italic}.journey-map-anchor{scroll-margin-top:5.5rem}.journey-step{margin:1rem 0 0;padding:1.1rem 1.15rem 1.2rem;background:var(--card);border:1px solid var(--rule);border-radius:18px}.journey-count{margin:0;color:var(--blue);font-weight:700}.journey-when{margin:.1rem 0 0;font:700 1.6rem/1.2 var(--serif);letter-spacing:-.02em}.journey-where{margin:.2rem 0 .8rem;font-weight:700}.journey-words{margin:0 0 1rem;padding:.7rem 0 .7rem 1rem;border-left:4px solid var(--blue)}.journey-words p{margin:0 0 .4rem;font:1.08rem/1.5 var(--serif)}.stop-facts{display:grid;gap:.85rem;margin:0 0 1rem}.stop-fact p{margin:0}.stop-fact-text{font-weight:700}.stop-fact-date{font-weight:400;color:var(--ink-soft)}.stop-fact-place,.stop-fact-detail{color:var(--ink-soft)}.stop-fact-other{color:var(--plum)}.stop-fact .grade{margin-top:.35rem}.journey-people{display:grid;gap:.55rem}.journey-person{display:flex;justify-content:space-between;align-items:center;gap:.75rem;width:100%;min-height:3rem;padding:.45rem 1rem;border:2px solid var(--blue);border-radius:12px;background:var(--wash);color:var(--blue);font-weight:700;text-align:left;cursor:pointer}.journey-person:active{background:#d4def0}.journey-next{margin-top:1rem}.journey-stops h2{margin:2rem 0 .8rem;font:700 1.35rem/1.3 var(--serif)}.journey-stops ol{display:grid;gap:.55rem}.journey-stops button{display:flex;align-items:center;gap:.9rem;width:100%;min-height:3.3rem;padding:.55rem .9rem;border:1px solid var(--rule);border-radius:14px;background:var(--card);color:inherit;font:inherit;text-align:left;cursor:pointer}.journey-stop-num{flex:none;display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;background:var(--blue);color:#fff;font-weight:700}.journey-stops .is-now button{border:3px solid var(--red)}.journey-stops .is-now .journey-stop-num{background:var(--red)}.journey-stops .is-later .journey-stop-num{background:#fff;color:var(--blue);border:2px solid var(--blue)}.journey-stop-years{display:block;font:700 1.05rem/1.25 var(--serif)}.journey-stop-name{display:block;color:var(--ink-soft);line-height:1.3}.journey-nav{position:sticky;bottom:0;z-index:4;display:flex;gap:.6rem;margin-top:1.5rem;padding:1.1rem 0 calc(1rem + env(safe-area-inset-bottom));background:linear-gradient(to bottom,rgba(244,246,249,0),var(--page) 28%)}.journey-nav .btn{flex:1;min-height:3.3rem;font-size:1.05rem}.journey-earlier{flex:.8!important}@media(min-width:900px){.journey{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);column-gap:1.5rem;max-width:72rem}.journey>.story-head{grid-column:1 / -1}.journey-map-anchor{grid-column:1;grid-row:2 / span 4;position:sticky;top:5.5rem;align-self:start}.journey .map--journey{height:min(70vh,40rem)}.journey>.journey-step,.journey>.journey-next,.journey>.journey-stops,.journey>.journey-nav{grid-column:2}.journey-step{margin-top:0}}.years .story-head .btn{margin-top:.2rem}.decade{padding-top:1rem;scroll-margin-top:7.5rem}.decade-head{margin:0 0 .8rem;padding:.3rem 0;border-bottom:3px solid var(--blue);font:700 1.5rem/1.3 var(--serif)}.year-list{display:grid;gap:.8rem;padding-bottom:1rem}.year-entry{display:grid;grid-template-columns:4.2rem minmax(0,1fr);gap:.6rem}.year-num{margin:0;padding-top:.8rem;color:var(--blue);font:700 1.1rem/1.3 var(--serif)}.year-box{padding:.8rem 1rem;background:var(--card);border:2px solid #859bc0;border-radius:12px;box-shadow:0 3px #dce3ee}.year-box p{margin:0}.year-text{font-weight:700}.year-date,.year-place,.year-detail{color:var(--ink-soft)}.year-disagree{color:var(--plum)}.year-box .grade{margin-top:.4rem}.year-people{display:grid;gap:.5rem;margin-top:.7rem}.year-entry--history .year-box{background:var(--wash);border:0;border-left:5px solid var(--blue);border-radius:4px 12px 12px 4px;box-shadow:none}.history-where{color:var(--blue);font-weight:700}.history-title{font:700 1.1rem/1.35 var(--serif)}.history-text{font:italic 1rem/1.5 var(--serif)}.history-why{margin-top:.4rem!important}.link-button{margin-top:.5rem;min-height:3rem;padding:0;border:0;background:none;color:var(--blue);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:.15em;cursor:pointer}.decade-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));gap:.6rem;padding:0 1.25rem 2rem}.decade-grid .btn{min-height:3.3rem}.lived-list{margin:0 0 1.2rem}.lived-list li{display:grid;grid-template-columns:1.8rem minmax(0,1fr);gap:.6rem;padding:.65rem 0;border-bottom:1px solid var(--rule)}.lived-list p{margin:0}.lived-dot{width:1.1rem;height:1.1rem;margin-top:.3rem;border-radius:50%;background:var(--blue);box-shadow:0 0 0 3px #fff,0 0 0 5px var(--blue)}.lived-list .is-last .lived-dot{background:var(--red);box-shadow:0 0 0 3px #fff,0 0 0 5px var(--red)}.lived-place{font:600 1.05rem/1.35 var(--serif)}.lived-when{color:var(--ink-soft)}.lived-other{color:var(--plum)}.lived-list .grade{margin-top:.35rem}.follow{width:100%;min-height:3.3rem}.story-cards>h2{margin-bottom:.8rem}.story-cards .grid{gap:1rem}.story-card{padding:0;overflow:hidden}.story-art{display:block;width:100%;height:9.5rem;border-bottom:2px solid #859bc0;background:#fff}.story-art--years{display:flex;align-items:center;padding:0 1.6rem 1.2rem}.years-tick{position:relative;flex:1;height:0;border-top:3px solid var(--blue)}.years-tick:before{content:"";position:absolute;left:-.45rem;top:-.6rem;width:.9rem;height:.9rem;border-radius:50%;background:var(--blue);border:3px solid #fff}.years-tick--now:before{background:var(--red)}.years-tick span{position:absolute;top:.7rem;left:-1.3rem;font:600 .95rem var(--serif);color:var(--ink-soft)}.story-card-body{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;padding:1rem;width:100%}.story-art--town{background:var(--wash)}.story-art--town img{display:block;width:100%;height:100%;object-fit:cover}@media(max-width:599px){.top-town{display:none}}.town-parts{display:grid;gap:.6rem;margin-top:1rem}.town-parts p{margin:0}.town-parts .btn{justify-content:flex-start;text-align:left;white-space:normal}.town-chapter{padding-top:1rem;scroll-margin-top:7.5rem}.town-list{display:grid;gap:1.2rem;padding-bottom:1.5rem}.town-story{padding:1rem;background:var(--card);border:2px solid #859bc0;border-radius:12px;box-shadow:0 3px #dce3ee}.town-story p{margin:0 0 .6rem}.town-year{color:var(--blue);font:700 1.1rem/1.3 var(--serif)}.town-title{margin:0 0 .5rem;font:700 1.3rem/1.3 var(--serif)}.town-picture{margin:.4rem 0 .9rem}.town-picture .picture-credit{margin-top:.4rem}.town-text{font-size:1.05rem;line-height:1.55}.town-family{margin:.2rem 0 .4rem;padding:.7rem .9rem;background:var(--wash);border-left:5px solid var(--blue);border-radius:4px 12px 12px 4px}.town-family p{margin:0}@media(min-width:700px){.story-cards .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.news-day{margin:0 0 2rem}.news-date{margin:0 0 .8rem;font:700 1.3rem/1.25 var(--serif)}.news-list{display:grid;gap:1rem}.news-text{font-size:1.05rem;line-height:1.45;color:var(--ink)}:root{--page: #f4f6f9;--card: #ffffff;--wash: #e6ecf6;--ink: #1b2440;--ink-soft: #465171;--rule: rgba(27, 36, 64, .16);--blue: #24478f;--red: #a12a22;--plum: #6b3a78;--serif: "Literata", "Iowan Old Style", Georgia, serif;--sans: "Atkinson Hyperlegible", Verdana, system-ui, sans-serif;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;background:var(--page);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.5;-webkit-text-size-adjust:100%}html{font-size:118.75%}html.large-text{font-size:137.5%}body{overflow-wrap:anywhere}#root{display:flex;flex-direction:column;min-height:100dvh}#root>.app{flex:1}.site-footer{margin-top:auto;padding:1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));color:var(--ink-soft);text-align:center}.site-footer p{margin:0}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--red);outline-offset:2px}a{color:var(--blue);text-underline-offset:.15em}.muted{color:var(--ink-soft)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.plain{list-style:none;margin:0;padding:0}.btn{min-height:48px;padding:.45rem 1.1rem;border:2px solid var(--blue);border-radius:12px;background:var(--card);color:var(--blue);font-weight:700;font-size:1rem;cursor:pointer}.btn:active{background:var(--wash)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:default}.btn--primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn--primary:active{background:#193670}.refresh-control{position:relative}.refresh-error{max-width:26rem;color:var(--red)}.top .refresh-error{position:absolute;top:100%;left:50%;transform:translate(-50%);width:min(18rem,85vw);margin:.5rem 0 0;padding:.8rem;background:var(--card);border:2px solid var(--red);border-radius:12px;box-shadow:0 4px 18px #1b244026}.unlock-refresh{margin-top:1rem}.update-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:#1b24409e}.update-dialog{width:min(100%,27rem);max-height:100%;overflow-y:auto;overscroll-behavior:contain;border-radius:18px;background:var(--card);box-shadow:0 20px 70px #00000040}.update-photo{position:relative;margin:0;height:clamp(9rem,25dvh,12rem);overflow:hidden;background:var(--wash)}.update-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 48%}.update-photo figcaption{position:absolute;inset:auto 0 0;padding:1.5rem 1rem .65rem;color:#fff;background:linear-gradient(transparent,#000c);font-size:.9rem;line-height:1.3}.update-content{padding:1.6rem;text-align:center;border-top:4px solid var(--blue)}.update-content h2{margin:0;color:var(--blue);font:700 clamp(1.7rem,6vw,2.1rem)/1.2 var(--serif);letter-spacing:-.025em}.update-content>p{margin:.85rem 0 1.3rem}.update-actions{display:grid;grid-template-columns:1fr;gap:.65rem}.update-actions .btn{min-height:54px}.update-content .update-error{margin:1rem 0 0;color:var(--red)}@media(max-width:380px),(max-height:650px){.update-content{padding:1.1rem}.update-photo{height:8rem}}.link{padding:0;border:0;background:none;color:var(--blue);text-decoration:underline;text-underline-offset:.15em;cursor:pointer;font-family:var(--serif);font-weight:600;font-size:1.1rem;text-align:left}.field{display:grid;gap:.4rem;font-weight:700}.field input{min-height:56px;padding:.5rem .9rem;border:2px solid var(--rule);border-radius:10px;background:var(--card);color:var(--ink);font:inherit;font-weight:400;font-size:1.15rem}.field input:focus{border-color:var(--blue);outline:none}.check{display:flex;gap:.7rem;align-items:center;min-height:48px}.check input{width:1.5rem;height:1.5rem;accent-color:var(--blue)}.unlock,.who{min-height:100dvh;padding:max(env(safe-area-inset-top),2rem) 1.25rem 2rem}.unlock{position:relative;display:block;padding:0;overflow:hidden;background:#111829}.unlock-photo,.unlock-shade{position:absolute;top:0;right:0;left:0;height:62dvh}.unlock-photo{background-size:auto 135%;background-position:50% 100%;background-repeat:no-repeat;filter:contrast(1.35) brightness(.92)}.unlock-shade{background:linear-gradient(180deg,#11182900 30%,#111829b3 72%,#111829)}.unlock-layout{position:relative;display:grid;align-content:end;gap:.9rem;max-width:30rem;min-height:100dvh;margin:0 auto;padding:max(env(safe-area-inset-top),1.5rem) 1.25rem calc(5.5rem + env(safe-area-inset-bottom))}.unlock .unlock-title{margin:0;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.55)}.unlock .unlock-inner{padding:1.4rem 1.3rem 1.3rem;border-radius:16px;background:#fff;box-shadow:0 12px 40px #0006}.unlock .unlock-lede{margin-bottom:1.25rem;font-size:1.05rem}.unlock-credit{position:absolute;right:1rem;bottom:calc(.7rem + env(safe-area-inset-bottom));left:1rem;margin:0;color:#d3dae8;font-size:.85rem;line-height:1.35;text-align:center}@media(min-width:900px){.unlock-photo,.unlock-shade{bottom:0;height:auto}.unlock-photo{background-size:cover;background-position:50% 50%}.unlock-shade{background:linear-gradient(90deg,#111829e6,#1118298c 32%,#11182900 58%)}.unlock-layout{align-content:center;margin:0;padding-left:6vw}.unlock-credit{text-align:right;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.8)}}.unlock-inner,.who-inner{width:100%;max-width:28rem;margin:0 auto}.unlock-title,.who-title{margin:0 0 .6rem;font-family:var(--serif);font-weight:700;font-size:clamp(2.1rem,9vw,2.8rem);line-height:1.1;color:var(--ink)}.unlock-lede,.who-lede{margin:0 0 1.75rem;font-family:var(--serif);font-size:1.15rem;line-height:1.55;color:var(--ink-soft)}.unlock-form{display:grid;gap:1rem}.unlock-form .btn{min-height:56px;font-size:1.1rem}.unlock-error{margin:0;padding:.75rem 1rem;border-left:4px solid var(--red);background:var(--card);color:var(--ink)}.who-list{display:grid;gap:.6rem;margin:1.25rem 0 1.5rem}.who-name{width:100%;min-height:60px;padding:.75rem 1rem;border:1px solid var(--rule);border-radius:10px;background:var(--card);text-align:left;font-family:var(--serif);font-weight:600;font-size:1.25rem;cursor:pointer}.who-name:active{background:var(--wash)}.top{position:sticky;top:0;z-index:5;background:var(--page);border-bottom:1px solid #b7c4dc}.top-inner{max-width:58rem;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;padding:max(env(safe-area-inset-top),.6rem) 1rem .6rem}.top .btn{padding-inline:.8rem}.brand{font-family:var(--serif);font-size:1.2rem;font-weight:700}.book-main{min-height:60dvh}#page-title:focus,.book-section h2:focus{outline:none}.book-page{max-width:58rem;margin:0 auto;background:var(--card)}.book-heading{background:var(--blue);color:#fff;padding:2rem 1.25rem 2.25rem}.book-heading-inner{max-width:48rem;margin:0 auto}.book-kin{margin:0 0 .6rem;font-weight:700;font-size:1.05rem}.book-heading h1{margin:0;font:700 clamp(2rem,5.5vw,3.3rem)/1.15 var(--serif);letter-spacing:-.035em}.book-years{margin:.7rem 0 0;font:1.25rem/1.4 var(--serif)}.book-also,.book-view-label{margin:.65rem 0 0}.book-content{max-width:52rem;margin:0 auto;padding:1.5rem 1.25rem 2.5rem}.book-introduction{max-width:38rem;margin:0 0 1.3rem}.book-introduction>p{font:1.2rem/1.65 var(--serif);margin:0 0 .6rem;white-space:pre-line}.book-section{margin-top:2.5rem;scroll-margin-top:6rem}.book-section>h2,.section-heading h2{margin:0 0 1rem;font:700 1.55rem/1.25 var(--serif);letter-spacing:-.025em}.section-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.4rem 1rem}.collection-count{color:var(--ink-soft)}.book-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;max-width:52rem;margin:0 auto;padding:1.5rem 1.25rem calc(1.5rem + env(safe-area-inset-bottom));border-top:1px solid var(--rule)}.book-footer>p{width:100%;margin:.5rem 0 0;font:1rem var(--serif);color:var(--ink-soft)}.text-size span{font:700 1.05rem var(--serif);margin-right:.2rem}.text-size[aria-pressed=true]{background:var(--wash)}.book-timeline{border-left:2px solid #b7c4dc;margin-left:.3rem;padding-left:1.4rem}.book-event{position:relative;padding:0 0 1.75rem;max-width:39rem}.book-event:before{content:"";position:absolute;width:.65rem;height:.65rem;top:.3rem;left:-1.8rem;border:3px solid white;border-radius:50%;background:var(--blue)}.book-event h3{margin:0 0 .35rem;color:var(--blue);font-size:1rem}.book-claim+.book-claim{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--rule)}.book-claim p{margin:.3rem 0}.event-date{font:600 1.2rem/1.4 var(--serif)}.event-place,.event-detail{font:1.08rem/1.55 var(--serif)}.book-claim .grade{display:inline-block;margin-top:.4rem}.book-event--conflict:before{background:var(--plum)}.book-event--conflict h3{color:var(--plum)}.records{width:100%;margin-top:.3rem}.records summary,.book-disclosure summary{min-height:48px;padding:.6rem 0;color:var(--blue);font-weight:700;cursor:pointer}.records-content{padding:.7rem .8rem;background:var(--page);border-left:3px solid #b7c4dc}.records-content>div+div{margin-top:1rem}.records-content p{margin:0 0 .5rem}.book-disclosure{border-top:1px solid var(--rule)}.book-more{border:2px solid #b7c4dc;border-radius:12px;padding:0 1rem}.book-more>summary{min-height:64px;padding:.9rem 0;color:var(--blue);font-size:1.15rem;font-weight:700;cursor:pointer}.book-more[open]{padding-bottom:1rem}.book-more .book-section,.book-source{margin-top:1.5rem}.book-source h3,.book-source p{margin:0 0 .4rem}.book-relations{display:grid;gap:1rem}.book-relations>li{padding-bottom:1rem;border-bottom:1px solid var(--rule)}.relation-role{margin:0 0 .3rem;color:var(--ink-soft);text-transform:capitalize}.relation-name{margin:0 0 .5rem;font:600 1.2rem/1.3 var(--serif)}.book-notes .note+.note{margin-top:1rem}.book-page .tell-general{padding:1.3rem;background:var(--wash);border-radius:12px}.book-page .tell-general>p{margin:.5rem 0}.hint{color:var(--ink-soft);margin:1rem 0 0}.family>.hint{margin-top:0}.row{padding-top:1.6rem}.row-label{font:700 1.35rem/1.3 var(--serif);margin:0 0 .8rem}.row-empty{color:var(--ink-soft);margin:.3rem 0}.grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}.card{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;width:100%;min-width:0;padding:1rem;border:2px solid #859bc0;border-radius:12px;background:var(--card);box-shadow:0 3px #dce3ee;text-align:left;cursor:pointer}.card:active,.picture-card:active{background:var(--wash)}.card-name{color:var(--ink);font:600 1.2rem/1.3 var(--serif)}.card-years{font:1rem/1.4 var(--serif);color:var(--ink-soft)}.card-kin{font-size:1rem;color:var(--blue)}.card-tag{color:var(--ink-soft)}.card-likely{border:1.5px dotted var(--plum);border-radius:6px;padding:.1rem .5rem;color:var(--plum)}.card-pics{display:flex;gap:.4rem;align-items:center;color:var(--ink-soft);font-size:.95rem}.card-pics-icon{width:1.2rem;height:1.2rem;flex:none}.card-go{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;margin-top:auto;padding-top:.6rem;font-weight:700;color:var(--blue)}.card-go-arrow{width:1.3rem;height:1.3rem;flex:none}.footnote{margin:2rem 0 0;padding-top:1rem;border-top:1px solid var(--rule);color:var(--ink-soft)}.footnote strong{color:var(--plum)}.who-browse{margin-top:1rem}@media(min-width:760px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.book-heading{padding:2.75rem 2rem}.book-content{padding:2rem 2rem 3rem}.book-relations{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem}}@media(max-width:380px){.find-suffix{display:none}.top-inner,.book-content,.book-footer{padding-inline:.85rem}.book-heading{padding-inline:1rem}.top .btn{padding-inline:.55rem}}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:#1b244066}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:11;max-height:90dvh;overflow-y:auto;overscroll-behavior:contain;padding:0 1.25rem calc(2rem + env(safe-area-inset-bottom));background:var(--card);border-radius:16px 16px 0 0;box-shadow:0 -10px 32px #1b244033}.sheet-bar{position:sticky;top:0;z-index:1;display:flex;justify-content:flex-end;align-items:center;margin:0 -1.25rem;padding:.6rem 1.25rem;background:var(--card)}.sheet-grip{position:absolute;top:.45rem;left:50%;width:48px;height:5px;margin-left:-24px;border-radius:3px;background:var(--rule);touch-action:none}@media(min-width:900px)and (orientation:landscape),(min-width:1100px){.scrim{background:#1b244026}.sheet{top:0;left:auto;width:min(460px,44vw);max-height:none;padding-top:env(safe-area-inset-top);border-radius:0;box-shadow:-10px 0 32px #1b244026}}.sheet-name{margin:0;font-family:var(--serif);font-weight:700;font-size:1.9rem;line-height:1.12}.sheet-years{margin:.25rem 0 0;font-size:1.15rem;color:var(--ink-soft)}.sheet-kin{margin:.4rem 0 0;font-size:1.05rem;color:var(--blue)}.sheet-kin--also{margin-top:.1rem}.sheet-private{margin:1.1rem 0 0;padding:.7rem .9rem;border-left:4px solid var(--blue);background:var(--wash)}.sheet-section{margin-top:1.75rem}.sheet-section h3{margin:0 0 .4rem;font-family:var(--serif);font-weight:700;font-size:1.3rem}.event{padding:.75rem 0;border-top:1px solid var(--rule)}.event-name{margin:0 0 .3rem;font-weight:700;font-size:1rem}.event--conflict{padding-left:.85rem;border-left:4px solid var(--plum)}.conflict{margin:0 0 .5rem;color:var(--plum)}.claims{display:grid;gap:.75rem}.claim{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem .6rem}.claim-text{font-family:var(--serif);font-size:1.1rem}.grade{padding:.05rem .6rem;border:1.5px solid currentColor;border-radius:999px;font-size:.9rem;font-weight:700;line-height:1.5;white-space:nowrap}.grade[data-grade=record]{color:var(--blue)}.grade[data-grade=family]{color:var(--ink)}.grade[data-grade=tree]{color:var(--ink-soft);border-style:dashed}.grade[data-grade=candidate]{color:var(--plum);border-style:dotted}.grade[data-grade=rejected]{color:var(--ink-soft);text-decoration:line-through}.cites{flex-basis:100%;margin:0;padding-left:1.1rem;font-size:.95rem;color:var(--ink-soft)}.cites li+li{margin-top:.2rem}.note{flex-basis:100%;margin:.4rem 0 0;font-family:var(--serif);font-size:1.05rem;line-height:1.6;max-width:38rem}.out{font-weight:700}.media-section{margin-top:1.5rem}.media-hint{margin:-.35rem 0 1rem;color:var(--ink)}.media-gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem}.picture{margin:0;min-width:0;border:2px solid #859bc0;border-radius:12px;background:var(--card);box-shadow:0 3px #dce3ee;overflow:hidden}.picture-card{display:block;padding:0;width:100%;border:0;background:var(--card);text-align:left;cursor:pointer}.picture-text-action{padding:0 1rem 1rem}.picture-text-action .btn{width:100%;min-height:60px;font-size:1.1rem}.picture-card:focus-visible{outline-offset:-4px}.picture-info,.picture-kind,.picture-title{display:block}.picture-retry{margin:0 1rem 1rem}.picture-open{display:flex;flex-direction:column;gap:.75rem;width:100%;padding:.8rem;border:0;background:var(--wash);cursor:zoom-in}.picture-enlarge{display:inline-flex;align-items:center;align-self:flex-end;justify-content:center;gap:.5rem;max-width:100%;min-height:52px;padding:.45rem 1rem;border:2px solid var(--blue);border-radius:999px;background:var(--blue);color:#fff;font-size:1.1rem;font-weight:700;line-height:1.3;text-align:center}.picture-enlarge svg{width:1.3rem;height:1.3rem;flex:none}.picture-card:hover .picture-enlarge,.picture-card:focus-visible .picture-enlarge{text-decoration:underline;text-underline-offset:.18em}@keyframes picture-enlarge-glow{0%,to{box-shadow:0 0 #24478f00}50%{box-shadow:0 0 0 7px #24478f38}}@media(prefers-reduced-motion:no-preference){.picture--featured .picture-enlarge{animation:picture-enlarge-glow 2.4s ease-in-out 2}}.picture-open img{display:block;width:100%;height:auto;max-height:24rem;object-fit:contain}.picture--featured .picture-open img{height:auto;max-height:26rem}.picture--portrait .picture-open img,.picture--photo .picture-open img{height:auto;max-height:24rem}.picture-info{padding:1rem}.picture-kind{margin:0 0 .4rem;font-weight:700;color:var(--blue);font-size:.95rem}.picture-title{font:600 1.25rem/1.3 var(--serif);margin:0 0 .6rem}.picture-description{font:1rem/1.6 var(--serif);margin:0 0 1rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.picture-credit{display:block;font:.9rem/1.5 var(--sans);color:var(--ink-soft);margin-top:.75rem}.picture-credit a{color:inherit}.picture-wait{min-height:13rem;padding:1.25rem;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;background:var(--wash);text-align:center}.media-continuation{height:1px}@media(min-width:760px){.media-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.picture--featured{grid-column:1/-1}.picture--featured .picture-card{display:grid;grid-template-columns:1.15fr 1fr;align-items:center}.picture--featured .picture-open{align-self:stretch;justify-content:center}.picture--featured .picture-open img{height:auto;max-height:26rem}.picture--featured:not(:has(.picture-open)) .picture-card{display:block}}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;grid-template-rows:auto minmax(22rem,1fr) auto;gap:.6rem;overflow-y:auto;padding:max(env(safe-area-inset-top),.65rem) .8rem calc(.65rem + env(safe-area-inset-bottom));background:#111829;color:#fff}.lightbox .btn{background:#fff;color:var(--blue);border-color:#fff;padding:.4rem .65rem}.lightbox .btn:disabled{opacity:.45}.lightbox-top{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;padding-bottom:.5rem;background:#111829}.lightbox-top h2{margin:0;font:600 1.15rem/1.3 var(--serif)}.lightbox-kind{margin:0 0 .2rem;color:#d3dae8;font-size:.9rem}.lightbox-close{flex:none}.reader-switch{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem}.lightbox-media{display:grid;grid-template-columns:minmax(0,1fr);min-height:0;width:100%;max-width:70rem;margin:0 auto}.lightbox-media--paired{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.lightbox-scan{display:flex;flex-direction:column;min-width:0;min-height:0;gap:.65rem}.lightbox-scan h3{margin:0;font:700 1rem/1.4 var(--sans);text-align:center}.lightbox-scan .lightbox-stage{flex:1}.lightbox-image-tools{flex:none}.lightbox-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem}.lightbox-actions .btn{min-height:48px}.lightbox-page-preview{display:flex;flex-direction:column;align-items:center;gap:.65rem;flex:1;min-height:0;width:100%;padding:0;border:0;border-radius:8px;background:transparent;color:inherit;cursor:pointer;font:inherit}.lightbox-page-image{display:block;position:relative;flex:1;min-height:0;width:100%}.lightbox-page-image img{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;max-width:100%;max-height:100%}.lightbox-page-preview>.btn{flex:none;min-height:48px}.lightbox-hint{margin:0;color:#d3dae8;font-size:.95rem;text-align:center}.lightbox-stage{position:relative;min-height:0;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}.lightbox-stage img{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;max-width:100%;max-height:100%;transform-origin:center;will-change:transform}.lightbox-wait{margin:2rem auto;text-align:center;color:#d3dae8}.reader-controls{max-width:44rem;width:100%;margin:0 auto}.lightbox-bar{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;padding:.5rem 0}.lightbox-paging{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem 0}.lightbox-details{font-size:1rem;border-top:1px solid #52617b;padding:.9rem 0 .5rem}.lightbox-details p{margin:0;font:1rem/1.6 var(--serif)}.lightbox .picture-credit{color:#d3dae8}.lightbox-details .picture-credit{font-size:1rem}.article-reader{width:100%;max-width:42rem;margin:0 auto;padding:1.5rem;border:1px solid var(--rule);border-radius:12px;background:#fff;color:var(--ink);font:1.32rem/1.75 var(--serif)}.article-reader h3{margin:0 0 1rem;font:700 1.5rem/1.25 var(--serif)}.article-reader p{margin:0 0 1rem;white-space:pre-line}.article-reader .picture-credit{color:var(--ink-soft)}.lightbox .reader-read-text{background:#ffe4a3;border-color:#ffe4a3;color:#1b2440}.lightbox--reading{display:block;background:var(--page);color:var(--ink)}.lightbox--reading .lightbox-top{max-width:42rem;margin:0 auto;background:var(--page);padding-block:.6rem}.lightbox--reading .lightbox-kind,.lightbox--reading .picture-credit{color:var(--ink-soft)}.lightbox--reading .reader-switch{max-width:42rem;margin:.5rem auto 1rem}.lightbox--reading .reader-controls{max-width:42rem;margin-top:1rem}.lightbox--reading .btn{border-color:var(--blue)}.lightbox--reading .lightbox-details{border-color:var(--rule)}.article-reader .reader-note{padding:.65rem .8rem;border-radius:8px;background:var(--wash);font:1rem/1.5 var(--sans);color:var(--ink-soft)}.article-reader{overflow-wrap:anywhere}.reader-progress progress{display:block;width:100%;height:1rem;margin-bottom:1rem;accent-color:var(--blue)}@media(max-width:480px){.article-reader{padding:1rem}}@media(max-width:700px){.lightbox{display:block}.lightbox-media{margin-top:.8rem}.lightbox-media--paired{grid-template-columns:minmax(0,1fr);gap:1.5rem}.lightbox-scan{min-height:25rem}.lightbox-scan .lightbox-stage,.lightbox-page-image{min-height:16rem}.lightbox-whole-preview{height:30rem}.lightbox-image-tools{margin-top:.5rem}.reader-controls{margin-top:1rem}}@media(max-width:380px){.lightbox{padding-inline:.5rem}.lightbox .btn{padding-inline:.45rem}}.tell-open{min-height:44px;margin-top:.6rem;padding:.35rem .95rem;border:1.5px dashed var(--blue);border-radius:999px;background:none;color:var(--blue);font-weight:700;font-size:.95rem;cursor:pointer}.tell-general .tell-open{border-style:solid;font-size:1rem}.tell{margin-top:.75rem;padding:.9rem;border:2px solid var(--blue);border-radius:12px;background:var(--wash)}.tell-about{margin:0 0 .75rem;font-size:.95rem}.tell-choices{display:grid;gap:.6rem}.tell-choice{width:100%;min-height:52px;font-size:1.05rem}.tell-cancel{margin-top:.6rem}.field textarea{width:100%;min-height:7rem;padding:.6rem .8rem;border:2px solid var(--rule);border-radius:10px;background:var(--card);color:var(--ink);font:inherit;font-weight:400;font-size:1.1rem;resize:vertical}.field textarea:focus{border-color:var(--blue);outline:none}.tell-hint{margin:.5rem 0 .75rem;font-size:.95rem;color:var(--ink-soft)}.tell-actions{display:flex;flex-wrap:wrap;gap:.6rem}.tell-sent{margin:.6rem 0 0;padding:.7rem .9rem;border-left:4px solid var(--blue);background:var(--wash)}.family-notes{display:grid;gap:.6rem;margin-top:.6rem}.family-note{padding:.65rem .85rem;border-left:4px solid var(--plum);border-radius:0 8px 8px 0;background:#f5f1f8}.family-note p{margin:0}.family-note .family-note-text{margin-top:.25rem;font-family:var(--serif);font-size:1.05rem}.family-note .family-note-status,.family-note .family-note-reply{margin-top:.35rem;font-size:.95rem}.family-note .family-note-status{color:var(--ink-soft)}.admin{max-width:44rem;margin:0 auto;padding:1.25rem 1rem calc(3rem + env(safe-area-inset-bottom))}.admin-title{margin:0 0 1rem;font-family:var(--serif);font-weight:700;font-size:2rem}.admin-login{display:grid;gap:1rem;max-width:26rem}.admin-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.admin-empty{padding:1rem 0}.admin-note{margin-bottom:1rem;padding:1rem 1.1rem;border:1px solid var(--rule);border-left:5px solid var(--plum);border-radius:10px;background:var(--card)}.admin-note p{margin:0 0 .35rem}.admin-note-text{margin:.5rem 0 .75rem;padding:.5rem .85rem;border-left:3px solid var(--rule);font-family:var(--serif);font-size:1.1rem;line-height:1.55}.admin-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.admin-changes{display:grid;gap:.6rem}.admin-changes li{padding:.6rem .8rem;border-radius:8px;background:var(--card);border:1px solid var(--rule)}.admin-claims{display:grid;gap:.25rem;margin:0 0 .75rem;padding:0;border:0}.admin-claims legend{margin-bottom:.4rem;font-weight:700}.field select{min-height:52px;padding:.4rem .7rem;border:2px solid var(--rule);border-radius:10px;background:var(--card);color:var(--ink);font:inherit;font-size:1.05rem}.tell .field+.field{margin-top:.75rem}.count{margin:.6rem 0}.people{display:grid}.person-row{display:grid;width:100%;min-height:60px;padding:.7rem .2rem;border:0;border-bottom:1px solid var(--rule);background:none;text-align:left;cursor:pointer}.person-row:active{background:var(--wash)}.change-viewer{margin:.9rem 0 1.1rem}
