/* v1.0.6 – ausschließlich die eigenen dzl-* Elemente. */

/* Halterwechsel: vollständige, hochwertige Karte passend zu den übrigen Formularblöcken. */
#form_haendler .dzl-holder-change {
  margin: 0 0 26px !important;
  padding: 22px !important;
  border: 1px solid #dfe6ee !important;
  border-radius: 16px !important;
  background: #f8fafc !important;
  box-shadow: 0 1px 2px rgba(20,45,75,.04) !important;
}
#form_haendler .dzl-holder-change > .frm_primary_label {
  display: block !important;
  margin: 0 0 7px !important;
  padding: 0 !important;
  font-size: 20px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  color: #172b43 !important;
  text-align: left !important;
}
#form_haendler .dzl-holder-change > .frm_description {
  display: block !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  color: #667892 !important;
  text-align: left !important;
}
#form_haendler .dzl-holder-change > .frm_opt_container {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}
#form_haendler .dzl-holder-change .frm_radio {
  position: relative !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}
#form_haendler .dzl-holder-change .frm_radio input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  pointer-events: none !important;
}
#form_haendler .dzl-holder-change .frm_radio label {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 64px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 15px 16px 15px 48px !important;
  border: 1px solid #d7e1ed !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #234886 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-align: left !important;
  cursor: pointer !important;
  box-shadow: 0 1px 2px rgba(20,45,75,.03) !important;
}
#form_haendler .dzl-holder-change .frm_radio label::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 17px !important;
  top: 50% !important;
  width: 18px !important;
  height: 18px !important;
  margin-top: -9px !important;
  border: 2px solid #31597d !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-sizing: border-box !important;
}
#form_haendler .dzl-holder-change .frm_radio label::after {
  content: "" !important;
  display: none !important;
  position: absolute !important;
  left: 22px !important;
  top: 50% !important;
  width: 8px !important;
  height: 8px !important;
  margin-top: -4px !important;
  border-radius: 50% !important;
  background: #31597d !important;
}
#form_haendler .dzl-holder-change .frm_radio:has(input[type="radio"]:checked) label,
#form_haendler .dzl-holder-change .frm_radio input[type="radio"]:checked + label {
  border-color: #31597d !important;
  background: #f3f7fb !important;
  box-shadow: 0 0 0 1px #31597d inset !important;
}
#form_haendler .dzl-holder-change .frm_radio:has(input[type="radio"]:checked) label::after,
#form_haendler .dzl-holder-change .frm_radio input[type="radio"]:checked + label::after {
  display: block !important;
}

/* Nur die neuen Lieferempfänger-Felder. */
#form_haendler .dzl-delivery-select {
  position: relative !important;
  margin: 18px 0 24px !important;
  padding: 22px !important;
  border: 1px solid #d7e1ed !important;
  border-radius: 16px !important;
  background: #f8fafc !important;
  box-shadow: 0 1px 2px rgba(20,45,75,.04) !important;
}
#form_haendler .dzl-delivery-select::before {
  content: attr(data-dzl-package-title);
  display: block;
  margin: 0 0 14px;
  color: #172b43;
  font-size: 18px;
  font-weight: 700;
}
#form_haendler .dzl-delivery-select::after { content: none !important; display: none !important; }
#form_haendler .dzl-delivery-select > .frm_primary_label {
  margin: 0 0 7px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}
#form_haendler .dzl-delivery-select > .frm_description {
  position: static !important;
  margin: 0 0 12px !important;
  font-size: 13px !important;
  color: #62738d !important;
}
#form_haendler .dzl-delivery-select select {
  width: min(100%, 430px) !important;
  min-height: 46px !important;
  border-radius: 12px !important;
  border: 1px solid #c8d6e6 !important;
  background: #fff !important;
  padding: 0 42px 0 14px !important;
  font-size: 15px !important;
  color: #1f2f43 !important;
}
#form_haendler .dzl-delivery-detail-card {
  margin: 0 0 24px !important;
  padding: 22px !important;
  border: 1px solid #bfd8f3 !important;
  border-radius: 16px !important;
  background: #f3f8fe !important;
}
#form_haendler .dzl-delivery-detail-card .frm_form_field { margin-bottom: 16px !important; }
#form_haendler .dzl-delivery-detail-card .frm_primary_label {
  font-size: 14px !important;
  font-weight: 700 !important;
  margin-bottom: 7px !important;
}
#form_haendler .dzl-delivery-detail-card input,
#form_haendler .dzl-delivery-detail-card select {
  min-height: 46px !important;
  border-radius: 12px !important;
  font-size: 15px !important;
}
#form_haendler .dzl-detail-intro h3 { margin: 0 0 5px !important; font-size: 16px !important; }
#form_haendler .dzl-detail-intro p { margin: 0 !important; font-size: 14px !important; }

