/**
 * Theme Name: yootheme
 * Version: 1.0
 * Author: Design Boie Baumann
 * Author URI: https://www.boiebaumann.de
 */

/* Gravity Forms Farbe Grün */
.percentbar_orange {
  background-color: #a9c938 !important;
}

/* Labels in Gravity Forms fett anzeigen */
.gform-theme--framework .gform-field-label {
  font-weight: 700;
}

/* Buttons in Gravity Forms in Grau */
body .gform_wrapper .gform_page_footer .gform_next_button {
  background-color: #737272 !important; /* Hintergrundfarbe des Buttons */
  border-color: #737272 !important; /* Rahmenfarbe des Buttons, falls benötigt */
  color: #ffffff; /* Textfarbe, hier Weiß für Kontrast */
}

body .gform_wrapper .gform_page_footer .gform_next_button:hover {
  background-color: #616161; /* Hintergrundfarbe des Buttons beim Überfahren mit der Maus */
  border-color: #616161; /* Rahmenfarbe des Buttons beim Überfahren mit der Maus */
  color: #ffffff; /* Textfarbe beim Überfahren mit der Maus */
}

/* Deaktiviere den Bildzoom */
.single-product .product:hover img.zoom {
  cursor: default;
  pointer-events: none;
}

/* Anpassungen für Checkout-Felder in WooCommerce */

@media (min-width: 768px) {
  /* CSS-Regeln für Bildschirme breiter als 768px (Tablets und Desktops) */

  /* Ermöglicht das Nebeneinanderstellen der Felder 'anlieferung_field' und 'abholung_field' */
  #anlieferung_field,
  #abholung_field,
  #ansprechpartner_field,
  #tel_ansprechpartner_field {
    display: inline-block; /* Ändert das Display-Verhalten von Block zu Inline-Block */
    width: 48%; /* Setzt die Breite auf etwas weniger als 50%, um Platz für Padding zu lassen */
    vertical-align: top; /* Stellt sicher, dass die Elemente an ihrer oberen Kante ausgerichtet werden */
    box-sizing: border-box; /* Inkludiert Padding und Border in der Breitenberechnung */
  }

  /* Optional: Fügt etwas Abstand zwischen den Feldern hinzu */
  #ansprechpartner_field,
  #anlieferung_field {
    margin-right: 2%; /* Abstand auf der rechten Seite von 'anlieferung_field' */
  }
  .thwmsc-tab-panel {
    padding: 0;
  }
}

@media (max-width: 767px) {
  /* CSS-Regeln für mobile Geräte mit einer Breite bis zu 767px */

  /* Stellt die ursprüngliche Darstellung der Felder untereinander wieder her */
  #anlieferung_field,
  #abholung_field,
  #ansprechpartner_field,
  #tel_ansprechpartner_field {
    display: block; /* Setzt das Display-Verhalten zurück auf Block */
    width: 100%; /* Setzt die Breite auf volle Containerbreite */
  }
}

#grund_field {
  width: 100%;
}

#doc_loading_field {
  width: 100%;
}

#copy-address-button-wrapper {
  width: 100%;
  margin-bottom: 8px;
  margin-top: 16px;
}
#copy-address-button-wrapper #copyAddress {
  font-size: 14px;
  color: #666;
  padding: 0 16px;
  line-height: 36px;
  height: 36px;
  background-color: #DFDFDF;
}
#copy-address-button-wrapper #copyAddress:hover {
  background-color: #C0C0C0;
}

tr th.thwcfe-section-title {
  text-align: left !important;
  padding-top: 32px !important;
  font-size: 20px !important;
  font-weight: 700 !important;
}

/* Stil für die Infobox */
.grund_hinweis_title {
  display: block;
  border: 1px solid #666;
  color: #666; /* Weiße Schrift für bessere Lesbarkeit */
  padding: 8px; /* Etwas Abstand im Inneren der Box */
  border-radius: 4px; /* Abgerundete Ecken */
  font-size: 0.95em !important; /* Verkleinert die Schriftgröße */
  margin-bottom: 0;
  font-weight: 400;
}

.grund_hinweis_subtitle {
  color: #666; /* Weiße Schrift für bessere Lesbarkeit */
  font-size: 0.95em !important; /* Etwas kleinere Schriftgröße für den Untertitel */
}

/* Stil für die Infobox */
.infos_hinweis_subtitle ul {
  padding-left: 20px;
}

