/* mobilsale24.de — Suchergebnisse (SRP) */

.srp{padding-top:var(--sp-5);padding-bottom:var(--sp-10)}

/* Toolbar als saubere weiße Leiste */
.srp__bar{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--sp-3) var(--sp-4)}
.srp__count{font-size:var(--fs-lg);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);flex:1;min-width:130px;color:var(--color-text)}
.srp__tools{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}
.srp__view{display:inline-flex;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-surface)}
.srp__view-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--color-text-secondary);transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}
.srp__view-btn + .srp__view-btn{border-left:1px solid var(--color-border)}
.srp__view-btn:hover{background:var(--color-surface-2);color:var(--color-text)}
.srp__view-btn.is-active{background:var(--color-primary-soft);color:var(--color-primary)}
.srp__map{height:70vh;min-height:480px;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border)}
.srp__map .leaflet-popup-content{font-size:var(--fs-sm)}
.srp__map a{color:var(--color-primary);font-weight:var(--fw-semibold)}
.srp__sort{display:flex;align-items:center;gap:var(--sp-2)}
.srp__sort .field__label{white-space:nowrap;color:var(--color-text-muted)}
.srp__save{display:flex;align-items:center;gap:var(--sp-2)}
.srp__filter-toggle{display:none}
.select--inline{height:40px;width:auto;min-width:170px}

/* Aktive Filter-Chips */
.srp__chips{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-5);align-items:center}
.srp__chips .chip{color:var(--color-text);text-decoration:none;background:var(--color-surface);transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease)}
.srp__chips .chip:hover{border-color:var(--color-primary);color:var(--color-primary)}
.chip__x{font-weight:var(--fw-bold);margin-left:4px;color:var(--color-text-muted)}
.srp__chips .chip:hover .chip__x{color:var(--color-primary)}
.srp__chips-reset{font-size:var(--fs-sm);color:var(--color-primary);font-weight:var(--fw-semibold)}
.srp__chips-reset:hover{text-decoration:underline}

.srp__layout{display:grid;grid-template-columns:300px 1fr;gap:var(--sp-6);align-items:start}

/* Masaüstü: sabit, kendi içinde kaydırılabilen filtre kenar çubuğu (büyük araç pazarı deneyimi) */
@media (min-width:1025px){
  .srp__filters{position:sticky;top:calc(var(--header-h) + var(--sp-4));max-height:calc(100vh - var(--header-h) - var(--sp-6));display:flex;flex-direction:column;min-height:0}
  .srp__filters .filter-panel{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
  .srp__filters .filter-panel__footer{position:sticky;bottom:0;margin:var(--sp-2) 0 0;padding-top:var(--sp-3);background:var(--color-surface);border-top:1px solid var(--color-divider)}
}

/* Filter-Panel */
.filter-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-1)}
.filter-panel__head{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--sp-2)}
.filter-panel__head h2{font-size:var(--fs-md);font-weight:var(--fw-bold)}
.filter-panel__reset{font-size:var(--fs-sm);color:var(--color-primary);font-weight:var(--fw-medium)}
.filter-panel__reset:hover{text-decoration:underline}
.filter-group{border-top:1px solid var(--color-divider);padding:var(--sp-3) 0}
.filter-group summary{position:relative;cursor:pointer;font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:var(--color-text);padding:2px 22px 2px 0;margin-bottom:var(--sp-2);list-style:none;transition:color var(--dur) var(--ease)}
.filter-group summary:hover{color:var(--color-primary)}
.filter-group summary:hover::after{border-color:var(--color-primary)}
.filter-group summary::-webkit-details-marker{display:none}
.filter-group summary::after{content:'';position:absolute;right:4px;top:50%;width:7px;height:7px;margin-top:-6px;border-right:2px solid var(--color-text-muted);border-bottom:2px solid var(--color-text-muted);transform:rotate(45deg);transition:transform var(--dur) var(--ease)}
.filter-group[open] summary::after{transform:rotate(-135deg);margin-top:-2px}
.filter-group .field{margin-bottom:var(--sp-2)}
.filter-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-2)}
.filter-features{max-height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding-right:4px}
.filter-features__group{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:var(--sp-2) 0 2px}
.checkbox--sm{font-size:var(--fs-sm);gap:8px;display:flex;align-items:center}
.checkbox--sm input{width:16px;height:16px;accent-color:var(--color-primary);flex:none}
.filter-panel [data-filter-submit]{margin-top:var(--sp-4)}

/* Ergebnisliste */
.listing-grid--srp{grid-template-columns:repeat(3,minmax(0,1fr))}
.srp__results .listing-grid{display:grid;gap:var(--sp-4)}

