:root{--app-height:100vh;--app-width:100vw;--app-offset-top:0px;--bg-top:#f5f9ec;--bg-bottom:#d7e8de;--panel-bg:#ffffffeb;--panel-border:#122f2824;--text-main:#10231f;--muted-text:#3f5f58;--accent:#125e4a;--accent-soft:#3f8e74;--shadow-strong:0 12px 28px #10231f33}*{box-sizing:border-box}#root,body,html{height:100%;margin:0;min-height:var(--app-height);width:100%}#root,body,html{background:radial-gradient(1200px 600px at 8% -10%,#fff5d3b3,#0000 55%),radial-gradient(1000px 560px at 92% -15%,#b2dabd99,#0000 58%),linear-gradient(165deg,var(--bg-top),var(--bg-bottom))}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-main);font-family:Manrope,Avenir Next,Segoe UI,sans-serif;overflow:hidden;overscroll-behavior:none}.leaflet-container,.leaflet-control a,[role=button],a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}.map-container{height:var(--app-height);min-height:var(--app-height);overflow:clip;position:relative;width:100vw}.leaflet-container,.map{background:radial-gradient(720px 520px at 18% 10%,#fff4cf6b,#0000 56%),linear-gradient(180deg,#d7e8deeb,#c9ddd4f0);height:100%;width:100%}.left-sidebar{color:var(--text-main)}.left-sidebar--desktop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:var(--panel-bg)!important;border:1px solid var(--panel-border);border-radius:18px!important;box-shadow:var(--shadow-strong)!important;display:flex;flex-direction:column;isolation:isolate;left:14px;max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px);overflow:hidden;position:absolute!important;top:14px;width:min(390px,calc(100vw - 28px));z-index:1200}.left-sidebar .MuiTypography-h6,.left-sidebar .MuiTypography-overline{font-family:Fraunces,Georgia,serif}.left-sidebar .MuiAutocomplete-root{background:#ffffffdb;border-radius:10px}.left-sidebar .MuiButton-root{letter-spacing:0;text-transform:none}.left-sidebar .MuiButton-contained{background:linear-gradient(135deg,var(--accent),var(--accent-soft))}.left-sidebar .MuiButton-contained:hover{background:linear-gradient(135deg,#0f4e3d,#2f765f)}.left-sidebar ::-webkit-scrollbar{width:10px}.left-sidebar ::-webkit-scrollbar-track{background:#0000000f;border-radius:999px}.left-sidebar ::-webkit-scrollbar-thumb{background:#125e4a73;border-radius:999px}.left-sidebar ::-webkit-scrollbar-thumb:hover{background:#125e4aad}.left-sidebar__body{flex:1 1;min-height:0;overflow:auto;scrollbar-gutter:stable}.selected-person-actions .MuiButton-root{min-width:0}.left-sidebar__panel--surface{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.left-sidebar__results-scroll{overflow:visible}.left-sidebar__search-shell{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.left-sidebar__search-shell .MuiButton-text{color:var(--muted-text)}.left-sidebar__search-shell .MuiChip-outlined{background:#ffffffc2}.left-sidebar__utility-row{padding-top:.1rem}.left-sidebar__notice{box-shadow:inset 0 1px 0 #ffffff59}.left-sidebar__browse-controls{align-content:start}.left-sidebar__browse-controls .MuiTypography-subtitle2{font-weight:700}.left-sidebar__browse-controls .MuiButton-outlined{border-color:#122f2829}.left-sidebar__browse-controls .MuiButtonGroup-root .MuiButton-text{color:var(--muted-text)}.left-sidebar__browse-controls .MuiChip-outlined{background:#ffffffb3}.left-sidebar__panel--active-filters .MuiChip-root{background:#ffffffc7}.left-sidebar__chip-row{display:flex;flex-wrap:wrap;gap:8px}.section-label{background:none;border:none;box-shadow:none;color:#f8fffa;font-family:Fraunces,serif;font-size:13px;font-weight:600;opacity:1;padding:0;pointer-events:none;text-shadow:0 0 6px #000000bf}.custom-popup{max-width:300px!important}.custom-popup img{display:block}.marker-cluster{align-items:center;background-position:50%;background-repeat:no-repeat;background-size:contain;color:#fff;display:flex;font-size:14px;font-weight:700;height:40px;justify-content:center;margin-left:-20px;margin-top:-20px;text-align:center;text-shadow:0 0 2px #00000080;width:40px}.custom-cluster{background:none!important}.custom-cluster-icon{background:#0000!important;border:none!important}.cemetery-cluster{display:block;filter:drop-shadow(0 6px 10px rgba(16,35,31,.22));height:34px;position:relative;width:34px}.cemetery-cluster__glyph{display:block;height:100%;width:100%}.cemetery-cluster__count{align-items:center;background:#fff8efe0;border:1px solid #7b4e2438;border-radius:999px;bottom:-1px;box-shadow:0 4px 10px #10231f1f;color:#8e541d;display:inline-flex;font-size:.6rem;font-weight:700;height:16px;justify-content:center;letter-spacing:.01em;min-width:16px;padding:0 4px;position:absolute;right:-3px}.tour-marker{transition:transform .3s ease;will-change:transform}.tour-marker:hover{transform:scale(1.2)}.tour-marker div{transition:transform .3s ease,box-shadow .3s ease}.tour-marker:hover div{box-shadow:0 0 8px #0009;transform:scale(1.2)}.leaflet-popup-content-wrapper{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;border:1px solid var(--panel-border);border-radius:18px!important;box-shadow:0 16px 32px #10231f38}.leaflet-popup-tip{background:#fffffff7}.leaflet-popup-content{font-family:Manrope,sans-serif;margin:0}.popup-card{color:var(--text-main);max-width:min(280px,calc(100vw - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px) - 48px));min-width:236px;padding:1rem 1rem .95rem}.popup-card__eyebrow{color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.06em;margin:0 0 .35rem;text-transform:uppercase}.popup-card__title{color:var(--text-main);font-family:Fraunces,Georgia,serif;font-size:1.02rem;line-height:1.2;margin:0}.popup-card__details{grid-gap:.5rem;display:grid;gap:.5rem;margin:.9rem 0 0}.popup-card__row{grid-gap:.15rem;display:grid;gap:.15rem}.popup-card__row dd,.popup-card__row dt{margin:0}.popup-card__row dt{color:var(--muted-text);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.popup-card__row dd{color:var(--text-main);font-size:.92rem;line-height:1.35}.popup-card__media{margin-top:.9rem}.popup-card__hint{color:var(--muted-text);font-size:.78rem;margin:0 0 .45rem}.popup-card__image-link{display:block}.popup-card__image{border:1px solid #122f281f;border-radius:14px;box-shadow:0 10px 24px #10231f24;display:block;max-height:220px;max-width:220px;object-fit:cover;width:100%}.popup-card__actions{align-items:center;display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem;position:relative;z-index:1}.popup-card__action{appearance:none;border:none;border-radius:999px;cursor:pointer;font:inherit;font-size:.8rem;font-weight:700;line-height:1;padding:.55rem .9rem;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease}.popup-card__action:hover{transform:translateY(-1px)}.popup-card__action--primary{background:linear-gradient(135deg,var(--accent),var(--accent-soft));box-shadow:0 10px 18px #125e4a38;color:#fff}.popup-card__action--secondary{background:#fffffff5;border:1px solid #122f2829;color:var(--text-main)}.popup-card__action--ghost{background:#0000;color:var(--muted-text)}.leaflet-top.leaflet-right .leaflet-control{margin-right:12px;margin-top:12px}.leaflet-top.leaflet-right .leaflet-control+.leaflet-control{margin-top:10px}.leaflet-control-layers{background:#ffffffe6!important;border:1px solid var(--panel-border)!important;border-radius:14px!important;box-shadow:0 14px 30px #10231f2e!important;overflow:hidden}.leaflet-control-layers-toggle{background-size:18px 18px!important;height:40px!important;width:40px!important}.leaflet-control-layers-expanded{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2!important;border-radius:14px!important;padding:10px!important}.leaflet-control{z-index:1000}.leaflet-control-attribution,.leaflet-control-container .leaflet-bottom.leaflet-right{display:none!important}.left-sidebar__autocomplete-paper,.left-sidebar__autocomplete-popper .MuiPaper-root{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffffa;border:1px solid #122f2824;border-radius:18px;box-shadow:0 18px 40px #10231f3d}.left-sidebar__autocomplete-popper .MuiAutocomplete-listbox{padding:8px}@media (max-width:1024px){.left-sidebar--desktop{width:min(360px,calc(100vw - 24px))}}[data-rsbs-overlay]{--rsbs-overlay-rounded:24px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:var(--panel-bg)!important;border:1px solid var(--panel-border);border-bottom:none;border-top-left-radius:24px;border-top-right-radius:24px;box-shadow:var(--shadow-strong)!important;color:var(--text-main);font-family:Manrope,Avenir Next,Segoe UI,sans-serif;z-index:1200!important}[data-rsbs-header]{box-shadow:none;padding:0}[data-rsbs-header]:before{background:#122f2833;border-radius:999px;box-shadow:inset 0 1px 1px #ffffff80;content:"";display:block;height:5px;margin:.6rem auto 0;width:44px}[data-rsbs-backdrop]{background:#0000!important;pointer-events:none!important}[data-rsbs-root]{--rsbs-bg:#0000}[data-rsbs-scroll]{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}[data-rsbs-content]{padding-bottom:calc(1.25rem + env(safe-area-inset-bottom, 24px))}.left-sidebar__sheet-header .MuiTypography-overline{font-size:.68rem}.left-sidebar__sheet-header .MuiTypography-h6{font-size:1.05rem}.left-sidebar__sheet-header .left-sidebar__header{padding-bottom:.9rem;padding-top:.25rem}.left-sidebar--mobile .left-sidebar__panel--browse,.left-sidebar--mobile .left-sidebar__panel--selected,.left-sidebar--mobile .left-sidebar__panel--selected-summary{padding-bottom:calc(1rem + env(safe-area-inset-bottom, 24px))}.left-sidebar--mobile .left-sidebar__results-scroll{-webkit-overflow-scrolling:touch;max-height:min(34svh,320px);overflow:auto}.left-sidebar--mobile .left-sidebar__chip-row{gap:6px}.left-sidebar--mobile .selected-person-actions--mobile{align-items:stretch}.left-sidebar__autocomplete-popper{z-index:1600!important}@media (max-width:840px){.map-container{height:var(--app-height);min-height:var(--app-height)}.leaflet-top.leaflet-right{right:calc(env(safe-area-inset-right, 0px) + 12px);top:calc(env(safe-area-inset-top, 0px) + 10px)}.leaflet-top.leaflet-right .leaflet-control{margin-right:0;margin-top:0}.leaflet-top.leaflet-right .leaflet-control+.leaflet-control{margin-top:10px}}.app-shell-loading{align-items:center;background:linear-gradient(165deg,#f5f9ec,#d7e8de);color:#16332c;display:flex;flex-direction:column;gap:.5rem;justify-content:center;min-height:var(--app-height,100vh);padding:1.5rem;text-align:center}.app-shell-loading h1{font-family:Fraunces,Georgia,serif;font-size:clamp(1.4rem,2.8vw,2.25rem);margin:0}.app-shell-loading p{font-family:Manrope,sans-serif;margin:0}