/* ==========================================================================
   FIPTEC CRO ОПТИМИЗИРАНА ФУНИЯ (CART -> CHECKOUT -> THANK YOU)
   ========================================================================== */

/* --- 1. ГЛОБАЛЕН GRID ЛЕЙАУТ --- */
.fiptec-funnel-container {
    max-width: 1200px;
    margin: 2rem auto;
    padding: 0 1rem;
    font-family: var(--font-primary);
}

.fiptec-funnel-form {
    display: block !important;
    width: 100% !important;
}

.fiptec-funnel-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important; 
    align-items: start !important;
}

/* Flexbox/Grid Blowout Fix */
.fiptec-funnel-left, 
.fiptec-funnel-right {
    min-width: 0 !important; 
    width: 100% !important;
}

@media (min-width: 992px) {
    .fiptec-funnel-grid { grid-template-columns: repeat(12, 1fr) !important; gap: 2rem !important; }
    
    /* Стандартно: 7 колони вляво, 5 вдясно (за Каса и Thank You) */
    .fiptec-funnel-left { grid-column: span 7 !important; display: flex !important; flex-direction: column !important; gap: 1.5rem !important; }
    .fiptec-funnel-right { grid-column: span 5 !important; position: relative !important; }
    
    /* Модификатор: Количката има нужда от малко повече място за продуктите (8/4) */
    .fiptec-funnel-container.is-cart .fiptec-funnel-left { grid-column: span 8 !important; }
    .fiptec-funnel-container.is-cart .fiptec-funnel-right { grid-column: span 4 !important; }
}

/* --- 2. СТИКИ ДЯСНА КОЛОНА И БРОНИРАНЕ НА ФОРМИ --- */
.fiptec-sticky-sidebar {
    position: sticky !important;
    top: 6rem !important;
    z-index: var(--z-base, 1) !important;
}

/* Брониране на Grid-а срещу нативните WooCommerce/Flatsome Floats от <form> елементите */
.fiptec-funnel-form::before, .fiptec-funnel-form::after { display: none !important; }
.fiptec-funnel-form #customer_details, .fiptec-funnel-form .col-1, .fiptec-funnel-form .col-2,
.fiptec-funnel-left .woocommerce-cart-form, .fiptec-funnel-right .cart-collaterals { 
    float: none !important; width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; 
}

/* --- 3. ОБЩИ СТИЛОВЕ: ТОТАЛИ (СУМИ) И БАДЖОВЕ ЗА ДОВЕРИЕ --- */
.fiptec-totals-row {
    display: flex; justify-content: space-between; align-items: flex-start;
    margin-bottom: 0.75rem; color: var(--fiptec-slate-500); font-weight: 500; font-size: 0.875rem;
}
.fiptec-totals-row .fiptec-totals-value { color: var(--fiptec-slate-800); font-weight: 700; }

.fiptec-totals-final {
    background-color: var(--fiptec-slate-50); padding: 1.5rem; border-radius: var(--fiptec-radius-global);
    border: 1px solid var(--fiptec-slate-100); margin-bottom: 2rem; align-items: center; 
}
.fiptec-totals-final-price { color: var(--fiptec-red); font-size: 1.875rem; font-weight: 900; line-height: 1; }
.fiptec-tax-info { margin-top: 8px; display: block; }

.fiptec-trust-box-funnel {
    background-color: var(--fiptec-slate-50); border-radius: var(--fiptec-radius-md); padding: 0.75rem;
    display: flex; flex-wrap: wrap; justify-content: center; gap: 0.5rem; margin-bottom: 1.5rem;margin-top: 1.5rem; border: 1px solid var(--fiptec-slate-100);
}
.fiptec-trust-box-funnel .fiptec-trust-badge { background: var(--fiptec-white); color: var(--fiptec-slate-500); border: 1px solid var(--fiptec-slate-100); }

/* --- 4. СПЕЦИФИКИ: КОЛИЧКА --- */


.fiptec-main-cart-item { align-items: flex-start !important; }
.fiptec-main-cart-item .aopc-cart-item-image { width: 80px !important; height: 80px !important; }
.fiptec-main-cart-item .aopc-current-price, .fiptec-main-cart-item .aopc-current-price .woocommerce-Price-amount, .fiptec-main-cart-item .aopc-current-price .woocommerce-Price-currencySymbol { font-size: 1.1rem !important; }
@media (min-width: 640px) { .fiptec-main-cart-item .aopc-cart-item-image { width: 110px !important; height: 110px !important; } }