.infos_hinweis_title {
  /* display: block; */
  display: none !important;
  border: 1px solid #666;
  color: #666; /* Weiße Schrift für bessere Lesbarkeit */
  padding: 8px; /* Etwas Abstand im Inneren der Box */
  border-radius: 4px; /* Abgerundete Ecken */
  font-size: 0.95em !important; /* Verkleinert die Schriftgröße */
  font-weight: 400;
  margin-bottom: 0;
}

.infos_hinweis_subtitle {
  color: #666; /* Weiße Schrift für bessere Lesbarkeit */
  font-size: 0.95em !important; /* Etwas kleinere Schriftgröße für den Untertitel */
  display: block;
  border: 1px solid #666;
  color: #666; /* Weiße Schrift für bessere Lesbarkeit */
  padding: 8px; /* Etwas Abstand im Inneren der Box */
  border-radius: 4px; /* Abgerundete Ecken */
  font-size: 0.95em !important; /* Verkleinert die Schriftgröße */
  font-weight: 400;
  margin-bottom: 0;
}

.woocommerce-checkout .shop_table {
  background-color: transparent !important;
}

/* Stil für Desktop-Ansichten */
@media (min-width: 768px) {
  /* Felder nebeneinander anzeigen */
  .woocommerce-billing-fields .form-row {
    float: left;
    box-sizing: border-box;
    padding: 5px; /* Geringfügiger Abstand zwischen den Feldern */
  }

  #billing_company_field {
    width: 33.33%;
  }
  #billing_umsatzsteuer_id_field {
    width: 50%;
  }

  /*  auch 50% breite für felder custom_shipping_street und custom_shipping_housenumber */
  #custom_shipping_street_field {
    width: 25%;
  }
  #custom_shipping_housenumber_field {
    width: 8.33%;
  }

  /* same for postcode and ort */
  #shipping_postcode_field, #shipping_city_field {
    width: 33.33%;
  }

  /* Anrede, Vorname und Nachname in einer Zeile */
  /* #billing_title_field,
  #billing_first_name_field,
  #billing_last_name_field {
    width: 33.33%;
  } */
  /* Anrede, Vorname und Nachname in einer Zeile */
  #billing_first_name_field,
  #billing_last_name_field {
    width: 33.33% !important;
  }

  /* Straße, PLZ und Ort in einer Zeile */
  #billing_address_1_field,
  #billing_postcode_field,
  #billing_city_field {
    width: 33.33%;
  }

  /* Telefon und E-Mail in einer Zeile */
  #billing_phone_field,
  #billing_email_field {
    width: 50%;
  }
  .woocommerce-billing-fields__field-wrapper {
    display: flex;
    flex-wrap: wrap;
  }
  .form-row {
    /* Für drei Felder pro Zeile */
    /* flex: 1 1 33%;  */
  }
  .form-row:first-child {
    /* Für drei Felder pro Zeile */
    /* flex: 100%;  */
  }
}

/* Stil für mobile Ansichten */
@media (max-width: 767px) {
  .woocommerce-billing-fields .form-row {
    float: none;
    width: 100%;
    padding: 0;
  }
}

/* Stil für Desktop-Ansichten */
@media (min-width: 768px) {
  /* Felder nebeneinander anzeigen */
  .woocommerce-shipping-fields .form-row {
    float: left;
    box-sizing: border-box;
    padding: 5px; /* Geringfügiger Abstand zwischen den Feldern */
  }

  #shipping_company_field {
    width: 100%;
  }

  /* Anrede, Vorname und Nachname in einer Zeile */
  /* #shipping_title_field,
  #shipping_first_name_field,
  #shipping_last_name_field {
    width: 33.33%;
  } */
  #shipping_first_name_field,
  #shipping_last_name_field {
    width: 50% !important;
  }


  /* Straße, PLZ und Ort in einer Zeile */
  #shipping_address_1_field,
  #shipping_postcode_field,
  #shipping_city_field {
    width: 33.33%;
    /* width: 50%; */
  }

  /* Telefon und E-Mail in einer Zeile */
  #shipping_phone_field,
  #shipping_email_field {
    width: 50%;
  }
  .woocommerce-shipping-fields__field-wrapper {
    display: flex;
    flex-wrap: wrap;
  }
  .form-row {
    /* Für drei Felder pro Zeile */
    /* flex: 1 1 33%; */
  }
  .form-row:first-child {
    /* Für drei Felder pro Zeile */
    /* flex: 33.33%;  */
  }
  .form-row:nth-child(2) {
    /* Für drei Felder pro Zeile */
    /* flex: 0 0 33%; */
  }
}

