/* ============================================
   D-CENTRAL WOOCOMMERCE — GLOBAL STYLES
   Lightweight styles loaded on ALL pages when
   WooCommerce is active. Contains only mini-cart,
   cart count badge, WC notices, and base resets.
   Full WC styles are in woocommerce.css (page-specific).
   ============================================ */


/* ──────────────────────────────────────────────
   1. BASE WC OVERRIDES (text/link color resets)
   ────────────────────────────────────────────── */

.woocommerce,
.woocommerce-page {
  color: var(--dc-text-primary);
  background-color: var(--dc-bg-primary);
}

.woocommerce a {
  color: var(--dc-accent);
}

.woocommerce a:hover {
  color: var(--dc-accent-hover);
}


/* ──────────────────────────────────────────────
   2. WC NOTICES (can appear on any page)
   ────────────────────────────────────────────── */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce .woocommerce-Message {
  padding: var(--dc-space-md) var(--dc-space-lg);
  margin-bottom: var(--dc-space-lg);
  border-radius: var(--dc-radius-md);
  font-family: var(--dc-font-body);
  font-size: var(--dc-text-sm);
  border-left: 4px solid;
  list-style: none;
}

.woocommerce-message {
  background-color: rgba(16, 185, 129, 0.08);
  border-left-color: var(--dc-success);
  color: var(--dc-success);
}

.woocommerce-info {
  background-color: rgba(59, 130, 246, 0.08);
  border-left-color: var(--dc-info);
  color: var(--dc-info);
}

.woocommerce-error,
.woocommerce-error li {
  background-color: rgba(239, 68, 68, 0.08);
  border-left-color: var(--dc-error);
  color: var(--dc-error);
}

.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
  color: inherit;
  font-weight: var(--dc-weight-semibold);
  text-decoration: underline;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
  display: none;
}


/* ──────────────────────────────────────────────
   3. MINI CART / WIDGET (header cart dropdown)
   ────────────────────────────────────────────── */

.widget_shopping_cart .product_list_widget {
  list-style: none;
  padding: 0;
}

.widget_shopping_cart .product_list_widget li {
  padding: var(--dc-space-sm) 0;
  border-bottom: 1px solid var(--dc-border);
}

.widget_shopping_cart .product_list_widget li a {
  font-family: var(--dc-font-heading);
  font-size: var(--dc-text-sm);
  color: var(--dc-text-primary);
  text-decoration: none;
}

.widget_shopping_cart .product_list_widget li .quantity {
  font-family: var(--dc-font-mono);
  font-size: var(--dc-text-xs);
  color: var(--dc-text-muted);
}

.widget_shopping_cart .total {
  font-family: var(--dc-font-mono);
  font-weight: var(--dc-weight-bold);
  color: var(--dc-accent);
  padding: var(--dc-space-md) 0;
  border-top: 1px solid var(--dc-border);
}

.widget_shopping_cart .buttons a {
  display: block;
  width: 100%;
  text-align: center;
  padding: 10px 16px;
  margin-bottom: var(--dc-space-sm);
  font-family: var(--dc-font-heading);
  font-size: var(--dc-text-sm);
  font-weight: var(--dc-weight-semibold);
  text-transform: uppercase;
  border-radius: var(--dc-radius-sm);
  text-decoration: none;
  transition: all var(--dc-transition-fast);
}

.widget_shopping_cart .buttons a:first-child {
  color: var(--dc-text-secondary);
  border: 1px solid var(--dc-border);
}

.widget_shopping_cart .buttons a:last-child {
  color: #ffffff;
  background-color: var(--dc-accent);
}


/* ──────────────────────────────────────────────
   4. LOADING / OVERLAY STATES (AJAX add-to-cart)
   ────────────────────────────────────────────── */

.woocommerce .blockUI.blockOverlay {
  background-color: var(--dc-bg-primary) !important;
  opacity: 0.7 !important;
}

.woocommerce .loader::before,
.woocommerce .blockUI.blockOverlay::before {
  border-top-color: var(--dc-accent) !important;
}


/* ──────────────────────────────────────────────
   5. GLOBAL BUTTON RESET (catch-all for WC buttons)
   ────────────────────────────────────────────── */

.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button {
  font-family: var(--dc-font-heading);
  font-weight: var(--dc-weight-semibold);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  border-radius: var(--dc-radius-sm);
  transition: all var(--dc-transition-fast);
  cursor: pointer;
  line-height: 1.2;
}

.woocommerce .button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  color: #ffffff;
  background-color: #ff6e00;
  border: 2px solid #ff6e00;
}

.woocommerce .button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background-color: #e56200;
  border-color: #e56200;
  box-shadow: 0 0 20px rgba(255, 110, 0, 0.2), 0 0 40px rgba(255, 110, 0, 0.1);
}

.woocommerce .button.alt:active,
.woocommerce button.button.alt:active {
  background-color: var(--dc-accent-active);
}

.woocommerce .button:disabled,
.woocommerce .button.disabled,
.woocommerce .button:disabled[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}


/* ──────────────────────────────────────────────
   6. PRICE BASE STYLES (prices appear in header/widgets)
   ────────────────────────────────────────────── */

.woocommerce .price,
.woocommerce .amount {
  font-family: var(--dc-font-mono);
  color: var(--dc-accent);
}

.woocommerce .price del,
.woocommerce .price del .amount {
  color: var(--dc-text-muted);
  font-weight: var(--dc-weight-normal);
  font-size: 0.85em;
  opacity: 0.7;
}

.woocommerce .price ins {
  text-decoration: none;
}

.woocommerce .price ins .amount {
  color: var(--dc-accent);
}


/* ──────────────────────────────────────────────
   7. STAR RATING (appears in widgets/mini-cart)
   ────────────────────────────────────────────── */

.woocommerce .star-rating {
  font-size: var(--dc-text-sm);
  color: var(--dc-accent);
}

.woocommerce .star-rating::before {
  color: var(--dc-border-light);
}

.woocommerce .star-rating span::before {
  color: var(--dc-accent);
}