.aopc-cart-item-actions .remove:hover { color: var(--fiptec-red) !important; }
.aopc-cart-item-info a:hover { color: var(--fiptec-blue) !important; }
.aopc-cart-variation-data dl.variation { display: flex; flex-wrap: wrap; gap: 2px 6px; font-size: 11px; margin: 4px 0 0 0; color: var(--fiptec-slate-500); }
.aopc-cart-variation-data dl.variation dt { font-weight: 700; color: var(--fiptec-slate-700); }
.aopc-cart-variation-data dl.variation p { margin: 0; }

.fiptec-cart-qty { margin: 0; flex-shrink: 0; }
.fiptec-cart-qty .quantity { display: flex !important; align-items: center !important; border: 1px solid var(--fiptec-slate-200) !important; border-radius: 0.5rem !important; overflow: hidden !important; background-color: var(--fiptec-slate-50) !important; height: 2rem !important; width: 5.5rem !important; margin: 0 !important; }
.fiptec-cart-qty .quantity .minus, .fiptec-cart-qty .quantity .plus { width: 1.75rem !important; height: 100% !important; display: flex !important; align-items: center !important; justify-content: center !important; color: var(--fiptec-slate-500) !important; background: transparent !important; border: none !important; font-size: 1rem !important; line-height: 1 !important; transition: all 0.2s ease !important; }
.fiptec-cart-qty .quantity input.qty { width: 2rem !important; height: 100% !important; text-align: center !important; font-weight: 800 !important; color: var(--fiptec-slate-800) !important; border: none !important; box-shadow: none !important; padding: 0 !important; font-size: 0.875rem !important; background: transparent !important; }
@media (min-width: 640px) { .fiptec-cart-qty .quantity { height: 2.5rem !important; width: 6rem !important; } .fiptec-cart-qty .quantity .minus, .fiptec-cart-qty .quantity .plus { width: 2rem !important; font-size: 1.25rem !important; } }

.fiptec-custom-cross-sells { margin-top: 2rem; }
.fiptec-cross-sells-title { font-size: 1rem; font-weight: 900; color: var(--fiptec-slate-900); margin-bottom: 1rem; text-align: left; }
.fiptec-cross-sells-slider { display: flex; overflow-x: auto; gap: 1rem; scroll-snap-type: x mandatory; padding-bottom: 1rem; -webkit-overflow-scrolling: touch; }
.fiptec-cross-sells-slider::-webkit-scrollbar { height: 4px; }
.fiptec-cross-sells-slider::-webkit-scrollbar-track { background: var(--fiptec-slate-100); border-radius: 10px; }
.fiptec-cross-sells-slider::-webkit-scrollbar-thumb { background: var(--fiptec-slate-300); border-radius: 10px; }
.fiptec-cs-card { flex: 0 0 140px; scroll-snap-align: start; background: var(--fiptec-white); border-radius: 1rem; border: 1px solid var(--fiptec-slate-100); box-shadow: var(--fiptec-shadow-sm); display: flex; flex-direction: column; overflow: hidden; transition: all 0.3s ease; }
.fiptec-cs-img { display: block; aspect-ratio: 1/1; background: var(--fiptec-slate-50); overflow: hidden; padding: 0.5rem; }
.fiptec-cs-img img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; transition: transform 0.3s ease; }
.fiptec-cs-info { padding: 0.75rem; display: flex; flex-direction: column; flex: 1; text-align: center; }
.fiptec-cs-info p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.fiptec-cs-info p a { color: var(--fiptec-slate-800); text-decoration: none; }

/* ФИКС ЗА ЦЕНИТЕ: 
   Премахнахме деструктивните инлайн стилове за .fiptec-cs-price del и ins. 
   Вече всичко се управлява напълно и елегантно от components/prices.css */
.fiptec-cs-price { margin-bottom: 0.75rem; width: 100%; }

