/* =============================================
   KEIMBROT MODERN THEME - user.css
   Fuer: testshop.keimbrot.at
   Template: Joomla Cassiopeia + VirtueMArt
   Stand: 2026-05-20
   ============================================= */

/* === GLOBAL === */
html { scroll-behavior: smooth !important; }
body {
  font-family: 'Inter', 'Segoe UI', system-ui, sans-serif !important;
  background: #eef3f3 !important;
  color: #1d1d1f !important;
  overflow-x: hidden !important;
}
/* Natuerlicher Landschafts-Hintergrund (Himmel/Getreide/Wiese) wie altes shop.keimbrot.at */
.site-grid {
  background: transparent !important;
  background-image: url("/images/hintergrund.jpg") !important;
  background-position: top center !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
  background-size: cover !important;
}
::selection { background: #D66C24 !important; color: #fff !important; }

/* === HEADER === */
header.container-header {
  background: linear-gradient(135deg, #a84d12 0%, #D66C24 100%) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.12) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
}
.maximenuck a, header a {
  color: #fff !important;
  font-weight: 500 !important;
  transition: color 0.3s ease !important;
}
.maximenuck a:hover, header a:hover { color: #f0c040 !important; }

/* === SIDEBAR CARDS (links + rechts) === */
.sidebar-left.card, .sidebar-right.card {
  background: #fff !important;
  border: none !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 20px !important;
  margin-bottom: 14px !important;
  transition: box-shadow 0.3s ease !important;
}
.sidebar-left.card:hover, .sidebar-right.card:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,0.1) !important;
}

/* Sidebar Ueberschriften */
.sidebar-left.card h3, .sidebar-right.card h3, .card-header h3 {
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 12px !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid #D66C24 !important;
}

/* Liefertermin-Karte - gleicher Stil wie andere Karten */
.sidebar-left.card:first-child p,
.sidebar-left.card:first-child div,
.sidebar-left.card:first-child span {
  color: #a84d12 !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
}

/* Kategorie-Links */
.sidebar-left.card ul { padding-left: 0 !important; }
.sidebar-left.card li { list-style: none !important; margin: 2px 0 !important; }
.sidebar-left.card a {
  color: #a84d12 !important;
  text-decoration: none !important;
  display: block !important;
  padding: 7px 10px !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
  font-weight: 500 !important;
}
.sidebar-left.card a:hover {
  background: #f4f4f2 !important;
  color: #D66C24 !important;
  transform: translateX(4px) !important;
}

/* === PRODUKT-KARTEN === */
.product.vm-col {
  background: #fff !important;
  border: 1px solid #e8e8ed !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 14px 14px 24px 14px !important;
  transition: all 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
  overflow: hidden !important;
  text-align: center !important;
}
.product.vm-col:hover {
  box-shadow: 0 8px 30px rgba(0,0,0,0.12) !important;
  transform: translateY(-4px) !important;
  border-color: #D66C24 !important;
}
.vertical-separator { border-color: transparent !important; }

/* Produktbilder */
.vm-product-media-container {
  overflow: hidden !important;
  border-radius: 12px !important;
  margin-bottom: 10px !important;
  background: #f9f9f9 !important;
  width: 100% !important;
  text-align: center !important;
}
.vm-product-media-container a {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
}
.vm-product-media-container a img,
.vm-product-media-container img {
  border-radius: 12px !important;
  transition: transform 0.4s ease !important;
  width: 100% !important;
  height: 180px !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 auto !important;
}
.product.vm-col:hover .vm-product-media-container img {
  transform: scale(1.05) !important;
}

/* Produktname - ZENTRIERT */
.vm-product-descr-container-1 {
  display: block !important;
  text-align: center !important;
  width: 100% !important;
  margin: 8px 0 4px !important;
}
.vm-product-descr-container-1 h2 {
  width: 100% !important;
  text-align: center !important;
  margin: 6px 0 !important;
  font-size: 0.9rem !important;
}
.vm-product-descr-container-1 a {
  color: #1d1d1f !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  text-decoration: none !important;
  line-height: 1.4 !important;
  transition: color 0.2s ease !important;
  display: block !important;
  text-align: center !important;
  width: 100% !important;
}
.vm-product-descr-container-1 a:hover { color: #D66C24 !important; }
.vm-product-descr-container-1 .product_s_desc { display: none !important; }

/* Preis - ZENTRIERT */
.product-price, .PricesalesPrice, .vm-display.vm-price-value {
  float: none !important;
  text-align: center !important;
  width: 100% !important;
  display: block !important;
}
.PricesalesPrice, .vm-price-value {
  color: #a84d12 !important;
  font-weight: 700 !important;
  font-size: 1.05rem !important;
}
.vm-price-desc {
  color: #86868b !important;
  font-size: 0.75rem !important;
  float: none !important;
  display: inline !important;
}
.vm3pr-0, .vm3pr-1 {
  display: block !important;
  text-align: center !important;
  width: 100% !important;
  margin: 4px 0 !important;
}
.vm3pr-0 *, .vm3pr-1 * {
  float: none !important;
  text-align: center !important;
}
.product.vm-col .clear { display: none !important; }

/* Warenkorb-Bereich - ZENTRIERT, gestapelt */
.addtocart-area {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 8px !important;
  padding: 0 10px !important;
  box-sizing: border-box !important;
  max-width: 100% !important;
}
.addtocart-area form { width: 100% !important; box-sizing: border-box !important; }
.addtocart-bar {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 6px !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  width: 100% !important;
}
.quantity-box { display: inline-flex !important; align-items: center !important; }

/* Mengenfeld */
input.quantity-input, input[name="quantity[]"] {
  border: 2px solid #a84d12 !important;
  border-radius: 8px !important;
  padding: 7px 4px !important;
  width: 40px !important;
  text-align: center !important;
  font-weight: 600 !important;
  font-size: 0.95rem !important;
  color: #a84d12 !important;
  background: #f4f4f2 !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
}
input.quantity-input:focus, input[name="quantity[]"]:focus {
  border-color: #D66C24 !important;
  outline: none !important;
  opacity: 1 !important;
}

/* Warenkorb-Button - ORANGE */
.addtocart-button, input[value="In den Warenkorb"] {
  background: linear-gradient(135deg, #D66C24 0%, #c05a18 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 9px 22px !important;
  font-weight: 600 !important;
  font-size: 0.85rem !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}
.addtocart-button:hover, input[value="In den Warenkorb"]:hover {
  background: linear-gradient(135deg, #c05a18 0%, #a84d12 100%) !important;
  box-shadow: 0 4px 15px rgba(214,108,36,0.35) !important;
  transform: translateY(-1px) !important;
}

/* Span-Wrapper um Button entfernen */
span.addtocart-button {
  background: transparent !important;
  padding: 0 !important;
  border: none !important;
  display: inline !important;
}

/* Rating ausblenden wenn leer */
.vm-product-rating-container:empty { display: none !important; }

/* Sortierung / Paginierung */
.vm-page-counter { color: #86868b !important; font-size: 0.85rem !important; }
select, .vm-order-list select {
  border: 2px solid #e5e5ea !important;
  border-radius: 8px !important;
  padding: 6px 10px !important;
  background: #fff !important;
}

/* === LOGIN-KARTE === */
.sidebar-right.card input[type="text"],
.sidebar-right.card input[type="password"] {
  border: 2px solid #e5e5ea !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-size: 0.9rem !important;
  transition: border-color 0.2s ease !important;
}
.sidebar-right.card input[type="text"]:focus,
.sidebar-right.card input[type="password"]:focus {
  border-color: #D66C24 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(214,108,36,0.15) !important;
}
#mod-login-submit, .sidebar-right.card button[type="submit"] {
  background: linear-gradient(135deg, #a84d12 0%, #D66C24 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 10px 18px !important;
  font-weight: 600 !important;
  width: 100% !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}
#mod-login-submit:hover {
  box-shadow: 0 4px 15px rgba(168,77,18,0.35) !important;
}

/* === FOOTER (dezent) === */
.container-bottom-b {
  background: linear-gradient(135deg, #a84d12 0%, #D66C24 100%) !important;
  padding: 6px 20px !important;
  margin-top: 16px !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  border-top: none !important;
  box-shadow: 0 -2px 10px rgba(0,0,0,0.08) !important;
}
.container-bottom-b, .container-bottom-b * { color: rgba(255,255,255,0.95) !important; }
/* Innere Template-Karte transparent */
.container-bottom-b .card,
.container-bottom-b .bottom-b {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}
.container-bottom-b a {
  color: #fff !important;
  display: inline-block !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  padding: 4px 14px !important;
  transition: color 0.2s ease !important;
  font-size: 0.82rem !important;
  letter-spacing: 0.3px !important;
}
.container-bottom-b a:hover { color: #FAAD59 !important; text-decoration: none !important; }

/* === BACK TO TOP === */
a.back-to-top-link {
  background: #a84d12 !important;
  color: #fff !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 15px rgba(0,0,0,0.2) !important;
}
a.back-to-top-link:hover { background: #D66C24 !important; }

/* === SCROLLBAR === */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #f5f5f7; }
::-webkit-scrollbar-thumb { background: #c7c7cc; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #86868b; }

/* === KARTEN GLEICHE HOEHE === */
.browse-view .row {
  align-items: stretch !important;
}
.product.vm-col {
  display: flex !important;
  flex-direction: column !important;
}
.product.vm-col .spacer.product-container {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  height: 100% !important;
}
.product.vm-col .vm-product-media-container {
  flex-shrink: 0 !important;
}
.product.vm-col .vm-product-descr-container-1 {
  flex-shrink: 0 !important;
}
.product.vm-col .vm3pr-0 {
  margin-top: auto !important;
}
.vm-details-button {
  display: none !important;
}
.product.vm-col .addtocart-area {
  padding-top: 10px !important;
}

/* === OVERFLOW SCHUTZ === */
.site-grid, .container-component, .browse-view {
  overflow-x: hidden !important;
  max-width: 100vw !important;
  box-sizing: border-box !important;
}

/* =============================================
   RESPONSIVE DESIGN
   ============================================= */

/* --- DESKTOP: 3 Spalten Produkte (ab 1025px) --- */
@media (min-width: 1025px) {
  .browse-view .row {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 16px !important;
  }
  .product.vm-col.vm-col-3 {
    flex: 0 0 calc(33.33% - 12px) !important;
    width: calc(33.33% - 12px) !important;
    max-width: calc(33.33% - 12px) !important;
    float: none !important;
    margin: 0 !important;
  }
}

/* --- TABLET: Sidebars oben/unten, 2 Spalten Produkte (max 1024px) --- */
@media (max-width: 1024px) {
  .site-grid {
    display: flex !important;
    flex-direction: column !important;
    padding: 12px !important;
    gap: 12px !important;
  }
  .container-component {
    order: 1 !important;
    width: 100% !important;
  }
  .container-sidebar-left {
    display: flex !important;
    flex-direction: row !important;
    gap: 12px !important;
    order: 2 !important;
  }
  .container-sidebar-left .sidebar-left.card {
    flex: 1 !important;
    margin-bottom: 0 !important;
  }
  .container-sidebar-right {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    order: 3 !important;
  }
  .container-bottom-b {
    order: 4 !important;
  }
  .container-sidebar-right .sidebar-right.card {
    flex: 1 1 200px !important;
    margin-bottom: 0 !important;
  }
  .browse-view .row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    justify-content: center !important;
  }
  .product.vm-col.vm-col-3 {
    flex: 0 0 calc(50% - 8px) !important;
    width: calc(50% - 8px) !important;
    max-width: calc(50% - 8px) !important;
    float: none !important;
    margin: 0 !important;
  }
}

/* --- MOBILE: Sidebars gestapelt (max 768px) --- */
@media (max-width: 768px) {
  .container-sidebar-left { flex-direction: column !important; }
  .container-sidebar-right { flex-direction: column !important; }
  .container-sidebar-right .sidebar-right.card { flex: 1 1 100% !important; }
  .vm-product-media-container a img { height: 140px !important; }
  .addtocart-button, input[value="In den Warenkorb"] {
    padding: 8px 14px !important;
    font-size: 0.78rem !important;
  }
  header.container-header { position: relative !important; }
  .sidebar-left.card, .sidebar-right.card {
    padding: 14px !important;
    border-radius: 12px !important;
  }
}

/* --- SMARTPHONE SCHMAL: 1 Spalte Produkte (max 480px) --- */
@media (max-width: 480px) {
  .product.vm-col.vm-col-3 {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
  }
  .vm-product-media-container a img { height: 200px !important; }
}

/* =============================================
   PRODUKTDETAILSEITE
   ============================================= */

/* --- Gesamtlayout --- */
.productdetails-view {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 30px !important;
  margin-bottom: 20px !important;
}

/* --- Zurueck-Link --- */
.back-to-category {
  display: block !important;
  float: none !important;
  margin-bottom: 12px !important;
}
.back-to-category a,
a.back-to-category,
.productdetails-view .back-to-category a {
  display: inline-block !important;
  color: #D66C24 !important;
  font-weight: 600 !important;
  font-size: 0.85rem !important;
  text-decoration: none !important;
  padding: 6px 14px !important;
  border: 2px solid #D66C24 !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
}
.back-to-category a:hover,
a.back-to-category:hover {
  background: #D66C24 !important;
  color: #fff !important;
}

/* --- Produkttitel --- */
.productdetails-view h1,
.productdetails-view .title {
  font-size: 1.6rem !important;
  font-weight: 800 !important;
  color: #a84d12 !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.3 !important;
}

/* --- Kurzbeschreibung --- */
.product-short-description {
  color: #555 !important;
  font-size: 1rem !important;
  line-height: 1.5 !important;
  margin-bottom: 16px !important;
}

/* --- Produkt-Layout: Bild links, Details rechts --- */
.productdetails-view .vm-product-container {
  display: flex !important;
  gap: 30px !important;
  align-items: flex-start !important;
}
.productdetails-view .vm-product-media-container {
  float: none !important;
  flex: 0 0 50% !important;
  max-width: 50% !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
  margin-bottom: 0 !important;
  background: #f9f9f9 !important;
}
.productdetails-view .vm-product-details-container {
  float: none !important;
  flex: 1 !important;
  width: auto !important;
}
.productdetails-view .vm-product-media-container .main-image {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
}
.productdetails-view .vm-product-media-container a,
.productdetails-view .main-image a {
  display: block !important;
  width: 100% !important;
}
.productdetails-view .vm-product-media-container img,
.productdetails-view .main-image img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  border-radius: 14px !important;
  object-fit: cover !important;
  max-height: 420px !important;
}

/* --- Drucken-Icon dezent --- */
.productdetails-view .icons {
  float: right !important;
  opacity: 0.4 !important;
  transition: opacity 0.2s ease !important;
}
.productdetails-view .icons:hover { opacity: 1 !important; }

/* --- Versandhinweis --- */
.productDisplayShipment {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  font-size: 0.8rem !important;
  color: #86868b !important;
  font-weight: 400 !important;
  margin: 4px 0 0 0 !important;
  display: block !important;
}

/* --- Preis-Bereich --- */
.productdetails-view .product-price {
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 20px 0 0 0 !important;
  display: block !important;
  text-align: left !important;
}
.productdetails-view .vm-price-desc {
  color: #86868b !important;
  font-size: 0.8rem !important;
  display: block !important;
  margin-bottom: 2px !important;
  text-align: left !important;
  float: none !important;
}
.productdetails-view .PricesalesPrice,
.productdetails-view .vm-price-value {
  color: #a84d12 !important;
  font-size: 2rem !important;
  font-weight: 800 !important;
  text-align: left !important;
  float: none !important;
  display: block !important;
}

/* --- Warenkorb-Bereich Detail --- */
.productdetails-view .addtocart-area {
  margin-top: 16px !important;
}
.productdetails-view .addtocart-bar {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: auto !important;
}

/* +/- Buttons ausblenden (kein sichtbarer Text, nicht nutzbar) */
.productdetails-view span.quantity-controls {
  display: none !important;
}

/* Mengenfeld */
.productdetails-view .quantity-box {
  display: inline-flex !important;
  align-items: center !important;
}
.productdetails-view input.quantity-input,
.productdetails-view input[name="quantity[]"] {
  border: 2px solid #a84d12 !important;
  border-radius: 10px !important;
  width: 50px !important;
  height: 42px !important;
  text-align: center !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  color: #a84d12 !important;
  background: #f4f4f2 !important;
  opacity: 1 !important;
}

/* Warenkorb-Button Detail */
.productdetails-view span.addtocart-button {
  display: block !important;
  background: transparent !important;
  padding: 0 !important;
}
.productdetails-view input[value="In den Warenkorb"] {
  padding: 12px 32px !important;
  font-size: 1rem !important;
  border-radius: 12px !important;
}

/* --- Beschreibung --- */
.productdetails-view .product-description {
  margin-top: 30px !important;
  padding-top: 24px !important;
  border-top: 2px solid #e8e8ed !important;
}
.productdetails-view .product-description > span:first-child {
  display: block !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  margin-bottom: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}
.productdetails-view .product-description span {
  display: block !important;
  color: #444 !important;
  font-size: 0.92rem !important;
  line-height: 1.7 !important;
  margin-bottom: 6px !important;
}

/* --- Naehrwerttabelle --- */
.productdetails-view h4,
.productdetails-view h3 {
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  margin: 24px 0 12px !important;
}
.productdetails-view table {
  width: 100% !important;
  max-width: 450px !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid #e8e8ed !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  font-size: 0.88rem !important;
}
.productdetails-view table tr {
  transition: background 0.15s ease !important;
}
.productdetails-view table tr:nth-child(even) {
  background: #f8f8f6 !important;
}
.productdetails-view table tr:hover {
  background: #f4f4f2 !important;
}
.productdetails-view table td {
  padding: 9px 16px !important;
  border-bottom: 1px solid #f1ece6 !important;
  color: #333 !important;
}
.productdetails-view table td:first-child {
  font-weight: 600 !important;
  color: #a84d12 !important;
}
.productdetails-view table tr:last-child td {
  border-bottom: none !important;
}

/* --- Detail Responsive TABLET --- */
@media (max-width: 1024px) {
  .productdetails-view .vm-product-container {
    flex-direction: column !important;
    gap: 20px !important;
  }
  .productdetails-view .vm-product-media-container {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 16px !important;
  }
  .productdetails-view .vm-product-details-container {
    width: 100% !important;
  }
}

/* --- Detail Responsive MOBILE --- */
@media (max-width: 768px) {
  .productdetails-view {
    padding: 18px !important;
    border-radius: 12px !important;
  }
  .productdetails-view h1,
  .productdetails-view .title {
    font-size: 1.3rem !important;
    text-align: center !important;
  }
  .product-short-description {
    text-align: center !important;
  }
  .productdetails-view .icons {
    display: none !important;
  }
  .productdetails-view .PricesalesPrice,
  .productdetails-view .vm-price-value {
    font-size: 1.6rem !important;
    text-align: center !important;
  }
  .productdetails-view .vm-price-desc {
    text-align: center !important;
  }
  .productDisplayShipment {
    text-align: center !important;
  }
  .productdetails-view .product-price {
    text-align: center !important;
  }
  .productdetails-view .vm-product-media-container img,
  .productdetails-view .main-image img {
    max-height: none !important;
    border-radius: 10px !important;
  }
  .productdetails-view .addtocart-bar {
    align-items: center !important;
    width: 100% !important;
  }
  .productdetails-view .addtocart-button,
  .productdetails-view input[value="In den Warenkorb"] {
    width: 100% !important;
    text-align: center !important;
  }
  .back-to-category {
    text-align: center !important;
  }
  .productdetails-view table {
    max-width: 100% !important;
  }
}

/* =============================================
   WARENKORB-POPUP (Fancybox)
   ============================================= */

/* Overlay */
#fancybox-overlay {
  background: rgba(0,0,0,0.5) !important;
}

/* Popup-Container */
#fancybox-wrap {
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.25) !important;
}
#fancybox-outer {
  background: #fff !important;
  border-radius: 16px !important;
  padding: 0 !important;
}
#fancybox-content {
  background: #fff !important;
  border: none !important;
  border-radius: 16px !important;
  padding: 30px 36px !important;
  text-align: center !important;
  font-size: 1rem !important;
  color: #1d1d1f !important;
  line-height: 1.6 !important;
}

/* Fancybox-Hintergrund-Elemente ausblenden */
#fancybox-wrap .fancybox-bg {
  display: none !important;
}