.thwmsc-tab-content {
  padding-top: 40px;
}

/* Stil für mobile Ansichten */
@media (max-width: 767px) {
  .woocommerce-shipping-fields .form-row {
    float: none;
    width: 100%;
    padding: 0;
  }
}

.woocommerce .form-row.place-order {
  text-align: right; /* Richtet den Inhalt des Elements nach rechts aus */
}
.thwmsc-tab-panel-wrapper .thwmsc-buttons {
  text-align: left !important; /* Richtet die Buttons innerhalb des Elements nach links aus */
}
#place_order {
  margin-top: 20px;
}
/* button#place_order {
  padding-top: 10px;
  padding-right: 22px;
  padding-bottom: 10px;
  padding-left: 22px;
} */
/* .woocommerce {
  position: relative;
  top: 150px;
} */
/* .woocommerce-notices-wrapper .wc-block-components-notice-banner{
  position: relative;
  top: 50px;
} */

#thwmsc_review_data_wrap div {
  padding: 0;
}
/* 
#thwmsc_wrapper {
  position: relative;
  top: 120px; */
}

#thwmsc_wrapper {
  padding-top: 200px;
}

#thwmsc-tabs {
  padding-top: 20px;
  display: flex;
  flex-wrap: wrap; /* Wrap tabs to new line on mobile */
}
.thwmsc-tab-label {
  white-space: nowrap;
}
span.thwmsc-tab-label {
  padding: 10px 8px 10px 25px !important;
}

.thwmsc-tab-panel {
  box-sizing: border-box;
  padding: 0 0;
}

#billing_postcode[readonly],
#shipping_postcode[readonly],
#shipping_city[readonly]{
  background-color: #ccc; /* Grauer Hintergrund */
  cursor: not-allowed; /* Cursor-Symbol für nicht verfügbar */
}

/**
 * Custom Styles for WCPRBL Location Selector
 * 
 * Diese Stilregeln sind speziell für das Anpassen des Aussehens der WCPRBL Standortauswahl 
 * in der Navigationsleiste entwickelt. Sie beinhalten das Styling für die Dropdown-Liste,
 * das Eingabeformular für die Postleitzahl sowie den 'Submit'-Button. 
 * Ziel ist es, die Elemente übersichtlich, modern und benutzerfreundlich zu gestalten.
 */

/* Grundlegendes Styling für die Dropdown-Liste und deren Elemente */
.wcprbl-location-selector-independent {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.wcprbl-location-selector-independent li {
  margin: 5px 0;
}

/* Styling des Links */
.wcprbl-current-location-link {
  display: block;
  font-size: 18px;
  font-weight: bold;
  /* padding: 10px; */
  /* background-color: #ddd; */
  color: #fff !important;
  text-decoration: none;
  border-radius: 4px;
  text-align: left;
  pointer-events: none;
}

.wcprbl-current-location-link:hover {
  color: #fff !important;

  /* background-color: #e8e8e8; */
}

/* Styling des PLZ Formulars und der Eingabeelemente */
.wcprbl-zip-code-form {
  margin: 10px 0;
}

.wcprbl-zip-code-input {
  width: 100%;
  padding: 8px;
  margin-bottom: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  overflow: hidden;
  height: 44px;
}

.wcprbl-submit-zip-code {
  width: 100%;
  padding: 10px;
  background-color: #fbba00;
  color:#333;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 18px;
  font-weight: 600;
  height: 44px;
}

.wcprbl-submit-zip-code:hover {
  background-color: #dea811;
  color: #333;
}

.abfallart-button-startseite .uk-button {
  background-color: #0078d7 !important;
  color: #FFF !important;
  font-weight: 600;
  font-size: 18px;
}

/* Stelle sicher, dass das Dropdown-Menü immer sichtbar ist */
.wcprbl-location-selector .dropdown-menu,
.wcprbl-location-selector .sub-menu {
  display: block;
  position: static;
  visibility: visible;
  opacity: 1;
}
.wcprbl-location-selector .sub-menu {
  padding: 0;
  overflow: hidden;
}
.wcprbl-location-selector .sub-menu .menu-item {
  padding: 0 !important;
}
.wcprbl-location-selector .sub-menu li.menu-item,
.wcprbl-location-selector .sub-menu li.menu-item a {
  padding: 0 !important;
}

/* Optional: Zusätzliches Styling für das Dropdown-Menü */
.wcprbl-location-selector .dropdown-menu {
  /* border: 1px solid #ddd; */
  /* border-radius: 0 0 4px 4px; */
  background-color: transparent;
  /* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */
}

.wcprbl-location-selector .dropdown-menu li {
  /* padding: 5px; */
  margin: 0;
  list-style-type: none;
}

/* custom class link disabled  */
.link-disabled {
  pointer-events: none; /* Verhindert Klicken auf den Link */
  color: grey; /* Ändere die Farbe, um ihn deaktiviert erscheinen zu lassen */
  text-decoration: none; /* Optional: Entfernt die Unterstreichung */
  opacity: 0.4;
}

#plz-info {
  color: #000000;
  background-color: #FFF;
  padding: 8px;
  border-radius: 4px;
  font-weight: 600;
  font-size: 18px;
}

