/**
 * BD Kundenverwaltung – Designabgleich mit „Besser Deutsch – Website Blocks & Styles“ 2.9.0.
 * Betrifft ausschließlich die sechs Produkt-/Kurs-Shortcodes und deren Unterelemente.
 * Alle Farben verwenden die BD-Designvariablen mit Fallbacks für Seiten ohne BD-Blöcke.
 * Inhalt, Berechnung, Bestandsanzeige, Sprachen, AJAX und Wechselkurse bleiben unberührt.
 */

/* Paketüberschrift – BD-Farbwelt, ruhige gerundete Fläche, redaktionelle Typografie. */
h6.bd-product-card-heading {
  box-sizing:border-box;
  display:block;
  width:100%;
  margin:0 0 16px !important;
  padding:17px 21px !important;
  border:1px solid rgba(1,112,185,.15);
  border-radius:var(--bdx-r-md,15px);
  box-shadow:var(--bdx-shadow-sm,0 8px 26px rgba(20,53,72,.07));
  color:#fff !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(1.28rem,2.2vw,1.75rem) !important;
  font-weight:700 !important;
  line-height:1.22 !important;
  letter-spacing:-.018em;
  text-align:center;
  text-wrap:balance;
  overflow-wrap:anywhere;
}
h6.bd-product-card-heading--blue {
  background:linear-gradient(135deg,var(--bdx-blue-dark,#075a8e),var(--bdx-blue,#0170b9));
}
h6.bd-product-card-heading--bd-dark-blue {
  background:linear-gradient(135deg,var(--bdx-blue-deep,#064f7c),var(--bdx-blue-dark,#075a8e));
}
/* Die bereits im Produkt gespeicherten alternativen Hintergrundfarben bleiben wirksam. */
h6.bd-product-card-heading--yellow {
  background:linear-gradient(135deg,#e7a900,#fcb900);
  color:var(--bdx-text,#263238) !important;
}
h6.bd-product-card-heading--green {
  background:linear-gradient(135deg,#007d54,#00a266);
}

/* Paketumfang – entspricht der dezenten, blau betonten BD-Kicker-Typografie. */
h5.bd-product-card-scope {
  display:block;
  margin:0 0 18px !important;
  padding:0 3px;
  color:var(--bd-product-card-scope-color,var(--bdx-blue-deep,#064f7c)) !important;
  font-family:inherit !important;
  font-size:clamp(.86rem,1.15vw,1rem) !important;
  font-weight:750 !important;
  line-height:1.48 !important;
  letter-spacing:.05em;
  text-align:center;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}

/* Kursplätze – dezente BD-Statuskapsel statt blinkender Emoji-Punkte. */
div.platzfrei {
  display:flex;
  width:fit-content;
  max-width:100%;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:12px auto 20px !important;
  padding:9px 14px;
  border:1px solid var(--bdx-line,rgba(1,112,185,.14));
  border-radius:999px;
  background:var(--bdx-soft,#f2f8fc);
  box-shadow:0 3px 12px rgba(20,53,72,.035);
  color:var(--bdx-blue-deep,#064f7c) !important;
  font-family:inherit !important;
  font-size:.88rem !important;
  line-height:1.4 !important;
  text-align:center;
}
div.platzfrei > .dot {
  display:inline-block;
  flex:0 0 10px;
  width:10px;
  height:10px;
  margin:0 !important;
  border-radius:50%;
  background:#168757;
  box-shadow:0 0 0 4px rgba(22,135,87,.12);
  font-size:0 !important; /* nur das Emoji optisch ausblenden; aria-label bleibt erhalten */
  line-height:0;
  animation:none !important;
}
div.platzfrei > .dot[aria-label="orangener Statuspunkt"] {
  background:#cb8216;
  box-shadow:0 0 0 4px rgba(203,130,22,.13);
}
div.platzfrei > .dot[aria-label="roter Statuspunkt"] {
  background:#bf4b4b;
  box-shadow:0 0 0 4px rgba(191,75,75,.13);
}
div.platzfrei > .txt {
  color:inherit !important;
  font-size:inherit !important;
  line-height:inherit !important;
  font-weight:650 !important;
}

/* Checkliste – weiße BD-Karte und markentypische blaue Prüfhäkchen. */
div.bd-product-feature-list {
  box-sizing:border-box;
  display:grid;
  gap:12px;
  width:100%;
  margin:0 0 20px !important;
  padding:clamp(18px,2.5vw,26px);
  border:1px solid var(--bdx-line,rgba(1,112,185,.14));
  border-radius:var(--bdx-r-lg,22px);
  background:#fff;
  box-shadow:var(--bdx-shadow-sm,0 8px 26px rgba(20,53,72,.07));
  color:var(--bdx-text,#263238);
  text-align:left;
}
div.bd-product-feature-list > .bd-product-feature-list__item {
  display:grid;
  grid-template-columns:23px minmax(0,1fr);
  gap:11px;
  align-items:start;
  margin:0 !important;
  padding:0;
  text-align:left;
  line-height:1.6 !important;
}
div.bd-product-feature-list .bd-product-feature-list__icon {
  display:grid;
  place-items:center;
  width:23px;
  height:23px;
  margin:2px 0 0 !important;
  border-radius:50%;
  background:var(--bdx-blue,#0170b9);
  box-shadow:0 3px 10px rgba(1,112,185,.15);
  font-size:0 !important; /* Emoji ✅ bleibt im HTML, wird visuell ersetzt. */
  line-height:1 !important;
}
div.bd-product-feature-list .bd-product-feature-list__icon::before {
  content:"✓";
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
  font-size:14px;
  font-weight:800;
  line-height:1;
}
div.bd-product-feature-list .bd-product-feature-list__text {
  display:block;
  min-width:0;
  color:var(--bdx-muted,#596770) !important;
  font-family:inherit !important;
  font-size:clamp(.95rem,1.15vw,1.04rem) !important;
  font-weight:450;
  line-height:1.62 !important;
  overflow-wrap:anywhere;
}

/* Automatisch berechneter Paketüberblick – BD-Highlight-Stil. */
p.bd-installment-overview {
  box-sizing:border-box;
  margin:14px 0 22px !important;
  padding:17px 19px !important;
  border:0;
  border-left:4px solid var(--bdx-blue,#0170b9);
  border-radius:0 var(--bdx-r-md,15px) var(--bdx-r-md,15px) 0;
  background:rgba(1,112,185,.07);
  color:var(--bdx-muted,#596770) !important;
  font-family:inherit !important;
  font-size:clamp(.95rem,1.1vw,1.03rem) !important;
  font-weight:450;
  line-height:1.7 !important;
  text-align:left !important;
  overflow-wrap:anywhere;
}
p.bd-installment-overview strong {
  color:var(--bdx-blue-deep,#064f7c) !important;
  font-weight:800 !important;
}
p.bd-installment-overview .bd-installment-overview__old-price {
  color:var(--bdx-muted,#596770);
}
p.bd-installment-overview .bd-installment-overview__current-price {
  color:var(--bdx-blue-deep,#064f7c) !important;
}

/* Einheitspreis / EUR-HUF-Schalter – identische BD-Farben und Schaltflächen. */
div.bd-unit-price-toggle {
  max-width:100%;
  color:var(--bdx-text,#263238);
  font-family:inherit;
  text-align:center;
}
div.bd-unit-price-toggle .bd-currency-toggle {
  display:inline-flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:0 0 15px;
}
div.bd-unit-price-toggle .bd-currency-toggle__label {
  color:var(--bdx-blue-deep,#064f7c) !important;
  font-family:inherit !important;
  font-size:.9rem !important;
  font-weight:750 !important;
}
div.bd-unit-price-toggle .bd-currency-toggle__label[aria-pressed="false"] {opacity:.62;}
div.bd-unit-price-toggle .bd-currency-toggle__switch {
  background:rgba(1,112,185,.24) !important;
  border:1px solid rgba(1,112,185,.18) !important;
  box-shadow:inset 0 1px 3px rgba(20,53,72,.09);
}
div.bd-unit-price-toggle .bd-currency-toggle__thumb {
  background:#fff !important;
  box-shadow:0 1px 5px rgba(20,53,72,.18) !important;
}
div.bd-unit-price-toggle .bd-currency-toggle :is(button):focus-visible,
div.bd-unit-price-toggle .bd-uprice-trial-cta:focus-visible {
  outline:3px solid var(--bdx-blue,#0170b9) !important;
  outline-offset:3px;
}
div.bd-unit-price-toggle .bd-uprice-discount__oldline,
div.bd-unit-price-toggle .bd-uprice-discount__oldprefix,
div.bd-unit-price-toggle .bd-uprice-discount__old {
  color:var(--bdx-muted,#596770) !important;
  font-family:inherit !important;
  font-size:clamp(.83rem,1.1vw,.95rem) !important;
}
div.bd-unit-price-toggle .bd-uprice-discount__old del {
  text-decoration-color:var(--bdx-muted,#596770) !important;
}
div.bd-unit-price-toggle .bd-uprice-discount__label {
  color:var(--bdx-blue,#0170b9) !important;
  font-family:inherit !important;
  font-size:clamp(.82rem,1.05vw,.93rem) !important;
  font-weight:800 !important;
  letter-spacing:.055em;
}
div.bd-unit-price-toggle .acme-price__new,
div.bd-unit-price-toggle .bd-uprice-discount__new {
  color:var(--bdx-blue-deep,#064f7c) !important;
  font-family:inherit !important;
  font-size:clamp(1.55rem,2.3vw,2.05rem) !important;
  font-weight:800 !important;
  line-height:1.15 !important;
  letter-spacing:-.02em;
}
div.bd-unit-price-toggle .acme-price__new :is(ins,span,bdi),
div.bd-unit-price-toggle .bd-uprice-discount__new :is(ins,span,bdi) {
  color:inherit !important;
  font-size:inherit !important;
  line-height:inherit !important;
  text-decoration:none;
}
div.bd-unit-price-toggle .bd-per-unit-duration {
  color:var(--bdx-muted,#596770) !important;
  font-family:inherit !important;
  font-size:.88rem !important;
  line-height:1.55 !important;
}
div.bd-unit-price-toggle .bd-uprice-trial-cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 20px !important;
  border:1px solid transparent !important;
  border-radius:10px !important;
  background:var(--bdx-blue,#0170b9) !important;
  box-shadow:0 8px 20px rgba(1,112,185,.17);
  color:#fff !important;
  font-family:inherit !important;
  font-size:.96rem !important;
  font-weight:750 !important;
  line-height:1.4 !important;
  text-align:center;
  text-decoration:none !important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
div.bd-unit-price-toggle .bd-uprice-trial-cta:hover {
  background:var(--bdx-blue-dark,#075a8e) !important;
  box-shadow:0 11px 26px rgba(1,112,185,.23);
  transform:translateY(-2px);
}

/* Kleinere Displays: enge Karten, ohne horizontales Überlaufen. */
@media (max-width:767px) {
  h6.bd-product-card-heading {padding:14px 16px !important;font-size:1.27rem !important;}
  h5.bd-product-card-scope {font-size:.86rem !important;letter-spacing:.035em;}
  div.bd-product-feature-list {padding:18px 17px;gap:11px;}
  div.bd-product-feature-list > .bd-product-feature-list__item {gap:9px;}
  p.bd-installment-overview {padding:15px 16px !important;}
  div.bd-unit-price-toggle .bd-currency-toggle {gap:5px;}
  div.bd-unit-price-toggle .bd-uprice-trial-cta {width:100%;}
}
@media (prefers-reduced-motion:reduce) {
  div.bd-unit-price-toggle .bd-uprice-trial-cta {transition:none !important;transform:none !important;}
}