/* Layout: Text links, Buttons rechts (Grid) */
#fancybox-content > div {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  grid-template-rows: auto auto !important;
  gap: 6px 24px !important;
  align-items: center !important;
}
#fancybox-content > div h4 {
  grid-column: 1 !important;
  grid-row: 1 / 3 !important;
  font-size: 1rem !important;
  font-weight: 500 !important;
  color: #333 !important;
  margin: 0 !important;
  line-height: 1.5 !important;
  text-align: left !important;
}
#fancybox-content > div br {
  display: none !important;
}

/* Buttons */
#fancybox-content a.vm-btn {
  display: block !important;
  padding: 11px 28px !important;
  border-radius: 10px !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  text-align: center !important;
  white-space: nowrap !important;
  width: 180px !important;
}

/* Warenkorb anzeigen - oben */
#fancybox-content a.showcart {
  grid-column: 2 !important;
  grid-row: 1 !important;
  background: linear-gradient(135deg, #a84d12 0%, #D66C24 100%) !important;
  color: #fff !important;
  border: 2px solid transparent !important;
}
#fancybox-content a.showcart:hover {
  box-shadow: 0 4px 15px rgba(168,77,18,0.35) !important;
  transform: translateY(-1px) !important;
}

/* Weiter einkaufen - unten */
#fancybox-content a.continue_link {
  grid-column: 2 !important;
  grid-row: 2 !important;
  background: #fff !important;
  color: #a84d12 !important;
  border: 2px solid #e5e5ea !important;
}
#fancybox-content a.continue_link:hover {
  border-color: #a84d12 !important;
  background: #f4f4f2 !important;
}

/* Haekchen-Icon */
#fancybox-content .fancy-ico {
  display: none !important;
}

/* Popup Mobile - gestapelt + zentriert */
@media (max-width: 768px) {
  #fancybox-wrap {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: calc(100vw - 32px) !important;
    max-width: 400px !important;
  }
  #fancybox-content {
    padding: 20px !important;
    width: auto !important;
  }
  #fancybox-content > div {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
    gap: 12px !important;
    text-align: center !important;
  }
  #fancybox-content > div h4 {
    grid-column: 1 !important;
    grid-row: 1 !important;
    text-align: center !important;
  }
  #fancybox-content a.showcart {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
  }
  #fancybox-content a.continue_link {
    grid-column: 1 !important;
    grid-row: 3 !important;
    width: 100% !important;
  }
}

/* =============================================
   WARENKORB-SEITE (cart-view)
   ============================================= */

/* --- Gesamtcontainer --- */
#cart-view {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 30px !important;
  margin-bottom: 20px !important;
}

/* --- Header: Warenkorb + Weiter einkaufen --- */
.vm-cart-header-container {
  margin-bottom: 20px !important;
  padding-bottom: 16px !important;
  border-bottom: 2px solid #e8e8ed !important;
}
.vm-cart-header h1 {
  font-size: 1.6rem !important;
  font-weight: 800 !important;
  color: #a84d12 !important;
  margin: 0 !important;
}
.vm-continue-shopping a {
  display: inline-block !important;
  color: #D66C24 !important;
  font-weight: 600 !important;
  font-size: 0.85rem !important;
  text-decoration: none !important;
  padding: 6px 14px !important;
  border: 2px solid #D66C24 !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
}
.vm-continue-shopping a:hover {
  background: #D66C24 !important;
  color: #fff !important;
}

/* --- Login-Zeile --- */
#cart-view #form-login {
  background: #f8f8f6 !important;
  border-radius: 10px !important;
  padding: 10px 16px !important;
  margin-bottom: 20px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 0.9rem !important;
}
#cart-view #form-login button {
  background: none !important;
  border: 1px solid #e5e5ea !important;
  border-radius: 6px !important;
  padding: 4px 12px !important;
  font-size: 0.8rem !important;
  color: #86868b !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}
#cart-view #form-login button:hover {
  border-color: #a84d12 !important;
  color: #a84d12 !important;
}