.wcprbl-zip-code-input::placeholder {
  font-size: 16px;
  color: #636363; /* Farbe des Platzhaltertexts */
  /* Du kannst hier weitere Stile hinzufügen, wie z.B. font-size, font-weight, etc. */
}

/* Für Internet Explorer 10-11 */
.wcprbl-zip-code-input:-ms-input-placeholder {
  font-size: 16px;
  color: #636363; /* Farbe des Platzhaltertexts */
  /* font-style: italic; */
}

/* Für Microsoft Edge */
.wcprbl-zip-code-input::-ms-input-placeholder {
  font-size: 16px;
  color: #636363; /* Farbe des Platzhaltertexts */
  /* font-style: italic; */
}

/**
 * CSS-Stilregeln für die Anpassung der WooCommerce-Elemente auf der Warenkorbseite.
 * 
 * 1. .woocommerce-notices-wrapper: Versteckt alle WooCommerce-Benachrichtigungen. 
 *    Dies umfasst Fehlermeldungen, Erfolgsmeldungen und Hinweise.
 * 
 * 2. .woocommerce-message: Spezifischer für das Verstecken von Erfolgsmeldungen, 
 *    wie z.B. "Produkt zum Warenkorb hinzugefügt". Nützlich, um die Benutzererfahrung 
 *    zu vereinfachen und Ablenkungen zu reduzieren.
 * 
 * 3. .cart-subtotal: Versteckt die Zwischensumme im Warenkorb. Dies kann verwendet werden, 
 *    um das Layout zu vereinfachen oder wenn die Zwischensumme an anderer Stelle angezeigt wird.
 * 
 * 4. .woocommerce-shipping-totals: Versteckt die Versandkosten im Warenkorb. Dies ist nützlich, 
 *    wenn Versandkosten nicht relevant sind oder anderswo berechnet werden.
 * 
 * 5. .cart-collaterals: Setzt den oberen Rand der Warenkorb-Nebenkosten auf 0. 
 *    Dies dient der optischen Straffung des Layouts, insbesondere wenn bestimmte Elemente 
 *    wie Zwischensumme oder Versandkosten ausgeblendet sind.
 * 
 * Hinweis: Diese Stilregeln sollten mit Vorsicht verwendet werden, da sie wichtige Informationen 
 * für den Benutzer verbergen können. Stelle sicher, dass sie im Kontext deiner Webseite angemessen sind.
 */
/* 
.woocommerce-notices-wrapper {
  display: none;
}
.woocommerce-message {
  display: none;
}
.cart-subtotal {
  display: none;
}
.woocommerce-shipping-totals {
  display: none;
}
.cart-collaterals {
  margin-top: 0;
} */

/* ----- */

#pa_abfallart + .reset_variations {
  display: none;
}

/* --- */
/* GF Anchors */
/* Versatz Mobile */

/* Sperrmüll-Formular */
#gf_3.gform_anchor {
  position: relative;
  top: -100px;
}

/* Reklamation */
#gf_4.gform_anchor {
  position: relative;
  top: -300px;
}

/* Versatz Tablet & Desktop */
@media (min-width: 768px) {
  /* Sperrmüll-Formular */
  #gf_3.gform_anchor {
    position: relative;
    top: -200px;
  }

  /* Reklamation */
  #gf_4.gform_anchor {
    position: relative;
    top: -400px;
  }
}

