/* ==============================================
   SSC Custom Global Styles
   Loaded on all pages via child theme
   ============================================== */

/* =========================================
   PRODUCTS AREA
========================================= */

.widget_shopping_cart_content {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.elementor-menu-cart__products {
    flex: 1;
    overflow-y: auto;
    padding-right: 5px;
}

/* =========================================
   PRODUCT CARD
========================================= */

.elementor-menu-cart__product {
    display: grid !important;
    grid-template-columns: 140px 1fr 40px;
gap: 20px;
    align-items: center;
    border: 1px solid #e5e5e5 !important;
    background: #fff;
    padding: 20px !important;
    margin-bottom: 20px;
    position: relative;
}

/* =========================================
   IMAGE
========================================= */

.elementor-menu-cart__product-image {
    margin: 0 !important;
}

.elementor-menu-cart__product-image img {
    width: 120px !important;
    height: 120px !important;
    object-fit: contain;
    display: block;
}

/* =========================================
   PRODUCT NAME
========================================= */

.elementor-menu-cart__product-name {
    margin-bottom: 10px;
}

.elementor-menu-cart__product-name a {
    color: #111 !important;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    text-decoration: none;
}
/* =========================================
   CART ITEM META (variation data)
   Structure: <dl class="variation"><dt>Label:</dt><dd><p>Value</p></dd></dl>
========================================= */

/* Override WooCommerce default float:left on dt */
.elementor-menu-cart__product dl.variation,
.elementor-menu-cart__product-name dl.variation {
    margin: 8px 0 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
    overflow: hidden !important;
}

/* LABEL: block, bold, own line — must override WC float:left inline-block */
.elementor-menu-cart__product dl.variation dt,
.elementor-menu-cart__product-name dl.variation dt,
.woocommerce .elementor-menu-cart__product dl.variation dt,
.woocommerce .elementor-menu-cart__product-name dl.variation dt {
    display: block !important;
    float: none !important;
    clear: both !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    color: #111 !important;
    margin: 6px 0 2px 0 !important;
    width: 100% !important;
    white-space: normal !important;
}

/* VALUE: block, own line, no float */
.elementor-menu-cart__product dl.variation dd,
.elementor-menu-cart__product-name dl.variation dd,
.woocommerce .elementor-menu-cart__product dl.variation dd,
.woocommerce .elementor-menu-cart__product-name dl.variation dd {
    display: block !important;
    float: none !important;
    clear: both !important;
    margin: 0 0 4px 0 !important;
    width: 100% !important;
}

.elementor-menu-cart__product dl.variation dd p,
.elementor-menu-cart__product-name dl.variation dd p,
.woocommerce .elementor-menu-cart__product dl.variation dd p {
    margin: 0 !important;
    font-size: 13px !important;
    color: #555 !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    white-space: normal !important;
}

/* =========================================
   PRICE
========================================= */

.elementor-menu-cart__product-price {
    margin-top: 10px;
    color: #2F67C7 !important;
    font-size: 16px;
    font-weight: 500;
}

.elementor-menu-cart__product-price .quantity {
    color: #2F67C7 !important;
}

.elementor-menu-cart__product-price .product-quantity {
    display: none;
}

/* =========================================
   REMOVE ICON
========================================= */

/* Override Elementor circle remove button completely */
.elementor-menu-cart__product-remove {
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    width: 32px !important;
    height: 32px !important;
    overflow: visible !important;
    position: static !important;
    bottom: auto !important;
    inset-inline-end: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    justify-self: end !important;
    flex-shrink: 0 !important;
}

/* Kill Elementors ::before and ::after X lines */
.elementor-menu-cart__product-remove::before,
.elementor-menu-cart__product-remove::after {
    display: none !important;
    content: none !important;
}

/* The anchor tag itself */
.elementor-menu-cart__product-remove a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    opacity: 0.5;
    transition: opacity .2s ease;
    overflow: visible !important;
    position: static !important;
    text-align: center !important;
}

.elementor-menu-cart__product-remove a:hover {
    opacity: 1 !important;
}

/* Kill any ::before or ::after on the anchor from Elementor */
.elementor-menu-cart__product-remove a::before,
.elementor-menu-cart__product-remove a::after {
    display: none !important;
    content: none !important;
}