@media (max-width: 760px) {
  #form_haendler .dzl-holder-change { padding: 18px !important; }
  #form_haendler .dzl-holder-change > .frm_primary_label { font-size: 18px !important; }
  #form_haendler .dzl-holder-change > .frm_opt_container { grid-template-columns: 1fr !important; }
  #form_haendler .dzl-holder-change .frm_radio label { min-height: 58px !important; padding: 13px 14px 13px 46px !important; }
  #form_haendler .dzl-delivery-select,
  #form_haendler .dzl-delivery-detail-card { padding: 18px !important; }
  #form_haendler .dzl-delivery-select select { width: 100% !important; }
}


/* v1.0.6 – Lieferempfänger gezielt aufräumen. */
#form_haendler .dzl-delivery-select {
  margin: 18px 0 14px !important;
  padding: 20px 22px !important;
  border: 1px solid #dbe5ef !important;
  border-radius: 16px !important;
  background: #f5f8fb !important;
  box-shadow: none !important;
}
#form_haendler .dzl-delivery-select::before {
  margin-bottom: 12px !important;
  font-size: 17px !important;
  line-height: 1.3 !important;
}
#form_haendler .dzl-delivery-select > .frm_description {
  margin: 8px 0 0 !important;
  color: #687a91 !important;
  line-height: 1.4 !important;
}
#form_haendler .dzl-delivery-detail-card {
  margin: 0 0 22px !important;
  padding: 20px 22px 8px !important;
  background: #f1f6fc !important;
  border: 1px solid #c9dff5 !important;
  border-radius: 16px !important;
  box-shadow: none !important;
}
/* Die Divider-Überschrift "Lieferdetails" samt oberer Trennlinie ausblenden;
   sichtbar bleibt nur die konkrete Überschrift des gewählten Falls. */
#form_haendler .dzl-delivery-detail-card > .frm_primary_label,
#form_haendler .dzl-delivery-detail-card > .frm_section_heading,
#form_haendler .dzl-delivery-detail-card > h3.frm_section_spacing,
#form_haendler .dzl-delivery-detail-card > .frm_pos_top {
  display: none !important;
}
#form_haendler .dzl-detail-intro-field {
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
}
#form_haendler .dzl-detail-intro h3 {
  margin: 0 0 4px !important;
  color: #172b43 !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
}
#form_haendler .dzl-detail-intro p {
  margin: 0 !important;
  color: #687a91 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}
/* Adresszusatz: optional nur einmal anzeigen – im Placeholder, nicht zusätzlich darunter. */
#form_haendler .dzl-p1-extra > .frm_description,
#form_haendler .dzl-p2-extra > .frm_description {
  display: none !important;
}
@media (max-width: 760px) {
  #form_haendler .dzl-delivery-select,
  #form_haendler .dzl-delivery-detail-card {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}


/* v1.0.7 – nur Halterwechsel: sichtbarer Kartenhintergrund wie beim Fahrzeughalter-Block. */
#form_haendler .form-field.dzl-holder-change,
#form_haendler .dzl-holder-change {
  box-sizing: border-box !important;
  margin: 0 0 28px !important;
  padding: 24px !important;
  border: 1px solid #d9e3ed !important;
  border-radius: 16px !important;
  background: #f3f6fa !important;
  box-shadow: none !important;
}
@media (max-width: 760px) {
  #form_haendler .form-field.dzl-holder-change,
  #form_haendler .dzl-holder-change {
    padding: 18px !important;
  }
}


/* v1.0.8 – ausschließlich Halterwechsel feinjustiert. */
#form_haendler .dzl-holder-change > .frm_primary_label {
  font-size: 16px !important;
  line-height: 1.35 !important;
  margin-bottom: 12px !important;
}
#form_haendler .dzl-holder-change > .frm_description {
  display: none !important;
}
#form_haendler .dzl-holder-change .frm_radio label {
  min-height: 52px !important;
  padding: 12px 14px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
#form_haendler .dzl-holder-change .frm_radio label::before,
#form_haendler .dzl-holder-change .frm_radio label::after {
  content: none !important;
  display: none !important;
}
@media (max-width: 760px) {
  #form_haendler .dzl-holder-change > .frm_primary_label {
    font-size: 16px !important;
  }
  #form_haendler .dzl-holder-change .frm_radio label {
    min-height: 50px !important;
    padding: 11px 13px !important;
  }
}