/* Listing-Karte */
.listing-card{display:flex;flex-direction:column}
.listing-card:hover{transform:translateY(-3px)}
.listing-card__media{position:relative;aspect-ratio:4/3;background:var(--color-surface-2);display:block;overflow:hidden}
.listing-card__media img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease)}
.listing-card:hover .listing-card__media img{transform:scale(1.05)}
.listing-card__noimg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2rem;color:var(--color-text-muted)}
.listing-card__count{position:absolute;left:8px;bottom:8px;display:inline-flex;align-items:center;gap:4px;background:rgba(0,0,0,.6);color:#fff;font-size:var(--fs-2xs);padding:3px 8px;border-radius:var(--radius-pill)}
.listing-card .badge--top{position:absolute;left:8px;top:8px}
.listing-card__park{position:absolute;right:8px;top:8px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-pill);background:rgba(255,255,255,.92);color:var(--color-text-secondary);box-shadow:var(--shadow-sm);transition:transform var(--dur-fast) var(--ease),color var(--dur) var(--ease),background var(--dur) var(--ease)}
.listing-card__park:hover{transform:scale(1.1);color:var(--color-primary)}
.listing-card__park.is-active{background:var(--color-primary);color:#fff}
.listing-card__park.is-active svg{fill:currentColor}
.listing-card__compare{position:absolute;right:8px;top:50px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-pill);background:rgba(255,255,255,.92);color:var(--color-text-secondary);box-shadow:var(--shadow-sm);transition:transform var(--dur-fast) var(--ease),color var(--dur) var(--ease),background var(--dur) var(--ease)}
.listing-card__compare:hover{transform:scale(1.1);color:var(--color-primary)}
.listing-card__compare.is-active{background:var(--color-primary);color:#fff}
.listing-card__share{position:absolute;right:8px;top:92px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-pill);background:rgba(255,255,255,.92);color:var(--color-text-secondary);box-shadow:var(--shadow-sm);transition:transform var(--dur-fast) var(--ease),color var(--dur) var(--ease),background var(--dur) var(--ease)}
.listing-card__share:hover{transform:scale(1.1);color:var(--color-primary)}
.listing-card__share:active{transform:scale(0.95)}
.listing-card__body{padding:var(--sp-4);display:flex;flex-direction:column;gap:4px}
.listing-card__title{font-weight:var(--fw-bold);font-size:var(--fs-md);color:var(--color-text);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;transition:color var(--dur) var(--ease)}
.listing-card:hover .listing-card__title{color:var(--color-primary)}
.listing-card__variant{font-size:var(--fs-sm);color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;min-height:1.25em}
.listing-card__pricerow{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:6px}
.listing-card__price{font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--color-text);letter-spacing:var(--ls-tight)}
.listing-card__vat{font-size:var(--fs-2xs);color:var(--color-text-muted);font-weight:var(--fw-regular)}
.listing-card__leasing{font-size:var(--fs-xs);color:var(--color-text-secondary);font-weight:var(--fw-medium)}
.listing-card__specs{font-size:var(--fs-sm);color:var(--color-text-secondary);margin-top:2px}
.listing-card__meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:var(--fs-xs);color:var(--color-text-muted);margin-top:auto;padding-top:8px;border-top:1px solid var(--color-divider)}
.listing-card__loc{display:inline-flex;align-items:center;gap:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.listing-card__loc svg{flex:none;color:var(--color-text-muted)}
.listing-card__rating{display:inline-flex;align-items:center;gap:3px;font-weight:var(--fw-semibold);color:var(--color-text-secondary)}
.listing-card__rating svg{color:var(--rating-star)}
.listing-card__seller{padding:2px 8px;background:var(--color-surface-2);border-radius:var(--radius-pill);font-weight:var(--fw-medium);white-space:nowrap}

/* Preisbewertung (mobilsale24.de) */
/* .price-rating* → components.css (auch im Händler-Panel benötigt) */

/* Empty-State: siehe components.css (bereichsübergreifend) */
/* Pagination */
.pagination{display:flex;justify-content:center;align-items:center;gap:var(--sp-1);margin-top:var(--sp-8)}
.pagination__link{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--color-text);background:var(--color-surface);transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease),background var(--dur) var(--ease)}
.pagination__link:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}
.pagination__link.is-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 2px 8px rgba(var(--color-primary-rgb),.32)}
.pagination__dots{padding:0 6px;color:var(--color-text-muted)}

@media (max-width:1024px){
  .listing-grid--srp{grid-template-columns:repeat(2,1fr)}
  .srp__layout{grid-template-columns:1fr}
  .srp__filter-toggle{display:inline-flex}
  .srp__filters{position:fixed;inset:0;z-index:var(--z-modal);background:var(--color-bg);padding:var(--sp-4);overflow:auto;transform:translateX(-100%);transition:transform var(--dur) var(--ease)}
  .srp__filters.is-open{transform:translateX(0)}
  .filter-panel{position:static;border:none;box-shadow:none;border-radius:0;max-height:none;padding:0}
}
@media (max-width:560px){
  .listing-grid--srp{grid-template-columns:1fr}
  .srp__bar{position:static}
  .srp__count{width:100%;flex:none}
  .srp__tools{width:100%;justify-content:space-between}
  .select--inline{min-width:0;flex:1}
}

/* ---------- Listenansicht (horizontale Karten) ---------- */
.listing-grid--list{display:flex;flex-direction:column;gap:var(--sp-3)}
.listing-grid--list .listing-card{flex-direction:row}
.listing-grid--list .listing-card__media{width:300px;flex:none;aspect-ratio:4/3}
.listing-grid--list .listing-card__body{flex:1;gap:var(--sp-2)}
.listing-grid--list .listing-card__title{font-size:var(--fs-lg);-webkit-line-clamp:1;min-height:0}
.listing-grid--list .listing-card__price{font-size:var(--fs-xl)}
.listing-grid--list .listing-card__specs{font-size:var(--fs-md)}
@media (max-width:640px){
  .listing-grid--list .listing-card{flex-direction:column}
  .listing-grid--list .listing-card__media{width:100%}
}
