/* Map-first layout layered over the original pilot styling. */
.content-grid{grid-template-columns:235px 318px minmax(0,1fr);gap:14px;align-items:start}
.results-panel{display:flex;flex-direction:column;max-height:730px;min-width:0}
.results{min-height:0;overflow:auto;scrollbar-color:#b4c9bb #f7f8f4}
.results-head{flex-shrink:0}
.map-panel{min-width:0;top:15px}
#map{height:625px}
.map-head{padding:15px 18px}
.map-head>span{font-size:12px;font-weight:700;color:var(--pine)}
.card{padding:14px 16px;outline:0}
.card h3{font-size:18px;margin:8px 0 3px}
.card .desc{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-bottom:9px}
.card .card-actions{margin-top:11px;align-items:end}
.card .card-actions span{max-width:135px;line-height:1.25}
.card.is-active,.card:hover,.card:focus-visible{background:#eef5ec;box-shadow:inset 3px 0 var(--gold)}
.kind-label{color:var(--muted);font-size:11px;text-align:right;font-weight:700}
.camp-marker{background:transparent;border:0}
.pin{width:20px;height:20px;border:3px solid white;border-radius:50%;background:var(--pine);box-shadow:0 1px 7px #24413899;transition:transform .15s,box-shadow .15s}
.pin.state-park{background:#b67b34}
.pin.backcountry{background:#467c8e}
.camp-marker.is-active .pin{transform:scale(1.55);box-shadow:0 0 0 4px #f6df9d,0 3px 10px #244138aa}
.map-error{padding:20px;color:var(--ink)}
.leaflet-popup-content strong{font-size:14px}
.list-mode .content-grid{grid-template-columns:235px minmax(0,1fr)}
.list-mode .map-panel{display:none}
.list-mode .results-panel{max-height:none}
.list-mode .results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
.list-mode .card{border-right:1px solid var(--line)}
@media(max-width:1180px){
  .content-grid{grid-template-columns:215px minmax(0,1fr)}
  .map-panel{grid-column:2;grid-row:1;position:static}
  .results-panel{grid-column:2;grid-row:2;max-height:450px}
  #map{height:530px}
  .list-mode .content-grid{grid-template-columns:215px minmax(0,1fr)}
  .list-mode .results-panel{grid-row:1}
}
@media(max-width:760px){
  .content-grid{display:flex;flex-direction:column}
  .filters{order:1}
  .map-panel{order:2}
  .results-panel{order:3;max-height:480px}
  #map{height:440px}
  .list-mode .results-panel{order:2;max-height:none}
  .list-mode .results{display:block}
}