/* --- Login-Formular (Checkout) --- */
#cart-view #com-form-login {
  background: #f6f6f4 !important;
  border: 1px solid #e8e8e6 !important;
  border-radius: 12px !important;
  padding: 24px 28px !important;
  margin-bottom: 20px !important;
}
#com-form-login fieldset.userdata {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  align-items: flex-end !important;
}
/* Ueberschrift */
#com-form-login fieldset.userdata > p {
  width: 100% !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: #a84d12 !important;
  margin: 0 0 4px 0 !important;
  padding-bottom: 10px !important;
  border-bottom: 2px solid #D66C24 !important;
}
/* Float-Layout entfernen */
#com-form-login .floatleft {
  float: none !important;
}
#com-form-login .width30 {
  width: auto !important;
}
#com-form-login .clr {
  display: none !important;
}
/* Benutzername + Passwort: flexible Breite */
#com-form-login-username,
#com-form-login-password {
  flex: 1 1 180px !important;
  min-width: 0 !important;
}
/* Input-Felder */
#com-form-login input.inputbox[type="text"],
#com-form-login input.inputbox[type="password"] {
  width: 100% !important;
  padding: 10px 14px !important;
  border: 1.5px solid #e5e5ea !important;
  border-radius: 8px !important;
  font-size: 0.9rem !important;
  background: #fff !important;
  color: #333 !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
}
#com-form-login input.inputbox:focus {
  border-color: #D66C24 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(214,108,36,0.15) !important;
}
/* Einloggen-Button + Checkbox Bereich */
#com-form-login-remember {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}
/* Einloggen-Button */
#com-form-login input[type="submit"],
#com-form-login input.default[type="submit"] {
  background: linear-gradient(135deg, #a84d12, #D66C24) !important;
  color: #fff !important;
  border: none !important;
  padding: 10px 24px !important;
  border-radius: 8px !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  transition: all 0.2s !important;
}
#com-form-login input[type="submit"]:hover {
  background: linear-gradient(135deg, #D66C24, #D66C24) !important;
  box-shadow: 0 2px 8px rgba(168,77,18,0.25) !important;
}
/* Angemeldet bleiben */
#com-form-login-remember label {
  font-size: 0.82rem !important;
  color: #86868b !important;
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
#com-form-login-remember input[type="checkbox"] {
  accent-color: #D66C24 !important;
}
/* Vergessen-Links */
#com-form-login > div.width30 {
  display: inline-block !important;
  float: none !important;
  margin-right: 20px !important;
  margin-top: 8px !important;
}
#com-form-login > div.width30 a {
  color: #D66C24 !important;
  font-size: 0.85rem !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
}
#com-form-login > div.width30 a:hover {
  color: #a84d12 !important;
  text-decoration: underline !important;
}

/* --- Adressbereich --- */
.billto-shipto {
  display: flex !important;
  gap: 20px !important;
  margin-bottom: 24px !important;
}
.billto-shipto > .width50 {
  flex: 1 !important;
  background: #f8f8f6 !important;
  border-radius: 12px !important;
  padding: 18px !important;
  width: auto !important;
  float: none !important;
}
.billto-shipto .vmicon {
  display: inline-block !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 10px !important;
  padding-bottom: 6px !important;
  border-bottom: 2px solid #D66C24 !important;
}
.billto-shipto .output-billto,
.billto-shipto .output-shipto {
  font-size: 0.88rem !important;
  line-height: 1.6 !important;
  color: #444 !important;
}
.billto-shipto a.details {
  display: inline-block !important;
  margin-top: 10px !important;
  color: #D66C24 !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  padding: 4px 10px !important;
  border: 1px solid #D66C24 !important;
  border-radius: 6px !important;
  transition: all 0.2s ease !important;
}
.billto-shipto a.details:hover {
  background: #D66C24 !important;
  color: #fff !important;
}
/* Checkboxen im Adressbereich */
.billto-shipto input[type="checkbox"] {
  accent-color: #D66C24 !important;
  width: 16px !important;
  height: 16px !important;
  cursor: pointer !important;
}
/* Englischen Link-Text durch Deutsch ersetzen */
.billto-shipto a.details[href*="editaddresscartST"] {
  font-size: 0 !important;
}
.billto-shipto a.details[href*="editaddresscartST"]::after {
  content: "Lieferadresse bearbeiten" !important;
  font-size: 0.82rem !important;
}

/* =============================================
   PRODUKTTABELLE: Amazon-Style Card-Layout
   Tabelle wird per CSS zu Block-Elementen
   ============================================= */

/* Fieldset-Wrapper */
.vm-fieldset-pricelist {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Tabelle + Kinder: Block-Reset */
table.cart-summary {
  display: block !important;
  width: 100% !important;
  border: none !important;
  font-size: 0.9rem !important;
}
table.cart-summary thead {
  display: none !important;
}
table.cart-summary tbody {
  display: block !important;
  width: 100% !important;
}
table.cart-summary tr {
  display: block !important;
  width: 100% !important;
}
table.cart-summary td {
  display: block !important;
  border: none !important;
  padding: 0 !important;
  color: #333 !important;
}
table.cart-summary tr td hr {
  display: none !important;
}

/* =============================================
   PRODUKT-KARTEN
   ============================================= */
table.cart-summary tr.sectiontableentry1:not(:has(td[colspan])),
table.cart-summary tr.sectiontableentry2:not(:has(td[colspan])) {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  background: #fff !important;
  border: 1px solid #e8e8ed !important;
  border-radius: 12px !important;
  padding: 16px 18px !important;
  margin-bottom: 12px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.04) !important;
  transition: box-shadow 0.2s ease !important;
}
table.cart-summary tr.sectiontableentry1:not(:has(td[colspan])):hover,
table.cart-summary tr.sectiontableentry2:not(:has(td[colspan])):hover {
  box-shadow: 0 2px 10px rgba(0,0,0,0.08) !important;
}

/* SKU + Rabatt + Netto + MwSt in der Kachel ausgeblendet (nur Brutto sichtbar; MwSt steht im Gesamtbetrag) */
table.cart-summary td.vm-cart-item-sku,
table.cart-summary td.vm-cart-item-discount,
table.cart-summary td.vm-cart-item-basicprice,
table.cart-summary td.vm-cart-item-tax {
  display: none !important;
}

/* --- Produktname: Bild + Name, Zeile 1 links --- */
#cart-view table.cart-summary td.vm-cart-item-name {
  order: 1 !important;
  flex: 0 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  padding-right: 20px !important;
}
table.cart-summary td.vm-cart-item-name a {
  display: inline !important;
  vertical-align: middle !important;
}
td.vm-cart-item-name a {
  color: #a84d12 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  line-height: 1.35 !important;
}
td.vm-cart-item-name a:hover {
  color: #D66C24 !important;
}
td.vm-cart-item-name img {
  width: 64px !important;
  height: 64px !important;
  object-fit: cover !important;
  border-radius: 12px !important;
  flex-shrink: 0 !important;
  display: block !important;
  box-shadow: 0 1px 6px rgba(0,0,0,0.08) !important;
}

/* --- Betrag (Brutto-Total): Zeile 1, rechts aussen, fett --- */
table.cart-summary td.vm-cart-item-total {
  order: 4 !important;
  flex: 0 0 auto !important;
  width: max-content !important;
  min-width: 0 !important;
  margin-left: auto !important;
  align-self: center !important;
  text-align: right !important;
  font-weight: 800 !important;
  font-size: 1.15rem !important;
  color: #a84d12 !important;
  white-space: nowrap !important;
  padding-top: 0 !important;
}
table.cart-summary td.vm-cart-item-total .vm-price-desc {
  display: none !important;
}
table.cart-summary td.vm-cart-item-total div {
  display: inline !important;
  width: auto !important;
}

/* --- Netto-Preis + MwSt: Zeile 2, kompakt nach Bild-Einrueckung --- */
table.cart-summary td.vm-cart-item-basicprice {
  order: 2 !important;
  flex: 0 0 auto !important;
  width: max-content !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-top: 0 !important;
  align-self: center !important;
  font-size: 0.8rem !important;
  color: #999 !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
}
table.cart-summary td.vm-cart-item-basicprice::before {
  content: "Netto " !important;
}
table.cart-summary td.vm-cart-item-basicprice div {
  display: inline !important;
  width: auto !important;
  color: #999 !important;
  font-weight: 400 !important;
}

table.cart-summary td.vm-cart-item-tax {
  order: 3 !important;
  flex: 0 0 auto !important;
  width: max-content !important;
  min-width: 0 !important;
  margin-top: 0 !important;
  margin-left: 12px !important;
  align-self: center !important;
  font-size: 0.8rem !important;
  color: #999 !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
}
table.cart-summary td.vm-cart-item-tax::before {
  content: "\00B7\00A0MwSt " !important;
}
table.cart-summary td.vm-cart-item-tax span,
table.cart-summary td.vm-cart-item-tax div {
  display: inline !important;
  width: auto !important;
  color: #999 !important;
  font-weight: 400 !important;
}

/* --- Menge + Entfernen: Zeile 2 links, unter dem Namen eingerueckt --- */
table.cart-summary td.vm-cart-item-quantity {
  order: 5 !important;
  flex: 0 0 100% !important;
  margin-left: 80px !important;
  margin-top: 10px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
}

/* Mengenfeld */
td.vm-cart-item-quantity input[type="text"] {
  border: 2px solid #e5e5ea !important;
  border-radius: 8px !important;
  width: 42px !important;
  height: 36px !important;
  text-align: center !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  color: #a84d12 !important;
  transition: border-color 0.2s ease !important;
}
td.vm-cart-item-quantity input[type="text"]:focus {
  border-color: #D66C24 !important;
  outline: none !important;
}

