/* /camping/ (01.10.2026): filter bar, map, region lists. Cards use konak.css (.stay-cards / .sc). */
.kf { position: sticky; top: 65px; z-index: 5; background: rgb(255 255 255 / .96); backdrop-filter: blur(6px); border-bottom: 1px solid var(--line); margin: 14px -16px 0; padding: 10px 16px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; }
.kf-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.kchip { border: 1px solid var(--line); background: #fff; border-radius: 999px; padding: 6px 12px; font: 600 .86rem/1.2 inherit; color: var(--ink); cursor: pointer; min-height: 36px; display: inline-flex; align-items: center; gap: 6px; }
.kchip span { font: 600 .7rem/1 var(--f-mono); color: var(--ink-2); }
.kchip::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--kc, #13233f); flex: none; }
.kchip[data-kf-tur=""]::before { display: none; }
.kchip--bungalow { --kc: #0a7780; } .kchip--campsite { --kc: #3b7d2a; } .kchip--glamping { --kc: #b5562b; } .kchip--treehouse { --kc: #8a6a00; } .kchip--caravan { --kc: #5b4bb7; }
.kchip[aria-pressed="true"] { background: var(--night); border-color: var(--night); color: #fff; }
.kchip[aria-pressed="true"] span { color: #cfd8e6; }
.kf-sel { display: flex; flex-wrap: wrap; gap: 8px 12px; }
.kf-sel label { font: 600 .72rem/1 var(--f-mono); text-transform: uppercase; letter-spacing: .05em; color: var(--ink-2); display: inline-flex; align-items: center; gap: 6px; }
.kf-sel select { font: 400 .9rem/1.2 inherit; text-transform: none; letter-spacing: 0; color: var(--ink); border: 1px solid var(--line); border-radius: 10px; padding: 7px 8px; background: #fff; min-height: 36px; max-width: 46vw; }
.kf-say { margin: 0 0 0 auto !important; font: 600 .78rem/1.2 var(--f-mono); color: var(--ink-2); }
.kmap { height: 440px; margin: 12px 0 8px; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; background: #eef3f6; position: relative; }
.kmap-wait { margin: 0; padding: 18px; font-size: .86rem; color: var(--ink-2); }
.kmap .maplibregl-popup-content { border-radius: 12px; padding: 10px 12px; font-size: .85rem; max-width: 240px; }
.kmap .kp-t { font: 600 .64rem/1.3 var(--f-mono); text-transform: uppercase; letter-spacing: .05em; color: var(--ink-2); margin: 0 0 3px; }
.kmap .kp-n { font-weight: 700; color: var(--night); margin: 0 0 4px; }
.kmap .kp-r { margin: 0 0 4px; }
.kmap .kp-l { margin: 0; display: flex; flex-wrap: wrap; gap: 4px 10px; font-weight: 600; }
.kreg-jump { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: .88rem; margin: 6px 0 4px; }
.kreg-jump small { font-family: var(--f-mono); color: var(--ink-2); }
.kreg { margin-top: 22px; scroll-margin-top: 190px; }
.kreg[hidden] { display: none; }
.kreg-h { font: 700 1.15rem/1.2 var(--f-display); margin: 18px 0 4px; color: var(--night); }
.kreg-h a { color: inherit; text-decoration: none; }
.kreg-h a:hover { text-decoration: underline; }
.kreg-h small { font: 600 .72rem/1 var(--f-mono); color: var(--ink-2); margin-left: 6px; }
.kmore { margin: 12px 0 0; border: 1px solid var(--night); background: #fff; color: var(--night); border-radius: 999px; padding: 9px 18px; font: 600 .9rem/1 inherit; cursor: pointer; min-height: 40px; }
.kmore span { font-weight: 400; color: var(--ink-2); }
.kmore:hover { background: var(--night); color: #fff; }
.kmore:hover span { color: #cfd8e6; }
.sc-web a { font-size: .84rem; overflow-wrap: anywhere; }
.kt td, .kt th { vertical-align: top; }
.kt td:first-child { min-width: 200px; }
#parks .table-wrap, #licensed .table-wrap { margin-bottom: 8px; }
@media (max-width: 700px) {
  .kf { position: static; gap: 8px; padding: 8px 16px; }
  .kreg { scroll-margin-top: 76px; }
  .kf-chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin: 0 -16px; padding: 0 16px; width: calc(100% + 32px); }
  .kf-chips::-webkit-scrollbar { display: none; }
  .kchip { flex: none; }
  .kf-sel { width: 100%; }
  .kf-sel label { flex: 1 1 0; min-width: 0; }
  .kf-sel select { max-width: none; width: 100%; min-width: 0; }
  .kf-say { margin: 0 !important; }
  .kmap { height: 340px; }
}
