:root{--font-sans:var(--font-inter-tight),"Inter Tight","IBM Plex Sans",system-ui,-apple-system,sans-serif;--font-serif:var(--font-source-serif),"Source Serif 4","IBM Plex Serif",Georgia,serif;--font-mono:var(--font-jetbrains),"JetBrains Mono","IBM Plex Mono",ui-monospace,monospace;--density:1;--row-h:calc(36px * var(--density));--pad-x:calc(16px * var(--density));--pad-y:calc(12px * var(--density));--gap:calc(12px * var(--density));--radius:6px;--radius-lg:10px;--shadow-1:0 1px 0 rgba(255,255,255,0.03) inset,0 1px 2px rgba(0,0,0,0.3);--bp-sm:640px;--bp-md:900px;--bp-lg:1180px;--container-max:1320px;--container-pad-x:28px;--touch-target:44px}:root,[data-direction=paper]{--bg:#f6f4ee;--bg-elev:#ffffff;--bg-elev-2:#faf8f2;--bg-inset:#efece4;--line:#d9d4c7;--line-strong:#b8b1a0;--text:#1a1a1c;--text-dim:#5b5a55;--text-faint:#8a877e;--accent:#1f3a8a;--accent-soft:#1f3a8a14;--accent-strong:#15296b;--pos:#1f6b3a;--neg:#a23a2a;--warn:#8a6b1f;--info:#1f5d8a}[data-direction=graphite]{--bg:#0e1014;--bg-elev:#15181f;--bg-elev-2:#1c2029;--bg-inset:#0a0c10;--line:#262a33;--line-strong:#353a45;--text:#e7e9ee;--text-dim:#9aa0ac;--text-faint:#5e6470;--accent:#d8a657;--accent-soft:#d8a65722;--accent-strong:#f0bd6e;--pos:#6dbf8a;--neg:#d97a6c;--warn:#d8b25a;--info:#6aa6d8}[data-direction=mist]{--bg:#f5f5f7;--bg-elev:#ffffff;--bg-elev-2:#fbfbfd;--bg-inset:#ebebef;--line:#d2d2d7;--line-strong:#a1a1a6;--text:#1d1d1f;--text-dim:#6e6e73;--text-faint:#86868b;--accent:#1f3a8a;--accent-soft:#1f3a8a14;--accent-strong:#15296b;--pos:#137a3a;--neg:#b3261e;--warn:#a8540c;--info:#1f5d8a}[data-density=compact]{--density:0.85}[data-density=comfortable]{--density:1.15}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;font-feature-settings:"ss01","cv11";overflow-x:hidden;max-width:100vw}body{min-height:100vh}.app-shell,body{display:flex;flex-direction:column}.app-shell{min-height:0}.app-shell,.app-shell>.app-content{flex:1 0 auto}.site-footer{flex-shrink:0;padding:10px 24px;border-top:1px solid var(--border);background:var(--bg-elev);color:var(--text-dim);font-size:11px;line-height:1.4}.site-footer-inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.footer-rich p{margin:0}.footer-rich p+p{margin-top:4px}@media (min-width:901px){body.footer-fixed{padding-bottom:44px}body.footer-fixed .site-footer{position:fixed;bottom:0;left:0;right:0;z-index:30;box-shadow:0 -1px 0 var(--border)}body.footer-fixed .tweaks-panel-anchor{bottom:56px}}.leaflet-container{isolation:isolate}@media (min-width:901px){body.footer-fixed .search-screen-grid{height:calc(100vh - 56px - 44px)}}.admin-shell-grid{height:100vh}@media (min-width:901px){body.footer-fixed .admin-shell-grid{height:calc(100vh - 44px)}}button{color:inherit}button,input,select,textarea{font-family:inherit}a{color:inherit;text-decoration:none}.mono{font-family:var(--font-mono);font-feature-settings:"tnum"}.serif{font-family:var(--font-serif)}.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;gap:8px;height:calc(34px * var(--density));padding:0 14px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--bg-elev);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:background .12s,border-color .12s,transform .05s;white-space:nowrap;text-decoration:none}.btn:hover{background:var(--bg-elev-2);border-color:var(--text-faint)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#ffffff;border-color:var(--accent)}[data-direction=graphite] .btn-primary{color:#0a0c10}.btn-primary:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-dim)}.btn-ghost:hover{background:var(--bg-elev-2);color:var(--text)}.btn-sm{height:calc(28px * var(--density));padding:0 10px;font-size:12px}.input{height:calc(34px * var(--density));padding:0 12px;background:var(--bg-inset);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);font-size:13px;outline:none;transition:border-color .12s,background .12s}.input:focus{border-color:var(--accent);background:var(--bg-elev)}.chip{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:4px;background:var(--bg-elev-2);border:1px solid var(--line);font-size:11px;color:var(--text-dim);font-weight:500;letter-spacing:.02em}.chip.accent{color:var(--accent);border-color:var(--accent-soft);background:var(--accent-soft)}.chip.pos{color:var(--pos);border-color:color-mix(in oklab,var(--pos) 25%,transparent);background:color-mix(in oklab,var(--pos) 10%,transparent)}.chip.neg{color:var(--neg);border-color:color-mix(in oklab,var(--neg) 25%,transparent);background:color-mix(in oklab,var(--neg) 10%,transparent)}.chip.warn{color:var(--warn);border-color:color-mix(in oklab,var(--warn) 25%,transparent);background:color-mix(in oklab,var(--warn) 10%,transparent)}.card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-lg)}.divider{height:1px;width:100%}.divider,.vdivider{background:var(--line)}.vdivider{width:1px;align-self:stretch}.label-eyebrow{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.placeholder-img{background:repeating-linear-gradient(135deg,color-mix(in oklab,var(--text-faint) 18%,transparent) 0 1px,transparent 1px 8px),var(--bg-inset);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--text-faint);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:lowercase;text-align:center;padding:8px}.spark{display:block}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:5px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}.row{align-items:center}.col,.row{display:flex}.col{flex-direction:column}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.grow{flex:1 1}.dot{width:6px;height:6px;border-radius:50%;background:var(--text-faint);display:inline-block}.dot.live{background:var(--pos);box-shadow:0 0 0 3px color-mix(in oklab,var(--pos) 25%,transparent)}.dot.warn{background:var(--warn)}.dot.off{background:var(--text-faint)}@media (max-width:1180px){.prc-right .spark{display:none}}.prc:hover{background:var(--bg-elev-2)}.prc-title:hover{text-decoration:underline;text-underline-offset:3px}.prc-split{grid-template-columns:1fr!important}.prc-split .prc-img{height:140px!important}.prc-split .prc-right{flex-direction:row!important;align-items:center!important;justify-content:space-between;width:100%}.prc-split .prc-right .spark{display:block!important}.prc-split .prc-title{line-height:1.25;max-height:2.5em}.prc-map .prc-title,.prc-split .prc-title{white-space:normal!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.prc-map .prc-title{font-size:13px!important;line-height:1.2;max-height:2.4em}.prc-map .prc-right .spark{display:none!important}.pretty{text-wrap:pretty}.grid-2col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.grid-3col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.grid-4col{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}@media (max-width:720px){.grid-2col,.grid-3col,.grid-4col{grid-template-columns:1fr}}@keyframes fc-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.rich p{margin:0 0 8px;line-height:1.55}.rich p:last-child{margin-bottom:0}.rich ol,.rich ul{margin:0 0 8px;padding-left:22px;line-height:1.55}.rich li{margin-bottom:2px}.rich strong{font-weight:700}.rich em{font-style:italic}.rich a{color:var(--accent);text-decoration:underline}.rich h2{font-size:17px;font-weight:700;margin:14px 0 6px;line-height:1.3;letter-spacing:-.005em}.rich h3{font-size:14.5px;font-weight:700;margin:12px 0 4px;line-height:1.35;color:var(--text)}.rich h2:first-child,.rich h3:first-child{margin-top:0}.rich blockquote{margin:0 0 8px;padding:6px 12px;border-left:3px solid color-mix(in oklab,var(--accent) 60%,var(--border));background:color-mix(in oklab,var(--accent) 6%,transparent);border-radius:0 6px 6px 0;color:var(--text-dim);font-style:italic}.rich code{font-family:var(--font-mono,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:.92em;padding:1px 5px;background:color-mix(in oklab,var(--accent) 8%,var(--bg-inset));border:1px solid var(--line);border-radius:4px}.rich hr{border:0;height:1px;background:var(--border);margin:12px 0}.app-container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:var(--container-pad-x);padding-right:var(--container-pad-x)}.app-container.narrow{max-width:1100px}.app-container.wide{max-width:1440px}@media (max-width:900px){:root{--container-pad-x:20px}}@media (max-width:640px){:root{--container-pad-x:14px}}.show-sm{display:none!important}@media (max-width:640px){.hide-sm{display:none!important}.show-sm{display:initial!important}.show-sm.col,.show-sm.row{display:flex!important}.show-sm.grid{display:grid!important}}.show-md{display:none!important}@media (max-width:900px){.hide-md{display:none!important}.show-md{display:initial!important}.show-md.col,.show-md.row{display:flex!important}.show-md.grid{display:grid!important}}.show-lg{display:none!important}@media (max-width:1180px){.hide-lg{display:none!important}.show-lg{display:initial!important}.show-lg.col,.show-lg.row{display:flex!important}.show-lg.grid{display:grid!important}}@media (max-width:900px){.stack-md{flex-direction:column!important;grid-template-columns:1fr!important;align-items:stretch!important}}@media (max-width:640px){.stack-sm{flex-direction:column!important;grid-template-columns:1fr!important;align-items:stretch!important}}.listing-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;align-items:start;min-width:0}.listing-form-grid>*{grid-column:1/-1}.listing-form-grid>.lf-half{grid-column:span 1}@media (max-width:720px){.listing-form-grid{grid-template-columns:1fr}.listing-form-grid>.lf-half{grid-column:1/-1}}.grid-auto{display:grid;grid-gap:var(--grid-gap,16px);gap:var(--grid-gap,16px);grid-template-columns:repeat(auto-fill,minmax(var(--grid-min,280px),1fr))}.row-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.scrollbox-x{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.scrollbox-x>*{min-width:max-content}@media (max-width:640px){.btn{height:var(--touch-target);padding:0 16px;font-size:14px}.btn-sm{height:36px;padding:0 12px;font-size:13px}.input{height:var(--touch-target);font-size:16px}.card{border-radius:8px}}.drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:90;opacity:0;pointer-events:none;transition:opacity .18s ease}.drawer-backdrop.open{opacity:1;pointer-events:auto}.drawer-panel{position:fixed;top:0;bottom:0;left:0;width:min(86vw,320px);background:var(--bg-elev);border-right:1px solid var(--line);z-index:100;transform:translateX(-100%);transition:transform .22s ease;display:flex;flex-direction:column;overflow-y:auto}.drawer-panel.open{transform:translateX(0)}@media (max-width:640px){.modal-sheet{position:fixed!important;inset:auto 0 0 0!important;max-width:100%!important;width:100%!important;max-height:92vh!important;border-radius:14px 14px 0 0!important;transform:none!important;margin:0!important}.modal-sheet:before{content:"";display:block;width:36px;height:4px;background:var(--line-strong);border-radius:2px;margin:8px auto 4px;flex-shrink:0}}@media (max-width:520px){.prc{grid-template-columns:1fr!important}.prc .prc-img{height:160px!important;width:100%!important}.prc .prc-right{flex-direction:row!important;justify-content:space-between;align-items:center!important;width:100%}.prc .prc-right .spark{display:none!important}}@media (max-width:640px){h1{font-size:20px!important}h2{font-size:17px!important}}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;width:100%}.table-wrap>table{min-width:max-content}.public-list-main{padding-top:32px;padding-bottom:80px}@media (max-width:900px){.public-list-main{padding-top:24px;padding-bottom:56px}.public-list-h1{font-size:24px!important;line-height:1.2!important}}@media (max-width:640px){.public-list-main{padding-top:18px;padding-bottom:44px}.public-list-h1{font-size:22px!important}}.search-screen-grid{display:grid;grid-template-columns:260px 1fr;height:calc(100vh - 56px)}.search-filters-aside{border-right:1px solid var(--line);overflow:auto;background:var(--bg-elev)}@media (max-width:900px){.search-screen-grid{grid-template-columns:1fr;height:auto!important;min-height:0!important}.search-content-grid,.search-content-grid>*,.search-main-pane{overflow:visible!important}.search-toolbar{padding:12px 14px!important}.search-sort-row{width:100%}.search-sort-menu::-webkit-scrollbar{display:none}.search-content-grid.view-map{grid-template-columns:1fr!important}.search-content-grid.view-map.mobile-list .map-pane,.search-content-grid.view-map.mobile-map .map-cards-pane{display:none!important}.search-content-grid.view-map .map-pane{border-left:0!important;height:70vh;min-height:70vh}.detail-screen-root{height:auto!important;overflow:visible!important;max-width:100vw}.detail-breadcrumbs{padding:12px 16px!important;flex-wrap:nowrap!important;overflow:hidden!important;min-width:0}.detail-breadcrumbs>a:last-child,.detail-breadcrumbs>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-grid{padding:16px 16px 48px!important;gap:16px!important}.detail-grid,.detail-grid>*{min-width:0;max-width:100%}.detail-sidebar{position:static!important;top:auto!important}.detail-thumb-grid{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))!important;gap:6px!important;width:100%;max-width:100%;box-sizing:border-box}.detail-thumb-grid>button{height:52px!important;min-width:0}.detail-hero-wrap>img,.detail-hero-wrap>video{max-height:240px!important}.detail-tabs{padding-left:4px;padding-right:4px}.detail-title{font-size:22px!important;line-height:1.2!important;overflow-wrap:anywhere;word-break:break-word}.builder-header{padding:24px 16px 16px!important}.builder-tab-pane{padding:18px 16px 48px!important}}@media (max-width:640px){.detail-title{font-size:19px!important}.detail-hero-wrap>img,.detail-hero-wrap>video{max-height:200px!important}}@media (max-width:900px){.detail-grid .rich p,.detail-grid p{text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto}.detail-hero-wrap>img{aspect-ratio:4/3!important;object-fit:cover!important}}@media (max-width:640px){.auth-card{padding:22px!important}}@media (max-width:900px){.listing-edit-side{position:static!important;top:auto!important;max-height:none!important;border-left:0!important;border-top:1px solid var(--line)!important;padding-left:0!important;padding-top:16px!important;margin-top:8px!important}.admin-detail-pad{padding:18px!important}}@media (max-width:640px){.admin-detail-pad{padding:14px!important}}.filters-sticky{position:-webkit-sticky;position:sticky;top:56px;z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:color-mix(in oklab,var(--bg) 85%,transparent)}@media (max-width:900px){.filters-sticky{top:56px}}