.fiptec-cs-btn { margin-top: auto; display: flex; align-items: center; justify-content: center; gap: 4px; background: var(--fiptec-white); border: 2px solid var(--fiptec-orange); color: var(--fiptec-orange); font-weight: 800; text-transform: uppercase; font-size: 0.65rem; padding: 0.4rem; border-radius: 0.5rem; transition: all 0.3s ease; text-decoration: none; }
.fiptec-cs-btn:hover { background: var(--fiptec-orange); color: var(--fiptec-white); }
div.cross-sells { display: none !important; }
div.fiptec-custom-cross-sells, div.fiptec-cart-cross-sells { display: block !important; }
@media (min-width: 640px) { .fiptec-cs-card { flex: 0 0 200px; } .fiptec-cs-info p { font-size: 0.875rem; } .fiptec-cs-btn { font-size: 0.75rem; padding: 0.5rem; } }

/* --- 5. СПЕЦИФИКИ: КАСА (CHECKOUT) --- */
.woocommerce-form-coupon-toggle, form.checkout_coupon { display: none !important; }

/* ФИКС: Принудително стилизиране на Trust Баджовете в Касата, за да изглеждат 1:1 с тези в Количката */
.fiptec-checkout-trust-badges {
    background-color: var(--fiptec-slate-50) !important; 
    border-radius: var(--fiptec-radius-md) !important; 
    padding: 0.75rem !important;
    display: flex !important; 
    flex-wrap: wrap !important; 
    justify-content: center !important; 
    gap: 0.5rem !important; 
    margin-top: 1.5rem !important; 
    border: 1px solid var(--fiptec-slate-100) !important;
}

.fiptec-checkout-trust-badges > div {
    background: var(--fiptec-white) !important; 
    color: var(--fiptec-slate-500) !important; 
    border: 1px solid var(--fiptec-slate-100) !important;
    padding: 4px 10px !important; 
    border-radius: 4px !important; 
    font-size: 12px !important; 
    font-weight: 800 !important; 
    text-transform: uppercase !important; 
    letter-spacing: 0.05em !important;
    display: inline-flex !important; 
    align-items: center !important; 
    gap: 4px !important; 
    box-shadow: var(--fiptec-shadow-sm) !important;
}

.fiptec-checkout-trust-badges > div > i { 
    color: var(--fiptec-blue) !important; 
    margin: 0 !important; 
}


.woocommerce-notices-wrapper:empty { display: none !important; }
.fiptec-totals-row.shipping-row { display: none !important; }
body.fiptec-shipping-ready .fiptec-totals-row.shipping-row:has(input[type="radio"]:checked) { display: flex !important; }
.fiptec-totals-row.shipping-row th { display: none !important; }
.fiptec-totals-row.shipping-row td { display: block !important; padding: 0 !important; border: none !important; text-align: right; }
.fiptec-totals-row.shipping-row table, .fiptec-totals-row.shipping-row tbody, .fiptec-totals-row.shipping-row tr { display: block !important; width: 100% !important; border: none !important; padding: 0 !important; margin: 0 !important; background: transparent !important; }
ul#shipping_method { margin: 0 !important; padding: 0 !important; list-style: none !important; }
ul#shipping_method li { display: none !important; margin: 0 !important; padding: 0 !important; }
ul#shipping_method li:has(input[type="radio"]:checked) { display: block !important; }
ul#shipping_method li input { display: none !important; }
ul#shipping_method li label { color: var(--fiptec-green-dark) !important; font-weight: var(--fw-extrabold) !important; font-size: 0.875rem !important; cursor: default !important; pointer-events: none !important; background: var(--fiptec-green-light); padding: 0.25rem 0.5rem; border-radius: 0.25rem; display: inline-block; margin: 0 !important; }

