.explorer-intro{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:22px}.explorer-intro h1{font-size:clamp(2.5rem,4.5vw,3.8rem)}.explorer-intro .land-lede{max-width:750px;margin-bottom:0}.explorer-jump{flex-shrink:0;font-size:.875rem;font-weight:650;text-decoration:underline;text-underline-offset:4px}.land-summary{margin-bottom:24px}.explorer-controls{border-radius:10px;padding:20px 22px;background:#f5f8f4}.explorer-search{display:flex;gap:14px;align-items:flex-end;margin-bottom:18px}.explorer-search .land-field:not(.land-search){min-width:220px}.reset-filters{min-height:44px;padding:11px 15px;white-space:nowrap;border:1px solid #aebfb3;border-radius:5px;background:#fff;font:600 .8rem/1.3 system-ui;color:var(--forest);cursor:pointer}.reset-filters:hover{background:#e5eee5}.explorer-controls .map-categories{gap:9px 23px;margin-bottom:16px}.explorer-controls .map-categories label{min-height:35px;font-size:.8rem}.camping-filters{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px;padding-top:16px;border-top:1px solid #d2dfd2}.camping-filters .land-filter{margin:0}.free-filter{padding:8px 12px;border:1px solid #91ac8d;border-radius:6px;background:white;font-weight:700}.free-filter:has(input:checked){background:#dcebd9;border-color:#2e6a3b;color:#234d2a}.camping-filters>p{font-size:.75rem;color:var(--muted);margin:0 0 0 auto}.filter-note{font-size:.75rem;color:var(--muted);margin:10px 0 0}.explorer-results{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:14px}.explorer-results p{margin:0;font-size:.85rem;font-weight:650}.explorer-results>a{font-size:.8rem;text-decoration:underline;text-underline-offset:3px}.map-toolbar h2,.table-heading h2{font-size:1.5rem;letter-spacing:-.025em}.map-toolbar{margin-top:4px}#camping-map{height:min(66vh,650px);min-height:420px}.map-key{margin-bottom:30px}.table-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:15px;margin-bottom:16px}.table-heading p{font-size:.75rem;color:var(--muted);margin:8px 0 0}.table-heading>a{font-size:.8rem;font-weight:650;text-decoration:underline;text-underline-offset:3px}.explorer-table .name-col{width:26%}.explorer-table .state-col{width:9%}.explorer-table .type-col{width:9%}.explorer-table .option-col{width:8%}.explorer-table .map-col{width:11%}.explorer-table .camped-col{width:7%}.explorer-table .weather-col{width:10%}.explorer-table thead th{padding-inline:6px;font-size:.75rem}.explorer-table tbody td{padding-inline:6px}.explorer-table .land-name{font-size:.85rem}.explorer-table .land-notice{font-weight:450;line-height:1.5}.type-label{display:inline-block;padding:4px 7px;border-radius:4px;background:#eef2ee;color:#294933;font-size:.7rem;line-height:1.4;white-space:nowrap}.type-label.park{background:#e7eff6;color:#265f86}.type-label.monument{background:#f7eee4;color:#8b501f}.type-label.grassland{background:#eff0d9;color:#646626}.type-label.blm{background:#eee8f6;color:#614882}.legend-dot.grassland,.land-marker.grassland{background:#8c8c33}.legend-dot.blm,.land-marker.blm{background:#795899}.place-popup .land-notice{font-size:.75rem}.map-key .camped-key{vertical-align:baseline}#locations,#map-section,#explorer-filters{scroll-margin-top:20px}.explorer-table tr:target>th{box-shadow:inset 4px 0 var(--gold)}
@media(max-width:1000px){.explorer-table{min-width:1000px}.table-scroll-hint{display:block;font-size:.75rem;color:var(--muted);margin:8px 0 12px}}
@media(max-width:760px){.explorer-intro{display:block;margin-bottom:18px}.explorer-intro .land-lede{font-size:.9375rem}.explorer-jump{display:inline-block;margin-top:14px}.land-summary{gap:8px;font-size:.8rem;flex-direction:column}.explorer-controls{padding:14px}.explorer-search{flex-wrap:wrap;gap:11px}.explorer-search .land-search{flex-basis:100%}.explorer-search .land-field:not(.land-search){min-width:0;flex:1 1 150px}.explorer-search select{width:100%;font-size:.75rem}.reset-filters{font-size:.75rem;padding-inline:9px}.explorer-controls .map-categories{gap:4px 12px}.explorer-controls .map-categories label{font-size:.75rem}.camping-filters{gap:9px}.camping-filters .land-filter{width:100%;font-size:.8rem}.camping-filters>p{margin:0;font-size:.7rem}.filter-note{line-height:1.6}.explorer-results{align-items:flex-start;flex-direction:column;gap:5px}.explorer-results>a{font-size:.75rem}.map-toolbar{gap:10px}#camping-map{height:55vh;min-height:370px}.table-heading{align-items:flex-start}.table-heading>a{white-space:nowrap;font-size:.75rem}.table-heading p{font-size:.7rem;max-width:240px}.explorer-table .state-cell{font-size:.75rem}.explorer-table .land-name{font-size:.8rem}.explorer-table .land-detail,.explorer-table .land-notice{font-size:.69rem}.place-popup .popup-kind{font-size:.65rem}.leaflet-popup-content{max-width:230px}}
@media print{.explorer-controls,.explorer-jump,.map-toolbar,.map-key,#map-section,.explorer-results>a,.table-heading>a,.table-scroll-hint{display:none!important}.table-scroll{overflow:visible}.explorer-table{min-width:0;font-size:8pt}.explorer-table .land-name{font-size:8pt}.explorer-table thead th{font-size:7pt}}

.explorer-table .cost-col{width:12%}.cost-label{display:inline-block;border-radius:4px;padding:4px 6px;font-size:.7rem;line-height:1.4;font-weight:650}.cost-label.free{background:#dcebd9;color:#234d2a}.cost-label.paid{background:#f7eee4;color:#824d24}.cost-label.unknown{background:#f0f0ed;color:#66685f}.cost-access{display:block;font-size:.65rem;line-height:1.5;color:var(--muted);margin-top:5px}.explorer-table .fee-detail{margin-top:9px}.explorer-table .vehicle-detail{margin-top:5px}.popup-cost{background:#f1f6ef;padding:10px;border-radius:5px;margin:12px 0;font-size:.75rem;line-height:1.55}.popup-cost p{margin:7px 0}.popup-cost>a{display:block;margin-top:7px}.type-label.campsite{background:#f8e8e7;color:#97433f}.type-label.seashore{background:#dcf2f1;color:#176a6a}.type-label.state{background:#f0e8da;color:#765828}.legend-dot.campsite,.land-marker.campsite{background:#b45e58}.legend-dot.seashore,.land-marker.seashore{background:#288b8b}.legend-dot.state,.land-marker.state{background:#a07a3d}

.camping-guide{margin:0 0 24px;border:1px solid #d3dfd3;border-radius:8px;background:#f8faf6;scroll-margin-top:20px}.camping-guide>summary{cursor:pointer;padding:16px 20px;font-size:.875rem;font-weight:700;color:var(--forest)}.camping-guide>summary::marker{color:#587a4f}.camping-guide .guide-summary-note{display:block;margin:6px 0 0 17px;font-size:.75rem;font-weight:400;color:var(--muted)}.guide-content{padding:0 20px 20px;font-size:.85rem;line-height:1.7}.guide-content h2{font-size:1.15rem;letter-spacing:-.02em;margin:8px 0}.guide-content p{margin:8px 0 15px}.guide-content a{text-decoration:underline;text-underline-offset:3px}.guide-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:28px;border-top:1px solid #d3dfd3;padding-top:16px}.pass-benefits{width:100%;border-collapse:collapse;font-size:.8rem;margin:14px 0}.pass-benefits th,.pass-benefits td{text-align:left;vertical-align:top;border-bottom:1px solid #d3dfd3;padding:10px 8px}.pass-benefits thead th{background:#e9f0e5}.pass-benefits tbody th{font-weight:600;width:38%}.guide-example{padding:14px;background:#eaf1e5;border-radius:5px}.guide-content .guide-reviewed{font-size:.7rem;color:var(--muted);margin-bottom:0}.directions-links{display:flex;flex-direction:column;align-items:center;gap:6px}.directions-links a{font-size:.7rem;line-height:1.5;white-space:nowrap;text-decoration:underline;text-underline-offset:3px;padding:4px 0}.directions-links .land-map-link{font-size:.7rem;padding:4px 0;background:none;border:none}.directions-note{font-size:.75rem;line-height:1.65;color:var(--muted);margin:-16px 0 24px}.popup-directions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:12px 0 5px}.popup-directions strong{flex-basis:100%;font-size:.75rem}.popup-directions a{border:1px solid #afc3ac;border-radius:4px;padding:7px 9px;font-size:.75rem}.place-popup .popup-directions-note{font-size:.7rem;color:#5d655b;line-height:1.5;margin:6px 0 12px}
@media(max-width:760px){.guide-grid{grid-template-columns:1fr;gap:12px}.camping-guide>summary{padding:14px;font-size:.8rem}.camping-guide .guide-summary-note{font-size:.7rem;line-height:1.5}.guide-content{padding:0 14px 14px;font-size:.8rem}.pass-benefits{font-size:.75rem}.guide-content h2{font-size:1.05rem}.directions-note{font-size:.7rem}.directions-links a{min-height:36px;display:inline-flex;align-items:center}}

.legend-icon{display:inline-block;width:22px;height:22px;flex:0 0 22px}.legend-icon.forest,.land-marker.forest{color:#236342}.legend-icon.park,.land-marker.park{color:#286da6}.legend-icon.monument,.land-marker.monument{color:#ad5726}.legend-icon.grassland,.land-marker.grassland{color:#707527}.legend-icon.blm,.land-marker.blm{color:#795899}.legend-icon.campsite,.land-marker.campsite{color:#a64c45}.legend-icon.seashore,.land-marker.seashore{color:#237a7a}.legend-icon.state,.land-marker.state{color:#8a672f}.land-marker-shell .land-marker{position:relative;box-sizing:border-box;width:28px;height:28px;background:#fffdf7;border:1px solid currentColor;border-radius:6px;box-shadow:0 1px 4px #0006}.land-marker .marker-icon{width:22px;height:22px;display:block}.land-marker-shell .land-marker.has-camped{width:32px;height:32px;border:2px solid #b98019;box-shadow:0 1px 5px #0007}.land-marker.has-camped .marker-icon{width:24px;height:24px}.marker-camp-star{position:absolute;right:-7px;top:-8px;background:#f3c86a;border:1px solid #8b5a10;border-radius:50%;width:17px;height:17px;color:#543609;font:bold 12px/15px system-ui;text-align:center}.land-marker-shell:focus-visible{border-radius:6px}.land-marker-shell:hover{z-index:1100!important}.land-marker-shell:hover .land-marker{background:#fff4d8;box-shadow:0 1px 6px #0009}

.cost-label.general{background:#eff3e0;color:#546323;border:1px solid #c3cda3}.land-summary{flex-wrap:wrap}

/* Nearby campsite guides open above both the normal and expanded map. */
.nearby-camping-link{display:block;max-width:100%;border:0;background:none;color:var(--forest);font:600 .75rem/1.45 system-ui;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:8px 0;min-height:44px;margin:4px auto 0;white-space:normal}
.place-popup .nearby-camping-link{margin:0 0 10px;text-align:left;font-size:.8125rem}
.nearby-camping-link:hover{color:#8b501f}.nearby-camping-link:focus-visible,.nearby-camping-dialog a:focus-visible,.nearby-guide-close:focus-visible{outline:3px solid #b67622;outline-offset:3px;border-radius:3px}
.nearby-camping-dialog{box-sizing:border-box;width:min(780px,calc(100vw - 40px));max-width:none;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);padding:0;border:1px solid #a8bcab;border-radius:14px;background:#fffdf8;color:#243a30;box-shadow:0 20px 70px #10251f55;overflow:auto;overscroll-behavior:contain}
.nearby-camping-dialog::backdrop{background:#10251fb8}
.nearby-guide-header{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;gap:20px;justify-content:space-between;padding:22px 26px 18px;background:#f1f6ec;border-bottom:1px solid #cad8c5}
.nearby-guide-header h2{font:650 1.5rem/1.2 system-ui;letter-spacing:-.035em;margin:6px 0 0;color:var(--forest)}
.nearby-guide-eyebrow{font:650 .6875rem/1.5 system-ui;letter-spacing:.09em;margin:0;color:#547348}
.nearby-guide-close{flex-shrink:0;min-height:44px;border:1px solid #9fb29a;border-radius:6px;padding:9px 12px;background:#fff;font:600 .8125rem/1.4 system-ui;color:var(--forest);cursor:pointer}
.nearby-guide-close:hover{background:#e4eddb}.nearby-guide-content{padding:6px 26px 24px;font:.875rem/1.65 system-ui}
.nearby-guide-content p{margin:14px 0}.nearby-guide-content a{color:#285d3d;text-decoration:underline;text-underline-offset:3px}
.nearby-guide-intro{font-size:.9375rem}.nearby-camp-list{list-style:none;counter-reset:camps;padding:0;margin:22px 0;display:grid;gap:16px}
.nearby-camp-list>li{counter-increment:camps;border:1px solid #cad8c5;border-radius:10px;background:#fff;padding:20px}
.nearby-camp-list h3{font:650 1.125rem/1.35 system-ui;letter-spacing:-.02em;margin:5px 0;color:var(--forest)}
.nearby-camp-list h3::before{content:counter(camps) '. ';color:#688353}
.nearby-camp-list .nearby-camp-region{font-size:.625rem;letter-spacing:.08em;font-weight:700;color:#647755;margin:0}
.nearby-camp-list .nearby-camp-coordinates{font:500 .8125rem/1.5 ui-monospace,monospace;color:#61705e;margin:7px 0 14px}
.nearby-camp-maps{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.nearby-camp-maps a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 16px;border:1px solid #a8bf9f;border-radius:6px;background:#f1f6ec;font-size:.8125rem;font-weight:650;text-decoration:none}
.nearby-camp-maps a:hover{background:#e3eedb}.nearby-camp-source{display:inline-flex;align-items:center;min-height:44px;font-size:.75rem;margin-top:5px}.nearby-camp-sources{display:flex;flex-wrap:wrap;gap:0 20px}
.nearby-guide-planning h3,.nearby-guide-restrictions h3{font:650 1.0625rem/1.4 system-ui;margin:0 0 10px;color:var(--forest)}
.nearby-guide-restrictions{padding:18px 20px;border:1px solid #d9c8a2;border-radius:8px;background:#faf4e7;margin:22px 0 0}
.nearby-guide-restrictions p:last-child{margin-bottom:0}.nearby-guide-content .nearby-guide-reviewed{font-size:.75rem;color:#677160;margin:20px 0 0}
@media(max-width:760px){.explorer-table .nearby-camping-link{margin-left:0;text-align:left;font-size:.8125rem}.nearby-camping-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:10px}.nearby-guide-header{padding:14px;gap:10px}.nearby-guide-header h2{font-size:1.125rem}.nearby-guide-eyebrow{font-size:.5625rem;letter-spacing:.04em}.nearby-guide-close{padding-inline:10px}.nearby-guide-content{padding:3px 14px 18px}.nearby-camp-list>li{padding:14px}.nearby-camp-list h3{font-size:1.0625rem}.nearby-camp-maps{gap:8px}.nearby-camp-maps a{flex:1;padding-inline:8px;font-size:.75rem}.nearby-guide-restrictions{padding:14px}}

/* Responsive explorer: the same records become cards, preserving filters and sorting. */
.mobile-status,.mobile-sort,.explorer-shortcuts{display:none}
.type-disclosure{margin-bottom:16px}.type-disclosure>summary{font-size:.85rem;font-weight:650;cursor:pointer;min-height:44px;padding:10px 0}.type-disclosure>summary span{font-size:.75rem;font-weight:400;color:var(--muted);margin-left:8px}.type-disclosure .map-categories{margin-top:8px}
.place-details>summary{display:none}.place-details>div{display:contents}
.map-title{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1}.map-title button,.mobile-sort button{border:1px solid #a6bbaf;border-radius:6px;background:white;color:var(--forest);font:600 .875rem/1.3 system-ui;min-height:44px;padding:10px 13px;cursor:pointer}.map-title button:hover{background:#edf3ef}.map-title button[hidden]{display:none}
.map-help{font-size:.8125rem;color:var(--muted);margin:0 0 10px}.map-regions button{min-height:44px;font-size:.8rem}.map-toolbar{flex-wrap:wrap}.map-regions{justify-content:flex-end}
.camping-cluster{background:transparent;border:0}.cluster-face{display:flex;width:48px;height:48px;align-items:center;justify-content:center;flex-direction:column;background:#f5faf3;border:2px solid #36614b;border-radius:14px;color:#1b4831;box-shadow:0 2px 5px #0004;font:700 14px/1 system-ui}.cluster-face>span[aria-hidden]{font-size:17px;line-height:18px}.cluster-symbol{width:19px;height:19px}.camping-cluster:hover .cluster-face{background:#fff0cc}.camping-cluster:focus-visible{outline:3px solid #c27911;outline-offset:4px;border-radius:14px}
.map-is-expanded{position:fixed;width:100%;overflow:hidden}.map-expanded{position:fixed;inset:0;z-index:3000;background:#fff;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));display:flex;flex-direction:column;gap:8px;height:100vh;height:100dvh}.map-expanded .map-toolbar{flex:none;margin:0;gap:10px}.map-expanded #camping-map{flex:1;min-height:0;height:auto}.map-expanded .map-help{margin:0;flex:none}.map-expanded .map-key,.map-expanded .directions-note{display:none}.map-expanded #map-error{flex:none;margin:0}.map-expanded .map-title{width:100%}.map-expanded .map-regions{flex-wrap:nowrap}.map-expanded .leaflet-popup-content{max-width:320px}
.leaflet-container a.leaflet-popup-close-button{width:44px;height:44px;line-height:40px;z-index:2;background:#fff;border-radius:0 12px 0 8px}.leaflet-popup-content{margin:20px 22px 18px}.place-popup h2{padding-right:14px}.place-popup a{min-height:40px;display:flex;align-items:center;font-size:.8125rem}.popup-directions a{min-height:44px;margin:0}.leaflet-control-zoom a{width:44px!important;height:44px!important;line-height:44px!important}
@media screen and (max-width:1000px){
  .explorer-table{min-width:0!important;table-layout:auto;display:block;border-collapse:separate;width:100%}.explorer-table colgroup{display:none}
  .explorer-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .table-scroll{overflow:visible}.table-scroll-hint{display:none!important}.explorer-table tbody{display:block}.explorer-table tbody[hidden],.explorer-table tr[hidden]{display:none!important}
  .explorer-table tr[data-place]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;padding:16px;margin:0 0 16px;border:1px solid #cbd9ce;border-radius:12px;background:#fff!important;box-shadow:0 2px 5px #18322508;scroll-margin-top:70px}
  .explorer-table tr[data-place]>th,.explorer-table tr[data-place]>td{display:block;position:static;width:auto;min-width:0;background:transparent!important;border:0;box-shadow:none;text-align:left;padding:10px 0;font-size:.9375rem;overflow-wrap:anywhere}
  .explorer-table tr[data-place]>th{grid-column:1/-1;padding-top:0;padding-bottom:14px;border-bottom:1px solid #e1e8e2}.explorer-table .land-name{font-size:1.125rem;line-height:1.35;display:block;padding:3px 0}
  .explorer-table td[data-label]::before{content:attr(data-label);display:block;margin-bottom:6px;color:#53665c;font-size:.75rem;font-weight:650}
  .explorer-table tr[data-place]>.cost-cell{grid-column:1/-1;padding:12px;background:#f5f7ef!important;border-radius:7px;margin:3px 0 5px}.explorer-table .cost-access{display:inline;font-size:.8rem;margin-left:9px}.cost-access br{display:none}.cost-access br::after{content:' · '}.explorer-table .cost-label{font-size:.8125rem}
  .explorer-table .mobile-status{display:inline;font-size:.8rem;margin-left:6px;vertical-align:middle}.explorer-table .land-check{width:22px;height:22px;flex:none}
  .explorer-table tr[data-place]>.directions-cell{grid-column:1/-1;order:10;border-top:1px solid #e1e8e2;padding:12px 0 0;margin-top:5px}.directions-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}.directions-links a,.directions-links .land-map-link{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 4px;border:1px solid #bacdc0;border-radius:6px;font-size:.8rem;text-decoration:none;white-space:normal;text-align:center;background:#f9fbf8}.directions-links .land-map-link::before{content:none}.directions-links .land-map-link{background:#e8f1e8;color:#244b34}
  .explorer-table .weather-cell{order:8}.explorer-table .camped-cell{order:7}.explorer-table .weather-reading{align-items:flex-start;display:inline-flex;vertical-align:middle;margin-right:7px}.explorer-table .weather-value{font-size:1.125rem}.explorer-table .weather-time{font-size:.7rem}.explorer-table .forecast-link{min-height:44px;font-size:.8rem;white-space:normal}.explorer-table .forecast-link::before{content:none}
  .explorer-table .type-label{font-size:.8rem;white-space:normal}.explorer-table .state-cell{font-size:.9375rem}.explorer-table .state-heading{display:block}.explorer-table .state-heading th{display:block;border:0;border-radius:7px;padding:12px 14px;margin:12px 0;font-size:1rem}.explorer-table .state-heading span{font-size:.8rem}
  .place-details{margin-top:8px}.place-details>summary{display:list-item;cursor:pointer;font-size:.8125rem;font-weight:550;text-decoration:underline;text-underline-offset:3px;padding:12px 0;min-height:44px;color:#435e4a}.place-details>div{display:block;padding-bottom:3px}.explorer-table .land-detail,.explorer-table .land-episode,.explorer-table .land-notice{font-size:.8125rem;line-height:1.6}.explorer-table .land-episode,.explorer-table .land-notice{padding:8px 0;min-height:44px}
  .mobile-sort:not([hidden]){display:flex;align-items:flex-end;gap:10px;margin:0 0 18px}.mobile-sort .land-field{flex:1}.mobile-sort select{width:100%;font-size:16px}.mobile-sort button{font-size:.8125rem;flex-shrink:0}
  .explorer-controls .map-categories label{min-height:44px;font-size:.8125rem}.explorer-search input,.explorer-search select{font-size:16px!important}.land-summary>span{white-space:normal}.map-toolbar{display:block}.map-title{margin-bottom:12px}.map-regions{justify-content:flex-start}
}
@media screen and (max-width:760px){
  .land-main{width:calc(100% - 24px);padding-top:20px}.explorer-intro h1{font-size:2.15rem}.explorer-intro .land-lede{font-size:.9375rem;line-height:1.6}.explorer-intro{margin-bottom:14px}.explorer-jump{min-height:44px;padding:10px 0;margin-top:2px}
  .explorer-shortcuts{display:flex;position:sticky;top:0;z-index:1100;background:#fff;gap:6px;padding:8px 0;border-bottom:1px solid #d8e1df;margin:0 0 18px}.explorer-shortcuts a{flex:1;display:flex;align-items:center;justify-content:center;min-height:44px;font-size:.875rem;font-weight:650;border-radius:6px;background:#eef3ee}.explorer-shortcuts a:active{background:#dce9dc}
  #locations,#map-section,#explorer-filters{scroll-margin-top:72px}.land-summary{font-size:.8125rem;gap:5px;line-height:1.5;margin-bottom:16px}.land-summary>span{white-space:normal}.camping-guide{margin-bottom:16px}.guide-summary-note{display:none!important}
  .explorer-search .land-field:not(.land-search){flex-basis:100%}.explorer-search .reset-filters{width:100%;font-size:.875rem}.explorer-controls{padding:14px}.type-disclosure>summary{font-size:.875rem}.explorer-controls .map-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px}.explorer-controls .map-categories label{font-size:.8125rem;gap:6px;flex-wrap:wrap}.map-categories small{font-size:.75rem}.camping-filters .land-filter{font-size:.875rem;min-height:44px}.filter-note{font-size:.8125rem}.camping-filters>p{font-size:.75rem}
  #camping-map{height:52svh;min-height:300px;max-height:510px;border-radius:9px}.map-regions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.map-regions button{font-size:.75rem;padding:8px 4px;line-height:1.25;min-height:44px}.map-title h2{font-size:1.3rem}.map-title button{font-size:.8125rem}.map-help{line-height:1.5;font-size:.8125rem}
  #map-section:not(.map-expanded) #camping-map{touch-action:pan-y}.map-expanded #camping-map{max-height:none;min-height:0;touch-action:none}.map-expanded .map-toolbar{display:block}.map-expanded .map-title{margin-bottom:8px}.map-expanded .map-regions{display:grid}.map-expanded .map-help{font-size:.75rem}.map-key,.directions-note{font-size:.8125rem}.map-key{margin-bottom:22px}.directions-note{margin-top:0}.leaflet-popup-content,.map-expanded .leaflet-popup-content{max-width:calc(100vw - 100px);margin:18px 18px 14px}.place-popup .popup-kind{font-size:.75rem}.place-popup .popup-states{font-size:.8125rem}.popup-cost,.place-popup .popup-status,.place-popup .popup-directions-note{font-size:.8125rem}
  .table-heading{display:block;padding-top:10px}.table-heading>a{display:none}.table-heading p{max-width:none;font-size:.8125rem;line-height:1.5}.table-heading h2{font-size:1.5rem}.land-notes{font-size:.8125rem}.table-scroll{outline:none}.explorer-table tr[data-place]{gap:0 12px;padding:14px}.explorer-table .cost-access{display:block;margin:6px 0 0}.explorer-table .cost-access br{display:initial}.directions-links a,.directions-links .land-map-link{font-size:.75rem}.mobile-sort{gap:8px}.mobile-sort button{padding-inline:10px}
}
@media screen and (max-width:360px){.explorer-table tr[data-place]{padding:12px;gap:0 10px}.explorer-table .mobile-status{font-size:.75rem;margin-left:4px}.explorer-table td[data-label]::before{font-size:.7rem}.directions-links{gap:5px}.directions-links a,.directions-links .land-map-link{font-size:.7rem}.mobile-sort button{font-size:.75rem;padding-inline:7px}.explorer-controls .map-categories{grid-template-columns:1fr}}
@media print{.mobile-status,.mobile-sort,.explorer-shortcuts,.map-title button,.place-details>summary{display:none!important}.place-details>div{display:block!important}.explorer-table{min-width:0!important}}
.cluster-face{position:relative}.cluster-face>.marker-camp-star{font-size:12px;line-height:15px}
@media screen and (max-width:1000px){.explorer-table .cost-access br{display:initial}.explorer-table .cost-access br::after{content:none}}
@media screen and (max-width:760px){#camping-map:has(.leaflet-popup) .leaflet-control-zoom{visibility:hidden}}

/* The campsite map and selected details share the same guide dialog. */
.nearby-guide-header{z-index:1100}
.nearby-guide-map-panel{margin-top:16px}.nearby-guide-map-panel[hidden]{display:none}
.nearby-guide-map-panel h3{font:650 1.125rem/1.4 system-ui;margin:0;color:var(--forest)}
.nearby-guide-content .nearby-guide-map-help{font-size:.8125rem;color:#526651;margin:6px 0 12px}
.nearby-guide-map-toolbar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:0 0 12px}
.nearby-guide-map-toolbar label{flex:1;min-width:220px;font-size:.75rem;font-weight:650}
.nearby-guide-map-toolbar select{display:block;width:100%;max-width:100%;margin-top:5px;padding:10px 8px;border:1px solid #a8bcab;border-radius:6px;background:#fff;color:#243a30;font:400 16px/1.4 system-ui;min-height:44px}
.nearby-guide-map-views{display:flex;gap:8px}.nearby-guide-map-views button{min-height:44px;padding:9px 12px;border:1px solid #a8bcab;border-radius:6px;background:#f1f6ec;color:#285d3d;font:600 .75rem/1.4 system-ui;cursor:pointer}
.nearby-guide-map{height:340px;width:100%;border:1px solid #a8bcab;border-radius:9px;isolation:isolate;background:#e4ecd9;z-index:0}
.nearby-guide-map a{text-decoration:none}.nearby-guide-map .leaflet-control-attribution{font-size:10px;line-height:1.4}.nearby-guide-map .leaflet-control-attribution a{color:#285d3d}
.nearby-camp-pin{background:none;border:0;display:flex;align-items:center;justify-content:center}
.nearby-camp-pin>span{display:flex;width:29px;height:29px;align-items:center;justify-content:center;border-radius:50%;background:#285d3d;color:#fff;border:2px solid #fff;box-shadow:0 1px 5px #10251f88;font:700 14px/1 system-ui}
.nearby-camp-pin.is-selected>span{background:#b4681d;border-color:#fff2c7;transform:scale(1.15)}
.nearby-camp-pin:focus-visible{outline:3px solid #b67622;outline-offset:1px;border-radius:50%}
.nearby-guide-content .nearby-guide-map-status{margin:9px 0 0;font-size:.8125rem;font-weight:650;color:#526651}
.nearby-guide-tile-error,.nearby-guide-map-error{padding:10px;border:1px solid #c9ac67;border-radius:6px;background:#fff7df}
.nearby-camp-list>li[hidden]{display:none}
.nearby-camp-list>li{counter-increment:none}.nearby-camp-list>li h3::before{content:var(--camp-number) '. '}
.nearby-camp-list>li[data-camp-number="1"]{--camp-number:'1'}.nearby-camp-list>li[data-camp-number="2"]{--camp-number:'2'}.nearby-camp-list>li[data-camp-number="3"]{--camp-number:'3'}.nearby-camp-list>li[data-camp-number="4"]{--camp-number:'4'}.nearby-camp-list>li[data-camp-number="5"]{--camp-number:'5'}
.nearby-guide-map-toolbar button:focus-visible,.nearby-guide-map-toolbar select:focus-visible{outline:3px solid #b67622;outline-offset:3px}
@media(max-width:760px){.nearby-guide-map{height:300px}.nearby-guide-map-toolbar{gap:8px}.nearby-guide-map-toolbar label{flex-basis:100%;min-width:0}.nearby-guide-map-views{width:100%}.nearby-guide-map-views button{flex:1}.nearby-guide-map-panel{margin-top:12px}}

/* National Memorials use a colonnade symbol and slate blue. */
.type-label.memorial{background:#e9eaf5;color:#4a527e}.legend-icon.memorial,.land-marker.memorial{color:#59638e}

@media(max-width:540px){.explorer-controls .map-categories{grid-template-columns:1fr}.explorer-controls .map-categories label{flex-wrap:nowrap}.map-categories input{flex-shrink:0}}

.forest-map-help{font-size:.8rem;line-height:1.6;margin:14px 0 10px;color:var(--muted)}.forest-map-help a{font-weight:650;text-decoration:underline;text-underline-offset:3px}
