/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* ==========================================================================
   CHECKOUT CUSTOM STYLES - EINRICHTUNGSBU.DE
   Target Page: /kasse/ (ID: 982)
   ========================================================================== */

/* 1. LAYOUT: BREITE, ZENTRIERUNG & HINTERGRUND */
.page-id-982 body.woocommerce-checkout {
    background-color: #fcfcfc;
}

.page-id-982 .wp-block-site-logo {
    padding-top: 40px !important;
    margin-bottom: 20px !important;
    display: flex;
    justify-content: center;
}

.page-id-982 .wp-block-site-logo a {
    max-width: 1060px;
    width: 100%;
    display: flex;
    justify-content: center;
}

.page-id-982 .elementor-template-canvas,
.page-id-982 .wp-block-woocommerce-checkout {
    max-width: 1060px !important;
    margin: 0 auto !important;
    padding-top: 20px !important;
    padding-bottom: 0px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
}

@media (max-width: 940px) {
    .page-id-982 .wp-block-woocommerce-checkout {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

body.page-id-982.page-template-elementor_canvas {
    display: block;
    width: 100%;
}

/* 2. VERSANDOPTIONEN: AUSBLENDEN */
.page-id-982 #shipping-option,
.page-id-982 .wc-block-checkout__shipping-option,
.page-id-982 [data-block-name="woocommerce/checkout-shipping-method-block"],
.page-id-982 .wc-block-components-shipping-rates-control {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 3. DESIGNSYSTEM: FARBEN & BUTTONS */
.page-id-982 .wc-block-components-checkout-place-order-button,
.page-id-982 .wp-block-woocommerce-checkout-actions-block .wc-block-components-button {
    background-color: rgb(140, 27, 47) !important;
    border-color: rgb(140, 27, 47) !important;
    color: #ffffff !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: bold;
}

.page-id-982 .wc-block-components-checkout-place-order-button:hover,
.page-id-982 .wp-block-woocommerce-checkout-actions-block .wc-block-components-button:hover {
    background-color: #721624 !important;
    border-color: #721624 !important;
}

.page-id-982 .wc-block-checkout__terms a, 
.page-id-982 .wc-block-components-checkbox-control__label a,
.page-id-982 .wc-gzd-checkbox-legal a,
.page-id-982 .wc-block-components-checkout-step__container a {
    color: rgb(140, 27, 47) !important;
    text-decoration: underline !important;
}

.page-id-982 .wc-block-checkout__terms a:hover, 
.page-id-982 .wc-block-components-checkbox-control__label a:hover,
.page-id-982 .wc-gzd-checkbox-legal a:hover {
    color: #721624 !important;
    text-decoration: none !important;
}

.page-id-982 .wc-block-components-text-input input:focus,
.page-id-982 .wc-block-components-combobox .wc-block-components-combobox-control__input:focus {
    border-color: rgb(140, 27, 47) !important;
    outline: 1px solid rgb(140, 27, 47) !important;
}

.page-id-982 .wc-block-components-title {
    color: #333;
    border-bottom: 2px solid rgb(140, 27, 47);
    padding-bottom: 5px;
    display: inline-block;
}

.page-id-982 hr.wp-block-separator, 
.page-id-982 .wp-block-separator.is-style-wide {
    width: 1060px !important; 
    max-width: 1060px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border: none !important;
    border-bottom: 1px solid #e0e0e0 !important;
    background-color: transparent !important;
    margin-top: 0px !important;
    margin-bottom: 32px !important;
    opacity: 1 !important;
}

/* 4. BESTELLÜBERSICHT: STICKY */
.page-id-982 .wp-block-woocommerce-checkout.wc-block-checkout {
    display: flex !important;
    align-items: flex-start !important;
    gap: 40px;
}

.page-id-982 .wc-block-checkout__totals,
.page-id-982 .wp-block-woocommerce-checkout-totals-block {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 64px !important;
    z-index: 10;
    flex: 1 1 35%;
}

@media (max-width: 768px) {
    .page-id-982 .wp-block-woocommerce-checkout.wc-block-checkout {
        flex-direction: column !important;
    }
    .page-id-982 .wc-block-checkout__totals {
        position: relative !important;
        top: 0 !important;
        width: 100% !important;
    }
}



/* ==============================================
   CHECKOUT — Sticky Sidebar auf Mobile deaktivieren
   ============================================== */
@media (max-width: 768px) {
    .page-id-982 .wc-block-checkout__totals,
    .page-id-982 .wp-block-woocommerce-checkout-totals-block,
    .page-id-982 .wc-block-checkout__sidebar {
        position: relative !important;
        top: 0 !important;
        -webkit-position: relative !important;
    }
}

/* ==============================================
   SIDE CART — Lieferzeit Fix
   ============================================== */
.xoo-wsc-product dl.variation dt.variation-gzd-delivery_time {
    display: none !important;
}
.xoo-wsc-product dl.variation dd.variation-gzd-delivery_time {
    display: block !important;
    float: none !important;
    width: 100% !important;
    font-style: normal !important;
}

/* ==========================================================================
   SIDE CART — Einrichtungsbude Design System
   ========================================================================== */

/* CHANGE 1: Design-Token Variablen */
.xoo-wsc-markup {
    --ink:           #141311;
    --charcoal:      #1e1c19;
    --pewter:        #6b655d;
    --ash:           #9a938a;
    --stone:         #c2bbb2;
    --bone:          #e5dfd7;
    --parchment:     #f2eeea;
    --milk:          #f9f7f4;
    --white:         #fefefe;
    --crimson:       #8c1b2f;
    --crimson-hover: #721624;
    --moss:          #4a7c52;
    --radius-sm:     4px;
    --radius-md:     6px;
    --radius-lg:     8px;
    --font-body:     'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* CHANGE 2: Container & Header */
.xoo-wsc-container,
.xoo-wsc-slider {
    background-color: var(--milk) !important;
    font-family: var(--font-body) !important;
}

.xoo-wsc-header {
    background-color: var(--white) !important;
    border-bottom: 1px solid var(--bone) !important;
    padding: 16px 20px !important;
}

.xoo-wsch-text {
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    color: var(--ink) !important;
}

.xoo-wsch-close {
    color: var(--pewter) !important;
    transition: color 0.2s !important;
}
.xoo-wsch-close:hover {
    color: var(--ink) !important;
}

.xoo-wsc-body {
    background-color: var(--milk) !important;
}

/* CHANGE 3: Produkt-Zeile */
.xoo-wsc-products:not(.xoo-wsc-pattern-card) .xoo-wsc-product {
    background-color: var(--white) !important;
    border: 1px solid var(--bone) !important;
    border-radius: var(--radius-lg) !important;
    box-shadow: none !important;
    margin: 8px 16px !important;
    padding: 12px !important;
}

.xoo-wsc-pname a,
.xoo-wsc-pname {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: var(--ink) !important;
    letter-spacing: -0.005em !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
}
.xoo-wsc-pname a:hover {
    color: var(--crimson) !important;
}

.xoo-wsc-product dl.variation {
    margin: 4px 0 0 0 !important;
    overflow: hidden !important;
}
.xoo-wsc-product dl.variation dt,
.xoo-wsc-product dl.variation dd {
    font-size: 12px !important;
    color: var(--pewter) !important;
    font-style: italic !important;
    line-height: 1.5 !important;
}

.xoo-wsc-product + .xoo-wsc-product {
    margin-top: 8px !important;
}

.xoo-wsc-smr-del {
    color: var(--stone) !important;
    transition: color 0.2s !important;
}
.xoo-wsc-smr-del:hover {
    color: var(--crimson) !important;
}

/* CHANGE 4: Lieferzeit */
.xoo-wsc-delivery-time {
    display: block !important;
    width: 100% !important;
    clear: both !important;
    margin: 5px 0 3px 0 !important;
    font-style: normal !important;
}

.xoo-wsc-delivery-time .delivery-time-inner {
    display: inline-block !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    color: var(--moss) !important;
    background: rgba(74, 124, 82, 0.10) !important;
    padding: 2px 8px !important;
    border-radius: 100px !important;
    font-style: normal !important;
}

/* CHANGE 5: Preis & Menge */
.xoo-wsc-sml-qty {
    font-size: 12px !important;
    color: var(--pewter) !important;
    margin: 6px 0 2px 0 !important;
    font-style: normal !important;
}
.xoo-wsc-sml-qty span {
    font-weight: 600 !important;
    color: var(--ink) !important;
}

.xoo-wsc-pprice {
    font-size: 12px !important;
    color: var(--pewter) !important;
}
.xoo-wsc-pprice .amount {
    font-weight: 600 !important;
    color: var(--ink) !important;
    font-variant-numeric: tabular-nums !important;
}

.xoo-wsc-smr-ptotal {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--ink) !important;
    font-variant-numeric: tabular-nums !important;
    letter-spacing: -0.01em !important;
}
.xoo-wsc-smr-ptotal .amount {
    color: var(--ink) !important;
}

/* CHANGE 6: Footer */
.xoo-wsc-footer {
    background-color: var(--white) !important;
    border-top: 1px solid var(--bone) !important;
    box-shadow: none !important;
    padding: 16px 20px !important;
}

.xoo-wsc-ft-amt-label {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--pewter) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    text-align: left !important;
}

.xoo-wsc-ft-amt-value .amount {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--ink) !important;
    font-variant-numeric: tabular-nums !important;
    letter-spacing: -0.02em !important;
    text-align: left !important;
}

.xoo-wsc-ft-totals {
    margin-bottom: 10px !important;
    text-align: left !important;
}

.xoo-wsc-ft-amt.xoo-wsc-ft-amt-subtotal {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    width: 100% !important;
}

.xoo-wsc-footer-txt {
    display: block !important;
    font-size: 12px !important;
    color: var(--ash) !important;
    text-align: left !important;
    margin: 0 0 2px 0 !important;
    line-height: 1.5 !important;
}

.xoo-wsc-legal-hinweis {
    font-size: 11px !important;
    color: var(--ash) !important;
    text-align: left !important;
    margin: 0 0 12px 0 !important;
    line-height: 1.5 !important;
    font-family: var(--font-body) !important;
}

/* CHANGE 7: Buttons */
.xoo-wsc-ft-buttons-cont {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.xoo-wsc-ft-btn-checkout.xoo-wsc-ft-btn {
    background-color: var(--crimson) !important;
    color: #ffffff !important;
    border: 2px solid var(--crimson) !important;
    border-radius: var(--radius-md) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    padding: 14px 20px !important;
    transition: background 0.25s, transform 0.2s, box-shadow 0.25s !important;
    text-align: center !important;
}
.xoo-wsc-ft-btn-checkout.xoo-wsc-ft-btn:hover {
    background-color: var(--crimson-hover) !important;
    border-color: var(--crimson-hover) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(140, 27, 47, 0.25) !important;
    color: #ffffff !important;
}

.xoo-wsc-ft-btn-continue.xoo-wsc-ft-btn {
    background-color: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    color: var(--pewter) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    padding: 4px 0 !important;
    text-align: center !important;
    box-shadow: none !important;
}
.xoo-wsc-ft-btn-continue.xoo-wsc-ft-btn:hover {
    color: var(--ink) !important;
    background-color: transparent !important;
    transform: none !important;
    box-shadow: none !important;
}

.xoo-wsc-empty-cart {
    color: var(--pewter) !important;
    font-size: 14px !important;
}

/* ==============================================
   BESTELLBESTÄTIGUNG — Max-Width & Zentriert
   ============================================== */
.woocommerce-order-received .woocommerce-order {
    max-width: 1060px !important;
    margin: 40px auto !important;
    padding: 0 20px !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* ==============================================
   MEIN KONTO — Max-Width & Zentriert
   ============================================== */
.woocommerce-account .woocommerce {
    max-width: 1060px !important;
    margin: 40px auto !important;
    padding: 0 20px !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* ==============================================
   PRODUKTSEITE — Lager + Lieferzeit Box
   ============================================== */
.eb-stock-delivery-box {
    display: inline-flex;
    flex-direction: column;
    gap: 4px;
    background: #f2eeea;
    border: 1px solid #e5dfd7;
    border-radius: 6px;
    padding: 10px 14px;
    margin-top: 14px;
    width: 100%;
    box-sizing: border-box;
}

.eb-stock-row,
.eb-delivery-row {
    display: flex;
    align-items: center;
    gap: 8px;
}

.eb-stock-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}
.eb-stock-dot--in  { background: #4a7c52; }
.eb-stock-dot--out { background: #a00; }

.eb-stock-label {
    font-size: 13px;
    font-weight: 600;
}
.eb-stock-label--in  { color: #4a7c52; }
.eb-stock-label--out { color: #a00; }

.eb-delivery-label {
    font-size: 12px;
    color: #6b655d;
    padding-left: 16px;
}

/* ==========================================================================
   PRODUKTSEITE — Varianten UI
   ========================================================================== */

/* Design-Token Variablen */
form.variations_form.eb-opts-ready {
  --g-ink:          #141311;
  --g-carbon:       #2a2723;
  --g-pewter:       #6b655d;
  --g-ash:          #9a938a;
  --g-stone:        #c2bbb2;
  --g-bone:         #e5dfd7;
  --g-parchment:    #f2eeea;
  --g-crimson:      #8c1b2f;
  --g-crimson-glow: rgba(140, 27, 47, 0.10);
  --g-amber:        #b8944f;
  --g-moss:         #4a7c52;
  --g-moss-soft:    rgba(74, 124, 82, 0.12);
  --g-rule:         rgba(20, 19, 17, 0.12);
  --g-rule-soft:    rgba(20, 19, 17, 0.06);
  --g-r-sm: 4px;
  --g-r-md: 6px;
  --g-r-lg: 8px;
}

/* Natives Dropdown verstecken */
form.variations_form.eb-opts-ready .variations,
form.variations_form.eb-opts-ready table.variations,
form.variations_form.eb-opts-ready .reset_variations,
form.variations_form.eb-opts-ready .woocommerce-variation.single_variation {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Wrapper */
form.variations_form.eb-opts-ready .eb-ui { margin: 0 0 24px; }
form.variations_form.eb-opts-ready .eb-group { margin-bottom: 24px; }
form.variations_form.eb-opts-ready .eb-divider {
  height: 1px;
  background: var(--g-rule-soft);
  margin: 20px 0;
}

/* Gruppenheader */
form.variations_form.eb-opts-ready .eb-gh {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 10px;
}
form.variations_form.eb-opts-ready .eb-gh-label {
  font-family: 'Inter', sans-serif;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--g-ink);
}
form.variations_form.eb-opts-ready .eb-gh-sub { font-size: 12px; color: var(--g-pewter); }
form.variations_form.eb-opts-ready .eb-gh-sub b { color: var(--g-ink); font-weight: 600; }

/* Größen-Karten */
form.variations_form.eb-opts-ready .eb-size-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
form.variations_form.eb-opts-ready .eb-size-card {
  appearance: none;
  border: 1.5px solid var(--g-rule);
  background: var(--g-parchment);
  border-radius: var(--g-r-sm);
  padding: 14px 12px;
  text-align: left;
  cursor: pointer;
  width: 100%;
  font-family: 'Inter', sans-serif;
  color: var(--g-ink);
  position: relative;
  overflow: hidden;
  transition: border-color 0.15s, background 0.15s, color 0.15s;
}
form.variations_form.eb-opts-ready .eb-size-card:hover:not(.is-disabled) { border-color: var(--g-carbon); }
form.variations_form.eb-opts-ready .eb-size-card.is-selected { border-color: var(--g-ink); background: var(--g-ink); color: var(--g-parchment); }
form.variations_form.eb-opts-ready .eb-size-card.is-disabled { opacity: 0.35; cursor: not-allowed; }
form.variations_form.eb-opts-ready .eb-size-num { display: block; font-size: 20px; font-weight: 700; letter-spacing: -0.015em; line-height: 1; margin-bottom: 5px; }
form.variations_form.eb-opts-ready .eb-size-dim { display: block; font-size: 10.5px; font-weight: 500; letter-spacing: 0.06em; opacity: 0.9; margin-bottom: 2px; font-variant-numeric: tabular-nums; }
form.variations_form.eb-opts-ready .eb-size-cap { display: block; font-size: 11px; opacity: 0.7; }
form.variations_form.eb-opts-ready .eb-size-card.is-selected .eb-size-num,
form.variations_form.eb-opts-ready .eb-size-card.is-selected .eb-size-dim,
form.variations_form.eb-opts-ready .eb-size-card.is-selected .eb-size-cap { color: var(--g-parchment); opacity: 1; }
form.variations_form.eb-opts-ready .eb-size-card.is-disabled .eb-size-num,
form.variations_form.eb-opts-ready .eb-size-card.is-disabled .eb-size-dim,
form.variations_form.eb-opts-ready .eb-size-card.is-disabled .eb-size-cap { color: var(--g-pewter); }

/* Bundle-Karten */
form.variations_form.eb-opts-ready .eb-set-list { display: flex; flex-direction: column; gap: 8px; }
form.variations_form.eb-opts-ready .eb-set-wrap { position: relative; }
form.variations_form.eb-opts-ready .eb-set-pill {
  position: absolute; top: -9px; left: 16px; z-index: 1;
  background: var(--g-crimson); color: white;
  font-family: 'Inter', sans-serif; font-size: 9px; font-weight: 600;
  letter-spacing: 0.14em; text-transform: uppercase;
  padding: 3px 8px; border-radius: var(--g-r-sm);
  pointer-events: none; white-space: nowrap;
}
form.variations_form.eb-opts-ready .eb-set-btn {
  appearance: none; width: 100%; margin: 0 !important;
  display: grid; grid-template-columns: 22px 1fr auto;
  gap: 14px; align-items: center; padding: 16px 18px;
  border: 1.5px solid var(--g-rule); border-radius: var(--g-r-sm);
  background: var(--g-parchment); cursor: pointer; text-align: left;
  font-family: 'Inter', sans-serif; color: var(--g-ink);
  transition: border-color 0.15s, background 0.15s; position: relative;
}
form.variations_form.eb-opts-ready .eb-set-btn:hover:not(.is-disabled) { border-color: var(--g-carbon); }
form.variations_form.eb-opts-ready .eb-set-btn.is-selected { border-color: var(--g-ink); background: var(--g-bone); }
form.variations_form.eb-opts-ready .eb-set-btn.eb-is-featured.is-selected { border-color: var(--g-crimson); background: var(--g-crimson-glow); }
form.variations_form.eb-opts-ready .eb-set-btn.eb-is-featured:not(.is-selected) { border-color: rgba(140, 27, 47, 0.25); }
form.variations_form.eb-opts-ready .eb-set-btn.is-disabled { opacity: 0.35; cursor: not-allowed; }

/* Radio */
form.variations_form.eb-opts-ready .eb-radio {
  width: 18px; height: 18px; border-radius: 50%;
  border: 1.5px solid var(--g-ash); display: inline-flex;
  align-items: center; justify-content: center; flex-shrink: 0; transition: border-color 0.15s;
}
form.variations_form.eb-opts-ready .eb-set-btn.is-selected .eb-radio { border-color: var(--g-ink); }
form.variations_form.eb-opts-ready .eb-set-btn.is-selected .eb-radio::after { content: ''; width: 8px; height: 8px; border-radius: 50%; background: var(--g-ink); }
form.variations_form.eb-opts-ready .eb-set-btn.eb-is-featured.is-selected .eb-radio { border-color: var(--g-crimson); }
form.variations_form.eb-opts-ready .eb-set-btn.eb-is-featured.is-selected .eb-radio::after { background: var(--g-crimson); }

/* Set Info */
form.variations_form.eb-opts-ready .eb-set-info { min-width: 0; }
form.variations_form.eb-opts-ready .eb-set-name { font-size: 15px; font-weight: 600; margin-bottom: 2px; display: block; }
form.variations_form.eb-opts-ready .eb-set-desc { font-size: 12.5px; color: var(--g-pewter); line-height: 1.45; display: block; }

/* Preis */
form.variations_form.eb-opts-ready .eb-price-block { text-align: right; flex-shrink: 0; }
form.variations_form.eb-opts-ready .eb-set-price { font-size: 16px; font-weight: 600; font-variant-numeric: tabular-nums; display: block; white-space: nowrap; }
form.variations_form.eb-opts-ready .eb-set-orig { font-size: 11px; color: var(--g-ash); text-decoration: line-through; display: block; margin-top: 2px; font-variant-numeric: tabular-nums; }
form.variations_form.eb-opts-ready .eb-save { font-size: 10px; font-weight: 600; color: var(--g-moss); background: var(--g-moss-soft); padding: 2px 6px; border-radius: 100px; display: inline-block; margin-top: 3px; }

/* ==============================================
   PRODUKTSEITE — Mengenfeld + Buttons
   ============================================== */

/* Grid Layout */
.woocommerce-variation-add-to-cart {
    display: grid !important;
    grid-template-columns: 130px 1fr !important;
    gap: 10px !important;
    align-items: stretch !important;
    margin-top: 20px !important;
}

.woocommerce-variation-add-to-cart input[type="hidden"] {
    display: none !important;
}

/* Mengenfeld — gemeinsamer Rahmen, clean border */
.woocommerce-variation-add-to-cart .quantity {
    display: flex !important;
    align-items: stretch !important;
    border: 1.5px solid rgba(20,19,17,0.15) !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    background: #f2eeea !important;
    height: 56px !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
}

/* − und + Buttons */
.woocommerce-variation-add-to-cart .quantity .minus,
.woocommerce-variation-add-to-cart .quantity .plus {
    min-width: 40px !important;
    width: 40px !important;
    flex-shrink: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    color: #2a2723 !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
    transition: background 0.15s !important;
}
.woocommerce-variation-add-to-cart .quantity .minus:hover,
.woocommerce-variation-add-to-cart .quantity .plus:hover {
    background: #e5dfd7 !important;
}

/* Input */
.woocommerce-variation-add-to-cart .quantity input.qty {
    flex: 1 !important;
    border: none !important;
    border-left: 1px solid rgba(20,19,17,0.12) !important;
    border-right: 1px solid rgba(20,19,17,0.12) !important;
    background: transparent !important;
    text-align: center !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #141311 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    box-shadow: none !important;
    -moz-appearance: textfield !important;
    appearance: textfield !important;
}
.woocommerce-variation-add-to-cart .quantity input.qty::-webkit-outer-spin-button,
.woocommerce-variation-add-to-cart .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
}

/* ── In den Warenkorb — INK ── */
.woocommerce-variation-add-to-cart .single_add_to_cart_button {
    background-color: #141311 !important;
    background: #141311 !important;
    border: none !important;
    border-radius: 4px !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    height: 56px !important;
    cursor: pointer !important;
    transition: background 0.25s !important;
}
.woocommerce-variation-add-to-cart .single_add_to_cart_button:hover {
    background-color: #2a2723 !important;
    background: #2a2723 !important;
    color: #ffffff !important;
}

/* ── Jetzt direkt zur Kasse — CRIMSON ── */
.woocommerce a.button.wc-buy-now-btn,
.woocommerce-variation-add-to-cart a.wc-buy-now-btn {
    grid-column: 1 / -1 !important;
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    background: #8c1b2f !important;
    background-color: #8c1b2f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    padding: 16px !important;
    text-align: center !important;
    margin: 0 !important;
    transition: background 0.25s !important;
}
.woocommerce a.button.wc-buy-now-btn:hover,
.woocommerce-variation-add-to-cart a.wc-buy-now-btn:hover {
    background: #721624 !important;
    background-color: #721624 !important;
    color: #ffffff !important;
    transform: none !important;
}

/* Lager+Lieferzeit Box — volle Breite */
.woocommerce-variation-add-to-cart .eb-stock-delivery-box {
    grid-column: 1 / -1 !important;
}

/* Fix: Buy Now Button vertikal zentriert */
.woocommerce a.button.wc-buy-now-btn,
.woocommerce-variation-add-to-cart a.wc-buy-now-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    min-height: 56px !important;
    padding: 0 20px !important;
}

/* Fix: Mengenfeld WooCommerce Override */
.woocommerce-variation-add-to-cart .quantity input.qty {
    width: auto !important;
    flex: 1 !important;
    min-width: 0 !important;
    height: 56px !important;
	border: none !important;
}

/* Fix: Mengenfeld — + Button und Input sichtbar */
.woocommerce-variation-add-to-cart .quantity .plus {
    display: flex !important;
    min-width: 40px !important;
    width: 40px !important;
}

.woocommerce-variation-add-to-cart .quantity input.qty {
    display: block !important;
    flex: 1 !important;
    min-width: 0 !important;
    height: 100% !important;
}

/* ==========================================================================
   PRODUKTSEITE — Gallery
   ========================================================================== */

/* Thumbnails scrollbar */
.flex-control-thumbs {
    display: flex !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-behavior: smooth !important;
    gap: 8px !important;
    padding: 8px 0 !important;
    -ms-overflow-style: none !important;
    scrollbar-width: none !important;
}
.flex-control-thumbs::-webkit-scrollbar { display: none !important; }
.flex-control-thumbs li { flex: 0 0 calc(25% - 6px) !important; min-width: calc(25% - 6px) !important; margin: 0 !important; list-style: none !important; }
.flex-control-thumbs li img { width: 100% !important; height: auto !important; aspect-ratio: 1 / 1 !important; object-fit: cover !important; border-radius: 4px !important; border: 2px solid transparent !important; cursor: pointer !important; transition: border-color 0.2s !important; }
.flex-control-thumbs li img.flex-active { border-color: #141311 !important; }

/* Viewport — Pfeile relativ positionieren */
.flex-viewport {
    position: relative !important;
}

/* Pfeile — eine einzige saubere Regel */
button.eb-gallery-prev,
button.eb-gallery-next {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 100 !important;
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, 0.75) !important;
    border: none !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    padding: 0 !important;
    transition: background 0.2s !important;
}
button.eb-gallery-prev { left: 8px !important; }
button.eb-gallery-next { right: 8px !important; }
button.eb-gallery-prev:hover,
button.eb-gallery-next:hover { background: rgba(255, 255, 255, 0.95) !important; }

button.eb-gallery-prev svg,
button.eb-gallery-next svg {
    width: 18px !important;
    height: 18px !important;
    stroke: #141311 !important;
    stroke-width: 2.5 !important;
    fill: none !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    display: block !important;
    pointer-events: none !important;
}

button.eb-gallery-prev.eb-hidden,
button.eb-gallery-next.eb-hidden { display: none !important; }

/* Pfeile nur auf Desktop */
@media (max-width: 1024px) {
    button.eb-gallery-prev,
    button.eb-gallery-next { display: none !important; }
}

.woocommerce-variation-add-to-cart form.cart {
    display: contents !important;
}

/* Quantity explizit in Spalte 1 */
.woocommerce-variation-add-to-cart .quantity {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

/* Button explizit in Spalte 2 */
.woocommerce-variation-add-to-cart form.cart .single_add_to_cart_button {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

/* Buy-Now volle Breite, zweite Zeile */
.woocommerce-variation-add-to-cart a.wc-buy-now-btn {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
}

/* Stock-Box volle Breite, dritte Zeile */
.woocommerce-variation-add-to-cart .eb-stock-delivery-box {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
}