/* The trash SVG img tag we inject via mini-cart.php */
.elementor-menu-cart__product-remove a img {
    display: block !important;
    width: 18px !important;
    height: 20px !important;
    opacity: 1 !important;
}

/* =========================================
   SUBTOTAL
========================================= */

.elementor-menu-cart__subtotal {
    border-top: 1px solid #e5e5e5;
    margin-top: 20px;
    padding-top: 25px;
    padding-bottom: 25px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.elementor-menu-cart__subtotal strong {
    font-size: 18px;
    font-weight: 500;
}

.elementor-menu-cart__subtotal .amount {
    font-size: 30px;
    font-weight: 700;
    color: #111;
}

/* =========================================
   FOOTER BUTTONS
========================================= */

.elementor-menu-cart__footer-buttons {
    display: flex;
    gap: 20px;
    padding-bottom: 10px;
}

.elementor-menu-cart__footer-buttons a {
    flex: 1;
    min-height: 60px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 600;
    border-radius: 0 !important;
    text-transform: none;
}

.ssc-shopping-cart .elementor-button--view-cart{
	
		border:1px solid #E9E9E9 !important;
	}

/* View Cart */

.elementor-button--view-cart {
    background: #fff !important;
    border: 1px solid #ddd !important;
    color: #111 !important;
}

/* Checkout */

.elementor-button--checkout {
    background: #3F6FC5 !important;
    border: none !important;
    color: #fff !important;
}

/* =========================================
   CLOSE BUTTON
========================================= */

.elementor-menu-cart__close-button {
    margin-top: -20px;
}

.elementor-menu-cart__close-button::before,
.elementor-menu-cart__close-button::after {
    width: 22px;
	z-index:999;
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .elementor-menu-cart__container {
        width: 100vw !important;
    }

    .elementor-menu-cart__product {
        grid-template-columns: 90px 1fr 30px;
        gap: 15px;
        padding: 15px !important;
    }

    .elementor-menu-cart__product-image img {
        width: 90px !important;
        height: 90px !important;
    }

    .elementor-menu-cart__product-name a {
        font-size: 16px;
    }

    .elementor-menu-cart__subtotal .amount {
        font-size: 30px;
    }

    .elementor-menu-cart__footer-buttons {
        flex-direction: column;
    }
}

.elementor-menu-cart__main::before{
	    font-family: "Poppins", Sans-serif !important;
    content:"My Cart";
    display:block;
    font-size:30px;
    font-weight:700;

    color:#111;
}

.elementor-menu-cart__product-remove a {
    width: 22px !important;
    height: 24px !important;
    display: block !important;
    background: url('https://ssc.weave.asia/wp-content/uploads/2026/06/trash.svg') center center no-repeat;
    background-size: contain;
    font-size: 0 !important;
    border: none !important;
}

/* Hide Elementor's default X */
.elementor-menu-cart__product-remove a:before,
.elementor-menu-cart__product-remove a:after {
    display: none !important;
}



.ssc-product-price{
    color:#2F67C7;
    font-size:18px;
    font-weight:600;
    margin-top:10px;
}

.ssc-qty-wrapper{
    display:flex;
    align-items:center;
    width:140px;
    height:42px;
    border:1px solid #ddd;
    margin-top:15px;
}

.ssc-qty-minus,
.ssc-qty-plus{
    width:40px;
    height:40px;
    border:none;
    background:#fff;
    cursor:pointer;
    font-size:22px;
    line-height:1;
}

.ssc-cart-qty{
    width:60px;
    border:none;
    text-align:center;
    font-size:16px;
    font-weight:600;
    background:transparent;
}

.ssc-cart-qty:focus{
    outline:none;
}

/* Cart drawer width fix */
.elementor-menu-cart__main {
    width: 500px !important;
    max-width: 100vw !important;
}

@media (max-width: 500px) {
    .elementor-menu-cart__main {
        width: 100vw !important;
    }
}

/* Ensure the drawer panel itself has enough bottom padding on all browsers */
.elementor-menu-cart__main {
    padding-bottom: 24px !important;
    padding-bottom: max(24px, env(safe-area-inset-bottom)) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    overflow-y: auto !important;
}

/* Mini-cart: drawer fixed, only product list scrolls */

/* 1. Drawer itself - fixed, no scroll */
.elementor-menu-cart__main {
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    padding-bottom: max(24px, env(safe-area-inset-bottom)) !important;
    box-sizing: border-box !important;
}

/* 2. Inner content area - flex column fills height */
.elementor-menu-cart__main .widget_shopping_cart_content {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

/* 3. Only products area scrolls */
.elementor-menu-cart__products {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    min-height: 0 !important;
    -webkit-overflow-scrolling: touch !important;
}

/* 4. Subtotal and buttons never scroll - pinned to bottom */
.elementor-menu-cart__subtotal {
    flex-shrink: 0 !important;
    overflow: hidden !important;
}

.elementor-menu-cart__footer-buttons {
    flex-shrink: 0 !important;
    overflow: hidden !important;
    padding-bottom: max(24px, env(safe-area-inset-bottom)) !important;
    box-sizing: border-box !important;
}

/* ==============================================
   SSC Single Product Page
   ============================================== */

/* ---- Price ---- */
.elementor-widget-woocommerce-product-price .price .amount {
    font-size: 2.4rem !important;
    font-weight: 800 !important;
    color: #3b5bdb !important;
}
.elementor-widget-woocommerce-product-price .price .woocommerce-Price-currencySymbol {
    font-size: 2rem !important;
    color: #3b5bdb !important;
}
.elementor-widget-woocommerce-product-price .price del .amount {
    font-size: 2rem !important;
    color: #aaa !important;
    font-weight: 400 !important;
}
.elementor-widget-woocommerce-product-price .price ins { text-decoration: none !important; }

/* ---- Variation swatches ---- */
.ssc-product-buy .variable-items-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    padding: 10px 0 !important;
}
.ssc-product-buy .variable-item {
    border: 1.5px solid #d0d0d0 !important;
    background: #fff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 8px 14px !important;
    height: auto !important;
    transition: border-color 0.15s !important;
}
.ssc-product-buy .variable-item.selected {
    border-color: #3b5bdb !important;
    background: #eef2ff !important;
}
.ssc-product-buy .variable-item:hover { border-color: #3b5bdb !important; }
.ssc-product-buy .variable-item-span { font-size: 0.82rem !important; color: #333 !important; }
.ssc-product-buy .variable-item.selected .variable-item-span { color: #3b5bdb !important; }
.ssc-product-buy .variations {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin-bottom: 16px !important;
}
.ssc-product-buy .variations table,
.ssc-product-buy .variations td,
.ssc-product-buy .variations th {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

/* ---- Qty stepper ---- */
.ssc-product-buy .quantity {
    display: flex !important;
    align-items: center !important;
    border: 1.5px solid #d0d0d0 !important;
    background: #fff !important;
    float: none !important;
    width: fit-content !important;
    margin: 0 !important;
}
.ssc-product-buy .ssc-qty-btn {
    width: 38px !important;
    height: 46px !important;
    background: #fff !important;
    border: none !important;
    font-size: 1.3rem !important;
    cursor: pointer !important;
    color: #444 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    line-height: 1 !important;
}
.ssc-product-buy .ssc-qty-btn:hover { background: #f0f0f0 !important; }
.ssc-product-buy .quantity input.qty {
    width: 46px !important;
    height: 46px !important;
    text-align: center !important;
    border: none !important;
    border-left: 1.5px solid #d0d0d0 !important;
    border-right: 1.5px solid #d0d0d0 !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    -moz-appearance: textfield !important;
    appearance: textfield !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
}
.ssc-product-buy .quantity input.qty::-webkit-outer-spin-button,
.ssc-product-buy .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
}

/* ---- Cart row: 2 rows via CSS grid ----
   Row 1: quantity (full width)
   Row 2: wishlist | add to cart | buy now
*/
.ssc-product-buy .ssc-cart-row {
    display: grid !important;
    grid-template-columns: 48px 1fr 1fr !important;
    grid-template-rows: auto !important;
    gap: 10px !important;
    align-items: center !important;
}

/* Qty: col 1, row 1 - spans all columns */
.ssc-product-buy .ssc-cart-row .quantity {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
}

/* Wishlist: col 1, row 2 */
.ssc-product-buy .ssc-cart-row .ssc-wishlist-btn {
    grid-column: 1 !important;
    grid-row: 2 !important;
    justify-self: start !important;
}

/* Add to Cart: col 2, row 2 */
.ssc-product-buy .ssc-cart-row .single_add_to_cart_button {
    grid-column: 2 !important;
    grid-row: 2 !important;
}

/* Buy Now: col 3, row 2 */
.ssc-product-buy .ssc-cart-row .ssc-buy-now-btn {
    grid-column: 3 !important;
    grid-row: 2 !important;
}

/* ---- Wishlist ---- */
.ssc-product-buy .ssc-wishlist-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 52px !important;
    width: 48px !important;
    border: 1.5px solid #d0d0d0 !important;
    background: #fff !important;
    color: #555 !important;
    text-decoration: none !important;
    transition: border-color 0.15s, color 0.15s !important;
    flex-shrink: 0 !important;
}
.ssc-product-buy .ssc-wishlist-btn:hover {
    border-color: #e74c3c !important;
    color: #e74c3c !important;
}

/* ---- Add to Cart ---- */
.ssc-product-buy .single_add_to_cart_button.elementor-button {
    height: 52px !important;
    background: #fff !important;
    color: #111 !important;
    border: 1.5px solid #d0d0d0 !important;
    border-radius: 0 !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    padding: 0 16px !important;
    width: 100% !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    box-sizing: border-box !important;
}
.ssc-product-buy .single_add_to_cart_button.elementor-button:hover {
    background: #f5f5f5 !important;
    border-color: #111 !important;
    color: #111 !important;
}

/* ---- Buy Now ---- */
.ssc-product-buy .ssc-buy-now-btn {
    height: 52px !important;
    background: #3b5bdb !important;
    color: #fff !important;
    border: none !important;
    border-radius: 0 !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    padding: 0 16px !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background 0.18s !important;
    box-sizing: border-box !important;
}
.ssc-product-buy .ssc-buy-now-btn:hover { background: #2f4ac4 !important; color: #fff !important; }

/* ---- Hide YITH default ---- */
.ssc-product-buy .yith-wcwl-add-to-wishlist { display: none !important; }

/* ---- WhatsApp button ---- */
.elementor-element-6e20b1c .elementor-button {
    background: #25d366 !important;
    border-radius: 0 !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #fff !important;
    transition: background 0.18s !important;
}
.elementor-element-6e20b1c .elementor-button:hover { background: #1ebe5d !important; color: #fff !important; }
.elementor-element-6e20b1c .elementor-button-wrapper { width: 100% !important; }

/* ---- Rating ---- */
.elementor-widget-woocommerce-product-rating .woocommerce-product-rating {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.elementor-widget-woocommerce-product-rating .star-rating {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
.elementor-widget-woocommerce-product-rating .woocommerce-review-link {
    font-size: 0.85rem !important;
    color: #777 !important;
    text-decoration: none !important;
    display: inline !important;
    visibility: visible !important;
}


/* ==============================================
   SSC Product Tabs (ssc-product-tab)
   ============================================== */

/* Hide default WC tab borders/background */
.ssc-product-tab .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid #ddd !important;
    padding: 0 !important;
    margin: 0 0 24px !important;
    background: none !important;
    list-style: none !important;
    display: flex !important;
    gap: 0 !important;
}

.ssc-product-tab .woocommerce-tabs ul.tabs::before {
    display: none !important;
}

.ssc-product-tab .woocommerce-tabs ul.tabs li {
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    position: relative !important;
}

.ssc-product-tab .woocommerce-tabs ul.tabs li a {
    display: block !important;
    padding: 12px 20px !important;
    font-size: 0.95rem !important;
    font-weight: 400 !important;
    color: #888 !important;
    text-decoration: none !important;
    background: none !important;
    border: none !important;
    border-bottom: 3px solid transparent !important;
    margin-bottom: -1px !important;
    transition: color 0.15s !important;
}

.ssc-product-tab .woocommerce-tabs ul.tabs li a:hover {
    color: #111 !important;
}

.ssc-product-tab .woocommerce-tabs ul.tabs li.active a {
    font-weight: 700 !important;
    color: #111 !important;
    border-bottom: 3px solid #3b5bdb !important;
    background: none !important;
}

/* Tab panel */
.ssc-product-tab .woocommerce-tabs .panel {
    border: none !important;
    padding: 0 !important;
    background: none !important;
    box-shadow: none !important;
}


/* Cart - Update Cart button fix */
button.custom-update-btn,
button.custom-update-btn[disabled],
button.custom-update-btn:disabled,
.cart_totals .custom-update-btn,
[name="update_cart"] {
    background: #3b5bdb !important;
    color: #fff !important;
    border: none !important;
    padding: 9px 20px !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    width: auto !important;
    height: auto !important;
    display: inline-block !important;
    box-sizing: border-box !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    min-width: 140px !important;
    min-height: 44px !important;
}

button.custom-update-btn:hover,
[name="update_cart"]:hover {
    background: #2f4ac4 !important;
    color: #fff !important;
}



/* Payment list items - stack vertically */
.cco-card--payment #payment ul.payment_methods li {
    display: block !important;
    flex-direction: unset !important;
}

.cco-card--payment #payment ul.payment_methods li label {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    cursor: pointer !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    color: #111 !important;
    margin: 0 !important;
}

.cco-card--payment #payment ul.payment_methods li label img {
    height: 24px !important;
    width: auto !important;
    vertical-align: middle !important;
}

/* ==============================================
   Payment Methods - Clean Card Style
   ============================================== */

.cco-card--payment #payment {
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
}

.cco-card--payment #payment ul.payment_methods {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

/* Each payment item - use grid so radio and label sit side by side */
.cco-card--payment #payment ul.payment_methods li {
    display: grid !important;
    grid-template-columns: 24px 1fr !important;
    grid-template-rows: auto !important;
    align-items: center !important;
    column-gap: 12px !important;
    border: 1.5px solid #e2e2e2 !important;
    background: #fff !important;
    padding: 16px 20px !important;
    margin: 0 !important;
    cursor: pointer !important;
    border-radius: 4px !important;
    transition: border-color 0.15s, background 0.15s !important;
}

/* Selected */
.cco-card--payment #payment ul.payment_methods li.cco-payment-selected {
    border-color: #3b5bdb !important;
    background: #eef2ff !important;
}

/* Radio - col 1 */
.cco-card--payment #payment ul.payment_methods li input[type="radio"] {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 18px !important;
    height: 18px !important;
    accent-color: #3b5bdb !important;
    margin: 0 !important;
    cursor: pointer !important;
    justify-self: center !important;
}

