/* WooCommerce overrides — dark brand theme for Shinto Earth Craft */

/* ── BASE ── */
.woocommerce,
.woocommerce-page {
  background: var(--charcoal);
  color: var(--paper);
  font-family: 'Zen Kaku Gothic New', sans-serif;
}
.woocommerce {
  padding: 60px;
  max-width: 1200px;
  margin: 0 auto;
  min-height: 60vh;
}
@media (max-width: 768px) { .woocommerce { padding: 28px; } }

/* ── NOTICES ── */
.woocommerce-message,
.woocommerce-info {
  background: var(--ash) !important;
  border-top: 1px solid rgba(237,232,224,0.2) !important;
  color: var(--paper) !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-size: 13px !important;
  padding: 16px 24px !important;
}
.woocommerce-error {
  background: var(--ash) !important;
  border-top: 1px solid rgba(200,60,60,0.5) !important;
  color: var(--paper) !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-size: 13px !important;
  list-style: none !important;
  padding: 16px 24px !important;
}

/* ── TYPOGRAPHY ── */
.woocommerce h2,
.woocommerce h3 {
  font-family: 'Shippori Mincho', serif !important;
  font-weight: 400 !important;
  color: var(--paper) !important;
}
.woocommerce h2 { font-size: 34px !important; margin-bottom: 28px !important; }
.woocommerce h3 { font-size: 24px !important; margin-bottom: 20px !important; }
.woocommerce p,
.woocommerce td,
.woocommerce th,
.woocommerce label {
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  color: var(--muted) !important;
  font-size: 13px !important;
  font-weight: 300 !important;
}

/* ── INPUTS ── */
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce input[type="number"],
.woocommerce textarea,
.woocommerce select {
  background: var(--stone) !important;
  border: 0.5px solid var(--border-light) !important;
  border-radius: 0 !important;
  color: var(--paper) !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  padding: 12px 16px !important;
  box-shadow: none !important;
  outline: none !important;
}
.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus {
  border-color: var(--paper-dim) !important;
}
.woocommerce input::placeholder,
.woocommerce textarea::placeholder { color: var(--muted) !important; }
.woocommerce label {
  font-size: 9px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--muted) !important;
  margin-bottom: 6px !important;
  display: block !important;
}

/* ── BUTTONS ── */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #place_order {
  background: var(--paper) !important;
  color: var(--black) !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  padding: 14px 32px !important;
  transition: background 0.2s !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #place_order:hover {
  background: #D8D0C4 !important;
  color: var(--black) !important;
}
.woocommerce a.button.alt,
.woocommerce button.button.alt {
  background: var(--stone) !important;
  color: var(--paper) !important;
  border: 0.5px solid var(--border-light) !important;
}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
  background: var(--ash) !important;
  border-color: var(--paper-dim) !important;
}

/* ── CART TABLE ── */
.woocommerce table.cart {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 40px;
}
.woocommerce table.cart thead { border-bottom: 0.5px solid var(--border-light); }
.woocommerce table.cart thead th {
  font-size: 9px !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: var(--muted) !important;
  padding: 14px 0 !important;
  font-weight: 400 !important;
  background: transparent !important;
}
.woocommerce table.cart tbody td {
  padding: 28px 0 !important;
  border-bottom: 0.5px solid var(--border) !important;
  vertical-align: middle !important;
  background: transparent !important;
  color: var(--muted) !important;
}
.woocommerce table.cart .product-name a {
  font-family: 'Shippori Mincho', serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  color: var(--paper) !important;
  text-decoration: none !important;
}
.woocommerce table.cart .product-name a:hover { color: var(--paper-dim) !important; }
.woocommerce table.cart img {
  width: 80px !important;
  height: 80px !important;
  object-fit: cover !important;
  filter: brightness(0.7);
}
.woocommerce table.cart .product-price,
.woocommerce table.cart .product-subtotal { color: var(--paper) !important; font-size: 14px !important; }
.woocommerce a.remove { color: var(--muted) !important; font-size: 18px !important; }
.woocommerce a.remove:hover { color: var(--paper) !important; background: none !important; }

/* ── CART TOTALS ── */
.woocommerce .cart_totals {
  background: var(--ash);
  border: 0.5px solid var(--border-light);
  padding: 40px;
}
.woocommerce .cart_totals h2 {
  font-family: 'Shippori Mincho', serif !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  color: var(--paper) !important;
  margin-bottom: 24px !important;
  padding-bottom: 16px !important;
  border-bottom: 0.5px solid var(--border-light) !important;
}
.woocommerce .cart_totals table tr th,
.woocommerce .cart_totals table tr td {
  padding: 12px 0 !important;
  border-bottom: 0.5px solid var(--border) !important;
  color: var(--muted) !important;
  font-size: 13px !important;
  background: transparent !important;
}
.woocommerce .cart_totals table .order-total th,
.woocommerce .cart_totals table .order-total td {
  color: var(--paper) !important;
  font-size: 16px !important;
  border-bottom: none !important;
}

/* ── CHECKOUT ── */
.woocommerce #payment {
  background: var(--ash) !important;
  border-radius: 0 !important;
  padding: 32px !important;
  border: 0.5px solid var(--border-light) !important;
}
.woocommerce #payment ul.payment_methods {
  border-bottom: 0.5px solid var(--border-light) !important;
  padding-bottom: 20px !important;
  margin-bottom: 20px !important;
  background: transparent !important;
}
.woocommerce #payment ul.payment_methods li label {
  font-size: 13px !important;
  font-weight: 300 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  color: var(--paper) !important;
}
.woocommerce #payment div.payment_box {
  background: var(--stone) !important;
  color: var(--muted) !important;
  border-radius: 0 !important;
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper { margin-bottom: 8px; }

/* ── ORDER REVIEW ── */
.woocommerce-checkout #order_review_heading {
  font-family: 'Shippori Mincho', serif !important;
  font-size: 22px !important;
  color: var(--paper) !important;
}
.woocommerce table.shop_table {
  border-collapse: collapse !important;
  border: 0.5px solid var(--border) !important;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  border: 0.5px solid var(--border) !important;
  padding: 14px 16px !important;
  color: var(--muted) !important;
  background: transparent !important;
}
.woocommerce table.shop_table tfoot tr:last-child td,
.woocommerce table.shop_table tfoot tr:last-child th {
  color: var(--paper) !important;
  font-size: 15px !important;
}

/* ── MY ACCOUNT ── */
.woocommerce-account .woocommerce-MyAccount-navigation {
  background: var(--ash);
  border: 0.5px solid var(--border-light);
  padding: 28px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  font-size: 10px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--muted) !important;
  text-decoration: none !important;
  display: block !important;
  padding: 10px 0 !important;
  border-bottom: 0.5px solid var(--border) !important;
  transition: color 0.2s !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child a { border-bottom: none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover { color: var(--paper) !important; }

/* ── SALE BADGE ── */
.woocommerce span.onsale {
  background: var(--paper) !important;
  color: var(--black) !important;
  border-radius: 0 !important;
  font-family: 'Zen Kaku Gothic New', sans-serif !important;
  font-size: 9px !important;
  font-weight: 400 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 5px 10px !important;
  min-height: auto !important;
  line-height: 1 !important;
}

/* ── STAR RATINGS ── */
.woocommerce .star-rating span::before,
.woocommerce .star-rating::before { color: var(--paper-dim) !important; }
