/* =======================================================
   WooCommerce Blocks — Dark Theme (MonkeyFactory)
   ======================================================= */

/* 1. Global Typography & Colors */
.wc-block-cart,
.wc-block-checkout {
    color: var(--mf-color-base, #ffffff);
    font-family: inherit;
}

/* Headings */
.wc-block-cart__title, 
.wc-block-checkout__title,
.wc-block-components-title {
    color: var(--mf-color-base, #ffffff) !important;
    font-weight: 700 !important;
}

/* 2. Panels / Wrappers (Order Summary, Totals, Checkout Steps) */
.wc-block-cart__totals,
.wc-block-checkout__order-summary,
.wc-block-components-checkout-step {
    color: var(--mf-color-base, #ffffff) !important;
}

/* Dividers & Borders */
.wc-block-components-totals-item,
.wc-block-components-checkout-step__container,
.wc-block-components-order-summary-item {
    border-color: #333333 !important;
}

/* 3. Text, Meta & Prices */
.wc-block-components-product-name,
.wc-block-components-totals-item__label {
    color: var(--mf-color-base, #ffffff) !important;
    font-weight: 600 !important;
}

/* Disable product link clicks */
.wc-block-components-product-name,
.wc-block-components-mini-cart-item__name {
    pointer-events: none !important;
    cursor: default !important;
    text-decoration: none !important;
}

.wc-block-components-order-meta,
.wc-block-components-product-details__value {
    color: var(--mf-color-gray-800, #bbbbbb) !important;
}

.wc-block-formatted-money-amount {
    color: var(--mf-color-brand, #FF3C00) !important;
    font-weight: 700 !important;
}

/* 4. INPUTS (Matching ACF Forms) */
.wc-block-components-text-input input,
.wc-block-components-combobox select,
.wc-block-components-textarea textarea,
.wc-block-components-address-card {
    background-color: var(--mf-color-surface-raised, #222222) !important;
    color: var(--mf-color-base, #ffffff) !important;
    border: 1px solid #333333 !important;
    border-radius: var(--mf-r-sm, 6px) !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
    height: auto !important;
}

.wc-block-components-text-input input,
.wc-block-components-combobox select,
.wc-block-components-textarea textarea {
    padding: 24px 10px 10px 10px!important;
}

.wc-block-components-radio-control-accordion-option {
    padding: 14px !important;
    border-radius: var(--mf-r-sm, 6px) !important;
}

.wc-block-components-text-input.is-active label {
    top: 4px !important;
}

.wc-block-components-text-input input:focus,
.wc-block-components-combobox select:focus,
.wc-block-components-textarea textarea:focus {
    border-color: var(--mf-color-brand, #FF3C00) !important;
    box-shadow: 0 0 0 1px var(--mf-color-brand, #FF3C00) !important;
    outline: none !important;
}

.wc-block-components-text-input label {
    color: var(--mf-color-gray-800, #bbbbbb) !important;
}

/* 5. Payment Methods Box */
.wc-block-components-radio-control__option {
    background-color: var(--mf-color-surface-raised, #222222) !important;
    border: 1px solid #333333 !important;
    border-radius: var(--mf-r-sm, 6px) !important;
    margin-bottom: 8px !important;
    padding: 12px 16px 12px 44px !important;
    transition: border-color 0.2s !important;
}

.wc-block-components-radio-control__option:hover {
    border-color: #555555 !important;
}

/* Active Payment Method */
.wc-block-components-radio-control__option[data-selected="true"] {
    border-color: var(--mf-color-brand, #FF3C00) !important;
    background-color: #1a1a1a !important;
}

/* 6. BUTTONS */
.wc-block-components-button:not(.is-link) {
    background-color: var(--mf-color-brand, #FF3C00) !important;
    color: #ffffff !important;
    border-radius: var(--mf-r-sm, 6px) !important;
    font-weight: 700 !important;
    font-family: inherit !important;
    border: none !important;
    padding: 12px !important;
    font-size: 1rem;
    transition: opacity 0.2s, transform 0.1s !important;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    min-height: auto;
}

.wc-block-components-button:not(.is-link):hover {
    opacity: 0.9 !important;
    background-color: var(--mf-color-brand, #FF3C00) !important; /* Fix for WC hover overrides */
}

.wc-block-components-button:not(.is-link):active {
    transform: translateY(1px) !important;
}

/* Secondary Button (Like "Return to shop") */
.wc-block-components-button.is-link {
    color: var(--mf-color-brand, #FF3C00) !important;
}

/* 7. NOTICES / ALERTS inside Checkout */
.wc-block-components-notice-banner {
    background-color: var(--mf-color-surface-raised, #222222) !important;
    border: 1px solid #333333 !important;
    border-left: 4px solid var(--mf-color-brand, #FF3C00) !important;
    color: var(--mf-color-base, #ffffff) !important;
}

.wc-block-components-notice-banner > svg {
    fill: var(--mf-color-brand, #FF3C00) !important;
}

.wc-block-components-product-metadata 
.wc-block-components-product-metadata__description > p, 
.wc-block-components-product-metadata 
.wc-block-components-product-metadata__variation-data {
    font-size: var(--mf-text-base);
}

.wc-block-components-product-details.wc-block-components-product-details {
    font-size: var(--mf-text-md);
}

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:is(:hover, :focus) {
    color: var(--mf-color-brand);
}

h2.wc-block-mini-cart__title span:first-child {
    font-size: 1.5rem;
}

h2.wc-block-mini-cart__title .wp-block-woocommerce-mini-cart-title-items-counter-block {
    display: none;
}

.wc-block-cart__empty-cart__title.with-empty-cart-icon:before {
    background-color: var(--mf-color-brand) !important;
}

.wc-block-components-order-summary .wc-block-components-order-summary-item__quantity {
    display: none !important;
}

.woocommerce-checkout.woocommerce-page a {
    color: var(--white);
    text-decoration: underline;
    transition: all 0.2s ease;
}
.woocommerce-checkout.woocommerce-page a:hover {
    color: var(--accent);
    text-decoration: none;
}

@media (max-width: 767px) {
    .wc-block-components-sidebar-layout {
        margin: 0 auto !important;
    }

    .wc-block-components-order-summary .wc-block-components-order-summary-item__description {
        padding-left: 0 !important;
    }

    .wc-block-components-order-summary .wc-block-components-order-summary-item {
        column-gap: 12px;
    }

    .wc-block-cart__sidebar {
        margin-bottom: 0 !important;
    }

    
}

@media (min-width: 768px) and (max-width: 1024px) {
    .wc-block-components-order-summary .wc-block-components-order-summary-item {
        flex-wrap: wrap;
    }

    .wc-block-components-order-summary .wc-block-components-order-summary-item__description {
        padding-left: 0 !important;
    }

    .wc-block-cart__submit {
        margin: 0 !important;
    }
}



/* =======================================================
   Hide quantity selectors in cart and mini-cart
   ======================================================= */
.wc-block-cart-item__wrap:has(.wc-block-components-product-name[href*="trampolin-buchung"]) .wc-block-components-quantity-selector {
    display: none !important;
}

/* Hide checkout button on cart and checkout pages */
.woocommerce-cart .mf-booking-bar--btn,
.woocommerce-checkout .mf-booking-bar--btn {
    display: none !important;
}

.mt-toolbar__nav-btn--disabled {
    pointer-events: none;
    opacity: 0.3;
    cursor: default;
}

/* =======================================================
   Hide quantity selectors in cart and mini-cart
   ======================================================= */
.wc-block-components-quantity-selector,
.wc-block-components-mini-cart-item__quantity {
    display: none !important;
}

/* Disable product link in cart/checkout */
.wc-block-components-product-name {
    pointer-events: none !important;
    cursor: default !important;
    text-decoration: none !important;
    color: inherit !important;
}

.wc-block-components-product-name {
    font-size: var(--mf-text-md) !important;
}