/* =======================================================
   GLOBAL: WOOCOMMERCE & FLATSOME OVERRIDES
======================================================= */
.add-to-cart-container .stock { display: none !important; }
form.cart .quantity, form.cart .ux-quantity { display: none !important; }
table.woocommerce-product-attributes.shop_attributes { display: none !important; }
.panel.entry-content:has(> table.woocommerce-product-attributes) { display: none !important; margin: 0 !important; padding: 0 !important; }

.add-to-cart-container { width: 100% !important; max-width: 100% !important; flex: 1 1 100% !important; display: block !important; margin: 0 !important; padding: 0 !important; }
form.cart { width: 100% !important; display: flex !important; flex-direction: column !important; }

.woocommerce-billing-fields { border-top: 0px !important; padding-top: 0px !important; }
.product-page-sections .product-section .row > .large-2.col { display: none !important; }
.product-page-sections .product-section .row > .large-10.col { width: 100% !important; max-width: 100% !important; flex-basis: 100% !important; }
.product-page-sections .panel.entry-content { padding-left: 0 !important; padding-right: 0 !important; }

/* =======================================================
   SHARED: CART HEADER
======================================================= */
.cart-header { display: flex !important; flex-direction: row !important; justify-content: space-between !important; align-items: center !important; flex-wrap: nowrap !important; background: var(--fiptec-white) !important; padding: 15px 25px !important; border-radius: var(--fiptec-radius-xl) !important; border: 1px solid var(--fiptec-slate-100) !important; box-shadow: var(--fiptec-shadow-sm) !important; margin-bottom: 30px !important; gap: 20px !important; max-width: 1200px; margin-left: auto; margin-right: auto; }
.cart-header .logo { margin: 0 !important; padding: 0 !important; width: auto !important; flex-shrink: 0 !important; }
.cart-header .logo img.header-logo-dark { display: none !important; }
.cart-header .logo img.header-logo { max-height: 35px !important; width: auto !important; display: block !important; }
.checkout-breadcrumbs { display: flex !important; align-items: center !important; justify-content: flex-end !important; margin: 0 !important; padding: 0 !important; width: auto !important; flex: 1 !important; text-transform: none !important; font-family: 'Montserrat', sans-serif !important; letter-spacing: 0 !important; flex-wrap: nowrap !important; }
.checkout-breadcrumbs .icon-lock { display: none !important; }
.checkout-breadcrumbs a { display: inline-flex !important; align-items: center !important; gap: 8px !important; font-size: 14px !important; font-weight: 700 !important; color: var(--fiptec-slate-400) !important; text-decoration: none !important; padding: 6px 12px !important; border-radius: 10px !important; transition: all 0.3s ease !important; white-space: nowrap !important; }
.checkout-breadcrumbs .breadcrumb-step { display: flex !important; align-items: center !important; justify-content: center !important; width: 24px !important; height: 24px !important; border-radius: 50% !important; background-color: var(--fiptec-slate-100) !important; color: var(--fiptec-slate-500) !important; font-size: 12px !important; font-weight: 800 !important; margin: 0 !important; }
.checkout-breadcrumbs a.current { color: var(--fiptec-blue) !important; background-color: var(--fiptec-blue-vlight) !important; border: 1px solid var(--fiptec-blue-light) !important; }
.checkout-breadcrumbs a.current .breadcrumb-step { background-color: var(--fiptec-blue) !important; color: var(--fiptec-white) !important; }
.checkout-breadcrumbs .divider { margin: 0 8px !important; color: var(--fiptec-slate-300) !important; font-size: 14px !important; opacity: 1 !important; }
.checkout-breadcrumbs a[href]:not(.current) { color: var(--fiptec-slate-600) !important; }
.checkout-breadcrumbs a[href]:not(.current) .breadcrumb-step { background-color: var(--fiptec-slate-200) !important; color: var(--fiptec-slate-700) !important; }

