/* ============================================
   AMODA — WooCommerce Styles
   ============================================ */

/* ---- PRODUCT CARD ---- */
.woocommerce ul.products li.product,
.wc-block-grid__product {
  background: white; border-radius: var(--radius-md); overflow: hidden;
  border: 1px solid var(--amoda-border); transition: var(--transition);
  position: relative;
}
.woocommerce ul.products li.product:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); border-color: transparent; }

.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail {
  margin: 0; border-radius: 0; width: 100%; aspect-ratio: 3/4; object-fit: cover;
  transition: transform 0.5s ease;
}
.woocommerce ul.products li.product:hover a img { transform: scale(1.05); }

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--font-display); font-size: 0.92rem; font-weight: 500;
  padding: 12px 12px 4px; color: var(--amoda-dark); transition: var(--transition);
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title { color: var(--amoda-primary); }

.woocommerce ul.products li.product .price {
  padding: 0 12px 10px; color: var(--amoda-primary); font-weight: 700;
  font-size: 1rem;
}
.woocommerce ul.products li.product .price del { color: var(--amoda-text-light); font-weight: 400; font-size: 0.9rem; }
.woocommerce ul.products li.product .price ins { text-decoration: none; color: var(--amoda-primary); }

/* Add to cart button */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button {
  display: block; margin: 0 12px 12px; padding: 10px; text-align: center;
  background: var(--amoda-primary); color: white; border: none;
  border-radius: var(--radius-sm); font-family: var(--font-body);
  font-weight: 600; font-size: 0.8rem; letter-spacing: 1px; text-transform: uppercase;
  cursor: pointer; transition: var(--transition);
}
.woocommerce ul.products li.product .button:hover { background: var(--amoda-primary-dark); transform: translateY(-1px); }

/* Sale badge */
.woocommerce span.onsale {
  position: absolute; top: 16px; left: 16px; z-index: 10;
  background: var(--amoda-gold); color: var(--amoda-dark);
  padding: 6px 14px; border-radius: 50px; font-size: 0.75rem;
  font-weight: 700; letter-spacing: 1px; text-transform: uppercase;
  min-height: auto; min-width: auto; line-height: 1;
}

/* Star rating */
.woocommerce .star-rating { color: var(--amoda-gold); font-size: 0.85rem; margin: 0 16px 4px; }

/* ---- SINGLE PRODUCT ---- */
.woocommerce div.product {
  max-width: 1200px; margin: 0 auto; padding: 40px 24px;
}
.woocommerce div.product div.images { border-radius: var(--radius-md); overflow: hidden; }
.woocommerce div.product div.images img { border-radius: var(--radius-md); }

.woocommerce div.product .product_title {
  font-family: var(--font-display); font-size: 2rem; font-weight: 600;
  color: var(--amoda-dark); margin-bottom: 8px;
}
.woocommerce div.product p.price {
  font-size: 1.5rem; color: var(--amoda-primary); font-weight: 700; margin-bottom: 20px;
}
.woocommerce div.product .woocommerce-product-details__short-description {
  font-size: 1rem; color: var(--amoda-text-light); line-height: 1.8; margin-bottom: 24px;
}

/* Single product add to cart */
.woocommerce div.product form.cart .button,
.woocommerce .single_add_to_cart_button {
  background: var(--amoda-primary) !important; color: white !important;
  padding: 16px 40px !important; border-radius: var(--radius-sm) !important;
  font-family: var(--font-body) !important; font-weight: 600 !important;
  font-size: 0.95rem !important; letter-spacing: 1px; text-transform: uppercase;
  border: none !important; cursor: pointer; transition: var(--transition) !important;
}
.woocommerce .single_add_to_cart_button:hover {
  background: var(--amoda-primary-dark) !important;
  transform: translateY(-2px); box-shadow: var(--shadow-purple);
}

/* Quantity input */
.woocommerce .quantity .qty {
  border: 2px solid var(--amoda-border); border-radius: var(--radius-sm);
  padding: 12px 16px; font-size: 1rem; font-family: var(--font-body);
  width: 80px; text-align: center;
}
.woocommerce .quantity .qty:focus { outline: none; border-color: var(--amoda-primary); }

/* Tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs {
  list-style: none; display: flex; gap: 0; border-bottom: 2px solid var(--amoda-border);
  padding: 0; margin-bottom: 24px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: none; border: none; border-radius: 0; margin: 0; padding: 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  padding: 12px 24px; font-weight: 600; color: var(--amoda-text-light);
  font-size: 0.9rem; letter-spacing: 0.5px; text-transform: uppercase;
  border-bottom: 2px solid transparent; margin-bottom: -2px; display: block;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--amoda-primary); border-bottom-color: var(--amoda-primary);
}

/* ---- CART PAGE ---- */
.woocommerce table.shop_table {
  border: 1px solid var(--amoda-border); border-radius: var(--radius-md);
  overflow: hidden; border-collapse: separate;
}
.woocommerce table.shop_table th {
  background: var(--amoda-cream); font-family: var(--font-body);
  font-weight: 600; font-size: 0.85rem; letter-spacing: 0.5px;
  text-transform: uppercase; color: var(--amoda-text); padding: 16px;
}
.woocommerce table.shop_table td { padding: 16px; vertical-align: middle; border-top: 1px solid var(--amoda-border); }

.woocommerce .cart-collaterals .cart_totals {
  background: white; border: 1px solid var(--amoda-border);
  border-radius: var(--radius-md); padding: 24px;
}

/* Checkout button */
.woocommerce a.checkout-button,
.woocommerce .wc-proceed-to-checkout a.checkout-button {
  background: var(--amoda-primary) !important; color: white !important;
  border-radius: var(--radius-sm) !important; font-weight: 600 !important;
  letter-spacing: 1px; text-transform: uppercase; padding: 16px 32px !important;
  transition: var(--transition) !important;
}
.woocommerce a.checkout-button:hover { background: var(--amoda-primary-dark) !important; }

/* ---- CHECKOUT ---- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  border: 2px solid var(--amoda-border); border-radius: var(--radius-sm);
  padding: 12px 16px; font-family: var(--font-body); font-size: 0.95rem;
  transition: var(--transition);
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
  outline: none; border-color: var(--amoda-primary);
  box-shadow: 0 0 0 3px rgba(var(--amoda-primary-rgb), 0.1);
}

#place_order {
  background: var(--amoda-primary) !important; color: white !important;
  border: none !important; border-radius: var(--radius-sm) !important;
  padding: 18px 40px !important; font-size: 1rem !important;
  font-weight: 700 !important; letter-spacing: 1px; text-transform: uppercase;
  cursor: pointer; transition: var(--transition) !important; width: 100%;
}
#place_order:hover { background: var(--amoda-primary-dark) !important; }

/* ---- NOTICES ---- */
.woocommerce-message {
  border-top-color: var(--amoda-primary) !important;
  background: rgba(var(--amoda-primary-rgb), 0.05);
  border-radius: var(--radius-sm);
}
.woocommerce-message::before { color: var(--amoda-primary) !important; }

.woocommerce-info { border-top-color: var(--amoda-gold) !important; border-radius: var(--radius-sm); }
.woocommerce-error { border-top-color: var(--amoda-error) !important; border-radius: var(--radius-sm); }

/* ---- BREADCRUMBS ---- */
.woocommerce .woocommerce-breadcrumb {
  font-size: 0.85rem; color: var(--amoda-text-light); padding: 16px 0;
  margin-bottom: 16px; border-bottom: 1px solid var(--amoda-border);
}
.woocommerce .woocommerce-breadcrumb a { color: var(--amoda-primary); }
.woocommerce .woocommerce-breadcrumb a:hover { color: var(--amoda-primary-dark); }

/* ---- PAGINATION ---- */
.woocommerce nav.woocommerce-pagination ul {
  border: none; display: flex; gap: 8px; justify-content: center; margin-top: 40px;
}
.woocommerce nav.woocommerce-pagination ul li { border: none; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span.current {
  padding: 10px 16px; border-radius: var(--radius-sm); font-weight: 600;
  border: 2px solid var(--amoda-border); color: var(--amoda-text);
}
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--amoda-primary); color: white; border-color: var(--amoda-primary);
}
.woocommerce nav.woocommerce-pagination ul li a:hover {
  background: rgba(var(--amoda-primary-rgb), 0.08); border-color: var(--amoda-primary);
  color: var(--amoda-primary);
}

