/* Frontend styling (neutral, minimal) */
.ers-catalog{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.ers-card{border:1px solid #e5e7eb;border-radius:16px;padding:14px;background:#fff}
.ers-thumb img{width:100%;height:auto;border-radius:12px}
.ers-title{margin:10px 0 6px;font-size:18px}
.ers-meta{display:flex;justify-content:space-between;gap:8px;color:#555;font-size:13px}
.ers-btn{display:inline-block;margin-top:10px;padding:8px 12px;border-radius:12px;border:1px solid #e5e7eb;text-decoration:none}
.ers-btn:hover{background:#f7f7f8}
.ers-availability-widget{border:1px solid #e5e7eb;border-radius:16px;padding:14px;background:#fff;max-width:980px}
.ers-availability-controls{margin-bottom:10px}
.ers-mini-table{width:100%;border-collapse:collapse}
.ers-mini-table th,.ers-mini-table td{padding:8px;border-bottom:1px solid #eee;text-align:left;font-size:14px}
.ers-mini-table tr.ers-ok td{background:#f6fff6}
.ers-mini-table tr.ers-warn td{background:#fffaf0}
.ers-mini-table tr.ers-bad td{background:#fff5f5}


/* Catalog layout: sidebar categories + grid */
.ers-catalog-wrap{display:flex;gap:18px;align-items:flex-start}
.ers-catalog-cats{width:220px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:12px;position:sticky;top:16px}
.ers-cat-link{display:block;padding:10px 12px;border-radius:12px;text-decoration:none;color:#111;margin:4px 0;border:1px solid transparent}
.ers-cat-link:hover{background:#f7f7f8}
.ers-cat-link.is-active{background:#eef2ff;border-color:#e0e7ff;font-weight:600}
.ers-catalog-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.ers-catalog-empty{color:#666}

/* Button */
.ers-btn.ers-btn-detail{cursor:pointer;background:#111;color:#fff;border:0}
.ers-btn.ers-btn-detail:hover{opacity:.92}

/* Modal */
.ers-modal{position:fixed;inset:0;display:none;z-index:99999}
.ers-modal[aria-hidden="false"]{display:block}
.ers-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.ers-modal-card{position:relative;max-width:980px;margin:6vh auto;background:#fff;border-radius:18px;box-shadow:0 14px 60px rgba(0,0,0,.28);padding:18px}
.ers-modal-close{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer;color:#111}
.ers-modal-body{max-height:78vh;overflow:auto}
body.ers-modal-open{overflow:hidden}
.ers-modal-loading,.ers-modal-error{padding:18px;color:#444}
.ers-modal-error{color:#b32d2e}

/* Detail content */
.ers-detail{display:grid;grid-template-columns:360px 1fr;gap:18px}
.ers-detail-media img{width:100%;height:auto;border-radius:14px;display:block}
.ers-detail-title{margin:0 0 8px;font-size:22px}
.ers-detail-desc{color:#333}
.ers-detail-facts{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.ers-pill{background:#f7f7f8;border:1px solid #eee;border-radius:999px;padding:8px 10px;font-size:13px}
@media (max-width:860px){
  .ers-catalog-wrap{display:block}
  .ers-catalog-cats{width:auto;position:relative;top:auto;margin-bottom:12px}
  .ers-detail{grid-template-columns:1fr}
}





/* =========================
   ERS Frontend Erweiterung
   ========================= */

/* --- Popup Bild --- */
.ers-detail-image{
  max-width: 320px;    /* z.B. 260 / 300 / 360 */
  width: 100%;
  height: auto;
  border-radius: 12px;
}

/* Facts im Popup untereinander */
.ers-detail-facts{
  margin-top: 12px;
}

/* generische Facts */
.ers-fact{
  margin-bottom: 8px;
  font-weight: 500;
}

/* --- Karten: gleiche Höhe, Button/Infos unten --- */
.ers-card{
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Vorschaubild-Container */
.ers-thumb{
  width: 100%;
  overflow: hidden;
  border-radius: 12px;
}

/* sorgt dafür, dass Bilder in den Karten immer gleich hoch wirken */
.ers-thumb img{
  width: 100%;
  height: 170px;       /* hier kannst du steuern */
  object-fit: cover;
  display: block;
}

/* falls ein Artikel kein Bild hat: gleiche Höhe wie Bild */
.ers-thumb.ers-thumb-empty{
  height: 170px;
  background: #f2f3f6;
}

/* Unten-Block klebt am Kartenboden (Infos + Button) */
.ers-bottom-block{
  margin-top: auto;
  padding-top: 12px;
}

/* Verfügbar + Tagespreis IMMER untereinander */
.ers-meta-stack{
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 10px; /* Abstand zum Button */
}

/* Details-Button immer schön gleich */
.ers-btn-detail{
  width: 100%;
}

/* --- Verfügbarkeitsfarben: nur 0 rot, ab 1 grün --- */
.ers-stock{
  font-weight: 600;
}

.ers-stock-ok{
  color: #0a7a2f; /* grün */
}

.ers-stock-zero{
  color: #b00020; /* rot */
}

/* --- PDF Button in Kategorienliste --- */
.ers-cat-pdf{
  display: block;
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 12px;
  text-decoration: none;
  background: #f4f6f8;   /* hell */
  color: #111;
  text-align: center;
  font-weight: 600;
  border: 1px solid #e2e6ea;
}
.ers-cat-pdf:hover{
  background: #e9edf2;
}

/* --- Mobile: Kategorie-Leiste wird horizontal oben --- */
@media (max-width: 860px){
  .ers-catalog-wrap{
    flex-direction: column;
  }

  .ers-catalog-cats{
    width: auto;
    position: static;
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding: 10px;
    white-space: nowrap;
    align-items: center;
  }

  .ers-cat-link{
    flex: 0 0 auto;
  }

  .ers-cat-pdf{
    flex: 0 0 auto;
    margin-top: 0;
  }
}