/* Startseite: klapbare Weitere-Filter + Accordion */
.tags-filter-shell{
  margin-top:4px;
  text-align:left;
}

.public-filter-toggle{
  width:auto;
  min-width:0;
  max-width:100%;
  min-height:46px;
  height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 18px 0 20px;
  text-align:left;
  appearance:none;
  box-shadow:none;
  font-weight:600 !important;
  line-height:1;
}

.public-filter-toggle:hover{filter:none}

.public-filter-toggle-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.public-filter-toggle-title{font-size:16px;font-weight:600;line-height:1}
.public-filter-toggle-meta{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:4px}

.public-filter-toggle-arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;height:18px;
  font-size:22px;line-height:1;
  transform:rotate(90deg);
  transition:transform .16s ease;
  margin-top:1px;
}

.tags-filter-shell.is-open .public-filter-toggle-arrow,
.filters-col-more.is-open .public-filter-toggle-arrow{transform:rotate(-90deg)}

.filters-col-more .public-filter-toggle-arrow{transform:rotate(90deg)}

.public-filter-panel{display:none;margin-top:14px;text-align:left}
.tags-filter-shell.is-open .public-filter-panel{display:block}

#filtersForm .tags-filter-shell.is-open{
  margin-top:10px;
  padding:16px 18px 18px;
  border:1px solid #cbd5e1;
  border-radius:18px;
  background:#FFFBF5 !important;
  box-shadow:0 1px 3px rgba(15,23,42,.05);
}

#filtersForm .tags-filter-shell.is-open .public-filter-panel{
  margin-top:0;
  background:#FFFBF5 !important;
}

.filters-submit-row.is-collapsed .filters-submit-button{display:none !important}
.filters-submit-row.is-collapsed{display:none}

.tags-filter-shell .row{row-gap:10px !important}

.filter-accordion-item{
  border:1px solid #cbd5e1;
  border-radius:12px;
  background:#FFFBF5;
  overflow:hidden;
}

.filter-accordion-toggle{
  width:100%;min-height:58px;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:14px 18px;border:0;background:transparent !important;color:#111 !important;text-align:left;appearance:none;
}

.filter-accordion-toggle:hover{background:rgba(255,255,255,.55) !important}

.filter-accordion-text{display:flex;align-items:baseline;gap:12px;min-width:0}
.filter-accordion-title{font-weight:800;font-size:18px;line-height:1.15}
.filter-accordion-subtitle{font-size:15px;color:#111;opacity:.72}
.filter-accordion-meta{display:inline-flex;align-items:center;gap:14px;flex-shrink:0}

.filter-accordion-count{
  min-width:34px;height:28px;padding:2px 8px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid #cbd5e1;border-radius:8px;
  background:#fff;font-weight:700;font-size:14px;
}

.filter-accordion-arrow{
  display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;font-size:28px;line-height:1;
  transform:rotate(90deg);transition:transform .16s ease;
}

.filter-accordion-item.is-open .filter-accordion-arrow{transform:rotate(-90deg)}

.filter-accordion-options{display:none !important;flex-wrap:wrap;gap:9px;padding:0 18px 18px;background:#FFFBF5 !important}
.filter-accordion-item.is-open .filter-accordion-options{display:flex !important}

#filtersForm .filter-accordion-item,
#filtersForm .filter-accordion-toggle,
#filtersForm .filter-accordion-options{box-shadow:none !important}

#filtersForm .filter-accordion-toggle{border-radius:0 !important}

.active-filter-summary{
  border:1px solid #cbd5e1;
  border-radius:12px;
  padding:14px 16px;
  background:#FFFBF5 !important;
  margin-top:2px;margin-bottom:2px;
}

.active-filter-summary-title{font-weight:700;margin-bottom:10px}

.active-filter-summary-list{display:flex;flex-wrap:wrap;gap:8px;align-items:center}

.active-filter-summary .active-filter-pill{
  appearance:none;display:inline-flex;align-items:center;gap:5px;
  padding:4px 9px;border:1px solid #111;border-radius:999px;
  background:linear-gradient(90deg,#ffcb1f,#ffb11c,#ff9c01) !important;
  color:#111 !important;text-decoration:none;font-weight:600;font-size:15px;line-height:1.15;
  cursor:pointer;box-shadow:none !important;max-width:100%;white-space:normal;
}

.active-filter-summary .active-filter-pill span{font-weight:800}

.active-filter-reset{
  appearance:none;border:0;background:transparent;padding:0;
  color:#111 !important;text-decoration:underline;margin-left:4px;font-size:14px;cursor:pointer;
}

.tags-filter-shell .row{align-items:start !important}
.tags-filter-shell .row > .col-lg-6{display:block !important;align-self:start !important}
.tags-filter-shell .row > .col-lg-6 > .filter-accordion-item{width:100%;height:auto !important;min-height:0 !important}

.filters-col-more .public-filter-toggle{min-width:0;margin:0;width:100%}

/* Weitere-Filter-Button: einheitlich orange, innere Spans ohne Flächenfarbe */
#filtersForm .public-filter-toggle,
#filtersForm .filters-col-more .public-filter-toggle,
#filtersForm button.public-filter-toggle.btn-primary{
  background:linear-gradient(90deg,#ffcb1f,#ffb11c,#ff9c01) !important;
  color:#111 !important;
  border:2px solid rgba(17,17,17,.28) !important;
  border-radius:14px !important;
  box-shadow:none !important;
  font-weight:600 !important;
  padding:0 16px 0 18px !important;
}

#filtersForm .public-filter-toggle:hover,
#filtersForm .filters-col-more.is-open .public-filter-toggle,
#filtersForm button.public-filter-toggle.btn-primary:hover{
  background:linear-gradient(90deg,#ffcb1f,#ffb36b,#ff7a00) !important;
  color:#111 !important;
  border-color:#111 !important;
}

#filtersForm .public-filter-toggle *,
#filtersForm .filters-col-more .public-filter-toggle *,
#filtersForm button.public-filter-toggle.btn-primary *{
  background:transparent !important;
  background-color:transparent !important;
  color:#111 !important;
  box-shadow:none !important;
  border:0 !important;
}

#filtersForm .tags-filter-shell,
#filtersForm .public-filter-panel{
  background:transparent !important;
}

#filtersForm .tags-filter-shell.is-open,
#filtersForm .tags-filter-shell.is-open .public-filter-panel,
#filtersForm .tags-filter-shell.is-open .filter-accordion-item,
#filtersForm .tags-filter-shell.is-open .filter-accordion-options{
  background:#FFFBF5 !important;
}