.woocommerce-shipping-methods li {
  justify-content: end;
}

/* Landesfeld verbergen / Weil Default */
.hide-country-field {
  display: none;
}


/* Woo table tyles */
.woocommerce table.shop_table :not(thead)>th, .woocommerce table.shop_table td {
  padding: 8px 4px;
}

.plz-indicator .dropdown-menu.sub-menu {
    display: none;

}
.plz-indicator .wcprbl-location-selector {
  text-align-last: right;

}
.plz-indicator .wcprbl-location-selector .wcprbl-current-location-link {
  color: #666666 !important;
  font-size: 16px;
  font-weight: normal;
}

#plz-check .wcprbl-current-location-link {
  display: none;
}

.cart-collaterals {
  margin-top: 8px;
}

/* Styling für Abfallart-Select als Info statt Dropdown-Menü */
#pa_abfallart {
  -webkit-appearance: none; /* Entfernt den Standard-Style für WebKit-Browser */
  -moz-appearance: none;    /* Entfernt den Standard-Style für Mozilla-Browser */
  appearance: none;         /* Entfernt den Standard-Style für die unterstützten Browser */
  background: transparent; /* Hintergrundfarbe */
  color: #555; /* Textfarbe */
  border: none; /* Rahmen */
  padding: 0; /* Innenabstand */
  font-family: Arial, sans-serif; /* Schriftart */
  font-size: 16px; /* Schriftgröße */
  display: inline-block;
  height: auto !important;
}

table.variations th.label {
    display: inline !important; /* Ändert das Display-Verhalten zu inline-block */
    vertical-align: top; /* Stellt sicher, dass es mit dem Top des Containers ausgerichtet ist, falls benötigt */
}

table.variations th.label label {
    display: inline !important; /* Stellt sicher, dass das Label selbst auch inline angezeigt wird */
}


table.variations label[for="pa_abfallart"] {
    display: inline !important; /* Macht das Label neben dem Select-Element sichtbar */
    margin-right: 10px; /* Fügt ein wenig Platz zwischen dem Label und dem Select-Element hinzu */
}


/* #pa_abfallart:disabled {
  opacity: 0.5; Transparenz, um die Nicht-Interaktivität zu signalisieren
} */

/* Verstecken des Pfeils für Internet Explorer 10+ */
#pa_abfallart::-ms-expand {
  display: none;
}

/* Custom Pfeil oder anderes Symbol (optional) */
#pa_abfallart::after {
  content: ""; /* Hier könnte ein Bild oder Symbol eingefügt werden */
  /* Weitere Styling-Eigenschaften für das Pseudo-Element */
}

/* Zwischensumme im Warenkorb entfernen */
tr.cart-subtotal {
  display: none;
}
/* Höhe der Zeile min 40px + Padding Top  */
.cart_totals .shop_table .order-tax {
  min-height: 40px !important;
  padding-top: 8px !important;
}

/* Höhe Zeile "Transport" Beschränken */
.woocommerce-shipping-totals.shipping {
  max-height: 40px;
}
/* Top Linie Warenkorb Subtotals entfernen */
.woocommerce-shipping-totals.shipping {
  border: none !important;
}
/* Rechte Linie Warenkorb Subtotals entfernen */
.thwmscp-new-layout-styles.thwmsc-closed-arrow-layout li:last-child::after {
  width: 0 !important;
}
/* Top Linie 2 Warenkorb Subtotals entfernen */
.woocommerce table.shop_table>:first-child>tr:not(:first-child), .woocommerce table.shop_table>:not(:first-child)>tr, .woocommerce table.shop_table>tr:not(:first-child) {
  /* border-top: none !important; */
}


.woocommerce-shipping-methods li {
  align-items: flex-start;
}

.woocommerce-checkout .shop_table td, .woocommerce-checkout .shop_table th {
  padding: 0;
 line-height: 1; 
}

.order-total {
  padding: 8px 0;
}
.order-total .woocommerce-Price-amount.amount {
  font-weight: 700;
  font-size: 1.2rem;
}

/* Progessbar Checkout stretch */
.thwmsc-tabs {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  margin: 0;
}

/* stretch single tabs to fiull up space */
.thwmsc-tab {
  flex: 1;
  padding: 0;
  margin: 0;
}

