/* Rani's Closet — WooCommerce styles (loaded only when WooCommerce is active). */

/* Notices */
.woocommerce-notices-wrapper{margin-bottom:16px}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;margin:0 0 20px;padding:16px 20px;background:#fff;border:1px solid var(--rc-line);border-left:3px solid var(--rc-accent);display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:space-between;font-size:.95rem}
.woocommerce-error{border-left-color:#B3261E}
.woocommerce-message .button,.woocommerce-info .button{order:2;min-height:38px;padding:8px 16px}
.woocommerce-error li{margin:0}

/* Shop toolbar */
.woocommerce-result-count{float:left;margin:0 0 24px;color:var(--rc-muted);font-size:.88rem;line-height:46px}
.woocommerce-ordering{float:right;margin:0 0 24px}
.woocommerce-ordering select{width:auto;min-width:200px}
ul.products{clear:both}
nav.woocommerce-pagination{margin-top:48px;text-align:center}
nav.woocommerce-pagination ul{list-style:none;display:inline-flex;gap:4px;padding:0;border:0;margin:0}
nav.woocommerce-pagination li{margin:0;border:0}
nav.woocommerce-pagination .page-numbers{display:inline-grid}
.woocommerce-no-products-found{text-align:center;padding:40px 0}

/* Single product */
.single-product div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:start;position:relative}
.single-product div.product>*{grid-column:1/-1}
.single-product div.product>.woocommerce-product-gallery{grid-column:1;grid-row:1/span 3}
.single-product div.product>.summary{grid-column:2;grid-row:1;position:sticky;top:calc(var(--rc-header-h) + 24px)}
.single-product div.product>.rc-accordion{grid-column:2;grid-row:2}
.woocommerce-product-gallery{position:relative;margin:0}
.woocommerce-product-gallery__wrapper{margin:0}
.woocommerce-product-gallery__image img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;background:var(--rc-soft)}
.woocommerce-product-gallery .flex-control-thumbs{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.woocommerce-product-gallery .flex-control-thumbs img{aspect-ratio:3/4;object-fit:cover;cursor:pointer;opacity:.6;transition:opacity .2s}
.woocommerce-product-gallery .flex-control-thumbs img.flex-active,.woocommerce-product-gallery .flex-control-thumbs img:hover{opacity:1}
.woocommerce-product-gallery__trigger{position:absolute;top:14px;right:14px;z-index:5;width:42px;height:42px;border-radius:50%;background:#fff;display:grid;place-items:center;text-decoration:none;font-size:0;box-shadow:0 4px 14px rgba(0,0,0,.15)}
.woocommerce-product-gallery__trigger::before{content:"⤢";font-size:18px}
.rc-card__badges--single{top:14px;left:14px}
.single-product .summary .product_title{font-size:clamp(1.9rem,3.4vw,2.8rem);margin-bottom:.3em}
.single-product .summary .price{font-size:1.5rem;font-weight:500;color:var(--rc-primary);margin:0 0 18px;display:block}
.single-product .summary .price ins{margin-left:4px}
.woocommerce-product-rating{display:flex;gap:8px;align-items:center;margin-bottom:10px;font-size:.85rem;color:var(--rc-muted)}
.star-rating{position:relative;display:inline-block;overflow:hidden;width:5.4em;height:1em;line-height:1;font-size:1em;letter-spacing:.1em;font-family:Arial,sans-serif}
.star-rating::before{content:"★★★★★";color:var(--rc-line);position:absolute;left:0;top:0}
.star-rating span{position:absolute;left:0;top:0;overflow:hidden;padding-top:1.5em;white-space:nowrap}
.star-rating span::before{content:"★★★★★";position:absolute;left:0;top:0;color:var(--rc-accent)}
.woocommerce-product-details__short-description{color:var(--rc-muted);margin-bottom:22px}
.rc-lowstock{display:inline-flex;align-items:center;gap:8px;color:#B3261E;font-weight:500;font-size:.9rem;margin:0 0 14px}
.rc-lowstock::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;animation:rc-pulse 1.6s infinite}
@keyframes rc-pulse{50%{opacity:.25}}
.stock.out-of-stock{color:#B3261E;font-weight:500}
form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;margin:0 0 18px}
form.cart.variations_form{display:block}
.single_variation_wrap .woocommerce-variation-add-to-cart,form.cart:not(.variations_form){display:flex;gap:12px;flex-wrap:wrap;width:100%}
.single_add_to_cart_button{flex:1;min-width:180px;min-height:54px}
table.variations{width:100%;border:0;margin-bottom:16px;border-collapse:collapse}
table.variations th,table.variations td{display:block;padding:0;text-align:left;border:0}
table.variations th.label{margin:12px 0 6px;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}
table.variations select{max-width:100%}
.reset_variations{display:inline-block;margin-top:6px;font-size:.8rem;color:var(--rc-muted)}
.woocommerce-variation-price .price{font-size:1.2rem}
.quantity{display:inline-flex}
.quantity .qty{width:84px;min-height:54px;text-align:center;padding:0}
.product_meta{display:grid;gap:4px;font-size:.85rem;color:var(--rc-muted);padding-top:18px;border-top:1px solid var(--rc-line);margin-top:18px}
.product_meta a{color:var(--rc-primary)}
.rc-assure{list-style:none;margin:20px 0 0;padding:18px 0 0;border-top:1px solid var(--rc-line);display:grid;gap:12px;font-size:.9rem}
.rc-assure li{display:flex;gap:12px;align-items:flex-start}
.rc-assure svg{flex:none;width:22px;height:22px;fill:none;stroke:var(--rc-accent);stroke-width:1.5;margin-top:2px}
.rc-accordion{margin-top:8px;border-top:1px solid var(--rc-line)}
.rc-accordion details{border-bottom:1px solid var(--rc-line)}
.rc-accordion summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:16px 0;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500}
.rc-accordion summary::-webkit-details-marker{display:none}
.rc-accordion summary::after{content:"+";font-size:1.3rem;color:var(--rc-accent);line-height:1}
.rc-accordion details[open] summary::after{content:"−"}
.rc-accordion__body{padding:0 0 18px;color:var(--rc-muted);font-size:.95rem}
.rc-accordion__body img{margin:0}
.woocommerce-tabs{margin-top:clamp(32px,5vw,64px)}
.woocommerce-tabs ul.tabs{list-style:none;display:flex;gap:28px;border-bottom:1px solid var(--rc-line);padding:0;margin:0 0 28px;overflow-x:auto}
.woocommerce-tabs ul.tabs li a{display:block;padding:12px 0;text-decoration:none;font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}
.woocommerce-tabs ul.tabs li.active a{border-color:var(--rc-accent);color:var(--rc-primary)}
.woocommerce-Tabs-panel h2{font-size:1.5rem}
#reviews .commentlist{list-style:none;padding:0}
#reviews .commentlist li{border-bottom:1px solid var(--rc-line);padding:16px 0}
#reviews .comment-text .meta{color:var(--rc-muted);font-size:.85rem}
.comment-form-rating select{width:auto}
p.stars a{color:var(--rc-accent);font-size:1.2rem;text-decoration:none;margin-right:4px}
.related.products,.upsells.products{margin-top:clamp(40px,6vw,80px)}
.related.products>h2,.upsells.products>h2{text-align:center;margin-bottom:28px}
@media (max-width:860px){
  .single-product div.product{grid-template-columns:1fr}
  .single-product div.product>.woocommerce-product-gallery,.single-product div.product>.summary,.single-product div.product>.rc-accordion{grid-column:1;grid-row:auto}
  .single-product div.product>.summary{position:static}
}

/* Sticky add-to-cart bar (mobile) */
.rc-sticky-atc{position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--rc-line);box-shadow:0 -10px 30px -16px rgba(0,0,0,.3);display:none;align-items:center;gap:14px;padding:10px var(--rc-gutter) calc(10px + env(safe-area-inset-bottom));transform:translateY(100%);transition:transform .3s}
.rc-sticky-atc.is-on{transform:none}
.rc-sticky-atc__info{flex:1;min-width:0;display:grid;line-height:1.3}
.rc-sticky-atc__info strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.9rem}
.rc-sticky-atc__info span{font-size:.88rem;color:var(--rc-primary)}
@media (max-width:860px){.rc-sticky-atc:not([hidden]){display:flex}}