/* Label - col 2 */
.cco-card--payment #payment ul.payment_methods li label {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #111 !important;
    cursor: pointer !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Logo inside label */
.cco-card--payment #payment ul.payment_methods li label img {
    height: 24px !important;
    width: auto !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
}

/* Payment box: let WooCommerce JS control show/hide per selected method */
/* .cco-card--payment #payment .payment_box display is handled by checkout.css */

/* Hide place order + terms */
.cco-card--payment #payment .place-order,
.cco-card--payment #payment .woocommerce-terms-and-conditions-wrapper {
    display: none !important;
}
/* ==============================================
   My Account - Notice / Info box fix
   Prevent ::before icon overlapping text
   ============================================== */

.woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-MyAccount-content .woocommerce-error {
    padding-left: 3.5em !important;
    position: relative;
}

.woocommerce-MyAccount-content .woocommerce-info::before,
.woocommerce-MyAccount-content .woocommerce-message::before {
    position: absolute !important;
    left: 1em !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 1.5em !important;
    text-align: center !important;
}

/* ==============================================
   Shop Loop - Add to Cart button hover
   Base colour: #1F4D90 | Darkened 30%: #153662
   ============================================== */

.woocommerce a.button.add_to_cart_button:hover,
.woocommerce button.button.add_to_cart_button:hover,
.woocommerce a.button.ajax_add_to_cart:hover,
.woocommerce .button.product_type_simple:hover,
.woocommerce .button.product_type_variable:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover {
    background-color: #153662 !important;
    background: #153662 !important;
    color: #ffffff !important;
    border-color: #153662 !important;
}