/* make font in next and prev buttons stronger */
.thwmsc-buttons #action-next, .thwmsc-buttons #action-prev{
  font-weight: 600;
  font-size: .95rem;
  background-color: #195698 !important;
  border-color: #195698 !important;
  color: #FFF !important;
}
.thwmsc-buttons #action-next {
  background-color: #195698 !important;
  border-color: #195698 !important;
  color: #FFF !important;
}
.thwmsc-buttons #action-next:hover {
  background-color: #0f3d5c !important;
  border-color: #0f3d5c !important;
  color: #FFF !important;
  cursor: pointer;

}

/* add padding to thumbnail */
.woocommerce table.shop_table td.product-thumbnail {
  padding: 12px 12px;
}
.woocommerce table.shop_table td.product-name {
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.2em;
}
.woocommerce table.shop_table td.product-price {
  padding: 4px 12px;
}
.woocommerce table.shop_table td.product-quantity {
  padding: 4px 12px;
}
/* .woocommerce table.shop_table td.product-remove {
  max-width: 20px !important;
  display: none;
} */

.wc-gzd-order-submit {
  padding: 16px 0;
}

/* REIHENFOLGE UST / GESAMTSUMME TAUSCHEN */

/* für warenkorb übersicht */

.thwmsc-tab-content .cart_totals .shop_table_responsive tbody {
  display: flex;
  flex-direction: column;
}

.thwmsc-tab-content .cart_totals .shop_table_responsive .cart-subtotal {
  order: 1;
}

.thwmsc-tab-content .cart_totals .shop_table_responsive .woocommerce-shipping-totals {
  display: flex;
  order: 2;
}
.thwmsc-tab-content .cart_totals .shop_table_responsive .woocommerce-shipping-totals th {
  flex: 1
}

.thwmsc-tab-content .cart_totals .shop_table_responsive .order-tax {
  order: 3;
  display: flex;
}
.thwmsc-tab-content .cart_totals .shop_table_responsive .order-tax th {
  flex: 1
}

.thwmsc-tab-content .cart_totals .shop_table_responsive .order-total {
  display: flex;
  order: 4;
}
.thwmsc-tab-content .cart_totals .shop_table_responsive .order-total th {
  flex: 1;
  font-weight: 700;
}

/* für order review */

table.woocommerce-checkout-review-order-table  {
  display: flex;
  flex-direction: column;
}
table.woocommerce-checkout-review-order-table tfoot {
  display: flex;
  flex-direction: column;
}

table.woocommerce-checkout-review-order-table tfoot .cart-subtotal {
  order: 1;
}

table.woocommerce-checkout-review-order-table tfoot .woocommerce-shipping-totals {
  display: flex;
  order: 2;
}
table.woocommerce-checkout-review-order-table tfoot .woocommerce-shipping-totals th {
  flex: 1
}
.shop_table.woocommerce-checkout-review-order-table .woocommerce-shipping-totals.shipping {
  margin-top: 16px;
}

table.woocommerce-checkout-review-order-table tfoot .order-tax {
  order: 3;
  display: flex;
  min-height: 40px;
  padding-top: 8px;
}
table.woocommerce-checkout-review-order-table tfoot .order-tax th {
  flex: 1
}

table.woocommerce-checkout-review-order-table tfoot .order-total {
  display: flex;
  order: 4;
}
table.woocommerce-checkout-review-order-table tfoot .order-total th {
  flex: 1
}

/*  Stling Labels Review Order */
.thwmsc-review-fields .review-field {
  display: block !important;
}
.thwmsc-review-fields label {
  font-weight: 700;
}

/* hide custom shippping fields */
.thwmsc-review-fields .review-field.hide-field {
  display: none !important;
}

/* Land Feld verstecken */
#shipping_country_field {
  display: none !important;
}
#billing_country_field {
  display: none !important;
}

.thwmsc-review-data-title {
  margin-bottom: 8px;
  font-size: 1.4em;
  padding-right: 16px;
}

.thwmsc-review-fields {
  margin-top: 8px;
}

#lieferadresse_heading_field h3 {
  margin-bottom: 0;
}

/* Feld Ship different adress verstecken */
#ship-to-different-address {
  display: none;
}

input::placeholder, textarea::placeholder {
  color: #909090 !important; /* Farbe des Placeholder-Texts */
}

