/**
 * cart.css
 * WHAT: Custom Cart page: heading + trust badges, product rows (checkbox, image, rating, text, chips, price/OFF,
 *       quantity + delete, total), bulk select/remove, order summary, free-shipping card, coupon box, "You May Also Like", empty cart.
 * NOTE: WooCommerce's own cart CSS also loads on this page, so a few rules use !important to win (float/width/button colors).
 * Markup: woocommerce/cart/*.php. Script: assets/js/cart.js. Loaded on the Cart page only (inc/assets.php).
 */
body {
    margin: 0;
    min-height: 100vh;
    background: #fbf6ea;
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(251, 246, 234, 0.15) 0%,
            rgba(251, 246, 234, 0.45) 55%,
            rgba(251, 246, 234, 0.85) 100%
        ),
        url("https://staging.harshanaturals.com/wp-content/uploads/2026/10/Sunlit-Botanical-Cream-Bg.webp")
        center center / cover no-repeat;
    z-index: -1;
    pointer-events: none;
}


.hn-cart{padding-bottom:30px}
.hn-cart .woocommerce-breadcrumb{font-size:13px;color:var(--muted);margin:0 0 6px}

/* heading */
/*.hn-cart__head{display:flex;justify-content:space-between;align-items:center;gap:18px 28px;flex-wrap:wrap;margin:6px 0 18px}*/
/*.hn-cart__title{display:flex;align-items:center;gap:14px;color:var(--green)}*/
/*.hn-cart__title h1{font-size:clamp(28px,3.4vw,42px);margin:0;line-height:1.1}*/
/*.hn-cart__title small{font:500 20px var(--serif);color:var(--green-d);margin-left:4px}*/
/*.hn-cart__title p{margin:2px 0 0;color:var(--muted)}*/
/*.hn-cart__trust{display:flex;gap:10px 22px;flex-wrap:wrap}*/
/*.hn-cart__trust li{display:flex;align-items:center;gap:10px;font-size:13px;line-height:1.3}*/
/*.hn-cart__trust .ic,.hn-cart__ship .ic{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--green-l);color:var(--green);flex:none}*/

/* layout */
.hn-cart__grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}
.hn-cart .cart-collaterals{float:none!important;width:100%!important;position:sticky;top:130px}
.hn-cart .cart_totals{float:none!important;width:100%!important;display:flex;flex-direction:column;gap:14px;padding:0}
.hn-cart .woocommerce-cart-form{margin:0}

