/* ═══════════════════════════════════════════════════════════════
   Aura Ultimate — WooCommerce Styles
   ═══════════════════════════════════════════════════════════════ */

/* ─── Product Grid ───────────────────────────────────────────── */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;padding:0;margin:0}
@media(min-width:640px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.woocommerce ul.products{grid-template-columns:repeat(var(--au-cols,4),1fr);gap:1.25rem}}
.woocommerce ul.products li.product{margin:0;padding:0;width:auto;float:none}

/* ─── Product Card ───────────────────────────────────────────── */
.au-card{display:flex;flex-direction:column;border-radius:var(--au-radius);overflow:hidden;border:1px solid var(--au-border);background:var(--au-surface);transition:transform .25s,box-shadow .25s}
.au-card:hover{transform:translateY(-4px);box-shadow:var(--au-shadow-lg)}
.au-card__link{display:block;overflow:hidden}
.au-card__media{position:relative;aspect-ratio:1;overflow:hidden;background:var(--au-bg-alt)}
.au-card__img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.au-card:hover .au-card__img{transform:scale(1.05)}
.au-card__badges{position:absolute;top:.75rem;left:.75rem;display:flex;flex-direction:column;gap:.35rem;z-index:3}
.au-badge{padding:.25rem .65rem;border-radius:calc(var(--au-radius)/2);font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;line-height:1.4}
.au-badge--sale{background:var(--au-danger);color:#fff}
.au-badge--hot{background:var(--au-accent);color:var(--au-primary)}
.au-badge--oos{background:var(--au-text-2);color:#fff}
.au-card__actions{position:absolute;top:.75rem;right:.75rem;display:flex;flex-direction:column;gap:.35rem;opacity:0;transform:translateX(8px);transition:all .25s;z-index:3}
.au-card:hover .au-card__actions{opacity:1;transform:translateX(0)}
.au-card__action{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-radius:50%;box-shadow:var(--au-shadow-sm);cursor:pointer;transition:background .15s}
.au-card__action:hover{background:var(--au-accent);color:#fff}
.au-card__body{display:flex;flex-direction:column;flex:1;padding:1rem}
.au-card__rating{display:flex;align-items:center;gap:.35rem;margin-bottom:.35rem}
.au-card__rating .star-rating{font-size:.75rem}
.au-card__reviews{font-size:.6875rem;color:var(--au-text-2)}
.au-card__title{font-size:.875rem;font-weight:600;line-height:1.4;margin-bottom:.375rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.au-card__title a:hover{color:var(--au-accent)}
.au-card__price{font-size:1rem;font-weight:700;margin-bottom:.75rem}
.au-card__price del{font-size:.8125rem;font-weight:400;color:var(--au-text-2);margin-right:.35rem}
.au-card__price ins{text-decoration:none;color:var(--au-accent)}
.au-card__btn{display:block;text-align:center;padding:.7rem;border-radius:var(--au-radius-sm);background:var(--au-primary);color:#fff;font-weight:600;font-size:.8125rem;transition:all .2s;margin-top:auto}
.au-card__btn:hover{background:var(--au-accent);color:var(--au-primary)}
.au-card__btn--oos{background:var(--au-bg-alt);color:var(--au-text-2);cursor:default}

/* ─── Shop Controls ──────────────────────────────────────────── */
.au-shop-header{margin-bottom:1.5rem}
.au-shop-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}
.woocommerce-result-count{font-size:.8125rem;color:var(--au-text-2);margin:0}
.woocommerce-ordering{margin:0}
.woocommerce-ordering select{padding:.5rem .85rem;border:1.5px solid var(--au-border);border-radius:var(--au-radius-sm);font-size:.8125rem;background:var(--au-bg);outline:none;cursor:pointer}

/* ─── Single Product ─────────────────────────────────────────── */
.woocommerce div.product{display:grid;grid-template-columns:1fr;gap:2rem;padding-top:.5rem}
@media(min-width:768px){.woocommerce div.product{grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,3.5rem)}}

/* Gallery — sticky desktop */
.woocommerce div.product div.images{position:relative}
@media(min-width:768px){.woocommerce div.product div.images{position:sticky;top:90px;align-self:start}}
.woocommerce div.product div.images .woocommerce-product-gallery__image img{border-radius:var(--au-radius);width:100%}
.woocommerce div.product div.images .flex-control-thumbs{display:flex;gap:.5rem;margin-top:.75rem;overflow-x:auto;scrollbar-width:none}
.woocommerce div.product div.images .flex-control-thumbs::-webkit-scrollbar{display:none}
.woocommerce div.product div.images .flex-control-thumbs li{flex:0 0 72px}
.woocommerce div.product div.images .flex-control-thumbs li img{border-radius:var(--au-radius-sm);border:2px solid transparent;cursor:pointer;transition:border-color .15s;aspect-ratio:1;object-fit:cover}
.woocommerce div.product div.images .flex-control-thumbs li img:hover,
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active{border-color:var(--au-accent)}
.au-single-badge{position:absolute;top:1rem;left:1rem;background:var(--au-danger);color:#fff;font-size:.75rem;font-weight:700;padding:.3rem .8rem;border-radius:calc(var(--au-radius)/2);z-index:5}

/* Summary */
.woocommerce div.product .product_title{font-family:var(--au-font-head);font-size:clamp(1.5rem,3vw,2rem);font-weight:700;line-height:1.25;margin-bottom:.5rem;letter-spacing:-.01em}
.woocommerce div.product p.price{font-size:1.625rem;font-weight:800;margin-bottom:1rem}
.woocommerce div.product p.price del{font-size:1.125rem;color:var(--au-text-2);font-weight:400;margin-right:.5rem}
.woocommerce div.product p.price ins{text-decoration:none;color:var(--au-accent)}
.woocommerce div.product .woocommerce-product-rating{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:.9375rem;line-height:1.7;color:var(--au-text-2);margin-bottom:1.5rem}

/* Add to cart form */
.woocommerce div.product form.cart{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem}
.woocommerce div.product form.cart .quantity{display:flex;align-items:center;border:1.5px solid var(--au-border);border-radius:var(--au-radius-sm);overflow:hidden}
.woocommerce div.product form.cart .quantity .qty{width:48px;text-align:center;border:0;padding:.6rem 0;font-weight:600;-moz-appearance:textfield}
.woocommerce div.product form.cart .quantity .qty::-webkit-outer-spin-button,
.woocommerce div.product form.cart .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.woocommerce div.product form.cart .single_add_to_cart_button{flex:1;padding:.85rem 2rem;background:var(--au-accent);color:var(--au-primary);font-weight:700;font-size:1rem;border:0;border-radius:var(--au-radius);cursor:pointer;transition:all .2s}
.woocommerce div.product form.cart .single_add_to_cart_button:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:var(--au-shadow-glow)}

/* Tabs */
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:1rem}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:0;border-bottom:2px solid var(--au-border);margin-bottom:1.5rem;overflow-x:auto;scrollbar-width:none;list-style:none;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs::-webkit-scrollbar{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0;padding:0;border:0;background:none;border-radius:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;color:var(--au-text-2);white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover{color:var(--au-text);border-bottom-color:var(--au-accent)}
.woocommerce div.product .woocommerce-tabs .panel{font-size:.9375rem;line-height:1.8;max-width:780px}
.woocommerce div.product .woocommerce-tabs .panel h2{font-family:var(--au-font-head);font-size:1.25rem;margin-bottom:1rem}

/* Reviews */
.woocommerce #reviews .comment-reply-title{font-family:var(--au-font-head);font-size:1.25rem;margin-bottom:1rem}
.woocommerce #reviews ol.commentlist{list-style:none;padding:0}
.woocommerce #reviews ol.commentlist li{padding:1.25rem 0;border-bottom:1px solid var(--au-border)}
.woocommerce #reviews .star-rating{color:var(--au-accent)}
.woocommerce #reviews #comment{width:100%;padding:.75rem;border:1.5px solid var(--au-border);border-radius:var(--au-radius-sm);resize:vertical;min-height:100px}

/* Related */
.woocommerce div.product .related.products{grid-column:1/-1;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--au-border)}
.woocommerce div.product .related.products>h2,.woocommerce div.product .upsells.products>h2{font-family:var(--au-font-head);font-size:1.375rem;margin-bottom:1.5rem}

/* ─── Cart ───────────────────────────────────────────────────── */
.woocommerce table.shop_table{border:0;border-collapse:collapse;width:100%}
.woocommerce table.shop_table th{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--au-text-2);padding:.75rem 0;border-bottom:2px solid var(--au-border)}
.woocommerce table.shop_table td{padding:.75rem 0;border-bottom:1px solid var(--au-border);vertical-align:middle}
.woocommerce table.shop_table td.product-name{font-weight:600;display:flex;align-items:center;gap:.75rem;font-size:.9375rem}
.au-cart-thumb{width:64px;height:64px;object-fit:cover;border-radius:var(--au-radius-sm);flex-shrink:0}
.woocommerce .quantity .qty{width:56px;padding:.45rem;text-align:center;border:1.5px solid var(--au-border);border-radius:var(--au-radius-sm)}
.woocommerce .cart-collaterals{margin-top:2rem}
.woocommerce .cart_totals{max-width:440px;margin-left:auto;padding:1.5rem;background:var(--au-bg-alt);border-radius:var(--au-radius)}
.woocommerce .cart_totals h2{font-family:var(--au-font-head);font-size:1.25rem;margin-bottom:1rem}
.woocommerce a.remove{color:var(--au-text-2)!important;font-size:1.25rem}
.woocommerce a.remove:hover{color:var(--au-danger)!important;background:transparent!important}

/* ─── Checkout ───────────────────────────────────────────────── */
.woocommerce-checkout .woocommerce-form-row,.woocommerce-checkout .form-row{margin-bottom:1rem}
.woocommerce-checkout label{display:block;font-size:.8125rem;font-weight:600;margin-bottom:.35rem}
.woocommerce-checkout input.input-text,.woocommerce-checkout select,.woocommerce-checkout textarea{width:100%;padding:.75rem 1rem;border:1.5px solid var(--au-border);border-radius:var(--au-radius-sm);font-size:.9375rem;outline:none;transition:border-color .2s;background:var(--au-bg)}
.woocommerce-checkout input.input-text:focus,.woocommerce-checkout select:focus{border-color:var(--au-accent)}
.woocommerce #order_review{padding:1.5rem;background:var(--au-bg-alt);border-radius:var(--au-radius)}
.woocommerce #place_order{width:100%;padding:1rem;background:var(--au-accent);color:var(--au-primary);font-size:1rem;font-weight:700;border:0;border-radius:var(--au-radius);cursor:pointer;margin-top:1rem;transition:all .2s}
.woocommerce #place_order:hover{filter:brightness(1.1);box-shadow:var(--au-shadow-glow)}

/* ─── My Account ─────────────────────────────────────────────── */
.woocommerce-MyAccount-navigation{margin-bottom:2rem}
.woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:.5rem;padding:0}
.woocommerce-MyAccount-navigation ul li{margin:0}
.woocommerce-MyAccount-navigation ul li a{display:block;padding:.6rem 1.25rem;border-radius:var(--au-radius-sm);font-size:.875rem;font-weight:500;border:1.5px solid var(--au-border);transition:all .15s}
.woocommerce-MyAccount-navigation ul li.is-active a,.woocommerce-MyAccount-navigation ul li a:hover{background:var(--au-primary);color:#fff;border-color:var(--au-primary)}
@media(min-width:768px){
	.woocommerce-MyAccount-content,.woocommerce-MyAccount-navigation{display:inline-block;vertical-align:top}
	.woocommerce-MyAccount-navigation{width:22%;margin-right:4%}
	.woocommerce-MyAccount-navigation ul{flex-direction:column}
	.woocommerce-MyAccount-content{width:72%}
}

/* ─── Buttons global ─────────────────────────────────────────── */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce .button{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.5rem;border-radius:var(--au-radius-sm);font-weight:600;font-size:.875rem;transition:all .15s;border:0;cursor:pointer;background:var(--au-primary);color:#fff}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--au-accent);color:var(--au-primary)}
.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--au-accent);color:var(--au-primary)}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{filter:brightness(1.1)}