/* Für Internet Explorer */
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #909090 !important; /* Farbe des Placeholder-Texts */
  /* Füge hier weitere Stile hinzu */
}

#lieferadresse_info_field {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  #thwmsc_review_data_wrap div {
    width: 33.3%;
    padding-right: 16px;
  }
}

@media screen and (max-width: 767px) {
  #thwmsc_review_data_wrap div {
    width: 100%;
  }
  .cart_totals h2 {
    font-size: 1.15rem;
    margin-top: 16px;
    text-align: right;
  }
}

#thwmsc_review_data_wrap div:nth-child(odd) {
  clear: unset;
}

.thwmsc-tab-content table.cart {
  table-layout: auto !important;
}
.thwmsc-tab-content table.cart td.product-name dl.variation {
  display: none;
}

/* Anwendung von table-layout: fixed; auf das umschließende table-Element */
.thwmsc-tab-content table.cart .woocommerce-cart-form__contents {
    table-layout: auto !important;
}

/* Spezifischer Selektor für das erste td-Element jeder Zeile */
.thwmsc-tab-content table.cart .woocommerce-cart-form__contents td:first-child {
    min-width: 20px !important;
}

.product-name .product-quantity {
  padding: 0 8px;
}


/* Stellt die Spaltenbreite ein, damit `product-name` den verfügbaren Platz einnimmt */
.shop_table .product-name {
  width: 100%;
}

/* Richtet den Text in der Spalte `product-total` rechts aus */
.shop_table .product-total {
  text-align: right;
}


/* Versteckt den gesamten Zahlungsabschnitt inklusive der Überschrift im WooCommerce Checkout */

/* Zielt auf den Container der Überschrift "Zahlungsart auswählen" */
#order_payment_heading {
    display: none !important;
}

/* Zielt auf den Div-Container, der die Zahlungsoptionen umschließt */
#payment.woocommerce-checkout-payment {
    /* display: none; */
    display: block !important;
}


/* Ausrichtung AGB Checkbox */
.form-row.place-order.wc-gzd-place-order {
  padding: 16px 0;
}
.checkbox-legal {
  text-align: left;
}

/* Ausrichtung PayPay Buttons */
.wc-gzd-order-submit {
  text-align: left;
}
.wc-gzd-order-submit .woocommerce.form-row.place-order {
  text-align: left;
}

.ppc-button-wrapper iframe {
  max-width: 400px;
  position: unset !important;
}

.paypal-buttons.paypal-buttons-context-iframe {
  position: unset !important;
  display: flex !important;
  justify-content: flex-end !important;
}

/* Overflow Tabelle Warenkorb */
form.woocommerce-cart-form {
  overflow: unset !important;
}

/* Abstand Error Nachrichten anpassen  */
.woocommerce-error{
  padding-top: 40px;
}