/* Cart */
.woocommerce-cart-form table.shop_table,.woocommerce table.shop_table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--rc-line)}
.shop_table th{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;text-align:left;padding:14px 16px;background:var(--rc-soft);font-weight:500}
.shop_table td{padding:16px;border-top:1px solid var(--rc-line);vertical-align:middle}
.shop_table .product-thumbnail img{width:84px;aspect-ratio:3/4;object-fit:cover}
.shop_table .product-name a{font-family:var(--rc-serif);font-size:1.15rem;font-weight:600;text-decoration:none}
.shop_table .product-remove a{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--rc-line);text-decoration:none;font-size:1.2rem;line-height:1}
.shop_table .product-remove a:hover{background:#B3261E;color:#fff;border-color:#B3261E}
.shop_table .quantity .qty{min-height:44px;width:70px}
.shop_table .actions{background:var(--rc-soft)}
.shop_table .coupon{display:flex;gap:8px;float:left}
.shop_table .coupon input{width:200px}
.shop_table .actions>.button{float:right}
.cart-collaterals{margin-top:32px;display:flex;justify-content:flex-end}
.cart_totals{width:min(100%,460px)}
.cart_totals h2{font-size:1.5rem}
.cart_totals table th{background:transparent;text-transform:none;letter-spacing:0;font-size:.95rem}
.wc-proceed-to-checkout .checkout-button{width:100%;min-height:56px}
.shipping-calculator-button{font-size:.85rem}
@media (max-width:700px){
  .shop_table_responsive thead{display:none}
  .shop_table_responsive tr{display:block;border-bottom:1px solid var(--rc-line)}
  .shop_table_responsive td{display:flex;justify-content:space-between;align-items:center;gap:12px;border:0;padding:10px 14px;text-align:right}
  .shop_table_responsive td::before{content:attr(data-title);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rc-muted);text-align:left}
  .shop_table_responsive td.product-remove::before,.shop_table_responsive td.product-thumbnail::before{display:none}
  .shop_table_responsive td.actions{display:block}
  .shop_table .coupon{float:none;flex-direction:column}.shop_table .coupon input{width:100%}
  .shop_table .actions>.button{float:none;width:100%;margin-top:10px}
}