/* Aktualisieren-Button */
td.vm-cart-item-quantity button.vm2-add_quantity_cart {
  background: linear-gradient(135deg, #a84d12 0%, #D66C24 100%) !important;
  background-image: linear-gradient(135deg, #a84d12 0%, #D66C24 100%) !important;
  border: none !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  padding: 0 !important;
  transition: all 0.2s ease !important;
  font-size: 0 !important;
  color: transparent !important;
  width: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
td.vm-cart-item-quantity button.vm2-add_quantity_cart::after {
  content: "\21BB" !important;
  font-size: 16px !important;
  color: #fff !important;
}
td.vm-cart-item-quantity button.vm2-add_quantity_cart:hover {
  box-shadow: 0 2px 8px rgba(168,77,18,0.3) !important;
  transform: translateY(-1px) !important;
}

/* Loeschen-Button */
td.vm-cart-item-quantity button.vm2-remove_from_cart {
  background: #fff !important;
  background-image: none !important;
  border: 2px solid #e44 !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  padding: 0 !important;
  transition: all 0.2s ease !important;
  font-size: 0 !important;
  color: transparent !important;
  width: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 2px !important;
}
td.vm-cart-item-quantity button.vm2-remove_from_cart::after {
  content: "\2715" !important;
  font-size: 16px !important;
  color: #e44 !important;
  font-weight: 700 !important;
}
td.vm-cart-item-quantity button.vm2-remove_from_cart:hover {
  background: #e44 !important;
  background-image: none !important;
  border-color: #e44 !important;
}
td.vm-cart-item-quantity button.vm2-remove_from_cart:hover::after {
  filter: brightness(10) !important;
}

/* Loeschen-Text als Link */
td.vm-cart-item-quantity button.vm2-remove_from_cart {
  background: transparent !important;
  border: none !important;
  width: auto !important;
  height: auto !important;
  margin-left: 12px !important;
}
td.vm-cart-item-quantity button.vm2-remove_from_cart::after {
  content: "Entfernen" !important;
  font-size: 0.82rem !important;
  color: #D66C24 !important;
  font-weight: 500 !important;
}
td.vm-cart-item-quantity button.vm2-remove_from_cart:hover {
  background: transparent !important;
}
td.vm-cart-item-quantity button.vm2-remove_from_cart:hover::after {
  color: #e44 !important;
  text-decoration: underline !important;
  filter: none !important;
}

/* =============================================
   TRENNZEILEN: versteckt
   ============================================= */
table.cart-summary tr:not(.sectiontableentry1):not(.sectiontableentry2) {
  display: none !important;
}

/* =============================================
   ZUSAMMENFASSUNG: Container
   ============================================= */
table.cart-summary tr.sectiontableentry1:has(td[colspan]),
table.cart-summary tr.sectiontableentry2:has(td[colspan]) {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  padding: 10px 4px !important;
  border-bottom: 1px solid #f1ece6 !important;
  margin: 0 !important;
}

/* Label-Zelle (colspan) */
table.cart-summary td[colspan] {
  flex: 1 1 auto !important;
  width: auto !important;
}

/* Wert-Zellen nach colspan */
table.cart-summary tr:has(td[colspan]) td:not([colspan]) {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  padding: 0 6px !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
}

/* =============================================
   ZUSAMMENFASSUNG: Summe der Produktpreise
   ============================================= */
table.cart-summary tr.sectiontableentry1:has(td[colspan]):has(.PricesalesPrice:not([class*="Shipment"])):not(:has(h3)):not(:has(h4)) {
  margin-top: 8px !important;
  padding-top: 16px !important;
}
table.cart-summary tr.sectiontableentry1:has(td[colspan]):has(.PricesalesPrice:not([class*="Shipment"])):not(:has(h3)):not(:has(h4)) td:first-child {
  text-align: right !important;
  font-weight: 600 !important;
  color: #555 !important;
  font-size: 0.9rem !important;
}
table.cart-summary .PricesalesPrice:not([class*="Shipment"]) {
  font-weight: 700 !important;
  color: #a84d12 !important;
}
/* Rabatt-Zelle in Summenzeile verstecken */
table.cart-summary tr.sectiontableentry1:has(td[colspan]):not(:has(h3)):not(:has(h4)) td:not([colspan]):not(:first-child):not(:last-child) {
  display: none !important;
}
table.cart-summary td.vm-cart-item-total .vm-price-desc,
table.cart-summary tr:has(td[colspan]) .vm-price-desc {
  display: none !important;
}
table.cart-summary tr:has(td[colspan]) td:not([colspan]) div {
  display: inline !important;
  width: auto !important;
}

/* =============================================
   ZUSAMMENFASSUNG: Gutschein
   ============================================= */
table.cart-summary tr:has(input.coupon),
table.cart-summary tr:has(input[placeholder*="Gutschein"]) {
  border-bottom: 1px solid #f1ece6 !important;
  padding: 12px 4px !important;
}
table.cart-summary tr:has(input.coupon) td:first-child {
  text-align: left !important;
}
table.cart-summary tr:has(input.coupon) td[colspan="3"],
table.cart-summary tr:has(input[placeholder*="Gutschein"]) td[colspan="3"] {
  display: none !important;
}
table.cart-summary input.coupon,
table.cart-summary input[type="text"][placeholder*="Gutschein"] {
  border: 2px solid #e5e5ea !important;
  border-radius: 8px !important;
  padding: 8px 12px !important;
  font-size: 0.85rem !important;
  width: 240px !important;
  transition: border-color 0.2s ease !important;
}
table.cart-summary input.coupon:focus,
table.cart-summary input[type="text"][placeholder*="Gutschein"]:focus {
  border-color: #D66C24 !important;
  outline: none !important;
}
table.cart-summary td .details-button button,
table.cart-summary td button[type="submit"]:not(.vm2-add_quantity_cart):not(.vm2-remove_from_cart) {
  background: #f4f4f2 !important;
  color: #a84d12 !important;
  border: 1px solid #e5e5ea !important;
  border-radius: 8px !important;
  padding: 8px 16px !important;
  font-weight: 600 !important;
  font-size: 0.85rem !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}
table.cart-summary td .details-button button:hover,
table.cart-summary td button[type="submit"]:not(.vm2-add_quantity_cart):not(.vm2-remove_from_cart):hover {
  background: #a84d12 !important;
  color: #fff !important;
}

/* =============================================
   ZUSAMMENFASSUNG: Versandart
   ============================================= */
table.cart-summary tr:has(h4) {
  padding: 14px 4px !important;
}
table.cart-summary h4 {
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  border: none !important;
}
table.cart-summary .vmshipment_name {
  display: inline !important;
  font-size: 0.9rem !important;
  color: #333 !important;
  font-weight: 500 !important;
}
table.cart-summary span.floatright {
  float: none !important;
  display: inline !important;
  margin-left: 8px !important;
  font-weight: 600 !important;
  color: #555 !important;
  font-size: 0.9rem !important;
}
table.cart-summary .PricesalesPriceShipment,
table.cart-summary div[class*="PricesalesPriceShipment"] {
  font-weight: 700 !important;
  color: #a84d12 !important;
  font-size: 0.95rem !important;
  display: inline !important;
  width: auto !important;
}
/* Versand-Netto-Preis inline statt block/zentriert (innerer div.PriceshipmentValue) */
table.cart-summary span.floatright div[class*="PriceshipmentValue"],
table.cart-summary span.floatright .PriceshipmentValue {
  display: inline !important;
  width: auto !important;
  text-align: left !important;
  font-weight: 600 !important;
  color: #555 !important;
}
/* Rabatt-Zelle bei Versand verstecken */
table.cart-summary tr:has(h4) td:not([colspan]):not(:first-child):not(:last-child) {
  display: none !important;
}

/* =============================================
   ZUSAMMENFASSUNG: Zahlungsart
   ============================================= */
table.cart-summary tr:has(h3) {
  padding: 14px 4px !important;
  flex-wrap: wrap !important;
}
table.cart-summary tr:has(h3) td[colspan="4"] {
  flex: 1 0 100% !important;
}
table.cart-summary tr:has(h3) td:not([colspan]) {
  display: none !important;
}
table.cart-summary h3 {
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}
table.cart-summary td > .vmpayment_name {
  display: block !important;
  font-size: 0.9rem !important;
  color: #333 !important;
  font-weight: 600 !important;
  margin: 4px 0 6px !important;
}
table.cart-summary td > br {
  display: none !important;
}
table.cart-summary h3.vm-payment-header-selected {
  font-size: 0.78rem !important;
  font-weight: 500 !important;
  color: #86868b !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  margin: 4px 0 10px !important;
}
table.cart-summary fieldset.vm-payment-select {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
table.cart-summary .vm-payment-plugin-single {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px 14px !important;
  margin-bottom: 4px !important;
  background: #f8f8f6 !important;
  border-radius: 8px !important;
  border: 1px solid #e8e8ed !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
}
table.cart-summary .vm-payment-plugin-single:last-child {
  margin-bottom: 0 !important;
}
table.cart-summary .vm-payment-plugin-single:hover {
  border-color: #D66C24 !important;
  background: #f4f4f2 !important;
}
table.cart-summary .vm-payment-plugin-single input[type="radio"] {
  accent-color: #a84d12 !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  cursor: pointer !important;
}
table.cart-summary .vm-payment-plugin-single label {
  font-size: 0.9rem !important;
  color: #333 !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  margin: 0 !important;
}
table.cart-summary .vm-payment-plugin-single input[type="radio"]:checked + label {
  color: #a84d12 !important;
  font-weight: 700 !important;
}

/* =============================================
   ZUSAMMENFASSUNG: Gesamtbetrag
   ============================================= */
#cart-view table.cart-summary tr.sectiontableentry2:last-child {
  background: linear-gradient(135deg, #f8f8f6 0%, #ececea 100%) !important;
  border: 2px solid #a84d12 !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  margin-top: 12px !important;
}
#cart-view table.cart-summary tr.sectiontableentry2:last-child td:first-child {
  font-weight: 700 !important;
  color: #a84d12 !important;
  font-size: 1rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  text-align: right !important;
}
#cart-view table.cart-summary tr.sectiontableentry2:last-child td:last-child {
  font-size: 1.3rem !important;
  font-weight: 800 !important;
  color: #a84d12 !important;
}
/* MwSt-Info unter Betrag: nur die Zelle MIT MwSt-Betrag anzeigen, leere ausblenden */
#cart-view table.cart-summary tr.sectiontableentry2:last-child td:not([colspan]):not(:first-child):not(:last-child) {
  display: none !important;
}
#cart-view table.cart-summary tr.sectiontableentry2:last-child td:not([colspan]):not(:first-child):not(:last-child):has(.PricebillTaxAmount) {
  display: block !important;
  flex: 0 0 100% !important;
  order: 10 !important;
  text-align: right !important;
  font-size: 0.8rem !important;
  font-weight: 400 !important;
  color: #86868b !important;
  padding-top: 4px !important;
}
#cart-view table.cart-summary tr.sectiontableentry2:last-child td:not([colspan]):not(:first-child):not(:last-child):has(.PricebillTaxAmount)::before {
  content: "inkl. " !important;
}
#cart-view table.cart-summary tr.sectiontableentry2:last-child td:not([colspan]):not(:first-child):not(:last-child):has(.PricebillTaxAmount)::after {
  content: " MwSt" !important;
}

/* =============================================
   MOBILE ANPASSUNGEN
   ============================================= */
/* --- Handy + Tablet: sauberer Stack -> Bild+Name / Brutto / Netto·MwSt / Menge --- */
@media (max-width: 768px) {
  /* Produktkarte: linksbuendiger Stack */
  table.cart-summary tr.sectiontableentry1:not(:has(td[colspan])),
  table.cart-summary tr.sectiontableentry2:not(:has(td[colspan])) {
    align-items: flex-start !important;
    padding: 14px !important;
  }

  /* Bild kleiner */
  td.vm-cart-item-name img {
    width: 60px !important;
    height: 60px !important;
    display: block !important;
  }

  /* Zeile 1: Bild + Name (volle Breite) */
  #cart-view table.cart-summary td.vm-cart-item-name {
    order: 1 !important;
    flex: 0 0 100% !important;
    gap: 12px !important;
    padding-right: 0 !important;
    padding-bottom: 6px !important;
  }
  td.vm-cart-item-name a {
    font-size: 0.95rem !important;
  }

  /* Zeile 2: Brutto, eingerueckt unter dem Namen */
  table.cart-summary td.vm-cart-item-total {
    order: 2 !important;
    flex: 0 0 100% !important;
    width: auto !important;
    text-align: left !important;
    margin-left: 72px !important;
    margin-top: 0 !important;
    font-size: 1.15rem !important;
    padding-top: 0 !important;
  }

  /* Zeile 3: Netto + MwSt nebeneinander, eingerueckt */
  table.cart-summary td.vm-cart-item-basicprice {
    order: 3 !important;
    flex: 0 0 auto !important;
    margin-left: 72px !important;
    margin-top: 2px !important;
    align-self: flex-start !important;
  }
  table.cart-summary td.vm-cart-item-tax {
    order: 4 !important;
    margin-left: 10px !important;
    margin-top: 2px !important;
    align-self: flex-start !important;
  }

  /* Zeile 4: Menge + Entfernen, eingerueckt */
  table.cart-summary td.vm-cart-item-quantity {
    order: 5 !important;
    flex: 0 0 100% !important;
    margin-left: 72px !important;
    margin-top: 12px !important;
  }

  /* Gutschein-Input schmaler */
  table.cart-summary input.coupon,
  table.cart-summary input[type="text"][placeholder*="Gutschein"] {
    width: 180px !important;
  }

  /* Gesamtbetrag */
  #cart-view table.cart-summary tr.sectiontableentry2:last-child {
    padding: 14px !important;
  }
}

/* --- Schmales Handy: kleinere Groessen + Einrueckung --- */
@media (max-width: 480px) {
  td.vm-cart-item-name img {
    width: 52px !important;
    height: 52px !important;
  }
  table.cart-summary td.vm-cart-item-total,
  table.cart-summary td.vm-cart-item-basicprice,
  table.cart-summary td.vm-cart-item-quantity {
    margin-left: 64px !important;
  }
  table.cart-summary td.vm-cart-item-total {
    font-size: 1.1rem !important;
  }
  table.cart-summary input.coupon,
  table.cart-summary input[type="text"][placeholder*="Gutschein"] {
    width: 100% !important;
    max-width: 220px !important;
  }
}

/* --- Anmerkungen --- */
.vm-fieldset-customer-note {
  border: none !important;
  padding: 0 !important;
  margin: 20px 0 !important;
}
span.cart.customer-note {
  display: block !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: #a84d12 !important;
  margin-bottom: 8px !important;
}
#checkoutForm textarea {
  width: 100% !important;
  border: 2px solid #e5e5ea !important;
  border-radius: 10px !important;
  padding: 12px !important;
  font-size: 0.9rem !important;
  font-family: inherit !important;
  resize: vertical !important;
  min-height: 60px !important;
  transition: border-color 0.2s ease !important;
  box-sizing: border-box !important;
}
#checkoutForm textarea:focus {
  border-color: #D66C24 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(214,108,36,0.15) !important;
}

/* --- Liefertermin-Hinweis --- */
#checkoutForm > strong {
  display: block !important;
  background: linear-gradient(135deg, #a84d12 0%, #D66C24 100%) !important;
  color: #fff !important;
  padding: 14px 20px !important;
  border-radius: 10px !important;
  font-size: 0.95rem !important;
  margin: 16px 0 8px !important;
}
#checkoutForm > p {
  color: #86868b !important;
  font-size: 0.82rem !important;
  margin: 0 0 16px !important;
  font-style: italic !important;
}

