/* ═══ WOOCOMMERCE OVERRIDES ═══ */

/* Main wrapper */
.petobje-wc-main {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 48px;
}

/* Notices */
.woocommerce-notices-wrapper { margin: 20px 0; }
.woocommerce-message {
  background: var(--charcoal);
  color: #fff;
  padding: 16px 24px;
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
  font-weight: 500;
  border: none;
}
.woocommerce-message a {
  color: var(--terra-light);
  font-weight: 600;
}
.woocommerce-error {
  background: var(--warm-white);
  border-left: 4px solid #c00;
  padding: 16px 24px;
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
  list-style: none;
}
.woocommerce-info {
  background: var(--cream);
  border-left: 4px solid var(--terra);
  padding: 16px 24px;
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
}

/* Cart page */
.woocommerce-cart-form table {
  width: 100%;
  border-collapse: collapse;
}
.woocommerce-cart-form th,
.woocommerce-cart-form td {
  padding: 20px 16px;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
  vertical-align: middle;
}
.woocommerce-cart-form th {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--stone);
}
.woocommerce-cart-form .product-thumbnail img {
  width: 80px;
  height: 80px;
  object-fit: cover;
}
.woocommerce-cart-form .product-name a {
  color: var(--charcoal);
  text-decoration: none;
  font-weight: 600;
}
.woocommerce-cart-form .product-price,
.woocommerce-cart-form .product-subtotal {
  font-weight: 600;
  color: var(--charcoal);
}
.woocommerce-cart-form .quantity .qty {
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
  width: 60px;
  padding: 8px;
  border: 2px solid rgba(0,0,0,0.1);
  text-align: center;
}
.woocommerce-cart-form .remove {
  color: var(--stone-light) !important;
  font-size: 20px;
  text-decoration: none;
}
.woocommerce-cart-form .remove:hover { color: #c00 !important; }

/* Cart totals */
.cart_totals {
  max-width: 400px;
  margin-left: auto;
  padding: 40px 0;
}
.cart_totals h2 {
  font-family: 'Outfit', sans-serif;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 20px;
}
.cart_totals table {
  width: 100%;
  border-collapse: collapse;
}
.cart_totals th,
.cart_totals td {
  padding: 12px 0;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
}
.cart_totals th {
  font-weight: 500;
  color: var(--stone);
  text-align: left;
}
.cart_totals .order-total td {
  font-size: 20px;
  font-weight: 700;
  color: var(--charcoal);
}

/* Buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
  font-weight: 600;
  background: var(--charcoal);
  color: #fff;
  padding: 14px 32px;
  border: none;
  cursor: pointer;
  letter-spacing: 0.5px;
  transition: background 0.2s;
  border-radius: 0;
  text-decoration: none;
  display: inline-block;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  background: var(--terra);
  color: #fff;
}
.woocommerce a.button.alt,
.woocommerce button.button.alt {
  background: var(--terra);
}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
  background: var(--terra-dark);
}

/* Forms / Checkout */
.woocommerce form .form-row {
  margin-bottom: 16px;
}
.woocommerce form .form-row label {
  font-family: 'Outfit', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: var(--charcoal);
  margin-bottom: 4px;
  display: block;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  width: 100%;
  padding: 12px 0;
  border: none;
  border-bottom: 2px solid rgba(0,0,0,0.1);
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: 15px;
  background: transparent;
  transition: border-color 0.2s;
  border-radius: 0;
  outline: none;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  border-color: var(--terra);
}

/* Order review */
.woocommerce-checkout-review-order-table {
  width: 100%;
  border-collapse: collapse;
}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
  padding: 12px 0;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
}

/* Remove default WC styles */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering { display: none; }

/* Cart item meta (variant selections) */
.woocommerce-cart-form dl.variation {
  font-family: 'Outfit', sans-serif;
  font-size: 12px;
  color: var(--stone);
  margin-top: 4px;
}
.woocommerce-cart-form dl.variation dt { font-weight: 600; }
.woocommerce-cart-form dl.variation dd { margin-left: 0; }

@media (max-width: 900px) {
  .petobje-wc-main { padding: 0 24px; }
}
