/* ═══════════════════════════════════════════════
   Bordo Bikes — WooCommerce overrides
   ═══════════════════════════════════════════════ */

/* ── Ukryj domyślne style WC ── */
.woocommerce-page .woocommerce { max-width: none; }

/* ── Przyciski WC → nasz styl ── */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .wc-block-components-checkout-place-order-button,
.woocommerce .checkout-button {
  background: linear-gradient(135deg, var(--bordo) 0%, var(--bordo-l) 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--r-md) !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  padding: 12px 24px !important;
  cursor: pointer !important;
  transition: transform 0.25s, box-shadow 0.25s !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  letter-spacing: 0.01em !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .checkout-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--shadow-bordo) !important;
  background: linear-gradient(135deg, var(--bordo-l) 0%, var(--bordo-bright) 100%) !important;
  color: #fff !important;
}

/* ── Alt (ghost) button ── */
.woocommerce a.button.alt,
.woocommerce button.button.alt {
  background: linear-gradient(135deg, var(--bordo) 0%, var(--bordo-l) 100%) !important;
}

/* ── Input qty WC ── */
.woocommerce .quantity input.qty,
.woocommerce .quantity .qty {
  border: 1.5px solid var(--border-mid) !important;
  border-radius: var(--r-md) !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  color: var(--text) !important;
  background: var(--bg-input) !important;
  padding: 8px 12px !important;
  width: 64px !important;
  text-align: center !important;
  transition: border-color 0.3s, box-shadow 0.3s !important;
}
.woocommerce .quantity input.qty:focus {
  border-color: var(--bordo) !important;
  box-shadow: 0 0 0 3px rgba(139,26,48,0.12) !important;
  outline: none !important;
}

/* ── Komunikaty WC ── */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  border-radius: var(--r-md) !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  padding: 14px 18px !important;
  border: none !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 16px !important;
}
.woocommerce-message {
  background: rgba(4,120,87,0.08) !important;
  color: #047857 !important;
  border-left: 3px solid #047857 !important;
}
.woocommerce-info {
  background: rgba(59,130,246,0.08) !important;
  color: #1d4ed8 !important;
  border-left: 3px solid #3b82f6 !important;
}
.woocommerce-error {
  background: rgba(217,59,92,0.08) !important;
  color: var(--bordo) !important;
  border-left: 3px solid var(--bordo-bright) !important;
}
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before { display: none !important; }
.woocommerce-message a.button,
.woocommerce-info a.button {
  width: auto !important;
  padding: 8px 18px !important;
  font-size: 12px !important;
  flex-shrink: 0;
}

/* ── Cart item meta (terminy rezerwacji) ── */
.bb-cart-item-meta dl.variation { margin: 0; }
.bb-cart-item-meta dl.variation dt,
.bb-cart-item-meta dl.variation dd { display: inline; font-size: 12px; color: var(--text-muted); margin: 0; }
.bb-cart-item-meta dl.variation dt::after { content: ': '; }
.bb-cart-item-meta dl.variation dd::after { content: ' · '; }

/* ── Cart item thumbnail ── */
.bb-cart-item-img img {
  width: 100%;
  height: 100%;
  min-height: 120px;
  object-fit: cover;
  display: block;
}

/* ── Ukryj cross-sells w koszyku ── */
.cross-sells { display: none !important; }

/* ── Checkout button szerokość ── */
.wc-proceed-to-checkout a.checkout-button {
  width: 100% !important;
  padding: 14px 24px !important;
  font-size: 15px !important;
}

/* ── Qty input w cart – ukryj label "ilość" ── */
.woocommerce .quantity label { display: none !important; }

/* ── Form checkout ── */
.woocommerce form .form-row label {
  font-family: var(--font-body) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  color: var(--text-muted) !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  margin-bottom: 6px !important;
  display: block !important;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  border: 1.5px solid var(--border-mid) !important;
  border-radius: var(--r-md) !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  color: var(--text) !important;
  background: var(--bg-input) !important;
  padding: 11px 14px !important;
  width: 100% !important;
  transition: border-color 0.3s, box-shadow 0.3s !important;
  outline: none !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  border-color: var(--bordo) !important;
  box-shadow: 0 0 0 3px rgba(139,26,48,0.12) !important;
}

/* ── Notices wrapper ── */
.woocommerce-notices-wrapper {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 32px;
}

/* ── Strona produktów WC (shop) – ukryj domyślną ── */
.woocommerce ul.products { display: none !important; }

/* ── Galeria produktu — białe tło, aspect ratio 4:3 ── */
.woocommerce-product-gallery,
.woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery .flex-viewport {
  background: #ffffff !important;
  border-radius: 12px;
}

.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image a,
.woocommerce-product-gallery__image img {
  background: #ffffff !important;
}

/* Główne zdjęcie — proporcje 4:3 (1200×900), obiekt wycentrowany */
.woocommerce-product-gallery__image img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  object-position: center;
  padding: 24px;
  box-sizing: border-box;
}

/* Miniatury — białe tło zawsze (także active/focus/selected) */
.woocommerce-product-gallery .flex-control-thumbs li img,
.woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.woocommerce-product-gallery ol.flex-control-nav li img,
.woocommerce-product-gallery ol.flex-control-nav li img.flex-active {
  background: #ffffff !important;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  object-position: center;
  padding: 6px;
  border-radius: 8px;
  border: 1.5px solid var(--border);
  transition: border-color 0.2s;
  opacity: 1 !important;
}
.woocommerce-product-gallery .flex-control-thumbs li img:hover,
.woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.woocommerce-product-gallery ol.flex-control-nav li img:hover,
.woocommerce-product-gallery ol.flex-control-nav li img.flex-active {
  border-color: var(--bordo);
}

/* Główny slider — białe tło zawsze, także podczas animacji */
.woocommerce-product-gallery .flex-viewport,
.woocommerce-product-gallery .flexslider,
.woocommerce-product-gallery ol.slides,
.woocommerce-product-gallery ol.slides li,
.woocommerce-product-gallery__image {
  background: #ffffff !important;
}

/* Upewniamy się że .wp-post-image (główne zdjęcie WC) też ma białe tło */
.woocommerce-product-gallery__image img,
.woocommerce-product-gallery__image .wp-post-image {
  background: #ffffff !important;
}