/* ─── Notices ────────────────────────────────────────────────── */
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{padding:1rem 1.25rem;border-radius:var(--au-radius-sm);margin-bottom:1.5rem;font-size:.9375rem;border:0}
.woocommerce .woocommerce-message{background:rgba(5,150,105,.08);border-left:4px solid var(--au-success)}
.woocommerce .woocommerce-info{background:rgba(59,130,246,.08);border-left:4px solid #3b82f6}
.woocommerce .woocommerce-error{background:rgba(220,38,38,.08);border-left:4px solid var(--au-danger)}
.woocommerce .woocommerce-error li{list-style:none}

/* ─── Star Rating ────────────────────────────────────────────── */
.woocommerce .star-rating{display:inline-flex;overflow:hidden;position:relative;height:1em;width:5em;font-size:.875rem;line-height:1}
.woocommerce .star-rating::before{content:'★★★★★';color:rgba(0,0,0,.1);float:left;top:0;left:0;position:absolute}
.woocommerce .star-rating span{overflow:hidden;float:left;top:0;left:0;position:absolute;padding-top:1.5em}
.woocommerce .star-rating span::before{content:'★★★★★';top:0;position:absolute;left:0;color:var(--au-accent)}

/* ─── Sale flash ─────────────────────────────────────────────── */
.woocommerce span.onsale{position:absolute;top:1rem;left:1rem;background:var(--au-danger);color:#fff;font-size:.6875rem;font-weight:700;padding:.3rem .7rem;border-radius:calc(var(--au-radius)/2);z-index:5;min-width:auto;min-height:auto;line-height:1.4}

/* ─── Forms ──────────────────────────────────────────────────── */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row select{padding:.7rem .85rem;border:1.5px solid var(--au-border);border-radius:var(--au-radius-sm);width:100%}

/* ─── Floating buy bar (mobile) ──────────────────────────────── */
.au-buy-bar{display:none}
@media(max-width:767px){
	.au-buy-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:800;background:var(--au-surface);border-top:1px solid var(--au-border);padding:.75rem var(--au-gap);gap:.75rem;align-items:center;box-shadow:0 -4px 20px rgba(0,0,0,.08)}
	.au-buy-bar__price{font-weight:700;font-size:1.125rem;flex:1}
	.au-buy-bar__btn{padding:.75rem 1.5rem;background:var(--au-accent);color:var(--au-primary);font-weight:700;border-radius:var(--au-radius-sm);font-size:.9375rem}
}

/* ─── Responsive cart ────────────────────────────────────────── */
@media(max-width:639px){
	.woocommerce table.shop_table_responsive tr{display:flex;flex-wrap:wrap;padding:.75rem 0;border-bottom:1px solid var(--au-border)}
	.woocommerce table.shop_table_responsive td{border:0;padding:.25rem 0}
}