#filtersForm .filter-accordion-item{
  background:#FFFBF5 !important;
  border-color:#cbd5e1 !important;
}

#filtersForm .active-filter-summary{
  background:#FFFBF5 !important;
  border-color:#cbd5e1 !important;
}

/* Startseite: Filterbox ohne zusätzlichen Rahmen */
.rf-home .rf-home-filter-card{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.rf-home .rf-home-filter-card > .card-body{
  padding:0 !important;
}

.rf-home .filter-card > .card-body{
  padding-left:0 !important;
  padding-right:0 !important;
}

.filter-card > .card-body{
  padding-left:18px !important;
  padding-right:18px !important;
}

.rf-home .rf-home-map{
  border:3px solid #111 !important;
  border-radius:24px !important;
  background:#fff6e9 !important;
  overflow:hidden;
}

/* Hero-Akzent: brand-clean setzt span{color:#111 !important} */
.home-teaser-accent{
  color:#fea60c !important;
  font-weight:700 !important;
}

/* Formular-Zeile nicht breiter als Hero (Bootstrap .row negative Margins) */
#filtersForm.row{
  margin-left:0 !important;
  margin-right:0 !important;
  --bs-gutter-x:0;
}

/* Hauptzeile: Suche + Felder füllen die volle Breite */
#filtersForm .filters-primary-row{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:12px;
  width:100%;
  padding-right:0 !important;
}

#filtersForm .filters-col-search{
  flex:1 1 100%;
  min-width:0;
}

#filtersForm .filters-col-cap{
  flex:1 1 0;
  min-width:0;
  width:auto;
}

#filtersForm .filters-col-more{
  flex:1 1 0;
  min-width:0;
}

@media (min-width:992px){
  #filtersForm .filters-primary-row{
    flex-wrap:nowrap;
  }

  #filtersForm .filters-col-search{
    flex:1 1 auto;
  }

  #filtersForm .filters-col-cap{
    flex:0 0 112px;
    width:112px;
  }

  #filtersForm .filters-col-more{
    flex:0 0 208px;
    width:208px;
  }
}

@media (max-width:991.98px){
  #filtersForm .filters-col-search{
    flex:1 1 100%;
  }
}

@media (max-width:760px){
  .public-filter-toggle{
    min-width:0;
    width:100%;
    justify-content:space-between;
    padding:0 16px 0 18px !important;
    border-radius:14px !important;
  }
  .public-filter-toggle-title{font-size:15px}
  .filter-accordion-text{flex-direction:column;gap:2px;align-items:flex-start}
  .filter-accordion-toggle{min-height:64px}
}

/* Nach buttons.css: Toggle nicht wie dicker Pill-Primary stylen */
#filtersForm .public-filter-toggle.btn-primary{
  min-height:46px !important;
  height:46px !important;
  padding:0 16px 0 18px !important;
  border:2px solid rgba(17,17,17,.28) !important;
  border-radius:14px !important;
  font-weight:600 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}
