/* assets/css/frontend.css */
/* ZS Cart Pro - All 10 Templates - Zuber Shaikh - https://zsweb.netlify.app/ */

/* ===== RESET & BASE ===== */
.zscp-cart-wrap,.zscp-cart-wrap *{box-sizing:border-box!important}
.zscp-cart-wrap{font-family:var(--zscp-font,inherit)!important;font-size:var(--zscp-body-size,14px)!important;color:var(--zscp-text,#1f2937)!important;background:var(--zscp-bg,#fff)!important;max-width:1400px!important;margin:0 auto!important;padding:30px 20px!important;line-height:1.6!important}

/* ===== HEADER ===== */
.zscp-header{display:flex!important;align-items:center!important;gap:12px!important;margin-bottom:30px!important;flex-wrap:wrap!important}
.zscp-header-between{justify-content:space-between!important}
.zscp-header-left{display:flex!important;align-items:center!important;gap:12px!important}
.zscp-center{flex-direction:column!important;text-align:center!important}
.zscp-title{font-size:var(--zscp-heading-size,28px)!important;color:var(--zscp-heading,#111827)!important;font-weight:700!important;margin:0!important;line-height:1.3!important}
.zscp-count,.zscp-subtitle{font-size:14px!important;color:var(--zscp-text)!important;opacity:.7!important}
.zscp-count-badge,.zscp-count-pill{background:var(--zscp-primary,#2563eb)!important;color:#fff!important;padding:4px 14px!important;border-radius:20px!important;font-size:13px!important;font-weight:600!important}

/* ===== CARDS ===== */
.zscp-card,.zscp-totals-card{background:var(--zscp-bg,#fff)!important;border:var(--zscp-border-width,1px) var(--zscp-border-style,solid) var(--zscp-border,#e5e7eb)!important;border-radius:var(--zscp-card-radius,12px)!important;padding:var(--zscp-card-padding,24px)!important;box-shadow:var(--zscp-card-shadow,0 4px 24px rgba(0,0,0,.08))!important;margin-bottom:24px!important}
.zscp-bordered{border:2px solid var(--zscp-primary,#2563eb)!important}
.zscp-card-head{padding-bottom:16px!important;border-bottom:1px solid var(--zscp-border)!important;margin-bottom:16px!important}
.zscp-card-head h3,.zscp-card-head h4{margin:0!important;font-size:18px!important;font-weight:600!important;color:var(--zscp-heading)!important}

/* ===== PROGRESS BAR ===== */
.zscp-progress-bar{display:flex!important;align-items:center!important;justify-content:center!important;margin-bottom:40px!important;padding:0 20px!important}
.zscp-progress-step{display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important}
.zscp-step-number{width:36px!important;height:36px!important;border-radius:50%!important;background:var(--zscp-border,#e5e7eb)!important;color:var(--zscp-text)!important;display:flex!important;align-items:center!important;justify-content:center!important;font-weight:600!important;font-size:14px!important}
.zscp-progress-step.active .zscp-step-number{background:var(--zscp-primary,#2563eb)!important;color:#fff!important}
.zscp-step-label{font-size:12px!important;font-weight:500!important;color:var(--zscp-text)!important;opacity:.6!important;text-transform:capitalize!important}
.zscp-progress-step.active .zscp-step-label{opacity:1!important;color:var(--zscp-primary)!important}
.zscp-progress-line{flex:1!important;height:3px!important;background:var(--zscp-border,#e5e7eb)!important;margin:0 12px!important;margin-bottom:28px!important;border-radius:2px!important}

/* ===== TWO COLUMN LAYOUT (T2, T5, T7, T9) ===== */
.zscp-two-col{display:grid!important;grid-template-columns:1fr 380px!important;gap:30px!important;align-items:start!important}
.zscp-split{display:grid!important;grid-template-columns:1fr 4px 380px!important;gap:20px!important;align-items:start!important}
.zscp-split-divider{background:var(--zscp-border)!important;border-radius:2px!important;min-height:200px!important}

/* ===== TABLE (T1, T9) ===== */
.zscp-table{width:100%!important;border-collapse:collapse!important}
.zscp-table thead th{background:var(--zscp-th-bg,#f9fafb)!important;color:var(--zscp-th-text,#374151)!important;font-weight:600!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.05em!important;padding:14px 16px!important;text-align:left!important;border-bottom:2px solid var(--zscp-border)!important}
.zscp-row td{padding:20px 16px!important;vertical-align:middle!important;border-bottom:1px solid var(--zscp-border)!important;transition:background .2s!important}
.zscp-row:hover td{background:var(--zscp-row-hover,#f3f4f6)!important}
.zscp-striped .zscp-even td{background:var(--zscp-th-bg,#f9fafb)!important}
.zscp-td-img img,.zscp-item-img img,.zscp-list-img img,.zscp-compact-img img,.zscp-stack-img img{width:var(--zscp-img-size,80px)!important;height:var(--zscp-img-size,80px)!important;object-fit:cover!important;border-radius:8px!important;border:1px solid var(--zscp-border)!important}

/* ===== ITEM ROW (T2, T5, T7, T10) ===== */
.zscp-item-row{display:flex!important;gap:16px!important;padding:20px 0!important;border-bottom:1px solid var(--zscp-border)!important;align-items:flex-start!important;transition:background .2s!important}
.zscp-item-row:last-of-type{border-bottom:none!important}
.zscp-item-row:hover{background:var(--zscp-row-hover)!important;margin:0 -16px!important;padding-left:16px!important;padding-right:16px!important;border-radius:8px!important}
.zscp-item-img{flex-shrink:0!important}
.zscp-item-info{flex:1!important;min-width:0!important}
.zscp-item-top{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:10px!important;margin-bottom:8px!important}
.zscp-item-bottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;margin-top:12px!important;flex-wrap:wrap!important}
.zscp-item-price{font-size:14px!important;color:var(--zscp-text)!important}
.zscp-item-subtotal{font-weight:700!important;font-size:16px!important;color:var(--zscp-heading)!important}

/* ===== LIST (T4) ===== */
.zscp-list-item{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:20px 0!important;border-bottom:1px solid var(--zscp-border)!important;gap:20px!important;transition:background .2s!important}
.zscp-list-item:hover{background:var(--zscp-row-hover)!important;margin:0 -16px!important;padding-left:16px!important;padding-right:16px!important;border-radius:8px!important}
.zscp-list-left{display:flex!important;align-items:center!important;gap:16px!important;flex:1!important;min-width:0!important}
.zscp-list-right{display:flex!important;align-items:center!important;gap:24px!important}
.zscp-list-subtotal{font-weight:700!important;font-size:16px!important;color:var(--zscp-heading)!important;min-width:80px!important;text-align:right!important}
.zscp-list-unit-price{font-size:13px!important;color:var(--zscp-text)!important;opacity:.7!important;margin-top:4px!important;display:block!important}

/* ===== COMPACT ROW (T6) ===== */
.zscp-compact-row{display:flex!important;align-items:center!important;gap:16px!important;padding:16px!important;border-bottom:1px solid var(--zscp-border)!important;transition:background .2s!important}
.zscp-compact-row:hover{background:var(--zscp-row-hover)!important}
.zscp-compact-img{flex-shrink:0!important}
.zscp-compact-img img{width:50px!important;height:50px!important;object-fit:cover!important;border-radius:6px!important;border:1px solid var(--zscp-border)!important}
.zscp-compact-name{flex:1!important;min-width:0!important}
.zscp-compact-price,.zscp-compact-total{font-weight:600!important;min-width:80px!important;text-align:center!important;color:var(--zscp-heading)!important}
.zscp-compact-qty{min-width:120px!important;display:flex!important;justify-content:center!important}
.zscp-compact-total{font-weight:700!important;color:var(--zscp-heading)!important}

/* ===== CARD GRID (T3) ===== */
.zscp-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))!important;gap:24px!important;margin-bottom:30px!important}
.zscp-pcard{background:var(--zscp-bg)!important;border:var(--zscp-border-width) var(--zscp-border-style) var(--zscp-border)!important;border-radius:var(--zscp-card-radius,12px)!important;overflow:hidden!important;box-shadow:var(--zscp-card-shadow)!important;transition:transform .3s,box-shadow .3s!important;position:relative!important}
.zscp-pcard:hover{transform:translateY(-4px)!important;box-shadow:0 12px 40px rgba(0,0,0,.12)!important}
.zscp-pcard-rm{position:absolute!important;top:12px!important;right:12px!important;z-index:10!important}
.zscp-pcard-img{overflow:hidden!important;aspect-ratio:1!important;background:#f5f5f5!important}
.zscp-pcard-img img{width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .3s!important}
.zscp-pcard:hover .zscp-pcard-img img{transform:scale(1.05)!important}
.zscp-pcard-body{padding:20px!important}
.zscp-pcard-row{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:8px 0!important;border-top:1px solid var(--zscp-border)!important;font-size:14px!important}
.zscp-pcard-subtotal{display:flex!important;justify-content:space-between!important;background:var(--zscp-th-bg,#f9fafb)!important;margin:8px -20px -20px!important;padding:14px 20px!important;border-radius:0 0 var(--zscp-card-radius) var(--zscp-card-radius)!important}

/* ===== STACKED CARDS (T8) ===== */
.zscp-stacks{display:flex!important;flex-direction:column!important;gap:20px!important;margin-bottom:30px!important}
.zscp-stack-card{display:flex!important;gap:20px!important;background:var(--zscp-bg)!important;border:var(--zscp-border-width) var(--zscp-border-style) var(--zscp-border)!important;border-radius:var(--zscp-card-radius,12px)!important;padding:var(--zscp-card-padding,24px)!important;box-shadow:var(--zscp-card-shadow)!important;transition:transform .2s!important;align-items:center!important}
.zscp-stack-card:hover{transform:translateX(4px)!important}
.zscp-stack-img{flex-shrink:0!important}
.zscp-stack-img img{width:120px!important;height:120px!important;object-fit:cover!important;border-radius:var(--zscp-card-radius,12px)!important;border:1px solid var(--zscp-border)!important}
.zscp-stack-body{flex:1!important;min-width:0!important}
.zscp-stack-top{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:10px!important;margin-bottom:8px!important}
.zscp-stack-bottom{display:flex!important;align-items:center!important;gap:20px!important;margin-top:12px!important;flex-wrap:wrap!important}
.zscp-stack-subtotal{margin-left:auto!important;font-size:18px!important;color:var(--zscp-heading)!important}

/* ===== FLOATING BAR (T10) ===== */
.zscp-float-bar{position:sticky!important;bottom:0!important;left:0!important;right:0!important;background:var(--zscp-bg,#fff)!important;border-top:2px solid var(--zscp-border)!important;padding:20px!important;margin:30px -20px -30px!important;box-shadow:0 -4px 20px rgba(0,0,0,.1)!important;z-index:100!important;border-radius:var(--zscp-card-radius) var(--zscp-card-radius) 0 0!important}
.zscp-float-inner{display:flex!important;justify-content:space-between!important;align-items:center!important;max-width:1400px!important;margin:0 auto!important;gap:24px!important;flex-wrap:wrap!important}
.zscp-float-info{display:flex!important;gap:20px!important;flex-wrap:wrap!important}
.zscp-float-line{display:flex!important;gap:8px!important;font-size:13px!important;color:var(--zscp-text)!important}
.zscp-float-total{display:flex!important;align-items:center!important;gap:10px!important}
.zscp-fl-label{font-weight:500!important;color:var(--zscp-text)!important}
.zscp-fl-value{font-size:24px!important;font-weight:800!important;color:var(--zscp-heading)!important}
.zscp-float-checkout{flex-shrink:0!important}

/* ===== PRODUCT NAME ===== */
.zscp-pname{font-weight:600!important;color:var(--zscp-heading)!important;text-decoration:none!important;font-size:15px!important;transition:color .2s!important;display:block!important}
.zscp-pname:hover{color:var(--zscp-primary)!important}

/* ===== PRODUCT META ===== */
.zscp-product-meta{margin-top:6px!important}
.zscp-product-meta span{display:inline-block!important;font-size:12px!important;color:var(--zscp-text)!important;opacity:.7!important;margin-right:12px!important}
.zscp-stock-in-stock{color:var(--zscp-success)!important;opacity:1!important}
.zscp-stock-out-of-stock{color:var(--zscp-error)!important;opacity:1!important}

/* ===== REMOVE BUTTON ===== */
.zscp-remove-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:30px!important;height:30px!important;border-radius:50%!important;background:transparent!important;color:var(--zscp-remove-color,#ef4444)!important;text-decoration:none!important;font-size:20px!important;font-weight:300!important;line-height:1!important;transition:all .2s!important;border:1px solid transparent!important}
.zscp-remove-btn:hover{background:var(--zscp-remove-color,#ef4444)!important;color:#fff!important;border-color:var(--zscp-remove-color,#ef4444)!important}

/* ===== QUANTITY ===== */
.zscp-qty-plusminus{display:inline-flex!important;align-items:center!important;border:var(--zscp-border-width) var(--zscp-border-style) var(--zscp-border)!important;border-radius:var(--zscp-btn-radius,8px)!important;overflow:hidden!important;background:var(--zscp-bg)!important}
.zscp-qty-btn{width:36px!important;height:36px!important;border:none!important;background:var(--zscp-th-bg,#f9fafb)!important;color:var(--zscp-text)!important;cursor:pointer!important;font-size:16px!important;font-weight:600!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .2s!important;line-height:1!important}
.zscp-qty-btn:hover{background:var(--zscp-primary)!important;color:#fff!important}
.zscp-qty-input{width:48px!important;height:36px!important;text-align:center!important;border:none!important;border-left:1px solid var(--zscp-border)!important;border-right:1px solid var(--zscp-border)!important;font-size:14px!important;font-weight:600!important;color:var(--zscp-heading)!important;background:transparent!important;-moz-appearance:textfield!important;appearance:textfield!important}
.zscp-qty-input::-webkit-inner-spin-button,.zscp-qty-input::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0!important}
.zscp-qty-dropdown{padding:8px 30px 8px 12px!important;border:var(--zscp-border-width) var(--zscp-border-style) var(--zscp-border)!important;border-radius:var(--zscp-btn-radius,8px)!important;background:var(--zscp-bg)!important;color:var(--zscp-text)!important;font-size:14px!important}
.zscp-cart-wrap .quantity input[type="number"]{width:60px!important;padding:8px!important;text-align:center!important;border:var(--zscp-border-width) var(--zscp-border-style) var(--zscp-border)!important;border-radius:var(--zscp-btn-radius,8px)!important;font-size:14px!important;color:var(--zscp-heading)!important;background:var(--zscp-bg)!important}

/* ===== COUPON ===== */
.zscp-coupon{display:flex!important;gap:8px!important;align-items:center!important;flex-wrap:wrap!important}
.zscp-coupon-input{padding:10px 16px!important;border:var(--zscp-border-width) var(--zscp-border-style) var(--zscp-border)!important;border-radius:var(--zscp-btn-radius,8px)!important;font-size:14px!important;color:var(--zscp-text)!important;background:var(--zscp-bg)!important;min-width:180px!important;transition:border-color .2s!important}
.zscp-coupon-input:focus{border-color:var(--zscp-primary)!important;outline:none!important;box-shadow:0 0 0 3px rgba(37,99,235,.1)!important}
.zscp-coupon-btn{background:var(--zscp-coupon-bg,#2563eb)!important;color:var(--zscp-coupon-text,#fff)!important;border:none!important;padding:10px 20px!important;border-radius:var(--zscp-btn-radius,8px)!important;font-weight:600!important;font-size:14px!important;cursor:pointer!important;transition:all .2s!important;text-transform:none!important}
.zscp-coupon-btn:hover{opacity:.9!important;transform:translateY(-1px)!important}
.zscp-coupon-in-totals{margin-top:16px!important;padding-top:16px!important;border-top:1px solid var(--zscp-border)!important}
.zscp-coupon-card{margin-bottom:16px!important}
.zscp-coupon-card h4{margin:0 0 12px!important;font-size:14px!important;color:var(--zscp-heading)!important}

/* ===== ACTION BUTTONS ===== */
.zscp-below-table,.zscp-actions-row{display:flex!important;justify-content:space-between!important;align-items:center!important;flex-wrap:wrap!important;gap:16px!important;margin-top:20px!important}
.zscp-btns{display:flex!important;gap:12px!important;align-items:center!important;flex-wrap:wrap!important}
.zscp-continue-btn{color:var(--zscp-primary,#2563eb)!important;text-decoration:none!important;font-weight:500!important;font-size:14px!important;transition:all .2s!important}
.zscp-continue-btn:hover{color:var(--zscp-secondary,#1e40af)!important;text-decoration:underline!important}
.zscp-outlined{border:2px solid var(--zscp-border)!important;padding:10px 20px!important;border-radius:var(--zscp-btn-radius)!important;background:transparent!important}
.zscp-outlined:hover{border-color:var(--zscp-primary)!important}
.zscp-update-btn{background:var(--zscp-update-bg,#6b7280)!important;color:var(--zscp-update-text,#fff)!important;border:none!important;padding:10px 24px!important;border-radius:var(--zscp-btn-radius,8px)!important;font-weight:600!important;font-size:14px!important;cursor:pointer!important;transition:all .2s!important}
.zscp-update-btn:hover{opacity:.9!important;transform:translateY(-1px)!important}

/* ===== CART TOTALS ===== */
.zscp-totals-title{font-size:20px!important;font-weight:700!important;color:var(--zscp-heading)!important;margin:0 0 20px!important;padding-bottom:16px!important;border-bottom:2px solid var(--zscp-border)!important}
.zscp-totals-table table{width:100%!important;border-collapse:collapse!important}
.zscp-totals-table table th,.zscp-totals-table table td{padding:14px 0!important;border-bottom:1px solid var(--zscp-border)!important;vertical-align:top!important}
.zscp-totals-table table th{text-align:left!important;font-weight:500!important;color:var(--zscp-text)!important;font-size:14px!important;width:40%!important}
.zscp-totals-table table td{text-align:right!important;font-weight:600!important;color:var(--zscp-heading)!important;font-size:14px!important}
.zscp-totals-table .order-total th,.zscp-totals-table .order-total td{font-size:18px!important;font-weight:800!important;padding-top:20px!important;border-bottom:none!important;color:var(--zscp-heading)!important}
.zscp-totals-wrap{max-width:450px!important}
.zscp-totals-right{margin-left:auto!important}
.zscp-totals-center{max-width:500px!important;margin:30px auto 0!important}
.zscp-collaterals{display:flex!important;justify-content:flex-end!important;gap:30px!important;flex-wrap:wrap!important;margin-top:30px!important}

/* ===== CHECKOUT BUTTON ===== */
.wc-proceed-to-checkout{margin-top:24px!important}
.wc-proceed-to-checkout .checkout-button,.wc-proceed-to-checkout a.checkout-button{display:block!important;width:100%!important;text-align:center!important;background:var(--zscp-checkout-bg,#10b981)!important;color:var(--zscp-checkout-text,#fff)!important;border:none!important;padding:16px 24px!important;border-radius:var(--zscp-btn-radius,8px)!important;font-weight:700!important;font-size:16px!important;cursor:pointer!important;transition:all .3s!important;text-decoration:none!important;text-transform:none!important;letter-spacing:.02em!important}
.wc-proceed-to-checkout .checkout-button:hover{background:var(--zscp-checkout-hover,#059669)!important;transform:translateY(-2px)!important;box-shadow:0 6px 20px rgba(16,185,129,.3)!important}

/* ===== STICKY ===== */
.zscp-sticky{position:sticky!important;top:30px!important}

/* ===== EMPTY CART ===== */
.zscp-cart-empty-wrap{min-height:50vh!important;display:flex!important;align-items:center!important;justify-content:center!important}
.zscp-empty-cart{text-align:center!important;padding:60px 20px!important}
.zscp-empty-icon{color:var(--zscp-border,#e5e7eb)!important;margin-bottom:30px!important}
.zscp-empty-icon svg{opacity:.5!important}
.zscp-empty-title{font-size:24px!important;font-weight:600!important;color:var(--zscp-heading)!important;margin:0 0 10px!important}
.zscp-empty-subtitle{font-size:16px!important;color:var(--zscp-text)!important;opacity:.7!important;margin:0 0 30px!important}
.zscp-return-btn{display:inline-block!important;background:var(--zscp-primary,#2563eb)!important;color:#fff!important;padding:14px 32px!important;border-radius:var(--zscp-btn-radius,8px)!important;font-weight:600!important;font-size:16px!important;text-decoration:none!important;transition:all .3s!important;border:none!important}
.zscp-return-btn:hover{background:var(--zscp-secondary,#1e40af)!important;transform:translateY(-2px)!important}

/* ===== CROSS-SELLS ===== */
.zscp-cross-sells{margin-top:40px!important;padding-top:30px!important;border-top:1px solid var(--zscp-border)!important}
.zscp-cross-sells h2{font-size:22px!important;font-weight:700!important;color:var(--zscp-heading)!important;margin-bottom:20px!important}

/* ===== NOTICES ===== */
.zscp-cart-wrap .woocommerce-message,.zscp-cart-wrap .woocommerce-info,.zscp-cart-wrap .woocommerce-error{border-radius:var(--zscp-btn-radius,8px)!important;padding:14px 20px!important;margin-bottom:20px!important}
.zscp-cart-wrap .woocommerce-message{background:#ecfdf5!important;border-color:var(--zscp-success)!important;color:#065f46!important}
.zscp-cart-wrap .woocommerce-error{background:#fef2f2!important;border-color:var(--zscp-error)!important;color:#991b1b!important}

/* ===== LOADING ===== */
.zscp-loading{opacity:.5!important;pointer-events:none!important}

/* ===== RESPONSIVE ===== */
@media(max-width:1024px){
    .zscp-two-col,.zscp-split{grid-template-columns:1fr!important}
    .zscp-split-divider{display:none!important}
    .zscp-float-bar{position:relative!important;margin:30px 0 0!important}
}
@media(max-width:768px){
    .zscp-cart-wrap{padding:20px 15px!important}
    .zscp-title{font-size:22px!important}
    .zscp-grid{grid-template-columns:1fr!important}
    .zscp-table thead{display:none!important}
    .zscp-row{display:flex!important;flex-wrap:wrap!important;gap:12px!important}
    .zscp-row td{border:none!important;padding:4px 0!important;display:block!important}
    .zscp-row td::before{content:attr(data-title)!important;display:block!important;font-size:11px!important;font-weight:600!important;text-transform:uppercase!important;color:var(--zscp-th-text)!important;margin-bottom:4px!important}
    .zscp-td-rm::before,.zscp-td-img::before{display:none!important}
    .zscp-list-item,.zscp-compact-row{flex-direction:column!important;align-items:flex-start!important}
    .zscp-list-right{width:100%!important;justify-content:space-between!important}
    .zscp-stack-card{flex-direction:column!important}
    .zscp-stack-img img{width:100%!important;height:200px!important}
    .zscp-compact-price::before,.zscp-compact-total::before{content:attr(data-label) " "!important;font-weight:400!important;opacity:.7!important}
    .zscp-header-between{flex-direction:column!important;gap:12px!important}
    .zscp-below-table,.zscp-actions-row{flex-direction:column!important}
    .zscp-coupon{width:100%!important}
    .zscp-coupon-input{flex:1!important;min-width:0!important}
    .zscp-btns{width:100%!important;justify-content:space-between!important}
    .zscp-totals-wrap{max-width:100%!important}
    .zscp-float-inner{flex-direction:column!important;text-align:center!important}
    .zscp-float-info{flex-direction:column!important;gap:8px!important}
    .zscp-float-checkout{width:100%!important}
}
@media(max-width:480px){
    .zscp-cart-wrap{padding:15px 10px!important}
    .zscp-card,.zscp-totals-card{padding:16px!important}
}