/* ---- MY ACCOUNT ---- */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none; background: white; border: 1px solid var(--amoda-border);
  border-radius: var(--radius-md); overflow: hidden;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  display: block; padding: 14px 20px; border-bottom: 1px solid var(--amoda-border);
  font-weight: 500; color: var(--amoda-text); transition: var(--transition);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
  background: rgba(var(--amoda-primary-rgb), 0.05); color: var(--amoda-primary);
  border-left: 3px solid var(--amoda-primary);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
  background: rgba(var(--amoda-primary-rgb), 0.03); color: var(--amoda-primary);
}

/* ---- SHOP PAGE LAYOUT ---- */
.amoda-shop-page .site-main { padding: 0; }

/* Shop Hero */
.shop-hero {
  background: linear-gradient(135deg, var(--amoda-dark) 0%, #2d1f3d 50%, var(--amoda-primary-dark) 100%);
  padding: 60px 0 48px; text-align: center; position: relative; overflow: hidden;
}
.shop-hero::before {
  content: ''; position: absolute; inset: 0;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="p" width="10" height="10" patternUnits="userSpaceOnUse"><circle cx="1" cy="1" r="0.5" fill="rgba(255,255,255,0.03)"/></pattern></defs><rect fill="url(%23p)" width="100" height="100"/></svg>');
  pointer-events: none;
}
.shop-hero-content { position: relative; z-index: 2; animation: fadeSlideUp 0.8s ease-out; }
.shop-hero-content .section-badge { color: var(--amoda-gold-light); }
.shop-hero-title {
  color: white; font-size: clamp(2rem, 5vw, 3rem);
  margin-bottom: 12px;
}
.shop-hero-desc {
  color: rgba(255,255,255,0.7); max-width: 600px; margin: 0 auto;
  font-family: var(--font-accent); font-size: 1.15rem; line-height: 1.7;
}

/* Category Filter Bar */
.shop-categories-bar {
  background: white; border-bottom: 1px solid var(--amoda-border);
  padding: 16px 0; position: sticky; top: 70px; z-index: 90;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.shop-cat-scroll {
  display: flex; gap: 10px; overflow-x: auto; padding: 4px 0;
  scrollbar-width: none; -ms-overflow-style: none;
}
.shop-cat-scroll::-webkit-scrollbar { display: none; }
.shop-cat-chip {
  display: inline-flex; align-items: center; padding: 10px 22px;
  background: var(--amoda-cream); border: 2px solid var(--amoda-border);
  border-radius: 50px; font-size: 0.85rem; font-weight: 600;
  color: var(--amoda-text); white-space: nowrap; text-decoration: none;
  transition: var(--transition); letter-spacing: 0.3px;
}
.shop-cat-chip:hover {
  border-color: var(--amoda-primary); color: var(--amoda-primary);
  background: rgba(var(--amoda-primary-rgb), 0.05);
}
.shop-cat-chip.active {
  background: var(--amoda-primary); color: white;
  border-color: var(--amoda-primary);
}

/* Products Section */
.shop-products-section { padding: 40px 0 60px; background: var(--amoda-bg); }

/* Toolbar */
.shop-toolbar {
  display: flex; justify-content: space-between; align-items: center;
  margin-bottom: 32px; padding-bottom: 20px;
  border-bottom: 1px solid var(--amoda-border);
}
.woocommerce .woocommerce-ordering select {
  border: 2px solid var(--amoda-border); border-radius: var(--radius-sm);
  padding: 10px 40px 10px 16px; font-family: var(--font-body); font-size: 0.9rem;
  cursor: pointer; appearance: none; transition: var(--transition);
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="%236b6b7b" stroke-width="2"><polyline points="6 9 12 15 18 9"/></svg>');
  background-repeat: no-repeat; background-position: right 14px center;
}
.woocommerce .woocommerce-ordering select:focus {
  outline: none; border-color: var(--amoda-primary);
}
.woocommerce .woocommerce-result-count {
  color: var(--amoda-text-light); font-size: 0.9rem; margin: 0;
}

/* Products Grid */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px !important;
  margin: 0 !important; padding: 0 !important;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none; }

.woocommerce ul.products li.product {
  width: 100% !important; margin: 0 !important; float: none !important;
}

/* Products Grid responsive */
@media (max-width: 768px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
  }
  .shop-toolbar { flex-direction: column; gap: 12px; align-items: flex-start; }
}
@media (max-width: 480px) {
  .woocommerce ul.products {
    grid-template-columns: 1fr !important;
  }
}