#payment.woocommerce-checkout-payment { background: transparent !important; border-radius: 0 !important; padding: 0 !important; }
.woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions, .woocommerce-terms-and-conditions-wrapper .gap-element, .woocommerce-terms-and-conditions-wrapper h2, .woocommerce-terms-and-conditions-wrapper ul, .woocommerce-privacy-policy-text { display: none !important; height: 0 !important; opacity: 0 !important; visibility: hidden !important; position: absolute !important; pointer-events: none !important; margin: 0 !important; padding: 0 !important; }
#payment .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox { display: flex !important; align-items: flex-start !important; gap: 0.75rem !important; cursor: pointer !important; margin-bottom: 1.5rem !important; position: relative !important; visibility: visible !important; opacity: 1 !important; }
#payment ul.payment_methods { list-style: none !important; padding: 0 !important; margin: 0 0 1.5rem 0 !important; border-bottom: none !important; display: flex !important; flex-direction: column !important; gap: 0.75rem !important; }
#payment ul.payment_methods li.wc_payment_method { margin: 0 !important; padding: 0 !important; background: transparent !important; border: none !important; }
#payment ul.payment_methods li.wc_payment_method > label { display: flex !important; align-items: center !important; gap: 1rem !important; padding: 1rem !important; border: 2px solid var(--fiptec-slate-100) !important; border-radius: var(--fiptec-radius-md) !important; cursor: pointer !important; background: var(--fiptec-white) !important; transition: all 0.2s !important; margin: 0 !important; font-size: 0.875rem !important; font-weight: bold !important; color: var(--fiptec-slate-800) !important; }
#payment ul.payment_methods li.wc_payment_method > label:hover { border-color: var(--fiptec-blue-light) !important; }
#payment ul.payment_methods li.wc_payment_method input[type="radio"] { display: none !important; }
#payment ul.payment_methods li.wc_payment_method > label::before { content: ''; display: inline-block; width: 1.25rem; height: 1.25rem; border-radius: 50%; border: 2px solid var(--fiptec-slate-300); background: #fff; flex-shrink: 0; transition: all 0.2s; }
#payment ul.payment_methods li.wc_payment_method input[type="radio"]:checked + label { border-color: var(--fiptec-blue) !important; background: var(--fiptec-blue-vlight) !important; }
#payment ul.payment_methods li.wc_payment_method input[type="radio"]:checked + label::before { border-color: var(--fiptec-blue) !important; border-width: 6px !important; }
#payment .payment_box { margin-top: 0.5rem !important; padding: 1rem !important; background: var(--fiptec-slate-50) !important; border-radius: 0.5rem !important; font-size: 0.75rem !important; color: var(--fiptec-slate-500) !important; border-left: 3px solid var(--fiptec-blue) !important; }
#payment .payment_box p { margin: 0 !important; }
.woocommerce-form__label-for-checkbox input[type="checkbox"] { margin-top: 0.25rem !important; width: 1.25rem !important; height: 1.25rem !important; border-radius: 0.25rem !important; accent-color: var(--fiptec-blue) !important; cursor: pointer !important; }
.woocommerce-terms-and-conditions-checkbox-text { font-size: 0.75rem !important; color: var(--fiptec-slate-500) !important; line-height: 1.25 !important; font-weight: normal !important; }
.woocommerce-terms-and-conditions-checkbox-text a { color: var(--fiptec-blue) !important; text-decoration: underline !important; }

/* --- 6. СПЕЦИФИКИ: УСПЕШНА ПОРЪЧКА (THANK YOU) --- */
.fiptec-hidden-tracking .woocommerce-order-details,
.fiptec-hidden-tracking .woocommerce-customer-details,
.fiptec-hidden-tracking .woocommerce-thankyou-order-received,
.fiptec-hidden-tracking .woocommerce-thankyou-order-details,
.woocommerce-order > .large-5, .woocommerce-order > .large-7,
.woocommerce-order-details, .woocommerce-customer-details {
    display: none !important; opacity: 0 !important; height: 0 !important; width: 0 !important; position: absolute !important; overflow: hidden !important; pointer-events: none !important;
}

/* --- 7. МОБИЛНО APP-LIKE ПОВЕДЕНИЕ (Лепящ се бутон долу) --- */
@media (max-width: 768px) {
    .fiptec-funnel-container { padding: 0 !important; margin-top: 1rem !important; padding-bottom: 100px !important; }
    .fiptec-sticky-sidebar { position: static !important; }

    .fiptec-mobile-bottom-btn {
        position: fixed !important; bottom: 0 !important; left: 0 !important; width: 100% !important;
        background: #ffffff !important; padding: 15px 20px 25px 20px !important; 
        box-shadow: 0 -10px 20px rgba(0,0,0,0.06) !important; border-top: 1px solid var(--fiptec-slate-100) !important;
        z-index: var(--z-sticky) !important; margin: 0 !important;
    }
}