/* --- Kaufen-Button --- */
.checkout-button-top {
  text-align: right !important;
  margin-top: 16px !important;
}
.checkout-button-top button,
.checkout-button-top input[type="submit"] {
  background: linear-gradient(135deg, #D66C24 0%, #c05a18 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 14px 48px !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  letter-spacing: 0.5px !important;
}
.checkout-button-top button:hover {
  background: linear-gradient(135deg, #c05a18 0%, #a84d12 100%) !important;
  box-shadow: 0 6px 20px rgba(214,108,36,0.4) !important;
  transform: translateY(-2px) !important;
}

/* --- Warenkorb Responsive: Nicht-Tabellen-Elemente --- */
@media (max-width: 768px) {
  #cart-view {
    padding: 12px !important;
    border-radius: 12px !important;
  }
  /* Login-Formular mobile */
  #cart-view #com-form-login {
    padding: 18px !important;
  }
  #com-form-login fieldset.userdata {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  #com-form-login-username,
  #com-form-login-password {
    width: 100% !important;
    flex: 1 1 100% !important;
  }
  #com-form-login-remember {
    width: 100% !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
  }
  #com-form-login input[type="submit"],
  #com-form-login input.default[type="submit"] {
    flex: 1 1 100% !important;
    width: 100% !important;
    padding: 12px !important;
    font-size: 1rem !important;
  }
  #com-form-login-remember label {
    order: 2 !important;
  }
  #com-form-login-remember input[type="checkbox"] {
    order: 1 !important;
  }
  #com-form-login > div.width30 {
    display: block !important;
    text-align: center !important;
    margin-right: 0 !important;
  }
  .billto-shipto {
    flex-direction: column !important;
    gap: 12px !important;
  }
  .billto-shipto > .width50 {
    width: 100% !important;
  }
  .checkout-button-top {
    text-align: center !important;
  }
  .checkout-button-top button {
    width: 100% !important;
  }
}

/* =============================================
   ADRESSFORMULAR (Kontodaten / Rechnungsadresse)
   editaddresscartBT / editaddresscartST  (#userForm)
   ============================================= */

/* --- Karte (volle Spaltenbreite) --- */
#userForm {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 28px 30px !important;
  margin: 0 0 20px !important;
  max-width: none !important;
  box-sizing: border-box !important;
}
#userForm fieldset {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
#userForm fieldset + fieldset {
  margin-top: 26px !important;
}

/* --- Abschnitts-Ueberschriften --- */
#userForm h2,
#userForm legend.userfields_info,
#userForm legend {
  display: block !important;
  width: 100% !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin: 0 0 16px !important;
  padding: 0 0 8px !important;
  border-bottom: 2px solid #D66C24 !important;
}

/* --- Tabelle zu Bloecken (Label ueber Feld) --- */
#userForm table.user-details,
#userForm table.user-details tbody,
#userForm table.user-details tr,
#userForm table.user-details td {
  display: block !important;
  width: auto !important;
  border: none !important;
  background: none !important;
  padding: 0 !important;
}
#userForm table.user-details { width: 100% !important; }
#userForm table.user-details tr { margin-bottom: 14px !important; }
#userForm td.key { padding: 0 0 5px !important; }
#userForm td.key label {
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: #444 !important;
  display: inline-block !important;
  width: auto !important;
  text-align: left !important;
}
#userForm .asterisk { color: #D66C24 !important; margin-left: 3px !important; }

/* --- Eingabefelder --- */
#userForm input[type="text"],
#userForm input[type="email"],
#userForm input[type="password"],
#userForm input[type="tel"],
#userForm textarea,
#userForm select {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  border: 2px solid #e5e5ea !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-size: 0.92rem !important;
  background: #fff !important;
  color: #333 !important;
  height: auto !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
}
#userForm input:focus,
#userForm textarea:focus,
#userForm select:focus {
  border-color: #D66C24 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(214,108,36,0.15) !important;
}
#userForm textarea {
  min-height: 90px !important;
  resize: vertical !important;
  font-family: inherit !important;
}

/* --- Chosen-Dropdowns (Anrede + Land) --- */
#userForm .chzn-container,
#userForm .chosen-container { max-width: none !important; }
#userForm #anrede_field_chosen { width: 200px !important; max-width: 200px !important; }
#userForm #virtuemart_country_id_field_chosen { width: 100% !important; max-width: none !important; }
#userForm .chzn-single,
#userForm .chosen-single {
  width: 100% !important;
  height: 42px !important;
  line-height: 24px !important;
  padding: 8px 14px !important;
  border: 2px solid #e5e5ea !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: none !important;
  color: #333 !important;
  box-sizing: border-box !important;
}
#userForm .chzn-container-active .chzn-single,
#userForm .chosen-container-active .chosen-single { border-color: #D66C24 !important; }
#userForm .chzn-single div b,
#userForm .chosen-single div b { margin-top: 9px !important; }

/* --- 2-Spalten-Layout fuer die Rechnungsadresse --- */
#userForm fieldset:has(legend.userfields_info) table.user-details tbody {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px 24px !important;
}
#userForm fieldset:has(legend.userfields_info) table.user-details tr {
  margin-bottom: 0 !important;
}
/* Volle Breite: Anrede, Adresse, Informationen */
#userForm tr:has(#anrede_field),
#userForm tr:has(#address_1_field),
#userForm tr:has(textarea) {
  grid-column: 1 / -1 !important;
}

/* --- Buttons --- */
#userForm .control-buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 12px !important;
  margin-top: 22px !important;
  padding-top: 18px !important;
  border-top: 1px solid #eee !important;
}
#userForm .control-buttons .reg_text {
  flex: 1 1 100% !important;
  font-size: 0.82rem !important;
  color: #86868b !important;
  margin: 0 0 4px !important;
}
#userForm .control-buttons button {
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 24px !important;
  font-weight: 600 !important;
  font-size: 0.92rem !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}
#userForm .control-buttons button:first-of-type {
  background: linear-gradient(135deg, #a84d12, #D66C24) !important;
  color: #fff !important;
}
#userForm .control-buttons button:first-of-type:hover {
  box-shadow: 0 4px 15px rgba(168,77,18,0.35) !important;
  transform: translateY(-1px) !important;
}
#userForm .control-buttons button:nth-of-type(2) {
  background: #fff !important;
  color: #D66C24 !important;
  border: 2px solid #D66C24 !important;
  padding: 10px 22px !important;
}
#userForm .control-buttons button:nth-of-type(2):hover {
  background: #D66C24 !important;
  color: #fff !important;
}
#userForm .control-buttons button.default {
  background: none !important;
  color: #86868b !important;
  padding: 10px 8px !important;
  font-weight: 500 !important;
}
#userForm .control-buttons button.default:hover {
  color: #a84d12 !important;
  text-decoration: underline !important;
}

/* --- Adressformular Mobile --- */
@media (max-width: 768px) {
  #userForm { padding: 18px !important; }
  #userForm input,
  #userForm textarea,
  #userForm select,
  #userForm .chzn-container,
  #userForm .chosen-container,
  #userForm #virtuemart_country_id_field_chosen { max-width: 100% !important; }
  /* Adressfelder einspaltig stapeln */
  #userForm fieldset:has(legend.userfields_info) table.user-details tbody {
    grid-template-columns: 1fr !important;
  }
  #userForm .control-buttons { justify-content: stretch !important; }
  #userForm .control-buttons button { flex: 1 1 100% !important; }
  #userForm .control-buttons button.default { flex: 1 1 100% !important; text-align: center !important; }
}

/* =============================================
   BESTELLBESTAETIGUNG (cart?task=orderdone)
   Template: <div class="vm-wrap vm-order-done">
   ============================================= */
