/* ============================================================================
   alantouz — WooCommerce im Marken-Design (Block-Checkout + klassisch + Shop)
   Nutzt die Design-Tokens aus style.css (mit Fallback-Werten).
   ========================================================================== */

.az-wc {
  padding-top: clamp(104px, 13vw, 148px);
  padding-bottom: clamp(60px, 8vw, 110px);
  min-height: 64vh;
  background:
    radial-gradient(60% 50% at 88% -5%, rgba(52,167,123,.10), transparent 60%),
    var(--paper, #fbfdfb);
}
.az-wc__inner { position: relative; z-index: 1; }

/* Überschriften + Fließtext */
.az-wc h1, .az-wc h2, .az-wc h3,
.woocommerce-page h1, .woocommerce-page h2 {
  font-family: var(--display, "Plus Jakarta Sans", system-ui, sans-serif);
  letter-spacing: -0.02em; color: var(--fir, #14302a);
}
.az-wc .woocommerce a { color: var(--emerald-deep, #178a5a); }
.az-wc a:hover { color: var(--fir, #14302a); }

/* ---- Buttons (Block + klassisch) ---------------------------------------- */
.az-wc .wc-block-components-button,
.az-wc .wc-block-components-checkout-place-order-button,
.woocommerce a.button, .woocommerce button.button,
.woocommerce #place_order, .woocommerce input.button,
.woocommerce .button.alt, .wc-block-cart__submit-button {
  background: linear-gradient(135deg, var(--emerald, #2bb673), var(--emerald-deep, #178a5a)) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 100px !important;
  font-weight: 700 !important;
  font-family: var(--display, inherit);
  padding: 14px 28px !important;
  box-shadow: 0 14px 30px -16px rgba(23,138,90,.7) !important;
  transition: transform .2s ease, box-shadow .25s ease, filter .2s ease !important;
}
.az-wc .wc-block-components-button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce #place_order:hover, .wc-block-cart__submit-button:hover {
  transform: translateY(-2px) !important;
  filter: brightness(1.04);
  box-shadow: 0 20px 40px -18px rgba(23,138,90,.85) !important;
}
/* sekundäre Buttons (z. B. „Warenkorb aktualisieren") dezent */
.woocommerce button[name="update_cart"],
.az-wc .wc-block-components-button.outlined {
  background: var(--surface, #fff) !important;
  color: var(--fir, #14302a) !important;
  border: 1px solid var(--line, #e3ece7) !important;
  box-shadow: none !important;
}

/* ---- Eingabefelder ------------------------------------------------------- */
.az-wc .wc-block-components-text-input input,
.az-wc .wc-block-components-text-input .components-text-control__input,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.az-wc select, .az-wc .select2-container .select2-selection {
  border: 1px solid var(--line, #e3ece7) !important;
  border-radius: 12px !important;
  background: var(--surface, #fff) !important;
  font-size: 1rem;
  padding: 13px 15px !important;
  color: var(--fir, #14302a);
}
.az-wc .wc-block-components-text-input input:focus,
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
  outline: none !important;
  border-color: var(--emerald, #2bb673) !important;
  box-shadow: 0 0 0 4px rgba(52,167,123,.16) !important;
}
.az-wc .wc-block-components-text-input.is-active label,
.az-wc .wc-block-components-checkout-step__title { color: var(--emerald-deep, #178a5a); }

/* ---- Karten / Container (Payment, klassischer Warenkorb) ----------------- */
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout #payment,
.woocommerce table.shop_table {
  background: var(--surface, #fff);
  border: 1px solid var(--line, #e3ece7) !important;
  border-radius: var(--radius-lg, 18px) !important;
  box-shadow: 0 30px 70px -52px rgba(23,48,41,.45);
}
/* Block-Checkout: Summen-Wrapper sind KEINE eigenen Kästen (nur die Außenkarte) */
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-order-summary {
  background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  padding-left: 0 !important; padding-right: 0 !important;
}
.woocommerce-checkout #payment { padding: 6px 18px 18px; }
.az-wc .wc-block-components-totals-item__value,
.woocommerce .order-total .amount,
.az-wc .wc-block-components-order-summary-item__total-price {
  font-family: var(--display, inherit); color: var(--fir, #14302a);
}

/* ---- Preise / Shop-Kacheln ---------------------------------------------- */
.woocommerce ul.products li.product {
  background: var(--surface, #fff);
  border: 1px solid var(--line, #e3ece7);
  border-radius: var(--radius-lg, 18px);
  padding: 18px;
  transition: transform .2s ease, box-shadow .25s ease;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-3px);
  box-shadow: 0 26px 56px -34px rgba(23,48,41,.45);
}
.woocommerce .price, .woocommerce ul.products li.product .price {
  color: var(--fir, #14302a) !important; font-weight: 700;
  font-family: var(--display, inherit);
}
.woocommerce div.product p.price ins { text-decoration: none; }

/* ---- Hinweise (Erfolg/Fehler/Info) -------------------------------------- */
.woocommerce-message, .woocommerce-info, .woocommerce-error,
.az-wc .wc-block-components-notice-banner {
  border-radius: 14px !important;
  border: 1px solid var(--line, #e3ece7);
}
.woocommerce-message, .az-wc .wc-block-components-notice-banner.is-success {
  border-left: 4px solid var(--emerald, #2bb673) !important;
}

/* ---- Mein Konto ---------------------------------------------------------- */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  border: 1px solid var(--line, #e3ece7); border-radius: 14px; overflow: hidden;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { color: var(--emerald-deep, #178a5a); font-weight: 700; }

/* ---- Coupon-Feld --------------------------------------------------------- */
.az-wc .wc-block-components-totals-coupon__button,
.woocommerce-cart .coupon .button { border-radius: 100px !important; }

/* responsive Feinschliff */
@media (max-width: 760px) {
  .az-wc { padding-top: clamp(88px, 22vw, 116px); }
}

/* ============================================================================
   Block-Checkout: mehr Luft, größere Felder, schönere Bestellübersicht
   ========================================================================== */
.wc-block-checkout { --wc-block-components-spacing: 18px; }

/* Abschnitte (Kontakt, Rechnungsadresse, Zahlung) klar trennen */
.wc-block-components-checkout-step { margin-bottom: 34px !important; }
.wc-block-components-checkout-step__title { font-family: var(--display, inherit) !important; color: var(--fir, #14302a) !important; font-size: 1.3rem !important; letter-spacing: -0.02em; }
.wc-block-components-checkout-step__description { margin: 4px 0 16px !important; color: var(--fir-dim, #5b726a) !important; }

/* Felder: mehr Abstand untereinander + größer/bequemer */
.wc-block-checkout .wc-block-components-text-input,
.wc-block-checkout .wc-block-components-combobox,
.wc-block-checkout .wc-block-components-country-input,
.wc-block-checkout .wc-block-components-state-input,
.wc-block-checkout .wc-block-components-checkout-step__container .wc-block-components-text-input {
  margin-top: 0 !important; margin-bottom: 18px !important;
}
.wc-block-checkout .wc-block-components-text-input input,
.wc-block-checkout .wc-block-components-combobox input,
.wc-block-checkout .wc-block-components-select select,
.wc-block-checkout input.wc-block-components-text-input__input {
  min-height: 56px !important; border-radius: 12px !important;
  padding-top: 22px !important; padding-bottom: 8px !important;
}
/* Vorname/Nachname & Adressreihen: deutlicher Spaltenabstand */
.wc-block-checkout .wc-block-components-address-form,
.wc-block-checkout .wc-block-components-address-form__address-1 ~ * {
  row-gap: 18px !important; column-gap: 18px !important;
}
/* etwas Abstand unter dem E-Mail-Feld / Kontaktbereich */
.wc-block-checkout__contact-fields,
.wc-block-checkout-contact-information-block { margin-bottom: 10px !important; }

/* „Sie bestellen gerade als Gast." ausblenden — verwirrt Kunden unnötig */
.wc-block-checkout__guest-checkout-notice { display: none !important; }

/* Bestellübersicht als saubere Karte */
.wp-block-woocommerce-checkout-order-summary-block,
.wc-block-checkout__sidebar > .wc-block-components-sidebar {
  background: var(--surface, #fff) !important;
  border: 1px solid var(--line, #e3ece7) !important;
  border-radius: var(--radius-lg, 18px) !important;
  padding: 10px 22px 18px !important;
  box-shadow: 0 30px 70px -52px rgba(23,48,41,.45) !important;
}
.wc-block-components-order-summary-item { padding: 16px 0 !important; border-bottom: 1px solid var(--line, #eef2f0); }
.wc-block-components-order-summary-item__image img { border-radius: 10px !important; border: 1px solid var(--line, #e3ece7); }
.wc-block-components-order-summary-item__description .wc-block-components-product-name,
.wc-block-components-order-summary-item__description .wc-block-components-product-metadata { color: var(--fir, #14302a) !important; }
.wc-block-components-order-summary-item__description .wc-block-components-product-name { font-weight: 700 !important; }
.wc-block-components-totals-item { padding: 7px 0 !important; }
.wc-block-components-totals-coupon { border-top: 1px solid var(--line, #e3ece7); margin-top: 6px; padding-top: 16px; }
.wc-block-components-totals-footer-item {
  border-top: 1px solid var(--line, #e3ece7); margin-top: 6px; padding-top: 14px !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-family: var(--display, inherit) !important; font-size: 1.5rem !important; color: var(--fir, #14302a) !important;
}
/* AGB/Datenschutz-Hinweis dezent */
.wc-block-checkout__terms { color: var(--fir-dim, #5b726a) !important; font-size: .92rem; }
.wc-block-checkout__terms a { color: var(--emerald-deep, #178a5a) !important; text-decoration: underline; }

/* ============================================================================
   Korrektur 2026-06-15: Bestellübersicht (keine Einzel-Kästen), Marketing weg, Selects
   ========================================================================== */
/* Summen-Unterblöcke NICHT als einzelne gerundete Kästen darstellen */
.wp-block-woocommerce-checkout-order-summary-block .wp-block-woocommerce-checkout-order-summary-coupon-form-block,
.wp-block-woocommerce-checkout-order-summary-block .wp-block-woocommerce-checkout-order-summary-subtotal-block,
.wp-block-woocommerce-checkout-order-summary-block .wp-block-woocommerce-checkout-order-summary-taxes-block,
.wp-block-woocommerce-checkout-order-summary-block .wp-block-woocommerce-checkout-order-summary-fee-block,
.wp-block-woocommerce-checkout-order-summary-block .wp-block-woocommerce-checkout-order-summary-discount-block,
.wp-block-woocommerce-checkout-order-summary-block .wp-block-woocommerce-checkout-order-summary-shipping-block,
.wp-block-woocommerce-checkout-order-summary-block .wp-block-woocommerce-checkout-order-summary-totals-block,
.wp-block-woocommerce-checkout-order-summary-block .wp-block-woocommerce-checkout-order-summary-cart-items-block {
  border: 0 !important; border-radius: 0 !important; background: transparent !important;
  padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important;
  box-shadow: none !important;
}
/* dezente Trennlinien statt Kästen */
.wp-block-woocommerce-checkout-order-summary-cart-items-block { border-bottom: 1px solid var(--line, #e8efec) !important; padding-bottom: 8px !important; margin-bottom: 6px !important; }
.wp-block-woocommerce-checkout-order-summary-coupon-form-block { border-top: 1px solid var(--line, #e8efec) !important; padding-top: 12px !important; margin-top: 10px !important; }
.wp-block-woocommerce-checkout-order-summary-totals-block { padding-top: 8px !important; }
.wc-block-components-totals-item { padding: 6px 0 !important; border: 0 !important; }
.wc-block-components-totals-footer-item { border-top: 1px solid var(--line, #d9e2dd) !important; margin-top: 8px !important; padding-top: 14px !important; }

/* Englische Marketing-/Newsletter-Checkbox (ungenutzt) ausblenden */
.wp-block-woocommerce-checkout-contact-information-block .wc-block-components-checkbox { display: none !important; }

/* Select-/Combobox-Felder: Wert nicht zu nah am Label */
.wc-block-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-checkout .wc-block-components-combobox input.components-combobox-control__input,
.wc-block-checkout select.wc-block-components-select__select,
.wc-block-checkout .wc-block-components-select__container select {
  min-height: 56px !important; padding-top: 22px !important; padding-bottom: 8px !important;
}
.wc-block-checkout .wc-block-components-combobox, .wc-block-checkout .wc-block-components-select { margin-bottom: 18px !important; }

/* Rechnungsadresse: einheitlicher, kleinerer Reihenabstand (kein doppeltes Margin) */
.wc-block-checkout .wc-block-components-address-form { row-gap: 14px !important; column-gap: 16px !important; }
.wc-block-checkout .wc-block-components-address-form .wc-block-components-text-input,
.wc-block-checkout .wc-block-components-address-form .wc-blocks-components-select,
.wc-block-checkout .wc-block-components-address-form .wc-block-components-combobox { margin-bottom: 0 !important; }
/* Kontaktbereich (gestapelt) etwas enger */
.wc-block-checkout .wp-block-woocommerce-checkout-contact-information-block .wc-block-components-text-input,
.wc-block-checkout .wp-block-woocommerce-checkout-contact-information-block .wc-blocks-components-select { margin-bottom: 14px !important; }

/* Express-/Schnellzahlung komplett aus (Kunde muss Formular + Daten ausfüllen) */
.wp-block-woocommerce-checkout-express-payment-block,
.wc-block-checkout__express-payment,
.wc-block-components-express-payment,
.wc-block-components-express-payment-continue-rule { display: none !important; }

/* Select-Felder (Land/Region, Bundesland, „Ich bestelle als") = gleiche Höhe/Abstand wie Textfelder */
.wc-block-checkout .wc-blocks-components-select select,
.wc-block-checkout select.wc-blocks-components-select__select {
  min-height: 56px !important; height: 56px !important;
  padding-top: 22px !important; padding-bottom: 8px !important; border-radius: 12px !important; font-size: 1rem;
}
.wc-block-checkout .wc-blocks-components-select { margin-bottom: 18px !important; }
.wc-block-checkout .wc-blocks-components-select__label { top: 9px !important; }

/* Mobil: volle Breite, saubere Abstände */
@media (max-width: 781px) {
  .az-wc { padding-top: clamp(84px, 20vw, 112px) !important; }
  .wc-block-checkout .wc-block-components-address-form { grid-row-gap: 16px !important; }
  .wp-block-woocommerce-checkout-order-summary-block { padding: 8px 16px 14px !important; }
  .wc-block-components-checkout-step { margin-bottom: 26px !important; }
}

/* ----------------------------------------------------------------------------
   Bestellübersicht MOBIL: Inhalt etwas größer + sauber INNERHALB der Karte,
   ohne Verschiebung. Keine Kästen-im-Kasten, Gesamtsumme nicht überdimensioniert.
   ---------------------------------------------------------------------------- */
@media (max-width: 781px) {
  .wp-block-woocommerce-checkout-order-summary-block { padding: 16px 18px 18px !important; }
  /* alle inneren Wrapper randlos/transparent (kein doppelter Rahmen) */
  .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-order-summary,
  .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-panel,
  .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-order-summary__content {
    border: 0 !important; background: transparent !important; padding-left: 0 !important; padding-right: 0 !important; box-shadow: none !important;
  }
  /* Produktname + Punkte (Leistungsumfang) gut lesbar */
  .wc-block-components-order-summary-item__description .wc-block-components-product-name { font-size: 1.04rem !important; line-height: 1.3 !important; }
  .wc-block-components-order-summary-item__description .wc-block-components-product-metadata,
  .wc-block-components-order-summary-item__description .wc-block-components-product-details,
  .wc-block-components-order-summary-item__description li { font-size: .92rem !important; line-height: 1.5 !important; }
  /* Produktbild nicht zu groß */
  .wc-block-components-order-summary-item__image { width: 54px !important; flex: 0 0 54px !important; }
  /* Summenzeilen klar, Gesamtsumme nicht riesig */
  .wc-block-components-totals-item { font-size: 1rem !important; }
  .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: 1.3rem !important; }
}

/* ============================================================================
   Korrektur 2026-06-16: Klarna-Logo anzeigen + Bestellübersicht garantiert EINE Karte
   ========================================================================== */
/* Klarna (und weitere WooPayments-Methoden): Logo im Auswahl-Label zeigen.
   WooCommerce blendet das (breite) Klarna-Pill-Logo per Media-Query aus und zeigt nur
   Text „Klarna" — wir holen das offizielle Logo zurueck (Mobil + Desktop). */
.wc-block-checkout__payment-method .wc-block-components-payment-method-label .wcpay-payment-method-icon {
  display: inline-block !important;
  height: 22px !important; width: auto !important;
  vertical-align: middle !important; margin-right: 8px !important;
}

/* Bestellübersicht: NUR die Block-Karte ist eine Karte — alle inneren Summary-Wrapper
   randlos/transparent. Verhindert „Kasten-im-Kasten" in der mobilen Klapp-Ansicht. */
.wc-block-components-checkout-order-summary,
.wc-block-components-checkout-order-summary__content,
.wc-block-components-order-summary,
.wc-block-components-order-summary__content {
  border: 0 !important; border-radius: 0 !important;
  background: transparent !important; box-shadow: none !important;
}

/* Privatperson/Unternehmen: USt-IdNr + Firma nur bei „Unternehmen" (body.az-business) */
body:not(.az-business) .wc-block-components-text-input:has([data-az="ustid"]) { display: none !important; }
body:not(.az-business) .wc-block-components-text-input:has(#billing-company),
body:not(.az-business) .wc-block-components-text-input:has(#shipping-company) { display: none !important; }