/* Mobile Checkout: kompaktere Darstellung */
@media (max-width: 767px) {
  body.woocommerce-checkout #thwmsc_wrapper {
    padding-top: 0px;
  }

  body.woocommerce-checkout #thwmsc-tabs {
    padding-top: 12px;
    gap: 6px;
    row-gap: 8px;
    flex-direction: column;
    align-items: stretch;
  }

  body.woocommerce-checkout .thwmsc-tab {
    min-width: 0;
    width: 100%;
    flex: 0 0 auto;
    display: contents;
    margin: 0;
    padding: 0;
  }

  body.woocommerce-checkout #thwmsc-tabs .thwmsc-tab a:not(.active) {
    display: none;
  }

  body.woocommerce-checkout #thwmsc-tabs .thwmsc-tab a.active {
    display: block;
  }

  body.woocommerce-checkout .thwmsc-tab-label {
    display: block;
    width: 100%;
    text-align: left;
    white-space: normal;
    font-size: 13px;
    line-height: 1.3;
  }

  body.woocommerce-checkout span.thwmsc-tab-label {
    padding: 8px 10px !important;
  }

  body.woocommerce-checkout .thwmsc-tab-content {
    padding-top: 16px;
  }

  body.woocommerce-checkout h3 {
    font-size: 1rem;
    margin-bottom: 6px;
  }
  body.woocommerce-checkout h1,
  body.woocommerce-checkout .tm-page-title {
    font-size: 1.3rem;
    margin-bottom: 10px;
  }

  body.woocommerce-checkout .woocommerce table.shop_table td.product-thumbnail {
    padding: 6px 6px 6px 0;
  }

  body.woocommerce-checkout .woocommerce table.shop_table td,
  body.woocommerce-checkout .woocommerce table.shop_table th {
    padding: 5px 6px;
    font-size: 13px;
    line-height: 1.25;
  }

  body.woocommerce-checkout table.woocommerce-checkout-review-order-table .order-total .woocommerce-Price-amount.amount {
    font-size: 1rem;
  }

  body.woocommerce-checkout .thwmsc-review-data-title {
    font-size: 1.2em;
    margin-bottom: 4px;
  }

  body.woocommerce-checkout .thwmsc-buttons #action-next,
  body.woocommerce-checkout .thwmsc-buttons #action-prev,
  body.woocommerce-checkout .wc-gzd-order-submit .button {
    padding: 0 12px;
    line-height: 38px;
    font-size: 0.95rem;
  }

  /* PLZ Info/Buttons kleiner */
  body.woocommerce-checkout #plz-info {
    font-size: 14px;
    padding: 5px;
  }
  body.woocommerce-checkout .wcprbl-zip-code-input {
    font-size: 13px;
    height: 36px;
  }
  body.woocommerce-checkout .wcprbl-submit-zip-code {
    font-size: 14px;
    height: 36px;
  }
  body.woocommerce-checkout .wcprbl-current-location-link {
    font-size: 14px;
  }

  /* Kompaktere Produktanzeige */
  body.woocommerce-checkout .woocommerce table.shop_table td.product-name {
    font-size: 0.88rem;
    line-height: 1.25;
  }
  #coupon_code {
    margin: 8px 0;
  }
  /* Coupon/Hinweise kleiner */
  body.woocommerce-checkout .woocommerce-info {
    font-size: 13px;
    padding: 10px 12px;
    margin-bottom: 12px;
  }
  body.woocommerce-checkout form.checkout_coupon .input-text {
    height: 38px;
    font-size: 14px;
    margin-bottom: 8px;
  }
  body.woocommerce-checkout form.checkout_coupon .button {
    line-height: 36px;
    font-size: 14px;
    padding: 0 12px;
  }
  body.woocommerce-checkout form.checkout_coupon {
    margin-top: 10px;
    margin-bottom: 16px;
  }

  /* Checkout-Fehlermeldungen kompakter */
  body.woocommerce-checkout .woocommerce-error,
  body.woocommerce-checkout .woocommerce-message,
  body.woocommerce-checkout .woocommerce-info {
    font-size: 13px;
    padding: 10px 12px;
    margin-bottom: 12px;
  }

  /* Zeitfenster untereinander */
  body.woocommerce-checkout #zeit_anlieferung_field .woocommerce-input-wrapper {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 10px;
    row-gap: 8px;
    align-items: center;
  }
  body.woocommerce-checkout #zeit_anlieferung_field .woocommerce-input-wrapper label {
    margin: 0;
  }
  body.woocommerce-checkout #zeit_anlieferung_field .woocommerce-input-wrapper input[type="radio"] {
    margin: 0;
  }

  /* Cart/Review: Zweizeiliges Layout je Produkt */
  body.woocommerce-checkout table.shop_table tr.cart_item {
    display: grid;
    grid-template-columns: auto auto 1fr;
    grid-template-rows: auto auto;
    grid-template-areas:
      "rem thumb name"
      "price qty total";
    column-gap: 8px;
    row-gap: 6px;
    align-items: center;
  }
  body.woocommerce-checkout table.shop_table tr.cart_item td.product-remove { grid-area: rem; }
  body.woocommerce-checkout table.shop_table tr.cart_item td.product-thumbnail { grid-area: thumb; }
  body.woocommerce-checkout table.shop_table tr.cart_item td.product-name { grid-area: name; }
  body.woocommerce-checkout table.shop_table tr.cart_item td.product-price { grid-area: price; justify-self: end; text-align: right; }
  body.woocommerce-checkout table.shop_table tr.cart_item td.product-quantity { grid-area: qty; justify-self: end; text-align: right; }
  body.woocommerce-checkout table.shop_table tr.cart_item td.product-total { grid-area: total; justify-self: end; text-align: right; }
  body.woocommerce-checkout table.shop_table tr.cart_item td.product-quantity .quantity input.qty {
    min-width: 64px;
    text-align: center;
  }
}

.woocommerce table.cart td {
  width: unset;
}