/* v1.0.9 – gezielte Reparatur: keine Auswahlkreise in den bestehenden Unternehmens-Karten.
   Nur die beiden Unternehmens-Radiogruppen werden betroffen; Auswahl bleibt am Kartenrahmen sichtbar. */
#form_haendler #dzb-business-shell .dzb-radio-cards input[type="radio"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 1px !important;
  min-height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  overflow: hidden !important;
}


/* v1.0.10 – ausschließlich Lieferempfänger-Feinschliff. */
#form_haendler .dzl-delivery-select::before {
  content: none !important;
  display: none !important;
}
#form_haendler .dzl-delivery-select {
  margin: 12px 0 8px !important;
  padding: 18px 20px !important;
}
#form_haendler .dzl-delivery-select > .frm_primary_label {
  margin-bottom: 8px !important;
  font-size: 14px !important;
}
#form_haendler .dzl-delivery-select > .frm_description {
  margin-top: 8px !important;
}
#form_haendler .dzl-delivery-select select,
#form_haendler .dzl-delivery-detail-card select {
  box-sizing: border-box !important;
  height: 48px !important;
  min-height: 48px !important;
  line-height: 1.25 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  font-size: 14px !important;
}
#form_haendler .dzl-delivery-detail-card {
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}
#form_haendler .dzl-detail-intro-field {
  margin-bottom: 14px !important;
}
#form_haendler .dzl-detail-intro p:empty {
  display: none !important;
}


/* v1.0.11 – ausschließlich die vier gewünschten optischen Korrekturen. */

/* 1) Paketkarte und zugehörige Lieferadresse optisch enger zusammenziehen.
   Formidable erzeugt zwischen den Grid-Elementen eigenen Abstand; deshalb
   wird nur die direkt folgende Detailkarte leicht nach oben gezogen. */
#form_haendler .dzl-delivery-select {
  margin-bottom: 2px !important;
}
#form_haendler .dzl-delivery-select + .dzl-delivery-detail-card {
  margin-top: -10px !important;
}

/* 2) Unter dem letzten Feld "Ort" etwas mehr Luft. */
#form_haendler .dzl-delivery-detail-card {
  padding-bottom: 22px !important;
}
#form_haendler .dzl-delivery-detail-card > .frm_form_field:last-child {
  margin-bottom: 0 !important;
}

/* 3) Eigener, kompakter Lieferempfänger-Dropdown – nur Paket 1/2. */
#form_haendler .dzl-delivery-select select.dzl-native-select--enhanced {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 1px !important;
  min-height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  overflow: hidden !important;
}
#form_haendler .dzl-select-ui {
  position: relative !important;
  width: min(100%, 430px) !important;
  z-index: 20 !important;
}
#form_haendler .dzl-select-button {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 48px !important;
  box-sizing: border-box !important;
  padding: 0 46px 0 14px !important;
  border: 1px solid #c8d6e6 !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #1f2f43 !important;
  font: inherit !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  text-align: left !important;
  cursor: pointer !important;
  box-shadow: none !important;
}
#form_haendler .dzl-select-button:hover {
  border-color: #9fb7cf !important;
}
#form_haendler .dzl-select-button:focus,
#form_haendler .dzl-select-ui.is-open .dzl-select-button {
  outline: none !important;
  border-color: #31597d !important;
  box-shadow: 0 0 0 3px rgba(49,89,125,.12) !important;
}
#form_haendler .dzl-select-button::after {
  content: "" !important;
  position: absolute !important;
  right: 17px !important;
  top: 50% !important;
  width: 8px !important;
  height: 8px !important;
  margin-top: -6px !important;
  border-right: 2px solid #31597d !important;
  border-bottom: 2px solid #31597d !important;
  transform: rotate(45deg) !important;
  transition: transform .16s ease, margin-top .16s ease !important;
}
#form_haendler .dzl-select-ui.is-open .dzl-select-button::after {
  margin-top: -2px !important;
  transform: rotate(225deg) !important;
}
#form_haendler .dzl-select-menu {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: calc(100% + 6px) !important;
  display: none !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 6px !important;
  border: 1px solid #c8d6e6 !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(23,43,67,.14) !important;
  list-style: none !important;
  overflow: hidden !important;
  z-index: 9999 !important;
}
#form_haendler .dzl-select-ui.is-open .dzl-select-menu {
  display: block !important;
}
#form_haendler .dzl-select-option {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: #1f2f43 !important;
  font: inherit !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  text-align: left !important;
  cursor: pointer !important;
  box-shadow: none !important;
}
#form_haendler .dzl-select-option:hover,
#form_haendler .dzl-select-option:focus {
  outline: none !important;
  background: #f1f6fb !important;
}
#form_haendler .dzl-select-option.is-selected {
  background: #eaf2f9 !important;
  color: #163f66 !important;
  font-weight: 700 !important;
}