/* Checkout */
form.checkout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:0 clamp(24px,4vw,56px);align-items:start}
form.checkout #customer_details{grid-column:1;grid-row:1/span 3}
form.checkout #order_review_heading{grid-column:2;grid-row:1;margin:0 0 14px;font-size:1.5rem}
form.checkout #order_review{grid-column:2;grid-row:2;background:#fff;border:1px solid var(--rc-line);padding:clamp(16px,2.4vw,28px);position:sticky;top:calc(var(--rc-header-h) + 20px)}
#customer_details .col-1,#customer_details .col-2{width:100%;float:none}
.woocommerce-billing-fields h3,.woocommerce-shipping-fields h3,.woocommerce-additional-fields h3{font-size:1.5rem}
.form-row{margin:0 0 16px;display:block}
.form-row label{display:block;margin-bottom:6px}
.form-row .required{color:#B3261E;text-decoration:none}
.form-row-first,.form-row-last{width:calc(50% - 8px);display:inline-block;vertical-align:top}
.form-row-first{margin-right:12px}
.woocommerce-invalid input,.woocommerce-invalid select{border-color:#B3261E}
#order_review table.shop_table{border:0}
#order_review .shop_table th,#order_review .shop_table td{padding:12px 0;background:transparent}
#order_review .shop_table th{text-transform:none;letter-spacing:0;font-size:.95rem}
#order_review .shop_table .order-total{font-size:1.15rem;color:var(--rc-primary)}
#payment{background:transparent;margin-top:8px}
#payment ul.payment_methods{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px}
#payment .payment_methods>li{border:1px solid var(--rc-line);padding:14px 16px;background:var(--rc-bg)}
#payment .payment_methods>li:has(input:checked){border-color:var(--rc-accent);background:#fff}
#payment .payment_methods label{display:inline;font-weight:600}
#payment .payment_box{margin-top:12px;font-size:.9rem;color:var(--rc-muted)}
#payment .payment_box p:last-child{margin:0}
#place_order{width:100%;min-height:58px;margin-top:6px;background:var(--rc-accent);border-color:var(--rc-accent);color:var(--rc-on-accent)}
#place_order:hover{background:var(--rc-primary);border-color:var(--rc-primary);color:var(--rc-on-primary)}
.woocommerce-privacy-policy-text{font-size:.8rem;color:var(--rc-muted)}
.woocommerce-form-coupon-toggle{margin-bottom:18px}
form.checkout_coupon{display:flex;gap:8px;margin-bottom:24px;padding:16px;border:1px dashed var(--rc-accent);background:#fff}
form.checkout_coupon p{margin:0}
form.checkout_coupon .form-row-first{flex:1;width:auto;margin:0}
@media (max-width:860px){
  form.checkout{grid-template-columns:1fr}
  form.checkout #customer_details,form.checkout #order_review_heading,form.checkout #order_review{grid-column:1;grid-row:auto}
  form.checkout #order_review{position:static}
  .form-row-first,.form-row-last{width:100%;margin-right:0;display:block}
}
/* order received */
.woocommerce-order{max-width:760px;margin:auto}
.woocommerce-notice--success{font-family:var(--rc-serif);font-size:1.6rem;text-align:center;margin-bottom:20px}
ul.order_details{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;padding:0;margin:0 0 28px}
ul.order_details li{background:#fff;border:1px solid var(--rc-line);padding:14px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--rc-muted)}
ul.order_details li strong{display:block;margin-top:6px;font-size:1rem;letter-spacing:0;text-transform:none;color:var(--rc-ink)}

/* My account */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(20px,4vw,56px);align-items:start}
.woocommerce-account:not(.logged-in) .woocommerce{grid-template-columns:1fr;max-width:480px;margin:auto}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--rc-line);background:#fff}
.woocommerce-MyAccount-navigation li a{display:block;padding:14px 18px;text-decoration:none;border-bottom:1px solid var(--rc-line);font-size:.9rem}
.woocommerce-MyAccount-navigation li:last-child a{border:0}
.woocommerce-MyAccount-navigation li.is-active a,.woocommerce-MyAccount-navigation li a:hover{background:var(--rc-primary);color:var(--rc-on-primary)}
.woocommerce-form-login,.woocommerce-form-register{border:1px solid var(--rc-line);background:#fff;padding:clamp(20px,3vw,32px);margin:0 0 24px}
.u-columns .u-column1,.u-columns .u-column2{width:100%;float:none}
.woocommerce-address-fields__field-wrapper{display:block}
.woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.woocommerce-Address{background:#fff;border:1px solid var(--rc-line);padding:20px}
.woocommerce-Address-title h3{font-size:1.3rem}
@media (max-width:800px){.woocommerce-account .woocommerce{grid-template-columns:1fr}.woocommerce-Addresses{grid-template-columns:1fr}}

/* Mini cart (drawer) */
ul.woocommerce-mini-cart{list-style:none;margin:0;padding:0}
.woocommerce-mini-cart-item{display:grid;grid-template-columns:72px 1fr;gap:4px 14px;padding:16px 0;border-bottom:1px solid var(--rc-line);position:relative}
.woocommerce-mini-cart-item a:not(.remove){text-decoration:none;font-family:var(--rc-serif);font-size:1.05rem;font-weight:600;line-height:1.25}
.woocommerce-mini-cart-item img{width:72px;aspect-ratio:3/4;object-fit:cover;grid-row:1/span 2}
.woocommerce-mini-cart-item .quantity{font-size:.88rem;color:var(--rc-muted);display:block}
.woocommerce-mini-cart-item a.remove{position:absolute;top:12px;right:0;width:24px;height:24px;display:grid;place-items:center;text-decoration:none;color:var(--rc-muted)}
.woocommerce-mini-cart__total{display:flex;justify-content:space-between;padding:18px 0;font-size:1.05rem}
.woocommerce-mini-cart__buttons{display:grid;gap:10px}
.woocommerce-mini-cart__buttons .button:not(.checkout){background:transparent;color:var(--rc-primary)}
.woocommerce-mini-cart__empty-message{text-align:center;padding:40px 0;color:var(--rc-muted)}

/* Order tracking form */
form.track_order{max-width:520px;margin:auto;background:#fff;border:1px solid var(--rc-line);padding:clamp(20px,3vw,32px)}
form.track_order .form-row-first,form.track_order .form-row-last{width:100%;margin:0 0 16px}
.rc-track{max-width:680px;margin:auto}