/* product list */
.hn-cart__rows{background:#fff;border-radius:var(--r);box-shadow:0 1px 0 var(--line),0 8px 24px #1f4d2b0f;overflow:hidden}
.hn-cart__thead,.hn-cart__item{display:grid;grid-template-columns:26px 100px minmax(0,1fr) 112px 160px 92px;gap:14px;align-items:center;padding:14px 18px}
.hn-cart__thead{background:var(--orange-soft);font-weight:600;font-size:14px;border-bottom:1px solid var(--line)}
.hn-cart__thead .t-product{grid-column:1/4}
.hn-cart__item{border-bottom:1px solid var(--line)}
.hn-cart__item .product-thumbnail img{width:100px;height:100px;object-fit:cover;border-radius:10px;display:block;max-width:none!important}
.hn-cart__name{font:600 17px/1.3 var(--sans);margin:0 0 2px;color:var(--ink)}
.hn-cart__name a:hover{color:var(--green)}
.hn-cart .hn-rating{margin:2px 0}
.hn-cart__desc{margin:2px 0 6px;font-size:13px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hn-cart .variation{margin:2px 0 6px;font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:0 8px}
.hn-cart .variation dt,.hn-cart .variation dd,.hn-cart .variation p{display:inline;margin:0}
.hn-cart__chips{display:flex;flex-wrap:wrap;gap:6px}
.hn-cart__chips li{display:inline-flex;align-items:center;gap:6px;background:var(--green-l);border-radius:999px;padding:3px 12px 3px 4px;font-size:12px}
.hn-cart__chips li span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--green);color:#fff}
.product-price{display:flex;flex-direction:column;align-items:flex-start;gap:3px;font-weight:700;font-size:20px}
.product-price del{font-size:13px;font-weight:400;color:var(--muted)}
.hn-cart__off{font-style:normal;font-size:12px;font-weight:600;color:var(--orange);border:1px solid var(--orange);border-radius:6px;padding:2px 10px}
.product-quantity{display:flex;align-items:center;gap:12px}
.hn-cart .quantity{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;margin:0}
.hn-cart .quantity input.qty{width:44px!important;border:0!important;text-align:center;font:600 16px var(--sans);padding:10px 0!important;background:none;box-shadow:none;-moz-appearance:textfield;appearance:textfield}
.hn-cart .quantity input::-webkit-outer-spin-button,.hn-cart .quantity input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.hn-cart__q{width:38px;height:42px;border:0;background:none;font-size:20px;cursor:pointer;color:var(--ink)}
.hn-cart__q:disabled{opacity:.35;cursor:not-allowed}
.hn-cart .product-remove{margin:0}
.hn-cart a.hn-cart__del{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;color:var(--muted);text-decoration:none}
.hn-cart a.hn-cart__del:hover{color:#d32f2f;background:#fdecea}
.product-subtotal{font-weight:700;font-size:20px;text-align:right}

/* custom checkbox */
.product-select,.hn-cart__selall{display:inline-flex;align-items:center;gap:8px;cursor:pointer;position:relative}
.product-select input,.hn-cart__selall input{position:absolute;opacity:0;width:20px;height:20px;margin:0;cursor:pointer}
.hn-cart__check{width:20px;height:20px;border-radius:5px;border:1.5px solid #b9bfb3;background:#fff;display:grid;place-items:center;flex:none}
input:checked+.hn-cart__check{background:var(--green);border-color:var(--green)}
input:checked+.hn-cart__check::after{content:"";width:9px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;rotate:-45deg;translate:0 -1px}
input:focus-visible+.hn-cart__check{outline:3px solid var(--orange);outline-offset:2px}
.hn-cart__bulk{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;font-size:14px}
.hn-cart__rmsel{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:#d32f2f;font:600 14px var(--sans);cursor:pointer}
.hn-cart__rmsel:hover{text-decoration:underline}

/* order summary */
.hn-cart__sum{background:#fff;border-radius:var(--r);padding:18px 20px 20px;box-shadow:0 1px 0 var(--line),0 8px 24px #1f4d2b0f}
.hn-cart__sum h2{font-size:24px;margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.hn-cart__row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:15px}
.hn-cart__row small{display:block;font-size:12px;color:var(--muted)}
.hn-cart__row.is-green,.hn-cart__row.is-green b,.hn-cart__row.is-green a{color:#1e8e3e}
.hn-cart__row.is-green a{text-decoration:underline;margin-left:6px;font-size:12px}
.hn-cart__note{margin:0 0 6px;font-size:13px;color:var(--muted)}
.hn-cart__rates{display:flex;flex-direction:column;gap:6px;margin:4px 0 8px}
.hn-cart__rates label{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}
.hn-cart__calc{font-size:13px;margin-bottom:6px}
.hn-cart__total{display:grid;grid-template-columns:1fr auto;gap:0 12px;align-items:baseline;border-top:1px solid var(--line);margin-top:8px;padding-top:12px}
.hn-cart__total>span{font:600 21px var(--serif)}
.hn-cart__tot{font-size:28px;text-align:right}
.hn-cart__tot .includes_tax{display:none}
.hn-cart__total small{grid-column:2;text-align:right;color:var(--muted);font-size:12px}
.hn-cart .wc-proceed-to-checkout{padding:14px 0 0;margin:0}
.hn-cart .wc-proceed-to-checkout a.checkout-button{display:flex!important;align-items:center;justify-content:center;gap:8px;width:100%;margin:0!important;padding:14px 20px!important;min-height:52px;font:600 17px var(--sans)!important;color:#fff!important;background:var(--grad-accent)!important;border-radius:10px!important;box-shadow:0 4px 12px #0000001f}
.hn-cart .wc-proceed-to-checkout a.checkout-button::after{content:"\2192"}

/* free shipping card */
.hn-cart__ship{display:flex;gap:12px;align-items:flex-start;background:var(--green-l);border-radius:var(--r);padding:14px 16px}
.hn-cart__ship .ic{background:var(--green);color:#fff}
.hn-cart__ship>div{flex:1;min-width:0}
.hn-cart__ship strong{display:block;color:var(--green-d);font-size:15px}
.hn-cart__ship p{margin:2px 0 8px;font-size:13px}
.hn-cart__bar{display:flex;align-items:center;gap:10px}
.hn-cart__bar .trk{flex:1;height:8px;border-radius:4px;background:#fff9;overflow:hidden}
.hn-cart__bar .trk span{display:block;height:100%;background:var(--grad-primary);border-radius:4px;transition:width .4s}
.hn-cart__bar em{font-style:normal;font-weight:700;font-size:14px}

/* coupon */
.hn-cart__coupon{background:#fff;border-radius:var(--r);box-shadow:0 1px 0 var(--line)}
.hn-cart__coupon summary{display:flex;align-items:center;gap:10px;padding:14px 16px;cursor:pointer;list-style:none;font-weight:500}
.hn-cart__coupon summary::-webkit-details-marker{display:none}
.hn-cart__coupon summary span{flex:1}
.hn-cart__coupon summary::after{content:"\2304";font-size:20px;line-height:1;color:var(--muted);transition:transform .2s}
.hn-cart__coupon[open] summary::after{transform:rotate(180deg)}
.hn-cart__couponform{display:flex;gap:8px;padding:0 16px 16px}
.hn-cart__couponform input[type=text]{flex:1;min-width:0;height:44px;padding:0 14px;border:1.5px solid var(--line);border-radius:8px;font:inherit}
.hn-cart__couponform .hn-btn{min-height:44px;padding:0 22px}

/* you may also like */
.hn-cart__ymal{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px;margin-top:34px;align-items:stretch}
.hn-cart__ymal-main{min-width:0}
.hn-cart__ymal .hn-sec__head{margin-bottom:16px}
.hn-cart__ymal .hn-car--products .hn-card{flex-basis:calc((100% - 48px)/4)}
.hn-cart__promo{position:relative;overflow:hidden;border-radius:var(--r);padding:26px 22px;background:linear-gradient(150deg,var(--orange-soft),var(--green-l));display:flex;flex-direction:column;justify-content:center}
.hn-cart__promo-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hn-cart__promo>*:not(img){position:relative;z-index:1}
.hn-cart__promo h3{font-size:26px;margin-bottom:12px}
.hn-cart__promo li{position:relative;padding-left:26px;margin-bottom:8px;font-size:14px}
.hn-cart__promo li::before{content:"\2713";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:var(--green);color:#fff;font-size:11px;display:grid;place-items:center}

/* empty cart */
.hn-cart__emptybox{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:40px 16px 10px;color:var(--green)}
.hn-cart__emptybox p{margin:0;color:var(--muted)}
.hn-cart--empty .wc-empty-cart-message .woocommerce-info{background:none;border:0;padding:0;justify-content:center;font:600 24px var(--serif);color:var(--green-d)}

/* responsive */
@media (max-width:1100px){
 .hn-cart__grid{grid-template-columns:1fr}
 .hn-cart .cart-collaterals{position:static}
 .hn-cart__ymal{grid-template-columns:1fr}
 .hn-cart__promo{display:none}
}
@media (max-width:900px){
 .hn-cart__thead{display:none}
 .hn-cart__item{grid-template-columns:24px 78px minmax(0,1fr) auto;grid-template-areas:"sel img name name" ". price price total" ". qty qty qty";gap:8px 12px;padding:14px 12px}
 .hn-cart__item .product-select{grid-area:sel;align-self:start;margin-top:4px}
 .hn-cart__item .product-thumbnail{grid-area:img}
 .hn-cart__item .product-thumbnail img{width:78px;height:78px}
 .hn-cart__item .product-name{grid-area:name}
 .hn-cart__item .product-price{grid-area:price;flex-direction:row;flex-wrap:wrap;align-items:center;gap:2px 8px;font-size:18px}
 .hn-cart__item .product-quantity{grid-area:qty;justify-content:space-between}
 .hn-cart__item .product-subtotal{grid-area:total;font-size:18px;align-self:center}
 .hn-cart__ymal .hn-car--products .hn-card{flex-basis:calc((100% - 32px)/3)}
}
@media (max-width:720px){
 /*.hn-cart__trust{display:grid;grid-template-columns:1fr 1fr;width:100%}*/
 /*.hn-cart__title svg{width:40px;height:40px}*/
 .hn-cart__name{font-size:15px}
 .hn-cart__bulk{flex-wrap:wrap}
 .hn-cart__ymal .hn-car--products .hn-card{flex-basis:calc((100% - 12px)/2.15)}
}



/* ========================================
   WooCommerce Cross-sells
======================================== */

/*.hn-cross-sells {*/
/*	width: 100%;*/
/*	margin: 40px 0;*/
/*	min-width: 0;*/
/*}*/

/*.hn-cross-sells .hn-sec__head {*/
/*	display: flex;*/
/*	align-items: center;*/
/*	justify-content: space-between;*/
/*	margin-bottom: 20px;*/
/*}*/

/*.hn-cross-sells .hn-sec__head h2 {*/
/*	margin: 0;*/
/*	font-size: clamp(20px, 2.5vw, 28px);*/
/*	line-height: 1.3;*/
/*	font-weight: 700;*/
/*}*/

/* Carousel wrapper */
/*.hn-cross-sells .hn-car--products {*/
/*	position: relative;*/
/*	width: 100%;*/
/*	min-width: 0;*/
/*}*/

/* Product cards: compatible with common carousel track structures */
/*.hn-cross-sells .hn-car--products .owl-stage {*/
/*	display: flex;*/
/*}*/

/*.hn-cross-sells .hn-car--products .owl-item {*/
/*	height: auto;*/
/*}*/

/*.hn-cross-sells .hn-car--products .swiper-wrapper {*/
/*	align-items: stretch;*/
/*}*/

/*.hn-cross-sells .hn-car--products .swiper-slide {*/
/*	height: auto;*/
/*}*/

/* Product card height */
/*.hn-cross-sells .hn-car--products li.product,*/
/*.hn-cross-sells .hn-car--products .product {*/
/*	box-sizing: border-box;*/
/*	height: 100%;*/
/*}*/

/* Images */
/*.hn-cross-sells .hn-car--products img {*/
/*	max-width: 100%;*/
/*	height: auto;*/
/*	object-fit: contain;*/
/*}*/

/* Navigation buttons (if generated by your carousel helper) */
/*.hn-cross-sells .owl-nav button,*/
/*.hn-cross-sells .swiper-button-prev,*/
/*.hn-cross-sells .swiper-button-next {*/
/*	display: flex;*/
/*	align-items: center;*/
/*	justify-content: center;*/
/*	width: 38px;*/
/*	height: 38px;*/
/*	border: 1px solid #ddd;*/
/*	border-radius: 50%;*/
/*	background: #fff;*/
/*	color: #222;*/
/*	cursor: pointer;*/
/*	transition: background-color .2s ease, color .2s ease;*/
/*}*/

/*.hn-cross-sells .owl-nav button:hover,*/
/*.hn-cross-sells .swiper-button-prev:hover,*/
/*.hn-cross-sells .swiper-button-next:hover {*/
/*	background: #222;*/
/*	color: #fff;*/
/*}*/

/*.hn-cross-sells .owl-nav button:focus-visible,*/
/*.hn-cross-sells .swiper-button-prev:focus-visible,*/
/*.hn-cross-sells .swiper-button-next:focus-visible {*/
/*	outline: 2px solid currentColor;*/
/*	outline-offset: 3px;*/
/*}*/

/* Mobile */
/*@media (max-width: 767px) {*/
/*	.hn-cross-sells {*/
/*		margin: 28px 0;*/
/*	}*/

/*	.hn-cross-sells .hn-sec__head {*/
/*		margin-bottom: 14px;*/
/*	}*/

/*	.hn-cross-sells .hn-sec__head h2 {*/
/*		font-size: 21px;*/
/*	}*/

/*	.hn-cross-sells .owl-nav button,*/
/*	.hn-cross-sells .swiper-button-prev,*/
/*	.hn-cross-sells .swiper-button-next {*/
/*		width: 32px;*/
/*		height: 32px;*/
/*	}*/




/* =========================================
   MODERN CART HEADER
========================================= */

.hn-cart__head {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px 32px;
    flex-wrap: wrap;

    margin: 8px 0 28px;
    padding: 10px;
    
    /*background: linear-gradient(*/
    /*    135deg,*/
    /*    #f7fbf7 0%,*/
    /*    #ffffff 55%,*/
    /*    #f2f9f3 100%*/
    /*);*/

    border: 1px solid #e4eee5;
    border-radius: 22px;
    box-shadow: 0 6px 24px #173c2508;
    /*animation: hn-cart-head-enter 0.6s ease both;*/
}

/* Cart title group */
.hn-cart__title {
    display: flex;
    align-items: center;
    gap: 18px;
    min-width: 0;
    color: var(--green);
}

/* Cart icon */
.hn-cart__title > svg {
    display: block;
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    padding: 13px;

    color: #258148;
    background: #e5f5e9;
    border: 1px solid #d5ecd9;
    border-radius: 18px;

    filter: drop-shadow(0 3px 5px #27834c10);
    transition: transform 0.3s ease, background 0.3s ease;
}

/* Title */
.hn-cart__title h1 {
    margin: 0;
    font: 750 clamp(28px, 3.2vw, 40px)/1.12 var(--sans);
    letter-spacing: -1.1px;
    color: var(--green);
}

/* Cart item count, if enabled */
.hn-cart__title small {
    display: inline-block;
    margin-left: 5px;
    font: 600 15px/1.4 var(--sans);
    letter-spacing: 0;
    color: var(--green-d);
    vertical-align: middle;
}

/* Subtitle */
.hn-cart__title p {
    margin: 7px 0 0;
    color: var(--muted);
    font: 400 14px/1.6 var(--sans);
}

/* =========================================
   TRUST BADGES
========================================= */

.hn-cart__trust {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
justify-content: flex-start;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Individual badge */
.hn-cart__trust li {
    display: flex !important;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-width: 100px;
    padding: 15px 12px !important;

    text-align: center;
    font: 600 12px/1.5 var(--sans);
    color: var(--green);

    background: #ffffff;
    border: 1px solid #e5eee6;
    border-radius: 15px;
    box-shadow: 0 3px 10px #173c2508;

    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease,
        border-color 0.28s ease;

    animation: hn-cart-badge-enter 0.5s ease both;
}

.hn-cart__trust li:nth-child(2) {
    animation-delay: 0.1s;
}

.hn-cart__trust li:nth-child(3) {
    animation-delay: 0.2s;
}

/* Badge icons */
.hn-cart__trust .ic,
.hn-cart__ship .ic {
    display: grid;
    place-items: center;

    width: 42px;
    height: 42px;
    flex: 0 0 42px;

    border-radius: 13px;
    background: #eaf6ed;
    border: 1px solid #dcefe0;
    color: #27834c;

    transition:
        transform 0.28s ease,
        background 0.28s ease,
        color 0.28s ease;
}

.hn-cart__trust .ic svg {
    width: 22px;
    height: 22px;
}

/* Shipping threshold */
.hn-cart__trust .woocommerce-Price-amount {
    color: #21834a;
    font-weight: 800;
    white-space: nowrap;
}

/* Hover effects */
@media (hover: hover) {
    .hn-cart__title:hover > svg {
        transform: rotate(-5deg) scale(1.04);
        background: #d9f0df;
    }

    .hn-cart__trust li:hover {
        transform: translateY(-4px);
        border-color: #b9dfc4;
        box-shadow: 0 9px 22px #173c2512;
    }

    .hn-cart__trust li:hover .ic {
        background: #27834c;
        color: #ffffff;
        transform: scale(1.06);
    }
}

/* Header entrance */
/*@keyframes hn-cart-head-enter {*/
/*    from {*/
/*        opacity: 0;*/
/*        transform: translateY(10px);*/
/*    }*/
/*    to {*/
/*        opacity: 1;*/
/*        transform: translateY(0);*/
/*    }*/
/*}*/

/* Badge entrance */
@keyframes hn-cart-badge-enter {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {
    .hn-cart__head {
        align-items: flex-start;
        flex-direction: column;
        gap: 22px;
        padding: 22px;
    }

    .hn-cart__trust {
        width: 100%;
    }

    .hn-cart__trust li {
        min-width: 0;
    }
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 480px) {
    .hn-cart__head {
        gap: 20px;
        margin: 6px 0 22px;
        padding: 17px 12px;
        border-radius: 18px;
    }

    .hn-cart__title {
        gap: 12px;
        align-items: center;
    }

    .hn-cart__title > svg {
        width: 48px;
        height: 48px;
        flex-basis: 48px;
        padding: 11px;
        border-radius: 14px;
    }

    .hn-cart__title h1 {
        font-size: clamp(25px, 7vw, 31px);
        letter-spacing: -0.7px;
    }

    .hn-cart__title small {
        font-size: 12px;
    }

    .hn-cart__title p {
        margin-top: 5px;
        font-size: 12px;
        line-height: 1.5;
    }

    .hn-cart__trust {
        gap: 7px;
    }

    .hn-cart__trust li {
        gap: 7px;
        padding: 12px 3px !important;
        font-size: 10px;
        line-height: 1.4;
        border-radius: 12px;
    }

    .hn-cart__trust .ic {
        width: 35px;
        height: 35px;
        flex-basis: 35px;
        border-radius: 10px;
    }

    .hn-cart__trust .ic svg {
        width: 19px;
        height: 19px;
    }
}

/* Reduced motion accessibility */
@media (prefers-reduced-motion: reduce) {
    .hn-cart__head,
    .hn-cart__trust li {
        animation: none !important;
        transition: none !important;
    }

    .hn-cart__title:hover > svg,
    .hn-cart__trust li:hover,
    .hn-cart__trust li:hover .ic {
        transform: none;
    }
}