/* v1.0.12 – Unternehmens-Karten wieder vollständig dem bestehenden Unternehmens-Plugin überlassen.
   Dieses Plugin versteckt nur die Radio-Kreise (v1.0.9), verändert aber weder Rahmen noch Box-Shadow. */

@media (max-width: 760px) {
  #form_haendler .dzl-select-ui { width: 100% !important; }
  #form_haendler .dzl-delivery-select + .dzl-delivery-detail-card { margin-top: -6px !important; }
}

/* v1.0.13 – nur die aktive Auswahl der bestehenden Unternehmens-Karten etwas kräftiger,
   passend zu Anrede und Halterwechsel. Keine Größen-/Layoutänderung. */
#form_haendler #dzb-business-shell .dzb-radio-cards .frm_radio.is-selected > label.dzb-radio-card-label,
#form_haendler #dzb-business-shell .dzb-radio-cards .frm_radio:has(input:checked) > label.dzb-radio-card-label {
  border-color: #315d88 !important;
  box-shadow: 0 0 0 1px #315d88 inset !important;
}


/* v1.0.14 – ausschließlich vertikaler Abstand des Halterwechsel-Blocks.
   Mehr Luft zum Seitentitel, deutlich weniger Abstand zum Fahrzeughalter-Block darunter. */
#form_haendler .form-field.dzl-holder-change,
#form_haendler .dzl-holder-change {
  margin-top: 14px !important;
  margin-bottom: -10px !important;
}
@media (max-width: 760px) {
  #form_haendler .form-field.dzl-holder-change,
  #form_haendler .dzl-holder-change {
    margin-top: 10px !important;
    margin-bottom: -6px !important;
  }
}


/* v1.0.15 – drei gezielte optische Korrekturen. */

/* 1) Weniger Leerraum zwischen Unternehmens-/Halterauswahl und den Personendaten (Anrede). */
#form_haendler #dzb-business-shell {
  margin-bottom: 14px !important;
}

/* 2) Antriebsart und Fahrzeugverwendung klar als Dropdown erkennbar machen. */
#form_haendler #field_qsgvb,
#form_haendler #field_dzb_vehicle_usage45 {
  -webkit-appearance: none !important;
  appearance: none !important;
  padding-right: 44px !important;
  background-color: #fff !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M3 5.25 7 9l4-3.75' fill='none' stroke='%2331597d' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 16px center !important;
  background-size: 14px 14px !important;
}

/* 3) Optionen im Lieferempfänger-Menü mit sichtbarem Abstand voneinander. */
#form_haendler .dzl-select-ui.is-open .dzl-select-menu {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}
#form_haendler .dzl-select-option {
  flex: 0 0 auto !important;
  min-height: 38px !important;
}

/* v1.0.22 – Halterwechsel hart auf den Vorgang begrenzen.
   Standard = aus. Nur wenn das Formular eindeutig „KFZ Anmelden“ trägt, wird die Karte gezeigt. */
#form_haendler .dzl-holder-change {
  display: none !important;
}
#form_haendler.dzl-vorgang-anmelden .dzl-holder-change {
  display: block !important;
}

/* v1.0.25 – ausschließlich Lieferempfänger-Dropdown:
   - technische Leeroption nicht als sichtbare Zeile (JS)
   - geöffnetes Menü bleibt im normalen Layoutfluss und schiebt Paket 2 nach unten,
     statt es optisch zu überlagern. */
#form_haendler .dzl-select-ui.is-open .dzl-select-menu {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  margin-top: 6px !important;
  z-index: 1 !important;
}

/* v1.0.26 – Abholung: Paket 2 übernimmt zwingend den Empfänger aus Paket 1. */
.dzl-select-ui.is-locked .dzl-select-button{
  opacity:.68;
  cursor:not-allowed;
}
.dzl-p2-detail-card.dzl-pickup-mirrored{
  opacity:.72;
  position:relative;
}
.dzl-p2-detail-card.dzl-pickup-mirrored input,
.dzl-p2-detail-card.dzl-pickup-mirrored select,
.dzl-p2-detail-card.dzl-pickup-mirrored textarea{
  cursor:not-allowed;
}
.dzl-pickup-copy-note{
  margin:.5rem 0 1rem;
  padding:.7rem .85rem;
  border-radius:8px;
  background:#f5f6f8;
  font-size:.92rem;
  line-height:1.4;
}
