/* Park Maps (/park-maps). Kept separate from styles.css on purpose. */
.pm-jump{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 18px;padding:0;list-style:none}
.pm-jump a{display:inline-block;padding:7px 12px;border-radius:999px;border:1px solid rgba(0,0,0,.12);text-decoration:none;font-size:14px;background:#fff;color:inherit}
.pm-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:14px;margin:0 0 18px}
.pm-dot{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:6px;vertical-align:-1px;border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.18)}
.pm-closed{background:#dc2626}.pm-soon{background:#f59e0b}.pm-open{background:#16a34a}
.pm-park{margin:0 0 34px;scroll-margin-top:16px}
.pm-park h2{margin:0 0 4px}
.pm-head{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between;margin-bottom:10px}
.pm-links{display:flex;flex-wrap:wrap;gap:8px;font-size:14px}
.pm-links a{white-space:nowrap}
.pm-count{font-size:13px;opacity:.75;margin:0}
.pm-wrap{position:relative;border-radius:14px;overflow:hidden;border:1px solid rgba(0,0,0,.12);background:#e8eef3}
.pm-map{height:min(62vh,520px);min-height:320px;width:100%;display:flex;align-items:center;justify-content:center;font-size:14px;color:#555}
.pm-3d{position:absolute;left:10px;top:10px;z-index:2;padding:7px 12px;border-radius:8px;border:0;background:#fff;font-weight:600;font-size:13px;box-shadow:0 1px 4px rgba(0,0,0,.25);cursor:pointer}
.pm-3d[aria-pressed=true]{background:#1e3a8a;color:#fff}
.pm-list{margin-top:10px;font-size:14px}
.pm-list details summary{cursor:pointer;font-weight:600;padding:6px 0}
.pm-list ul{list-style:none;padding:0;margin:6px 0 0;columns:2 220px;column-gap:18px}
.pm-list li{break-inside:avoid}
.pm-list button{background:none;border:0;padding:4px 0;text-align:left;font:inherit;color:inherit;cursor:pointer}
.pm-list button:hover{text-decoration:underline}
.pm-note{margin:0 0 6px;line-height:1.7}
.pm-pop{display:grid;gap:4px;font:13px/1.35 system-ui,sans-serif;color:#111}
.pm-pop b{font-size:14px;padding-right:14px}
.pm-st{font-weight:700}.pm-st.pm-closed{color:#b91c1c;background:none}.pm-st.pm-soon{color:#b45309;background:none}.pm-st.pm-open{color:#15803d;background:none}
.pm-pop small{color:#444}
.pm-pop a{font-weight:600}
@media (max-width:600px){.pm-map{height:56vh;min-height:300px}.pm-head{display:block}.pm-links{margin-top:6px}}
