/* ==========================================================
   LUMINA SALON — WOOCOMMERCE v15
   Matches Instantio: orange + cream + clean card UI
   ========================================================== */

body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page, body.woocommerce-account,
body.woocommerce-cart main, body.woocommerce-checkout main, body.woocommerce-account main {
    background: #fdf6f0 !important; color: #1a1a1a;
}
.ls-woo-main, .ls-woo-wrapper { background: #fdf6f0; width: 100%; }
.woocommerce-breadcrumb, nav.woocommerce-breadcrumb, .woocommerce-result-count { display: none !important; }

/* Hero */
.ls-shop-hero, .ls-page-logo-hero { background: linear-gradient(160deg,#fff8f0 0%,#fff 60%,#fff0e6 100%); text-align: center; padding: 72px 24px 48px; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 180px; border-bottom: 1px solid #f3e8da; }
@media(min-width:768px){.ls-shop-hero,.ls-page-logo-hero{padding:120px 40px 60px;min-height:240px}}
.ls-shop-hero__logo img,.ls-page-logo-hero__logo img{height:56px;width:auto;display:block;margin:0 auto}
.ls-shop-hero__logo,.ls-page-logo-hero__logo{display:inline-block;margin-bottom:16px;text-decoration:none}
.ls-shop-hero__wordmark,.ls-page-logo-hero__name{font-family:var(--ls-font-heading);font-size:1.8rem;font-weight:900;color:#1a1a1a}
.ls-shop-hero__title,.ls-page-logo-hero__title{font-family:var(--ls-font-heading);font-size:clamp(1.6rem,4vw,2.4rem);font-weight:800;color:#1a1a1a;margin:0}
.ls-shop-hero__title::after,.ls-page-logo-hero__title::after{content:'';display:block;width:48px;height:3px;background:linear-gradient(90deg,#ff6b1a,#ff8c47);margin:16px auto 0;border-radius:2px}

/* Sort */
.woocommerce-ordering{margin:0 0 24px!important;float:none!important}
.woocommerce-ordering select{padding:10px 16px;border:1.5px solid #e5e7eb;border-radius:10px;font-size:.88rem;color:#1a1a1a;background:#fff;cursor:pointer}

/* Product Grid */
.woocommerce ul.products::before,.woocommerce ul.products::after,.woocommerce-page ul.products::before,.woocommerce-page ul.products::after{display:none!important;content:none!important}
.woocommerce ul.products,.woocommerce-page ul.products{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:14px!important;list-style:none!important;margin:0!important;padding:0!important;width:100%!important;align-items:stretch!important}
@media(min-width:640px){.woocommerce ul.products,.woocommerce-page ul.products{gap:20px!important}}
@media(min-width:900px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(3,1fr)!important}}
@media(min-width:1200px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(4,1fr)!important}}
.woocommerce ul.products li.product{background:#fff!important;border-radius:16px!important;overflow:hidden!important;border:1px solid #eeeae4!important;box-shadow:0 2px 12px rgba(26,26,26,.04)!important;transition:transform .25s,box-shadow .25s,border-color .25s!important;width:100%!important;margin:0!important;padding:0!important;display:flex!important;flex-direction:column!important;position:relative!important}
.woocommerce ul.products li.product:hover{transform:translateY(-5px)!important;box-shadow:0 16px 40px rgba(255,107,26,.1)!important;border-color:#ffd4b0!important}
.woocommerce ul.products li.product a img{width:100%!important;aspect-ratio:1/1!important;height:auto!important;object-fit:cover!important;display:block!important;transition:transform .4s!important}
.woocommerce ul.products li.product:hover a img{transform:scale(1.05)!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--ls-font-heading)!important;font-size:.95rem!important;font-weight:700!important;color:#1a1a1a!important;padding:14px 14px 4px!important;margin:0!important}
.woocommerce ul.products li.product .price{font-weight:800!important;font-size:.95rem!important;color:#ff6b1a!important;padding:0 14px!important;margin:0 0 6px!important;display:block!important}
.woocommerce ul.products li.product .price del{color:#b8b0a8!important;font-weight:400!important;font-size:.8rem!important}
.woocommerce ul.products li.product .price ins{text-decoration:none!important;color:#ff6b1a!important}
.woocommerce ul.products li.product .star-rating{padding:0 14px!important;margin:0 0 8px!important;font-size:.75rem!important}
.woocommerce ul.products li.product .button{display:block!important;width:calc(100% - 28px)!important;margin:auto 14px 14px!important;padding:11px!important;background:#ff6b1a!important;color:#fff!important;border:none!important;border-radius:10px!important;font-size:.78rem!important;font-weight:700!important;letter-spacing:.05em!important;text-transform:uppercase!important;text-align:center!important;cursor:pointer!important;transition:background .2s!important;margin-top:auto!important;text-decoration:none!important}
.woocommerce ul.products li.product .button:hover{background:#ea580c!important}
.woocommerce ul.products li.product .onsale{position:absolute!important;top:12px!important;left:12px!important;background:#ef4444!important;color:#fff!important;border-radius:6px!important;padding:4px 10px!important;font-size:.68rem!important;font-weight:800!important;text-transform:uppercase!important;z-index:2!important;margin:0!important;min-height:auto!important;line-height:1.5!important}

/* CART — matches Instantio design */
.woocommerce-cart .ls-page-logo-hero,.woocommerce-checkout .ls-page-logo-hero{display:none}
.woocommerce-cart .woocommerce{width:100%;max-width:840px;margin:0 auto;padding:24px 16px 100px;box-sizing:border-box;background:transparent}
@media(min-width:768px){.woocommerce-cart .woocommerce{padding:40px 32px 100px}}
.woocommerce-cart form.woocommerce-cart-form{background:#fff;border-radius:18px;border:1px solid #fde0c8;overflow:hidden;margin-bottom:20px}
.woocommerce-cart table.cart{width:100%;border-collapse:collapse}
.woocommerce-cart table.cart thead{background:#fdf6f0}
.woocommerce-cart table.cart thead th{font-size:.78rem;font-weight:600;color:#6b7280;padding:14px 16px;border:none;text-align:left}
.woocommerce-cart table.cart th.product-thumbnail,.woocommerce-cart table.cart td.product-thumbnail{display:none}
.woocommerce-cart table.cart th.product-remove{width:40px}
.woocommerce-cart table.cart tbody tr{border-bottom:1px solid #fde8d6}
.woocommerce-cart table.cart tbody tr:last-child{border-bottom:none}
.woocommerce-cart table.cart td{padding:16px;border:none;vertical-align:middle}
.woocommerce-cart table.cart td.product-remove{width:40px;padding:16px 8px 16px 16px}
.woocommerce-cart table.cart td.product-remove a.remove{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:transparent;color:#9ca3af!important;font-size:0!important;text-decoration:none;transition:all .2s;position:relative}
.woocommerce-cart table.cart td.product-remove a.remove::before{content:'';display:block;width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'><polyline points='3 6 5 6 21 6'/><path d='M19 6l-2 14H7L5 6'/><path d='M10 11v6'/><path d='M14 11v6'/><path d='M9 6V4h6v2'/></svg>") no-repeat center/contain;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'><polyline points='3 6 5 6 21 6'/><path d='M19 6l-2 14H7L5 6'/><path d='M10 11v6'/><path d='M14 11v6'/><path d='M9 6V4h6v2'/></svg>") no-repeat center/contain}
.woocommerce-cart table.cart td.product-remove a.remove:hover{color:#ef4444!important}
.woocommerce-cart table.cart td.product-name a{font-size:.95rem;font-weight:600;color:#1a1a1a;text-decoration:none}
.woocommerce-cart table.cart td.product-name a:hover{color:#ff6b1a}
.woocommerce-cart table.cart td.product-price,.woocommerce-cart table.cart td.product-subtotal{font-size:.95rem;font-weight:700;color:#1a1a1a}
.woocommerce-cart table.cart .quantity{display:inline-flex;align-items:center;border:1.5px solid #d1d5db;border-radius:50px;overflow:hidden;background:#fff}
.woocommerce-cart table.cart .quantity .qty{width:36px;padding:6px 2px;border:none;background:transparent;text-align:center;font-size:.9rem;font-weight:700;color:#1a1a1a;-moz-appearance:textfield}
.woocommerce-cart table.cart .quantity .qty::-webkit-inner-spin-button,.woocommerce-cart table.cart .quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.woocommerce-cart table.cart tbody tr:nth-child(even){background:#fdf6f0}
.woocommerce-cart table.cart tbody tr:nth-child(odd){background:#fff}
.woocommerce-cart table.cart td.actions{padding:18px 16px;background:#fdf6f0;border-top:1px solid #fde0c8}
.woocommerce-cart .coupon{display:flex;align-items:center;gap:0;flex-wrap:wrap}
.woocommerce-cart .coupon label{display:none}
.woocommerce-cart .coupon input#coupon_code{flex:1;min-width:150px;padding:12px 16px;border:1.5px solid #d1d5db;border-right:none;border-radius:10px 0 0 10px;font-size:.9rem;background:#fff;color:#1a1a1a;outline:none}
.woocommerce-cart .coupon input#coupon_code:focus{border-color:#ff6b1a}
.woocommerce-cart .coupon .button{padding:12px 20px;border:none;border-radius:0 10px 10px 0;background:#ff6b1a;color:#fff;font-size:.85rem;font-weight:700;cursor:pointer;transition:background .2s;white-space:nowrap}
.woocommerce-cart .coupon .button:hover{background:#ea580c}
.woocommerce-cart button[name="update_cart"]{width:100%;margin-top:10px;padding:12px 20px;border:1.5px solid #fde0c8;border-radius:10px;background:transparent;color:#ff6b1a;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .2s}
.woocommerce-cart button[name="update_cart"]:hover{background:#fff0e6;border-color:#ff6b1a}
.woocommerce-cart .cart_totals{background:#fff;border-radius:18px;border:1px solid #fde0c8;padding:24px;margin-bottom:20px}
.woocommerce-cart .cart_totals h2{font-family:var(--ls-font-heading);font-size:1.2rem;font-weight:800;color:#1a1a1a;margin:0 0 16px}
.woocommerce-cart .cart_totals .shop_table{width:100%;border-collapse:collapse}
.woocommerce-cart .cart_totals .shop_table th,.woocommerce-cart .cart_totals .shop_table td{padding:10px 0;font-size:.95rem}
.woocommerce-cart .cart_totals .shop_table th{font-weight:500;color:#6b7280;text-align:left}
.woocommerce-cart .cart_totals .shop_table td{font-weight:700;color:#1a1a1a;text-align:right}
.woocommerce-cart .cart_totals .shop_table tr.order-total th{font-weight:800;color:#1a1a1a;padding-top:14px}
.woocommerce-cart .cart_totals .shop_table tr.order-total td{font-weight:900;color:#1a1a1a;font-size:1.1rem;padding-top:14px}
.woocommerce-cart .wc-proceed-to-checkout{margin-top:0;padding:20px;background:#fff8f0;border-radius:0 0 18px 18px;border-top:1px solid #fde0c8}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart a.checkout-button{display:block!important;width:100%!important;box-sizing:border-box!important;background:#ff6b1a!important;color:#fff!important;border-radius:12px!important;padding:18px 28px!important;font-size:1rem!important;font-weight:700!important;text-align:center!important;text-decoration:none!important;border:none!important;cursor:pointer!important;transition:all .2s!important;box-shadow:0 4px 16px rgba(255,107,26,.3)!important}
.woocommerce-cart a.checkout-button:hover{background:#ea580c!important}
.woocommerce-cart .cart-empty{text-align:center;padding:60px 24px;font-size:1.05rem;color:#6b7280}
.woocommerce-cart .return-to-shop{text-align:center}
.woocommerce-cart .return-to-shop .button{background:#ff6b1a;color:#fff;border-radius:12px;padding:14px 32px;text-decoration:none;font-weight:700;display:inline-block;transition:all .2s}
.woocommerce-cart .return-to-shop .button:hover{background:#ea580c}
@media(max-width:640px){.woocommerce-cart table.cart td.product-price,.woocommerce-cart table.cart th.product-price{display:none}.woocommerce-cart table.cart td{padding:12px 10px}}

/* CHECKOUT */
.woocommerce-checkout .ls-page-logo-hero{display:none}
.woocommerce-checkout .woocommerce{width:100%;max-width:840px;margin:0 auto;padding:24px 16px 100px;box-sizing:border-box}
@media(min-width:768px){.woocommerce-checkout .woocommerce{padding:40px 32px 100px}}
.woocommerce-checkout #customer_details{background:#fff;border-radius:18px;border:1px solid #fde0c8;padding:24px;margin-bottom:20px}
.woocommerce-checkout h3{font-family:var(--ls-font-heading);font-size:1.2rem;font-weight:800;color:#ff6b1a;margin:0 0 20px}
.woocommerce form .form-row{margin-bottom:16px;padding:0}
.woocommerce form .form-row label{font-size:.88rem;font-weight:600;color:#1a1a1a;margin-bottom:6px;display:block;text-transform:none;letter-spacing:0}
.woocommerce form .form-row label abbr{color:#ef4444;text-decoration:none}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{width:100%;padding:14px 16px;border:1.5px solid #fde0c8;border-radius:12px;font-size:.95rem;color:#1a1a1a;background:#fdf0e8;outline:none;box-sizing:border-box;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.woocommerce form .form-row input.input-text::placeholder,.woocommerce form .form-row textarea::placeholder{color:#9ca3af}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus,.woocommerce form .form-row select:focus{border-color:#ff6b1a;background:#fff;box-shadow:0 0 0 3px rgba(255,107,26,.1)}
.woocommerce form .form-row select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231a1a1a' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;cursor:pointer}
.woocommerce form .form-row textarea{height:100px;resize:vertical}
.woocommerce form .form-row-first{float:left;width:48%}
.woocommerce form .form-row-last{float:right;width:48%}
.woocommerce form .clear{clear:both}
@media(max-width:600px){.woocommerce form .form-row-first,.woocommerce form .form-row-last{float:none;width:100%}}
#order_review_heading{font-family:var(--ls-font-heading);font-size:1.2rem;font-weight:800;color:#1a1a1a;margin:28px 0 16px}
#order_review{background:#fff;border-radius:18px;border:1px solid #fde0c8;padding:24px;margin-bottom:20px}
#order_review table.shop_table{width:100%;border-collapse:collapse}
#order_review table.shop_table thead th{font-size:.78rem;font-weight:600;color:#6b7280;padding:0 0 12px;border-bottom:1px solid #fde0c8}
#order_review table.shop_table tbody tr td{padding:12px 0;border-bottom:1px solid #fde8d6;font-size:.95rem;color:#1a1a1a}
#order_review table.shop_table tfoot tr th{font-size:.9rem;font-weight:600;color:#6b7280;padding:10px 0}
#order_review table.shop_table tfoot tr td{font-size:.95rem;font-weight:700;text-align:right;padding:10px 0}
#order_review table.shop_table tfoot tr.order-total th{font-weight:800;color:#1a1a1a;padding-top:14px;border-top:1px solid #fde0c8}
#order_review table.shop_table tfoot tr.order-total td{font-weight:900;font-size:1.15rem;color:#1a1a1a;padding-top:14px;border-top:1px solid #fde0c8}
#payment{margin-top:0;background:transparent!important}
#payment .wc_payment_methods{list-style:none;padding:0;margin:0 0 16px}
#payment .wc_payment_methods li{background:#fdf6f0;border:1.5px solid #fde0c8;border-radius:12px;padding:14px 18px;margin-bottom:8px;cursor:pointer;transition:all .2s}
#payment .wc_payment_methods li:has(input:checked){border-color:#ff6b1a;background:#fff0e6}
#payment .wc_payment_methods li label{display:flex;align-items:center;gap:10px;font-weight:600;font-size:.95rem;color:#1a1a1a;cursor:pointer;margin:0;text-transform:none;letter-spacing:0}
#payment .wc_payment_methods li input[type="radio"]{width:18px;height:18px;accent-color:#ff6b1a}
#payment .payment_box{font-size:.85rem;color:#6b7280;margin-top:10px;padding:12px 14px;background:#fff;border:1px solid #fde0c8;border-radius:10px}
#payment .woocommerce-privacy-policy-text{font-size:.78rem;color:#6b7280;margin-bottom:16px}
#payment .woocommerce-privacy-policy-text a{color:#ff6b1a}
#payment #place_order{width:100%!important;display:block!important;box-sizing:border-box!important;background:#ff6b1a!important;color:#fff!important;border-radius:12px!important;padding:18px 28px!important;font-size:1rem!important;font-weight:700!important;border:none!important;cursor:pointer!important;transition:all .2s!important;box-shadow:0 4px 16px rgba(255,107,26,.3)!important}
#payment #place_order:hover{background:#ea580c!important}
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{background:#fff;border:1.5px solid #fde0c8!important;border-radius:12px;padding:14px 18px;color:#1a1a1a;font-size:.9rem;margin-bottom:16px;border-left-width:1.5px!important}
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info a,.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a{color:#ff6b1a;font-weight:700}

/* Notices */
.woocommerce-message,.woocommerce-error,.woocommerce-info{border-radius:12px;padding:14px 20px;margin-bottom:20px;font-weight:500;font-size:.9rem;border-left:4px solid;display:flex;align-items:center;gap:10px}
.woocommerce-message{background:#dcfce7;border-color:#16a34a;color:#14532d}
.woocommerce-error{background:#fee2e2;border-color:#dc2626;color:#7f1d1d}
.woocommerce-info{background:#fff0e6;border-color:#ff6b1a;color:#7a4a1a}

/* Single Product */
.woocommerce div.product .product_title{font-family:var(--ls-font-heading);font-size:clamp(1.8rem,4vw,2.4rem);font-weight:800;color:#1a1a1a}
.woocommerce div.product p.price{font-size:1.6rem;font-weight:900;color:#ff6b1a;margin:14px 0 24px}
.woocommerce div.product form.cart .button,.woocommerce .single_add_to_cart_button{background:#ff6b1a!important;color:#fff!important;border-radius:12px!important;padding:15px 40px!important;font-size:.95rem!important;font-weight:800!important;border:none!important;cursor:pointer!important;transition:all .2s!important;box-shadow:0 4px 16px rgba(255,107,26,.3)!important}
.woocommerce .single_add_to_cart_button:hover{background:#ea580c!important}
.related.products,.upsells.products{margin-top:48px}
.related.products h2,.upsells.products h2{font-family:var(--ls-font-heading);font-size:1.4rem;font-weight:800;color:#1a1a1a;margin-bottom:24px}
.woocommerce-page .site-sidebar{display:none}

/* Instantio brand overrides */
[class*="insto"] [class*="checkout"],[class*="insto"] button[type="submit"]{background:#ff6b1a!important;color:#fff!important;border-radius:12px!important;border:none!important}
[class*="insto"] [class*="checkout"]:hover{background:#ea580c!important}
[class*="insto"] [class*="progress"] [class*="fill"],[class*="insto"] [class*="progress"] [class*="active"]{background:#ff6b1a!important}
.insto-sidebar-toggler,.insto_sidebar_toggler,[class*="insto"][class*="toggler"]{background:#ff6b1a!important;color:#fff!important}

/* Loyalty */
.ls-cart-loyalty-notice{max-width:840px;margin:0 auto 16px;padding:14px 20px;background:#fff0e6;border:1.5px solid #fde0c8;border-radius:14px;font-size:.9rem;color:#7a4a1a;display:flex;align-items:center;gap:12px}
.ls-points-redeem{background:#fff0e6;border:1.5px solid #fde0c8;border-radius:16px;padding:20px;margin-bottom:20px}
.ls-points-redeem__heading{font-family:var(--ls-font-heading);font-size:1.05rem;font-weight:800;color:#ff6b1a;margin:0 0 8px;display:flex;align-items:center;gap:8px}
.ls-points-redeem__meta{font-size:.9rem;color:#7a4a1a;margin:0 0 14px}
.ls-points-redeem__row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.ls-points-redeem__input{flex:1;min-width:100px;max-width:160px;padding:11px 14px;border:1.5px solid #fde0c8;border-radius:10px;font-size:.9rem;background:#fff;outline:none}
.ls-points-redeem__input:focus{border-color:#ff6b1a;box-shadow:0 0 0 3px rgba(255,107,26,.1)}
.ls-points-redeem__btn{padding:11px 22px;background:#ff6b1a;color:#fff;border:none;border-radius:10px;font-size:.88rem;font-weight:700;cursor:pointer;transition:all .2s}
.ls-points-redeem__btn:hover{background:#ea580c}
.ls-points-redeem__msg{font-size:.88rem;margin-top:10px;padding:10px 14px;border-radius:8px}
.ls-points-redeem__msg.success{background:#dcfce7;color:#166534}
.ls-points-redeem__msg.error{background:#fef2f2;color:#991b1b}


/* Fix payment method box overflow */
#payment .payment_box {
    font-size: .85rem;
    color: #6b7280;
    margin-top: 10px;
    padding: 12px 14px;
    background: #fff;
    border: 1px solid #fde0c8;
    border-radius: 10px;
    line-height: 1.5;
    overflow: hidden;
    word-wrap: break-word;
    overflow-wrap: break-word;
}
#payment .payment_box p {
    margin: 0 0 8px;
    word-wrap: break-word;
    overflow-wrap: break-word;
}
#payment .payment_box p:last-child { margin-bottom: 0; }


/* Product Variation Forms — ensure options are selectable */
.woocommerce div.product form.cart .variations {
    width: 100%;
    margin-bottom: 20px;
}
.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th {
    padding: 8px 0;
    vertical-align: middle;
    border: none;
}
.woocommerce div.product form.cart .variations label {
    font-size: .88rem;
    font-weight: 600;
    color: #1a1a1a;
    margin-bottom: 6px;
    display: block;
}
.woocommerce div.product form.cart .variations select {
    width: 100%;
    padding: 12px 16px;
    border: 1.5px solid #e5e7eb;
    border-radius: 10px;
    font-size: .95rem;
    color: #1a1a1a;
    background: #fff;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
    outline: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231a1a1a' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 36px;
}
.woocommerce div.product form.cart .variations select:focus {
    border-color: #ff6b1a;
    box-shadow: 0 0 0 3px rgba(255,107,26,.1);
}
.woocommerce div.product form.cart .reset_variations {
    font-size: .82rem;
    color: #ff6b1a;
    font-weight: 600;
    margin-top: 8px;
    display: inline-block;
}
.woocommerce div.product form.cart .single_variation_wrap {
    margin-top: 16px;
}
.woocommerce div.product form.cart .woocommerce-variation-price {
    font-size: 1.3rem;
    font-weight: 800;
    color: #ff6b1a;
    margin-bottom: 12px;
}
.woocommerce div.product form.cart .woocommerce-variation-description {
    font-size: .88rem;
    color: #6b7280;
    margin-bottom: 12px;
}
.woocommerce div.product form.cart .quantity {
    display: inline-flex;
    align-items: center;
    border: 1.5px solid #e5e7eb;
    border-radius: 10px;
    overflow: hidden;
    margin-right: 12px;
}
.woocommerce div.product form.cart .quantity .qty {
    width: 52px;
    padding: 12px 8px;
    border: none;
    text-align: center;
    font-size: .95rem;
    font-weight: 700;
    -moz-appearance: textfield;
}
.woocommerce div.product form.cart .quantity .qty::-webkit-inner-spin-button,
.woocommerce div.product form.cart .quantity .qty::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}


/* Add-to-cart button loading state (prevent loop) */
.woocommerce ul.products li.product .button.loading {
    opacity: .6 !important;
    pointer-events: none !important;
    position: relative !important;
}
.woocommerce ul.products li.product .button.loading::after {
    content: '' !important;
    display: inline-block !important;
    width: 14px !important;
    height: 14px !important;
    border: 2px solid rgba(255,255,255,.3) !important;
    border-top-color: #fff !important;
    border-radius: 50% !important;
    animation: ls-spin .6s linear infinite !important;
    margin-left: 8px !important;
    vertical-align: middle !important;
}
.woocommerce ul.products li.product .button.added {
    background: #16a34a !important;
}
.woocommerce ul.products li.product .button.added::after {
    content: '\2713' !important;
    animation: none !important;
    border: none !important;
    width: auto !important;
    height: auto !important;
    font-size: .85rem !important;
}
@keyframes ls-spin { to { transform: rotate(360deg); } }

/* Single product add-to-cart loading */
.woocommerce .single_add_to_cart_button.loading {
    opacity: .6 !important;
    pointer-events: none !important;
}
.woocommerce .single_add_to_cart_button.added {
    background: #16a34a !important;
}

/* WooCommerce view-cart link after adding */
.woocommerce a.added_to_cart {
    display: inline-block;
    margin-top: 8px;
    font-size: .82rem;
    font-weight: 700;
    color: #ff6b1a;
    text-decoration: none;
}
.woocommerce a.added_to_cart:hover { text-decoration: underline; }