.vm-order-done {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 44px 40px !important;
  margin: 0 auto 20px !important;
  max-width: 640px !important;
  text-align: center !important;
}
.vm-order-done h3 {
  position: relative !important;
  padding-top: 84px !important;
  font-size: 1.6rem !important;
  font-weight: 800 !important;
  color: #a84d12 !important;
  margin: 0 0 14px !important;
}
.vm-order-done h3::before {
  content: "\2713" !important;
  position: absolute !important;
  top: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 64px !important;
  height: 64px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #D66C24, #c05a18) !important;
  color: #fff !important;
  font-size: 34px !important;
  line-height: 64px !important;
  box-shadow: 0 6px 18px rgba(214,108,36,0.35) !important;
}
.vm-order-done p,
.vm-order-done div {
  color: #444 !important;
  font-size: 1rem !important;
  line-height: 1.6 !important;
}
.vm-order-done strong,
.vm-order-done .vm-order-number { color: #a84d12 !important; font-weight: 700 !important; }

/* "Ihre Bestellung ansehen" - Primaer-Button */
.vm-order-done a {
  display: inline-block !important;
  background: linear-gradient(135deg, #D66C24 0%, #c05a18 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 28px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 2px 8px rgba(214,108,36,0.25) !important;
  margin: 18px 0 14px !important;
}
.vm-order-done a:hover {
  background: linear-gradient(135deg, #c05a18 0%, #a84d12 100%) !important;
  box-shadow: 0 4px 15px rgba(214,108,36,0.4) !important;
  transform: translateY(-1px) !important;
  text-decoration: none !important;
  color: #fff !important;
}

/* Logout-Bereich "Hallo test_reseller [Ausloggen]" */
.vm-order-done form {
  margin: 12px 0 0 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  color: #86868b !important;
  font-size: 0.9rem !important;
}
.vm-order-done input.button,
.vm-order-done input[type="submit"] {
  background: linear-gradient(135deg, #c0504d 0%, #a83b3b 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 10px 22px !important;
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 2px 8px rgba(168,59,59,0.2) !important;
}
.vm-order-done input.button:hover,
.vm-order-done input[type="submit"]:hover {
  background: linear-gradient(135deg, #a83b3b 0%, #8a2c2c 100%) !important;
  box-shadow: 0 4px 15px rgba(168,59,59,0.35) !important;
  transform: translateY(-1px) !important;
}

@media (max-width: 768px) {
  .vm-order-done { padding: 30px 20px !important; }
  .vm-order-done a { width: 100% !important; padding: 12px 20px !important; }
  .vm-order-done form { flex-direction: column !important; }
  .vm-order-done input.button,
  .vm-order-done input[type="submit"] { width: 100% !important; }
}

/* =============================================
   B2B-SCHNELLBESTELLUNG (itemid-211 / /b2b)
   Einstiegsseite vor dem Bestellformular
   ============================================= */

/* Karten-Container: das <main>-Element, nicht der leere article-body am Ende */
body.itemid-211 main {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 32px 36px !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  max-width: none !important;
}

/* Leeren Article-Container am Ende ausblenden (enthaelt nur Meta + leeren div) */
body.itemid-211 main > .com-content-article {
  display: none !important;
}

/* Hauptueberschrift */
body.itemid-211 main > h5 {
  font-size: 1.5rem !important;
  font-weight: 800 !important;
  color: #a84d12 !important;
  margin: 0 0 18px 0 !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid #D66C24 !important;
  line-height: 1.3 !important;
}
body.itemid-211 main > h5 strong { font-weight: 800 !important; }

/* Einleitungs-Texte */
body.itemid-211 main > p {
  color: #444 !important;
  font-size: 0.95rem !important;
  line-height: 1.6 !important;
  margin: 0 0 12px 0 !important;
}
body.itemid-211 main > p strong {
  color: #a84d12 !important;
}

/* Tabellen-Layout aufbrechen -> modernes Form-Grid */
body.itemid-211 main form table,
body.itemid-211 main form table[border] {
  border: none !important;
  border-collapse: collapse !important;
  width: 100% !important;
  margin: 20px 0 !important;
  background: transparent !important;
  display: block !important;
}
body.itemid-211 main form table tbody {
  display: block !important;
  width: 100% !important;
}
body.itemid-211 main form table tbody > tr {
  display: grid !important;
  grid-template-columns: 220px minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: center !important;
  margin-bottom: 16px !important;
  width: 100% !important;
}
body.itemid-211 main form table tbody > tr > td {
  display: block !important;
  border: none !important;
  padding: 0 !important;
  vertical-align: top !important;
  min-width: 0 !important;
  width: auto !important;
}

/* Label-Spalte (erste td) */
body.itemid-211 main form table tbody > tr > td:first-child {
  font-weight: 600 !important;
  color: #a84d12 !important;
  font-size: 0.95rem !important;
  white-space: nowrap !important;
}

/* Select Liefertermin - hoehere Spezifitaet als der globale select-Style */
body.itemid-211 main form select[name="Datum"] {
  width: 100% !important;
  max-width: none !important;
  padding: 10px 38px 10px 14px !important;
  border: 2px solid #e5e5ea !important;
  border-radius: 10px !important;
  background-color: #fff !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%23a84d12' d='M6 8L0 0h12z'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  font-size: 0.95rem !important;
  color: #1d1d1f !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  text-indent: 0 !important;
  height: auto !important;
  line-height: 1.4 !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}
body.itemid-211 main form select[name="Datum"] option {
  color: #1d1d1f !important;
  background: #fff !important;
}
body.itemid-211 main form select[name="Datum"]:focus {
  border-color: #D66C24 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(214,108,36,0.15) !important;
}

/* Textarea Mitteilung */
body.itemid-211 main form textarea {
  width: 100% !important;
  max-width: none !important;
  min-height: 110px !important;
  padding: 10px 14px !important;
  border: 2px solid #e5e5ea !important;
  border-radius: 10px !important;
  background: #fff !important;
  font-family: inherit !important;
  font-size: 0.92rem !important;
  color: #1d1d1f !important;
  line-height: 1.5 !important;
  resize: vertical !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
  box-sizing: border-box !important;
}
body.itemid-211 main form textarea:focus {
  border-color: #D66C24 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(214,108,36,0.15) !important;
}

/* Submit-Button "Zum Bestellformular" - rechtsbuendig unter dem Formular */
body.itemid-211 main form > p:has(button) {
  text-align: right !important;
  margin: 20px 0 0 0 !important;
  padding-top: 16px !important;
  border-top: 1px solid #f0e8e0 !important;
}
body.itemid-211 main form button[type="submit"],
body.itemid-211 main form p button {
  background: linear-gradient(135deg, #D66C24 0%, #c05a18 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 32px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 2px 8px rgba(214,108,36,0.25) !important;
}
body.itemid-211 main form button[type="submit"]:hover,
body.itemid-211 main form p button:hover {
  background: linear-gradient(135deg, #c05a18 0%, #a84d12 100%) !important;
  box-shadow: 0 4px 15px rgba(214,108,36,0.4) !important;
  transform: translateY(-1px) !important;
}

/* B2B Mobile */
@media (max-width: 768px) {
  body.itemid-211 main {
    padding: 20px 18px !important;
    border-radius: 12px !important;
  }
  body.itemid-211 main > h5 { font-size: 1.2rem !important; }
  body.itemid-211 main form table tbody > tr {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    align-items: start !important;
  }
  body.itemid-211 main form table tbody > tr > td:first-child {
    white-space: normal !important;
  }
  body.itemid-211 main form select[name="Datum"] {
    max-width: 100% !important;
  }
}

/* =============================================
   B2B-BESTELLFORMULAR (itemid-760 / /b2b2)
   Produkttabelle mit Bestellmengen
   ============================================= */

/* Karten-Container */
body.itemid-760 main {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 32px 36px !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  max-width: none !important;
}

/* Leeren Article-Container am Ende ausblenden */
body.itemid-760 main > .com-content-article {
  display: none !important;
}

/* Hauptueberschrift mit Liefertermin */
body.itemid-760 main > h5 {
  font-size: 1.4rem !important;
  font-weight: 800 !important;
  color: #a84d12 !important;
  margin: 0 0 20px 0 !important;
  padding-bottom: 14px !important;
  border-bottom: 2px solid #D66C24 !important;
  line-height: 1.35 !important;
}
body.itemid-760 main > h5 strong {
  font-weight: 800 !important;
  color: #a84d12 !important;
}
body.itemid-760 main > h5 br {
  display: none !important;
}

/* Produkttabelle - border-Attribut neutralisieren */
body.itemid-760 main form table,
body.itemid-760 main form table[border] {
  border: none !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  width: 100% !important;
  margin: 0 0 20px 0 !important;
  background: transparent !important;
  font-size: 0.92rem !important;
}

/* Hidden Inputs ausblenden (sind direkte tr-Kinder) */
body.itemid-760 main form table tr > input[type="hidden"] {
  display: none !important;
}

/* Header-Zeile (erste tr enthaelt th) */
body.itemid-760 main form table tr:first-child th {
  background: #f8f8f6 !important;
  color: #a84d12 !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.6px !important;
  padding: 12px 14px !important;
  border-bottom: 2px solid #D66C24 !important;
  text-align: left !important;
  white-space: nowrap !important;
}
body.itemid-760 main form table tr:first-child th:first-child {
  border-top-left-radius: 10px !important;
  width: 130px !important;
}
body.itemid-760 main form table tr:first-child th:last-child {
  border-top-right-radius: 10px !important;
}
body.itemid-760 main form table tr:first-child th:nth-child(3),
body.itemid-760 main form table tr:first-child th:nth-child(4),
body.itemid-760 main form table tr:first-child th:nth-child(5) {
  text-align: right !important;
}

/* Produkt-Zeilen */
body.itemid-760 main form table tr:not(:first-child) td {
  padding: 10px 14px !important;
  border: none !important;
  border-bottom: 1px solid #f1ece6 !important;
  color: #333 !important;
  vertical-align: middle !important;
}
body.itemid-760 main form table tr:not(:first-child):nth-child(even) td {
  background: #fafaf8 !important;
}
body.itemid-760 main form table tr:not(:first-child):hover td {
  background: #fff7ee !important;
}

/* Spalte 1: Bestellmenge-Select */
body.itemid-760 main form table tr:not(:first-child) td:first-child {
  width: 130px !important;
  padding: 8px 14px !important;
}
body.itemid-760 main form table select[name="besmenge[]"] {
  width: 80px !important;
  padding: 7px 28px 7px 10px !important;
  border: 2px solid #e5e5ea !important;
  border-radius: 8px !important;
  background-color: #fff !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 12 8'><path fill='%23a84d12' d='M6 8L0 0h12z'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: right 8px center !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: #1d1d1f !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  text-indent: 0 !important;
  height: auto !important;
  line-height: 1.4 !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}
body.itemid-760 main form table select[name="besmenge[]"]:focus {
  border-color: #D66C24 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(214,108,36,0.15) !important;
}
/* Wenn eine Menge > 0 gewaehlt ist, optisch hervorheben */
body.itemid-760 main form table select[name="besmenge[]"]:not([data-zero]):valid {
  /* Kein generischer Selektor moeglich - per JS waere besser, hier Fokus-Stil ausreichend */
}

/* Spalte 2: Artikelname */
body.itemid-760 main form table tr:not(:first-child) td:nth-child(2) {
  font-weight: 600 !important;
  color: #1d1d1f !important;
}

/* Spalte 3: Nettopreis - rechtsbuendig, orange */
body.itemid-760 main form table tr:not(:first-child) td:nth-child(3) {
  text-align: right !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  white-space: nowrap !important;
}

/* Spalten 4 + 5: Mind/VPE - rechtsbuendig, dezent */
body.itemid-760 main form table tr:not(:first-child) td:nth-child(4),
body.itemid-760 main form table tr:not(:first-child) td:nth-child(5) {
  text-align: right !important;
  color: #86868b !important;
  font-size: 0.85rem !important;
  white-space: nowrap !important;
}

/* Letzte Zeile: keine Bottom-Border */
body.itemid-760 main form table tr:last-child td {
  border-bottom: none !important;
}

/* Submit-Button "Bestellung pruefen" - rechtsbuendig */
body.itemid-760 main form > p:has(button),
body.itemid-760 main form p:last-of-type {
  text-align: right !important;
  margin: 20px 0 0 0 !important;
  padding-top: 16px !important;
  border-top: 1px solid #f0e8e0 !important;
}
body.itemid-760 main form button[type="submit"] {
  background: linear-gradient(135deg, #D66C24 0%, #c05a18 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 32px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 2px 8px rgba(214,108,36,0.25) !important;
}
body.itemid-760 main form button[type="submit"]:hover {
  background: linear-gradient(135deg, #c05a18 0%, #a84d12 100%) !important;
  box-shadow: 0 4px 15px rgba(214,108,36,0.4) !important;
  transform: translateY(-1px) !important;
}

/* B2B2 Mobile */
@media (max-width: 768px) {
  body.itemid-760 main {
    padding: 18px 14px !important;
    border-radius: 12px !important;
  }
  body.itemid-760 main > h5 { font-size: 1.05rem !important; }
  body.itemid-760 main form table {
    font-size: 0.82rem !important;
  }
  body.itemid-760 main form table tr:first-child th,
  body.itemid-760 main form table tr:not(:first-child) td {
    padding: 8px 6px !important;
  }
  body.itemid-760 main form table tr:first-child th:nth-child(4),
  body.itemid-760 main form table tr:first-child th:nth-child(5),
  body.itemid-760 main form table tr:not(:first-child) td:nth-child(4),
  body.itemid-760 main form table tr:not(:first-child) td:nth-child(5) {
    display: none !important;
  }
  body.itemid-760 main form table select[name="besmenge[]"] {
    width: 64px !important;
  }
}

/* =============================================
   B2B-BESTELLUNG PRUEFEN (itemid-761 / /b2b3)
   Bestelluebersicht zur Kontrolle vor Absenden
   ============================================= */

/* Karten-Container */
body.itemid-761 main {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 32px 36px !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  max-width: none !important;
}

/* Leeren Article-Container am Ende ausblenden */
body.itemid-761 main > .com-content-article {
  display: none !important;
}

/* Begruessung */
body.itemid-761 main > h5 {
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  color: #1d1d1f !important;
  margin: 0 0 20px 0 !important;
  padding-bottom: 14px !important;
  border-bottom: 2px solid #D66C24 !important;
  line-height: 1.5 !important;
}
body.itemid-761 main > h5 strong {
  color: #a84d12 !important;
  font-weight: 700 !important;
}

/* Bestelltabelle (1. table im form) */
body.itemid-761 main form > table:first-of-type,
body.itemid-761 main form > table[border]:first-of-type {
  border: none !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  width: 100% !important;
  margin: 0 0 20px 0 !important;
  background: transparent !important;
  font-size: 0.92rem !important;
}

/* Header-Zeile */
body.itemid-761 main form > table:first-of-type tr:first-child th {
  background: #f8f8f6 !important;
  color: #a84d12 !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.6px !important;
  padding: 12px 14px !important;
  border-bottom: 2px solid #D66C24 !important;
  text-align: left !important;
  white-space: nowrap !important;
}
body.itemid-761 main form > table:first-of-type tr:first-child th:first-child {
  border-top-left-radius: 10px !important;
  width: 90px !important;
}
body.itemid-761 main form > table:first-of-type tr:first-child th:last-child {
  border-top-right-radius: 10px !important;
}
body.itemid-761 main form > table:first-of-type tr:first-child th:nth-child(3),
body.itemid-761 main form > table:first-of-type tr:first-child th:nth-child(4) {
  text-align: right !important;
}

/* Produkt-Zeilen */
body.itemid-761 main form > table:first-of-type tr:not(:first-child) td {
  padding: 10px 14px !important;
  border: none !important;
  border-bottom: 1px solid #f1ece6 !important;
  color: #333 !important;
  vertical-align: middle !important;
}
body.itemid-761 main form > table:first-of-type tr:not(:first-child):nth-child(even) td {
  background: #fafaf8 !important;
}

/* Spalte 1: Menge ("5 x") - fett, orange */
body.itemid-761 main form > table:first-of-type tr:not(:first-child) td:first-child {
  font-weight: 700 !important;
  color: #a84d12 !important;
  white-space: nowrap !important;
  width: 90px !important;
}
/* Spalte 2: Artikel - fett, dunkel */
body.itemid-761 main form > table:first-of-type tr:not(:first-child) td:nth-child(2) {
  font-weight: 600 !important;
  color: #1d1d1f !important;
}
/* Spalte 3: Nettopreis - rechtsbuendig, dezent */
body.itemid-761 main form > table:first-of-type tr:not(:first-child) td:nth-child(3) {
  text-align: right !important;
  color: #555 !important;
  white-space: nowrap !important;
}
/* Spalte 4: Gesamt - rechtsbuendig, orange, fett */
body.itemid-761 main form > table:first-of-type tr:not(:first-child) td:nth-child(4) {
  text-align: right !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  white-space: nowrap !important;
}

/* Letzte Zeile: keine Bottom-Border */
body.itemid-761 main form > table:first-of-type tr:last-child td {
  border-bottom: none !important;
}

/* Gesamtwert-Anzeige (h5 zwischen den Tables) */
body.itemid-761 main form > h5 {
  background: linear-gradient(135deg, #fff7ee 0%, #fef0e0 100%) !important;
  border: 1px solid #f0c89a !important;
  border-radius: 12px !important;
  padding: 16px 22px !important;
  margin: 0 0 24px 0 !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  text-align: right !important;
}

/* Mitteilung-Tabelle (2. table im form) */
body.itemid-761 main form > table:nth-of-type(2),
body.itemid-761 main form > table[border]:nth-of-type(2) {
  border: none !important;
  border-collapse: collapse !important;
  width: 100% !important;
  margin: 0 0 20px 0 !important;
  background: transparent !important;
  display: block !important;
}
body.itemid-761 main form > table:nth-of-type(2) tbody {
  display: block !important;
  width: 100% !important;
}
body.itemid-761 main form > table:nth-of-type(2) tbody > tr {
  display: grid !important;
  grid-template-columns: 220px minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: start !important;
  width: 100% !important;
}
body.itemid-761 main form > table:nth-of-type(2) tbody > tr > td {
  display: block !important;
  border: none !important;
  padding: 0 !important;
  min-width: 0 !important;
  width: auto !important;
}
body.itemid-761 main form > table:nth-of-type(2) tbody > tr > td:first-child {
  font-weight: 600 !important;
  color: #a84d12 !important;
  font-size: 0.95rem !important;
  padding-top: 10px !important;
}
body.itemid-761 main form > table:nth-of-type(2) textarea {
  width: 100% !important;
  min-height: 90px !important;
  padding: 10px 14px !important;
  border: 2px solid #e5e5ea !important;
  border-radius: 10px !important;
  background: #fff !important;
  font-family: inherit !important;
  font-size: 0.92rem !important;
  color: #1d1d1f !important;
  line-height: 1.5 !important;
  resize: vertical !important;
  box-sizing: border-box !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}
body.itemid-761 main form > table:nth-of-type(2) textarea:focus {
  border-color: #D66C24 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(214,108,36,0.15) !important;
}

/* Submit-Button "Bestellung abschicken" */
body.itemid-761 main form > p:has(button),
body.itemid-761 main form p:last-of-type {
  text-align: right !important;
  margin: 20px 0 0 0 !important;
  padding-top: 16px !important;
  border-top: 1px solid #f0e8e0 !important;
}
body.itemid-761 main form button[type="submit"] {
  background: linear-gradient(135deg, #D66C24 0%, #c05a18 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 32px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 2px 8px rgba(214,108,36,0.25) !important;
}
body.itemid-761 main form button[type="submit"]:hover {
  background: linear-gradient(135deg, #c05a18 0%, #a84d12 100%) !important;
  box-shadow: 0 4px 15px rgba(214,108,36,0.4) !important;
  transform: translateY(-1px) !important;
}

/* Abbrechen-Button - sekundaer, dezent roetlich (Gradient) */
body.itemid-761 main form input[type="button"][value="Bestellung abbrechen"] {
  background: linear-gradient(135deg, #c0504d 0%, #a83b3b 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 28px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  margin-left: 12px !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 2px 8px rgba(168,59,59,0.2) !important;
}
body.itemid-761 main form input[type="button"][value="Bestellung abbrechen"]:hover {
  background: linear-gradient(135deg, #a83b3b 0%, #8a2c2c 100%) !important;
  box-shadow: 0 4px 15px rgba(168,59,59,0.35) !important;
  transform: translateY(-1px) !important;
}

/* B2B3 Mobile */
@media (max-width: 768px) {
  body.itemid-761 main {
    padding: 18px 14px !important;
    border-radius: 12px !important;
  }
  body.itemid-761 main > h5 { font-size: 1rem !important; }
  body.itemid-761 main form > h5 { font-size: 1rem !important; padding: 14px 18px !important; }
  body.itemid-761 main form > table:first-of-type {
    font-size: 0.82rem !important;
  }
  body.itemid-761 main form > table:first-of-type tr:first-child th,
  body.itemid-761 main form > table:first-of-type tr:not(:first-child) td {
    padding: 8px 6px !important;
  }
  body.itemid-761 main form > table:first-of-type tr:first-child th:nth-child(3),
  body.itemid-761 main form > table:first-of-type tr:not(:first-child) td:nth-child(3) {
    display: none !important;
  }
  body.itemid-761 main form > table:nth-of-type(2) tbody > tr {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }
  body.itemid-761 main form > table:nth-of-type(2) tbody > tr > td:first-child {
    padding-top: 0 !important;
  }
  /* Mobile: Buttons untereinander, volle Breite, Abbrechen unten */
  body.itemid-761 main form > p:last-of-type {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    text-align: center !important;
  }
  body.itemid-761 main form button[type="submit"],
  body.itemid-761 main form input[type="button"][value="Bestellung abbrechen"] {
    width: 100% !important;
    margin-left: 0 !important;
    padding: 12px 20px !important;
  }
}

/* =============================================
   B2B-BESTAETIGUNG (itemid-763 / /b2b5)
   "Vielen Dank fuer Ihre Bestellung"
   ============================================= */

/* Karten-Container = das <main>-Element */
body.itemid-763 main {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 32px 36px !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  max-width: none !important;
}

/* Leeren Article-Container am Ende ausblenden */
body.itemid-763 main > .com-content-article {
  display: none !important;
}

/* Bestaetigungs-Karte */
body.itemid-763 main #printArea.b2b5-card {
  margin: 0 0 24px 0 !important;
}
body.itemid-763 main #printArea.b2b5-card h5 {
  font-size: 1.5rem !important;
  font-weight: 800 !important;
  color: #a84d12 !important;
  margin: 0 0 8px 0 !important;
  padding-bottom: 14px !important;
  border-bottom: 2px solid #D66C24 !important;
  line-height: 1.3 !important;
}
body.itemid-763 main #printArea.b2b5-card h5::before {
  content: "\2713  " !important;
  color: #4caf50 !important;
  font-weight: 900 !important;
}
body.itemid-763 main .b2b5-subline {
  color: #555 !important;
  font-size: 0.95rem !important;
  margin: 14px 0 16px 0 !important;
}

/* Email-Body-Container */
body.itemid-763 main .b2b5-summary {
  background: #f8f8f6 !important;
  border: 1px solid #ece7e0 !important;
  border-radius: 12px !important;
  padding: 20px 24px !important;
  color: #333 !important;
  font-size: 0.92rem !important;
  line-height: 1.55 !important;
}
body.itemid-763 main .b2b5-summary table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 10px 0 !important;
  font-size: 0.9rem !important;
}
body.itemid-763 main .b2b5-summary table th,
body.itemid-763 main .b2b5-summary table td {
  padding: 8px 12px !important;
  border: none !important;
  border-bottom: 1px solid #ece7e0 !important;
  text-align: left !important;
}
body.itemid-763 main .b2b5-summary table th {
  background: #fff !important;
  color: #a84d12 !important;
  font-weight: 700 !important;
  font-size: 0.78rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}
body.itemid-763 main .b2b5-summary table tr:last-child td {
  border-bottom: none !important;
}
body.itemid-763 main .b2b5-summary p {
  margin: 8px 0 !important;
}
body.itemid-763 main .b2b5-summary strong {
  color: #a84d12 !important;
}

/* Action-Buttons */
body.itemid-763 main .b2b5-actions {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  margin: 0 !important;
  padding-top: 16px !important;
  border-top: 1px solid #f0e8e0 !important;
}
body.itemid-763 main .b2b5-btn {
  display: inline-block !important;
  border-radius: 10px !important;
  padding: 12px 28px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  text-decoration: none !important;
  text-align: center !important;
  border: none !important;
}
body.itemid-763 main .b2b5-btn-primary {
  background: linear-gradient(135deg, #D66C24 0%, #c05a18 100%) !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(214,108,36,0.25) !important;
}
body.itemid-763 main .b2b5-btn-primary:hover {
  background: linear-gradient(135deg, #c05a18 0%, #a84d12 100%) !important;
  box-shadow: 0 4px 15px rgba(214,108,36,0.4) !important;
  transform: translateY(-1px) !important;
}
body.itemid-763 main .b2b5-btn-secondary {
  background: linear-gradient(135deg, #c0504d 0%, #a83b3b 100%) !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(168,59,59,0.2) !important;
}
body.itemid-763 main .b2b5-btn-secondary:hover {
  background: linear-gradient(135deg, #a83b3b 0%, #8a2c2c 100%) !important;
  box-shadow: 0 4px 15px rgba(168,59,59,0.35) !important;
  transform: translateY(-1px) !important;
}

/* B2B5 Mobile */
@media (max-width: 768px) {
  body.itemid-763 main {
    padding: 20px 18px !important;
    border-radius: 12px !important;
  }
  body.itemid-763 main #printArea.b2b5-card h5 { font-size: 1.2rem !important; }
  body.itemid-763 main .b2b5-summary {
    padding: 14px 16px !important;
  }
  body.itemid-763 main .b2b5-actions {
    flex-direction: column !important;
    gap: 10px !important;
  }
  body.itemid-763 main .b2b5-btn {
    width: 100% !important;
    padding: 12px 20px !important;
  }
}

/* =============================================
   BESTELL-INFORMATIONEN (Order Details Page)
   body.view-orders.layout-details
   ============================================= */

/* Karten-Container fuer den Bestellbereich */
body.view-orders.layout-details main > .vm-wrap,
body.view-orders.layout-details main > .order-view,
body.view-orders.layout-details main > div:first-child {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 32px 36px !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  max-width: none !important;
}

/* Haupt-Headline "Bestell-Informationen" */
body.view-orders.layout-details main h1 {
  font-size: 1.7rem !important;
  font-weight: 800 !important;
  color: #a84d12 !important;
  margin: 0 0 22px 0 !important;
  padding-bottom: 14px !important;
  border-bottom: 2px solid #D66C24 !important;
  line-height: 1.3 !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}

/* Print-Icon dezent */
body.view-orders.layout-details main h1 .icons,
body.view-orders.layout-details main h1 a[href*="print"],
body.view-orders.layout-details main h1 img {
  opacity: 0.45 !important;
  transition: opacity 0.2s ease !important;
}
body.view-orders.layout-details main h1 .icons:hover,
body.view-orders.layout-details main h1 a[href*="print"]:hover { opacity: 1 !important; }

/* "Bestellungen auflisten" Link */
body.view-orders.layout-details main a[href*="meine-bestellungen"],
body.view-orders.layout-details main a[href*="orderlist"] {
  display: inline-block !important;
  color: #D66C24 !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  text-decoration: none !important;
  padding: 6px 14px !important;
  border: 2px solid #D66C24 !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
}
body.view-orders.layout-details main a[href*="meine-bestellungen"]:hover,
body.view-orders.layout-details main a[href*="orderlist"]:hover {
  background: #D66C24 !important;
  color: #fff !important;
}

/* Zweispaltige Layouts (Bestellinfo links/rechts + Rechnung an/Versenden an) */
body.view-orders.layout-details main .order-summary,
body.view-orders.layout-details main .billto-shipto,
body.view-orders.layout-details main .order-detail,
body.view-orders.layout-details main .vm-order-details {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 24px !important;
  margin-bottom: 24px !important;
}
body.view-orders.layout-details main .order-summary > div,
body.view-orders.layout-details main .billto-shipto > div,
body.view-orders.layout-details main .vm-order-details > div {
  background: #f8f8f6 !important;
  border-radius: 12px !important;
  padding: 18px 22px !important;
  width: auto !important;
  float: none !important;
}

/* Label-Wert-Listen (Bestellnummer / ICCY...) */
body.view-orders.layout-details main dl,
body.view-orders.layout-details main .order-info,
body.view-orders.layout-details main .billto-shipto .output-billto,
body.view-orders.layout-details main .billto-shipto .output-shipto {
  display: grid !important;
  grid-template-columns: minmax(140px, max-content) 1fr !important;
  gap: 6px 18px !important;
  margin: 0 !important;
  font-size: 0.92rem !important;
  line-height: 1.55 !important;
}
body.view-orders.layout-details main dt,
body.view-orders.layout-details main dl strong {
  font-weight: 600 !important;
  color: #555 !important;
}
body.view-orders.layout-details main dd {
  margin: 0 !important;
  color: #1d1d1f !important;
  font-weight: 500 !important;
}

/* Section-Headings (Rechnung an / Versenden an / Bestell-Informationen) */
body.view-orders.layout-details main h2,
body.view-orders.layout-details main h3,
body.view-orders.layout-details main h4,
body.view-orders.layout-details main .vmicon {
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin: 0 0 12px !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid #D66C24 !important;
}

/* Endsumme im Bestellinfo-Block - Hervorhebung */
body.view-orders.layout-details main strong:has(+ .vm-price-value),
body.view-orders.layout-details main .endsumme,
body.view-orders.layout-details main [class*="Endsumme"] {
  color: #a84d12 !important;
  font-weight: 700 !important;
}

/* Tab-Reiter "Bestellte Artikel" / "Bestellhistorie" */
body.view-orders.layout-details main .order-tabs,
body.view-orders.layout-details main ul.nav-tabs,
body.view-orders.layout-details main .ui-tabs-nav {
  display: flex !important;
  gap: 6px !important;
  border-bottom: 2px solid #ece7e0 !important;
  margin: 8px 0 20px !important;
  padding: 0 !important;
  list-style: none !important;
}
body.view-orders.layout-details main .order-tabs li,
body.view-orders.layout-details main ul.nav-tabs li {
  list-style: none !important;
  margin: 0 !important;
}
body.view-orders.layout-details main .order-tabs a,
body.view-orders.layout-details main ul.nav-tabs a,
body.view-orders.layout-details main .ui-tabs-anchor {
  display: inline-block !important;
  padding: 10px 18px !important;
  background: #f4f0eb !important;
  color: #555 !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  border: none !important;
  border-radius: 10px 10px 0 0 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}
body.view-orders.layout-details main .order-tabs a:hover,
body.view-orders.layout-details main ul.nav-tabs a:hover {
  background: #ece7e0 !important;
  color: #a84d12 !important;
}
body.view-orders.layout-details main .order-tabs li.active a,
body.view-orders.layout-details main .ui-tabs-active a,
body.view-orders.layout-details main ul.nav-tabs li.active a {
  background: #fff !important;
  color: #a84d12 !important;
  box-shadow: 0 -2px 0 #D66C24 inset, 0 -1px 4px rgba(0,0,0,0.05) !important;
}

/* Bestellte-Artikel-Tabelle */
body.view-orders.layout-details main table.order-list,
body.view-orders.layout-details main table.cart-summary,
body.view-orders.layout-details main table[class*="order"]:not(.no-style) {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 0 0 20px 0 !important;
  font-size: 0.9rem !important;
  background: transparent !important;
  border: none !important;
}
body.view-orders.layout-details main table.order-list thead th,
body.view-orders.layout-details main table.order-list tr:first-child th,
body.view-orders.layout-details main table.cart-summary thead th {
  background: #f8f8f6 !important;
  color: #a84d12 !important;
  font-size: 0.76rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 12px 14px !important;
  border: none !important;
  border-bottom: 2px solid #D66C24 !important;
  text-align: left !important;
  white-space: nowrap !important;
}
body.view-orders.layout-details main table.order-list tbody td,
body.view-orders.layout-details main table.cart-summary tbody td {
  padding: 10px 14px !important;
  border: none !important;
  border-bottom: 1px solid #f1ece6 !important;
  color: #333 !important;
  vertical-align: middle !important;
  background: transparent !important;
}
body.view-orders.layout-details main table.order-list tbody tr:nth-child(even) td,
body.view-orders.layout-details main table.cart-summary tbody tr:nth-child(even) td {
  background: #fafaf8 !important;
}

/* Preis-/Endsumme-Spalten rechtsbuendig */
body.view-orders.layout-details main table.order-list td[class*="price"],
body.view-orders.layout-details main table.order-list td[class*="total"],
body.view-orders.layout-details main table.order-list td[class*="mwst"],
body.view-orders.layout-details main table.order-list td[class*="quantity"] {
  text-align: right !important;
  white-space: nowrap !important;
}

/* Summenzeilen (Summe der Produktpreise / Endsumme) */
body.view-orders.layout-details main table tfoot td,
body.view-orders.layout-details main table tr.total td,
body.view-orders.layout-details main table tr[class*="summary"] td {
  font-weight: 600 !important;
  color: #555 !important;
  border-bottom: 1px solid #f1ece6 !important;
}
body.view-orders.layout-details main table tfoot tr:last-child td,
body.view-orders.layout-details main table tr.grand-total td {
  font-size: 1.1rem !important;
  font-weight: 800 !important;
  color: #a84d12 !important;
  border-top: 2px solid #D66C24 !important;
  border-bottom: none !important;
}

/* Balance / Paid-Statuszeile */
body.view-orders.layout-details main .order-balance,
body.view-orders.layout-details main .balance,
body.view-orders.layout-details main [class*="balance"] {
  background: #f0f9f0 !important;
  border: 1px solid #c5e0c5 !important;
  border-radius: 10px !important;
  padding: 10px 18px !important;
  margin-top: 14px !important;
  font-weight: 600 !important;
  color: #2e7d32 !important;
  display: flex !important;
  justify-content: space-between !important;
}

/* Login-Form (wenn ausgeloggt aufgerufen) - "Meine Bestellung verfolgen" */
body.view-orders.layout-details main .order-view form,
body.view-orders.layout-details main #com-form-login {
  background: #f8f8f6 !important;
  border: 1px solid #ece7e0 !important;
  border-radius: 12px !important;
  padding: 24px 28px !important;
  margin-bottom: 20px !important;
}
body.view-orders.layout-details main .order-view input.inputbox,
body.view-orders.layout-details main #com-form-login input.inputbox {
  border: 2px solid #e5e5ea !important;
  border-radius: 8px !important;
  padding: 9px 13px !important;
  font-size: 0.9rem !important;
  background: #fff !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
body.view-orders.layout-details main .order-view input.button,
body.view-orders.layout-details main #com-form-login input.button {
  background: linear-gradient(135deg, #a84d12 0%, #D66C24 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 10px 22px !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}

/* Mobile */
@media (max-width: 768px) {
  body.view-orders.layout-details main > .vm-wrap,
  body.view-orders.layout-details main > .order-view,
  body.view-orders.layout-details main > div:first-child {
    padding: 20px 18px !important;
    border-radius: 12px !important;
  }
  body.view-orders.layout-details main h1 { font-size: 1.3rem !important; }
  body.view-orders.layout-details main .order-summary,
  body.view-orders.layout-details main .billto-shipto,
  body.view-orders.layout-details main .vm-order-details {
    grid-template-columns: 1fr !important;
  }
  body.view-orders.layout-details main dl,
  body.view-orders.layout-details main .billto-shipto .output-billto,
  body.view-orders.layout-details main .billto-shipto .output-shipto {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  body.view-orders.layout-details main dt { margin-top: 8px !important; }
  body.view-orders.layout-details main table.order-list,
  body.view-orders.layout-details main table.cart-summary {
    font-size: 0.82rem !important;
  }
  body.view-orders.layout-details main table.order-list thead th,
  body.view-orders.layout-details main table.order-list tbody td {
    padding: 8px 6px !important;
  }
  body.view-orders.layout-details main table.order-list th:nth-child(3),
  body.view-orders.layout-details main table.order-list td:nth-child(3),
  body.view-orders.layout-details main table.order-list th:nth-child(6),
  body.view-orders.layout-details main table.order-list td:nth-child(6),
  body.view-orders.layout-details main table.order-list th:nth-child(7),
  body.view-orders.layout-details main table.order-list td:nth-child(7) {
    display: none !important;
  }
}

/* =============================================
   BESTELLUNGEN AUFLISTEN (Order List Page)
   body.view-orders.layout-list
   ============================================= */

/* Karten-Container */
body.view-orders.layout-list main > .vm-wrap,
body.view-orders.layout-list main > div:first-child {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
  padding: 32px 36px !important;
  margin-bottom: 20px !important;
  width: 100% !important;
  max-width: none !important;
}

/* Haupt-Headline "Bestellungen auflisten" */
body.view-orders.layout-list main h1 {
  font-size: 1.7rem !important;
  font-weight: 800 !important;
  color: #a84d12 !important;
  margin: 0 0 22px 0 !important;
  padding-bottom: 14px !important;
  border-bottom: 2px solid #D66C24 !important;
  line-height: 1.3 !important;
}

/* Tabelle der Bestellungen */
body.view-orders.layout-list main table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 0 0 20px 0 !important;
  font-size: 0.92rem !important;
  background: transparent !important;
  border: none !important;
}
body.view-orders.layout-list main table thead th,
body.view-orders.layout-list main table tr:first-child th {
  background: #f8f8f6 !important;
  color: #a84d12 !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.6px !important;
  padding: 12px 14px !important;
  border: none !important;
  border-bottom: 2px solid #D66C24 !important;
  text-align: left !important;
  white-space: nowrap !important;
}
body.view-orders.layout-list main table tbody td {
  padding: 12px 14px !important;
  border: none !important;
  border-bottom: 1px solid #f1ece6 !important;
  color: #333 !important;
  vertical-align: middle !important;
  background: transparent !important;
}
body.view-orders.layout-list main table tbody tr:nth-child(even) td {
  background: #fafaf8 !important;
}
body.view-orders.layout-list main table tbody tr:hover td {
  background: #fff7ee !important;
}

/* Bestellnummer-Link */
body.view-orders.layout-list main table tbody td:first-child a {
  color: #a84d12 !important;
  font-weight: 700 !important;
  font-family: 'Inter Mono', 'Consolas', monospace !important;
  text-decoration: none !important;
  letter-spacing: 0.3px !important;
  transition: color 0.2s ease !important;
}
body.view-orders.layout-list main table tbody td:first-child a:hover {
  color: #D66C24 !important;
  text-decoration: underline !important;
}

/* Status-Spalte (3.) - Badge-Look */
body.view-orders.layout-list main table tbody td:nth-child(3) {
  color: #2e7d32 !important;
  font-weight: 600 !important;
}

/* Summen-Spalte (4.) - rechtsbuendig, orange */
body.view-orders.layout-list main table thead th:last-child,
body.view-orders.layout-list main table tr:first-child th:last-child {
  text-align: right !important;
}
body.view-orders.layout-list main table tbody td:last-child {
  text-align: right !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  white-space: nowrap !important;
}

/* Letzte Zeile ohne Bottom-Border */
body.view-orders.layout-list main table tbody tr:last-child td {
  border-bottom: none !important;
}

/* Login-Form (wenn ausgeloggt) - gleicher Stil wie Details */
body.view-orders.layout-list main .order-view,
body.view-orders.layout-list main #com-form-login {
  background: #f8f8f6 !important;
  border: 1px solid #ece7e0 !important;
  border-radius: 12px !important;
  padding: 24px 28px !important;
  margin-bottom: 20px !important;
}
body.view-orders.layout-list main .order-view h2,
body.view-orders.layout-list main #com-form-login fieldset.userdata h2 {
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  color: #a84d12 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin: 0 0 14px !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid #D66C24 !important;
}
body.view-orders.layout-list main .order-view input.inputbox,
body.view-orders.layout-list main #com-form-login input.inputbox {
  border: 2px solid #e5e5ea !important;
  border-radius: 8px !important;
  padding: 9px 13px !important;
  font-size: 0.9rem !important;
  background: #fff !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin-top: 4px !important;
}
body.view-orders.layout-list main .order-view input.inputbox:focus,
body.view-orders.layout-list main #com-form-login input.inputbox:focus {
  border-color: #D66C24 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(214,108,36,0.15) !important;
}
body.view-orders.layout-list main .order-view input.button,
body.view-orders.layout-list main #com-form-login input.button {
  background: linear-gradient(135deg, #a84d12 0%, #D66C24 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 10px 22px !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  margin-top: 8px !important;
}

/* Mobile */
@media (max-width: 768px) {
  body.view-orders.layout-list main > .vm-wrap,
  body.view-orders.layout-list main > div:first-child {
    padding: 20px 18px !important;
    border-radius: 12px !important;
  }
  body.view-orders.layout-list main h1 { font-size: 1.3rem !important; }
  body.view-orders.layout-list main table {
    font-size: 0.82rem !important;
  }
  body.view-orders.layout-list main table thead th,
  body.view-orders.layout-list main table tbody td {
    padding: 9px 6px !important;
  }
  /* Bestelldatum bleibt sichtbar, Status ausgeblendet (Summe + Nr + Datum reichen) */
  body.view-orders.layout-list main table thead th:nth-child(3),
  body.view-orders.layout-list main table tbody td:nth-child(3) {
    display: none !important;
  }
}
