.demo-shell{max-width:1440px;margin:auto;padding:0 34px 90px}.demo-topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:72px;font-size:12px;display:flex}.demo-topbar nav{color:var(--muted);gap:24px;display:flex}.demo-back{font-weight:750}.demo-kicker{color:#789653;letter-spacing:.12em;margin-left:22px;font:10px DM Mono,monospace}.demo-intro{justify-content:space-between;align-items:end;gap:60px;padding:24px 0 22px;display:flex}.demo-intro h1{letter-spacing:-.075em;margin:12px 0 0;font-size:clamp(34px,4vw,48px);line-height:.96}.demo-intro h1 em{color:#719347;font-style:normal}.demo-intro>p{color:var(--muted);max-width:420px;margin:0 0 3px;font-size:14px}.demo-workbench{border:1px solid var(--line);background:var(--card);grid-template-columns:285px minmax(0,1fr);min-height:560px;display:grid}.demo-sidebar{border-right:1px solid var(--line);flex-direction:column;display:flex}.sidebar-heading{letter-spacing:.13em;color:var(--muted);justify-content:space-between;padding:19px 18px 13px;font:10px DM Mono,monospace;display:flex}.scene-count{letter-spacing:0;text-transform:none}.scene-list{padding:0 10px}.scene-card{border:0;border-top:1px solid var(--line);text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;grid-template-columns:67px 1fr;gap:11px;padding:11px 8px;display:grid}.scene-card[aria-pressed=true]{background:#e8efe4}.scene-card img{object-fit:cover;background:#dfe7dc;width:67px;height:67px;display:block}.scene-card strong{margin:3px 0 6px;font-size:12px;line-height:1.25;display:block}.scene-card small{color:var(--muted);font:10px/1.45 DM Mono,monospace;display:block}.demo-notes{border-top:1px solid var(--line);color:var(--muted);margin:auto 18px 20px;padding-top:15px;font-size:11px;line-height:1.5}.demo-notes p{margin:5px 0}.demo-notes strong{color:var(--ink);font-size:12px}.demo-notes a{color:#638735;margin-top:6px;display:inline-block}.demo-main{flex-direction:column;min-width:0;padding:18px 20px 15px;display:flex}.demo-toolbar{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.demo-toolbar label{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font:10px DM Mono,monospace}.demo-toolbar select{border:1px solid var(--line);background:var(--paper);min-width:120px;color:var(--ink);border-radius:3px;margin-top:6px;padding:8px 27px 8px 9px;font:12px Manrope;display:block}.demo-band-meta{color:#789653;align-self:center;font:10px DM Mono,monospace}.map-button{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:3px;padding:8px 11px;font:12px Manrope}.map-button:hover{color:var(--ink);background:#e8efe4}.demo-meta{justify-content:space-between;align-items:end;gap:12px;padding:19px 0 12px;display:flex}.demo-meta strong{font-size:15px;display:block}.demo-meta span{color:var(--muted);font-size:11px}.demo-state{color:#789653;font:10px DM Mono,monospace}.demo-state.is-error{color:#a04d3b}.demo-retry{color:#638735;cursor:pointer;background:0 0;border:0;margin-top:4px;padding:0;font:10px DM Mono,monospace;text-decoration:underline;display:block}.demo-retry[hidden]{display:none}.demo-science a{text-underline-offset:3px;text-decoration:underline}.demo-science p{color:var(--muted)}.demo-map-wrap{border:1px solid var(--line);background:#e1e8df;flex:1;height:clamp(360px,100dvh - 390px,640px);min-height:360px;position:relative;overflow:hidden}#demo-map{position:absolute;inset:0}.demo-swipe-bar{z-index:500;cursor:ew-resize;touch-action:none;background:#f9fff6;justify-content:center;width:3px;display:flex;position:absolute;top:0;bottom:0;left:50%;box-shadow:0 0 0 1px #20392caa,0 0 12px #0004}.demo-swipe-bar span{color:#20392c;background:#f8fff3;border-radius:50%;place-items:center;width:33px;height:33px;font-weight:800;display:grid;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 2px 12px #0004}.demo-swipe-bar:focus{outline-offset:2px;outline:3px solid #a7d65b}.map-legend{z-index:500;color:#20392c;background:#f8fff3e8;align-items:center;gap:8px;padding:7px 9px;font:10px DM Mono,monospace;display:flex;position:absolute;bottom:12px;left:12px}.map-legend i{background:#617f37;border-radius:50%;width:8px;height:8px}.map-legend b{color:#9ba59e;font-weight:400}.demo-slider-row{color:var(--muted);align-items:center;gap:12px;padding:13px 0 2px;font:11px DM Mono,monospace;display:flex}.demo-slider-row input{accent-color:#638735;flex:1}.demo-slider-row output{text-align:right;width:35px}.demo-footer-note{color:#8a9690;justify-content:space-between;padding-top:8px;font-size:10px;display:flex}.demo-science{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:60px;margin-top:80px;padding:65px 0 20px;display:grid}.demo-science h2{letter-spacing:-.07em;margin:16px 0;font-size:clamp(30px,4vw,53px);line-height:1}.demo-science>p{color:var(--muted);max-width:500px;margin:0}.leaflet-container{background:#dfe7dc;font:12px Manrope}.leaflet-control-attribution{font-size:9px}.demo-image-error{z-index:900;border:1px solid var(--line);color:var(--muted);background:#fbfcfae8;padding:13px 16px;font-size:12px;position:absolute;inset:40% auto auto 50%;transform:translate(-50%,-50%)}@media (width<=900px){.demo-shell{padding-left:20px;padding-right:20px}.demo-workbench{grid-template-columns:235px minmax(0,1fr)}.demo-intro{gap:30px}.demo-map-wrap{min-height:360px}}@media (width<=700px){.demo-page .site-header{flex-wrap:nowrap;gap:16px;min-height:66px;padding:16px 20px}.demo-page .site-header nav{gap:16px}.demo-page .site-header nav a:not([href=\/demo]):not([href=\/examples]),.demo-page .header-actions{display:none}.demo-topbar{align-items:start;height:auto;padding:18px 0}.demo-topbar nav{gap:12px}.demo-kicker{margin:6px 0 0;display:block}.demo-intro{padding:24px 0 20px;display:block}.demo-intro>p{margin-top:14px;font-size:12px}.demo-workbench{display:block}.demo-sidebar{border-right:0;border-bottom:1px solid var(--line)}.scene-list{gap:6px;padding:0 10px 10px;display:flex;overflow:auto}.scene-card{border:1px solid var(--line);grid-template-columns:48px 1fr;min-width:195px;padding:8px}.scene-card img{width:48px;height:48px}.scene-card small:last-child{display:none}.demo-meta{flex-direction:column;align-items:start;gap:4px}.demo-notes{display:none}.demo-main{padding:14px 12px 12px}.demo-map-wrap{min-height:390px}.demo-toolbar{gap:8px}.demo-toolbar label select{min-width:105px}.demo-footer-note{display:block}.demo-footer-note span{margin-top:3px;display:block}.demo-science{margin-top:56px;display:block}.demo-science>p{margin-top:25px}}