/* НОВО: Оптимизиран Хедър за Мобилни устройства */
@media (max-width: 768px) { 
    .cart-header { 
        flex-direction: column !important; 
        justify-content: center !important; 
        padding: 10px 5px !important; 
        flex-wrap: wrap !important; 
        gap: 2px !important; /* Премахваме разстоянието между логото и стъпките */
    } 
    .checkout-breadcrumbs { 
        justify-content: center !important; 
        flex-wrap: wrap !important; 
        width: 100% !important; 
    }
    .checkout-breadcrumbs a {
        font-size: 8.5px !important; /* ~40% по-малко от 14px */
        padding: 4px 6px !important; /* Намален padding */
        gap: 4px !important;
    }
    .checkout-breadcrumbs .breadcrumb-step {
        width: 16px !important; /* По-малки кръгчета */
        height: 16px !important;
        font-size: 9px !important;
    }
    .checkout-breadcrumbs .divider {
        margin: 0 4px !important;
        font-size: 10px !important;
    }
}

/* =======================================================
   SHARED: EXPRESS DELIVERY BOX
======================================================= */
.cart-sidebar-content .aopc-delivery-info-shortcode-container, .cart-sidebar-content .aopc-ajax-placeholder-block, .aopc-delivery-info-shortcode-container { width: 100% !important; display: block !important; }
.fiptec-express-delivery-box { background: #eff6ff !important; border: 1px solid #dbeafe !important; border-radius: 0.75rem !important; padding: 1rem !important; display: flex !important; align-items: center !important; flex-wrap: nowrap !important; gap: 1rem !important; font-family: 'Montserrat', sans-serif !important; text-align: left !important; margin: 10px 0 !important; width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; }
.fiptec-express-delivery-box * { box-sizing: border-box !important; }
.fiptec-express-delivery-box .icon-circle { width: 3rem !important; height: 3rem !important; background: #ffffff !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; color: #2563eb !important; flex-shrink: 0 !important; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important; font-size: 1.25rem !important; margin: 0 !important; padding: 0 !important; }
.fiptec-express-delivery-box .info-content { display: flex !important; flex-direction: column !important; justify-content: center !important; gap: 0 !important; margin: 0 !important; padding: 0 !important; width: 100% !important; }
.fiptec-express-delivery-box .title { font-size: 0.875rem !important; font-weight: bold !important; color: #1e293b !important; margin: 0 0 0.2rem 0 !important; line-height: 1.2 !important; display: block !important; text-transform: none !important; letter-spacing: normal !important; }
.fiptec-express-delivery-box .desc { font-size: 0.75rem !important; color: #475569 !important; font-weight: 500 !important; line-height: 1.4 !important; margin: 0 !important; padding: 0 !important; display: block !important; text-transform: none !important; letter-spacing: normal !important; }
.fiptec-express-delivery-box .desc strong, .fiptec-express-delivery-box .desc span { display: inline !important; font-size: inherit !important; margin: 0 !important; padding: 0 !important; line-height: inherit !important; letter-spacing: normal !important; }
.fiptec-express-delivery-box .aopc-highlight { color: #059669 !important; font-weight: bold !important; }
.fiptec-express-delivery-box .aopc-summary-prefix { color: #475569 !important; font-weight: normal !important; }

/* =======================================================
   SHARED: MINI CART (Off-Canvas)
======================================================= */
.off-canvas-cart { background-color: var(--fiptec-slate-50) !important; z-index: var(--z-modal) !important; }
.cart-popup-inner { padding: 20px !important; }
.cart-popup-title span { font-weight: 900 !important; color: var(--fiptec-slate-900) !important; font-size: 20px !important; letter-spacing: 0.5px !important; }
.cart-popup-title .is-divider { background-color: var(--fiptec-slate-200) !important; height: 2px !important; width: 50px !important; margin: 10px auto 25px !important; }
.woocommerce-mini-cart-item { position: relative !important; background-color: var(--fiptec-white) !important; border-radius: 16px !important; padding: 16px !important; margin-bottom: 16px !important; border: 1px solid var(--fiptec-slate-100) !important; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important; display: flex !important; flex-wrap: wrap !important; align-items: flex-start !important; overflow: visible !important; }
.woocommerce-mini-cart-item > a:not(.remove) { display: flex !important; align-items: flex-start !important; gap: 16px !important; width: 100% !important; text-decoration: none !important; color: var(--fiptec-slate-800) !important; font-weight: 700 !important; font-size: 13px !important; line-height: 1.3 !important; }
.woocommerce-mini-cart-item > a:not(.remove) img { width: 64px !important; height: 64px !important; min-width: 64px !important; border-radius: 12px !important; object-fit: cover !important; border: 1px solid var(--fiptec-slate-100) !important; background-color: var(--fiptec-slate-50) !important; mix-blend-mode: multiply !important; margin: 0 !important; float: none !important; position: static !important; }
.woocommerce-mini-cart-item .remove { position: absolute !important; top: -8px !important; left: -8px !important; width: 24px !important; height: 24px !important; background-color: var(--fiptec-white) !important; border: 1px solid var(--fiptec-red-light-border) !important; color: var(--fiptec-red) !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 16px !important; font-weight: bold !important; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important; z-index: var(--z-elevated) !important; text-decoration: none !important; line-height: 1 !important; }
.woocommerce-mini-cart-item .remove:hover { background-color: var(--fiptec-red) !important; color: var(--fiptec-white) !important; }
.woocommerce-mini-cart-item .ux-mini-cart-qty { display: flex !important; align-items: center !important; justify-content: space-between !important; width: 100% !important; border-top: 1px solid var(--fiptec-slate-50) !important; padding-top: 12px !important; margin-top: 12px !important; padding-left: 80px !important; }
.woocommerce-mini-cart-item .ux-quantity { display: flex !important; align-items: center !important; border: 1px solid var(--fiptec-slate-200) !important; border-radius: 8px !important; overflow: hidden !important; background-color: var(--fiptec-white) !important; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important; height: 32px !important; margin: 0 !important; width: auto !important; }
.woocommerce-mini-cart-item .ux-quantity input.button { width: 32px !important; height: 100% !important; background-color: var(--fiptec-slate-50) !important; color: var(--fiptec-slate-500) !important; border: none !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: 0 !important; margin: 0 !important; font-size: 16px !important; }
.woocommerce-mini-cart-item .ux-quantity input.qty { width: 32px !important; height: 100% !important; border: none !important; text-align: center !important; font-weight: 700 !important; color: var(--fiptec-slate-800) !important; font-size: 12px !important; padding: 0 !important; margin: 0 !important; -moz-appearance: textfield; }

/* --- CROSS SELLS В МИНИ КОЛИЧКАТА --- */
div.ux-mini-cart-cross-sells { display: block !important; margin-top: 20px !important; padding-top: 15px !important; border-top: 1px dashed var(--fiptec-slate-200) !important; }
.ux-mini-cart-cross-sells__title { font-weight: 900 !important; color: var(--fiptec-slate-900) !important; font-size: 13px !important; text-transform: uppercase !important; margin-bottom: 12px !important; text-align: left !important; }
.ux-mini-cart-cross-sells__list { display: flex !important; flex-direction: column !important; gap: 10px !important; margin: 0 !important; padding: 0 !important; }

/* Grid Контейнер */
.ux-mini-cart-cross-sells__list-item { display: grid !important; grid-template-columns: 50px 1fr auto !important; grid-template-rows: auto auto !important; grid-template-areas: "img title btn" "img price btn" !important; gap: 2px 12px !important; align-items: center !important; background-color: var(--fiptec-white) !important; border: 1px solid var(--fiptec-slate-100) !important; border-radius: 12px !important; padding: 8px !important; box-shadow: 0 1px 2px rgba(0,0,0,0.02) !important; transition: border-color 0.2s ease !important; margin-bottom: 0 !important; }
.ux-mini-cart-cross-sells__list-item:hover { border-color: var(--fiptec-slate-200) !important; }
.ux-mini-cart-cross-sells__list-item > a:not(.button) { display: contents !important; }

/* Grid Елементи (Снимка, Заглавие, Цена) */
.ux-mini-cart-cross-sells__list-item img { grid-area: img !important; width: 50px !important; height: 50px !important; object-fit: cover !important; border-radius: 8px !important; background: var(--fiptec-slate-50) !important; mix-blend-mode: multiply !important; margin: 0 !important; }
.ux-mini-cart-cross-sells__list-item .product-title { grid-area: title !important; align-self: end !important; font-weight: 700 !important; color: var(--fiptec-slate-800) !important; font-size: 12px !important; line-height: 1.2 !important; display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; margin-bottom: 2px !important; transition: color 0.2s !important; }
.ux-mini-cart-cross-sells__list-item .product-title:hover { color: var(--fiptec-blue) !important; }

/* ФИКС: Позициониране на цената точно под заглавието */
.ux-mini-cart-cross-sells__list-item .price-wrapper { grid-area: price !important; align-self: start !important; width: 100% !important; margin: 0 !important; padding: 0 !important; display: flex !important; }

/* --- ФУТЪР --- */
.ux-mini-cart-footer { background-color: var(--fiptec-white) !important; border-top: 1px solid var(--fiptec-slate-200) !important; padding: 20px !important; box-shadow: 0 -10px 20px rgba(0,0,0,0.02) !important; margin: 20px -20px -20px -20px !important; }
.woocommerce-mini-cart__total { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 20px !important; padding-bottom: 15px !important; border-bottom: 1px dashed var(--fiptec-slate-200) !important; }
.woocommerce-mini-cart__buttons { display: flex !important; flex-direction: column !important; gap: 12px !important; }
.off-canvas-cart .aopc-delivery-info-shortcode-container { margin-bottom: 20px !important; }
.off-canvas-cart .fiptec-express-delivery-box { background: var(--fiptec-blue-vlight) !important; border: 1px solid var(--fiptec-blue-light) !important; border-radius: 12px !important; padding: 12px !important; display: flex !important; align-items: center !important; gap: 12px !important; }
.off-canvas-cart .fiptec-express-delivery-box .icon-circle { background: var(--fiptec-white) !important; color: var(--fiptec-blue) !important; width: 32px !important; height: 32px !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; box-shadow: 0 2px 5px rgba(0,0,0,0.05) !important; }
.off-canvas-cart .fiptec-express-delivery-box .title { font-size: 13px !important; font-weight: 800 !important; color: var(--fiptec-slate-800) !important; }
.off-canvas-cart .fiptec-express-delivery-box .desc { font-size: 11px !important; color: var(--fiptec-slate-500) !important; }
.aopc-delivery-hidden { display: none !important; }
.aopc-delivery-info-clone { margin-top: 15px !important; margin-bottom: 20px !important; display: block !important; }

/* =======================================================
   SHARED: CART & CHECKOUT MISC
======================================================= */
.fiptec-totals-row.fiptec-totals-final { display: flex !important; justify-content: space-between !important; align-items: center !important; background: var(--fiptec-slate-50) !important; padding: 1.5rem !important; border-radius: 0.75rem !important; border: 1px solid var(--fiptec-slate-100) !important; margin-bottom: 2rem !important; }
.fiptec-totals-row.fiptec-totals-final > span:first-child { font-size: 1.25rem !important; font-weight: 900 !important; color: var(--fiptec-slate-900) !important; text-transform: uppercase !important; }
.fiptec-coupon-wrapper, .fiptec-custom-coupon-wrapper { margin-bottom: 1.5rem; }
.fiptec-coupon-accordion, .fiptec-coupon-details { background: var(--fiptec-slate-50) !important; border: 1px dashed var(--fiptec-slate-300) !important; border-radius: 0.75rem !important; overflow: hidden !important; transition: all 0.3s ease !important; }
.fiptec-coupon-summary { font-weight: 700 !important; font-size: 0.875rem !important; color: var(--fiptec-slate-700) !important; padding: 1rem !important; cursor: pointer !important; display: flex !important; justify-content: space-between !important; align-items: center !important; list-style: none !important; }
.fiptec-coupon-summary::-webkit-details-marker { display: none !important; }
.fiptec-coupon-summary:hover { background-color: var(--fiptec-white) !important; }
.fiptec-coupon-title { display: flex; align-items: center; gap: 0.5rem; color: var(--fiptec-blue) !important; font-weight: bold; }
.fiptec-coupon-icon { color: var(--fiptec-slate-400) !important; transition: transform 0.3s ease !important; }
details[open] .fiptec-coupon-icon { transform: rotate(180deg) !important; }
.fiptec-coupon-content { padding: 0.5rem 1rem 1rem 1rem !important; border-top: 1px solid var(--fiptec-slate-100) !important; display: flex !important; gap: 0.5rem !important; }
.fiptec-coupon-content form { display: flex !important; gap: 0.5rem !important; margin: 0 !important; width: 100%; }
.fiptec-coupon-input, .fiptec-coupon-content input[type="text"] { flex: 1 !important; background-color: var(--fiptec-white) !important; border: 1px solid var(--fiptec-slate-200) !important; border-radius: 0.5rem !important; padding: 0.5rem 0.75rem !important; font-size: 0.875rem !important; height: 2.5rem !important; outline: none !important; }
.fiptec-coupon-input:focus, .fiptec-coupon-content input[type="text"]:focus { border-color: var(--fiptec-blue) !important; }




.absolute-footer { display: none !important; }