/*
Theme Name:     BassBus Child
Theme URI:      https://bassbus.pl
Template:       kadence
Author:         Pixel Network Paweł Worwa
Author URI:     https://pixelmarketing.pl
Description:    Child theme for BassBus website based on Kadence Theme.
Version:        v1
License:        GNU General Public License v3.0 (or later)
License URI:    https://www.gnu.org/licenses/gpl-3.0.html
*/
/* =====================================================================
   BassBus — MASTER SKIN dla WooCommerce (bez wtyczki).
   Obejmuje: sklep/archiwum, pojedynczy produkt, koszyk, zamówienie (checkout),
   przyciski, pola formularzy, tabele, powiadomienia.
   Wklej w: Wygląd → Dostosuj → Dodatkowy CSS.  (zastępuje wcześniejszy bassbus-sklep.css)
   WAŻNE: linia @import musi być PIERWSZA.
   ===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Anton&family=DM+Sans:wght@400;500;700&family=Geist+Mono:wght@400;500&display=swap');

/* Zmienne TYLKO w obrębie sklepu (.woocommerce) — nie dotykają globalnych kolorów strony.
   Akcent dziedziczy z palety Kadence (--global-palette1); jeśli nie ustawiona, fallback = fiolet BassBus.
   Chcesz na sztywno inny akcent? Zmień jedną wartość: --bb-violet. */
.woocommerce, .woocommerce-page{
  --bb-violet:var(--global-palette1, #B026FF);
  --bb-violet-dim:color-mix(in srgb, var(--bb-violet) 65%, #000);
  --bb-violet-glow:color-mix(in srgb, var(--bb-violet) 40%, transparent);
  --bb-yellow:var(--global-palette2, #FFC800);
  --bb-bg-1:#000000;
  --bb-bg-2:#0A0A0A;
  --bb-bg-3:#141414;
  --bb-bg-4:#1F1F1F;
  --bb-border:#2A2A2A;
  --bb-fg-1:#FFFFFF;
  --bb-fg-2:#A3A3A3;
  --bb-fg-3:#5C5C5C;
  --bb-d:'Anton','Arial Narrow',sans-serif;
  --bb-b:'DM Sans',system-ui,sans-serif;
  --bb-m:'Geist Mono','Courier New',monospace;
}

/* --- Ciemne tło na stronach sklepu (nie rusza innych podstron) --- */
body.woocommerce-page,
body.woocommerce{ background:var(--bb-bg-2)!important; color:var(--bb-fg-1); }
body.woocommerce-page .content-area,
body.woocommerce-page #main,
body.woocommerce-page .site-main,
body.woocommerce-page .entry-content{ background:transparent!important; }
.woocommerce, .woocommerce-page{ color:var(--bb-fg-1); }
.woocommerce a{ color:var(--bb-fg-1); }
.woocommerce a:hover{ color:var(--bb-violet); }

/* =====================================================================
   PRZYCISKI (wspólne dla całego Woo)
   ===================================================================== */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .single_add_to_cart_button,
.woocommerce #place_order,
.woocommerce .checkout-button,
.woocommerce ul.products li.product a.button{
  font-family:var(--bb-m)!important;
  font-size:13px!important;
  font-weight:500!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
  background:var(--bb-violet)!important;
  color:#000!important;
  border:2px solid var(--bb-violet)!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:14px 22px!important;
  transition:all .15s ease!important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce #place_order:hover,
.woocommerce .checkout-button:hover,
.woocommerce ul.products li.product a.button:hover{
  background:var(--bb-violet-dim)!important;
  border-color:var(--bb-violet-dim)!important;
  color:#fff!important;
}
/* Przyciski drugorzędne = obrys (np. aktualizuj koszyk, kupon, wróć) */
.woocommerce button[name="update_cart"],
.woocommerce input[name="update_cart"],
.woocommerce .button.wc-backward,
.woocommerce .coupon .button{
  background:transparent!important;
  color:var(--bb-fg-1)!important;
  border:2px solid var(--bb-border)!important;
}
.woocommerce button[name="update_cart"]:hover,
.woocommerce .button.wc-backward:hover,
.woocommerce .coupon .button:hover{
  border-color:var(--bb-violet)!important;
  color:var(--bb-violet)!important;
  background:transparent!important;
}

/* =====================================================================
   POLA FORMULARZY (qty, checkout, kupon, logowanie)
   ===================================================================== */
.woocommerce .quantity input.qty,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce #order_comments,
.woocommerce input.input-text,
.woocommerce select,
.woocommerce .select2-selection{
  background:var(--bb-bg-3)!important;
  color:var(--bb-fg-1)!important;
  border:1px solid var(--bb-border)!important;
  border-radius:0!important;
  font-family:var(--bb-b)!important;
  box-shadow:none!important;
}
.woocommerce .quantity input.qty:focus,
.woocommerce form .form-row input.input-text:focus,
.woocommerce input.input-text:focus,
.woocommerce select:focus,
.woocommerce textarea:focus{
  border-color:var(--bb-violet)!important;
  outline:none!important;
}
.woocommerce form .form-row label,
.woocommerce-checkout label{ font-family:var(--bb-m)!important; font-size:12px; text-transform:uppercase; letter-spacing:.05em; color:var(--bb-fg-2)!important; }
.woocommerce .select2-dropdown,
.woocommerce .select2-results__option{ background:var(--bb-bg-3)!important; color:var(--bb-fg-1)!important; }
.woocommerce .select2-results__option--highlighted{ background:var(--bb-violet)!important; color:#000!important; }

/* =====================================================================
   NAGŁÓWKI / CENY (typografia BassBus)
   ===================================================================== */
.woocommerce .product_title,
.woocommerce-cart h1, .woocommerce-checkout h1, .woocommerce-account h1,
.woocommerce .cart_totals h2, .woocommerce #order_review_heading,
.woocommerce-billing-fields h3, .woocommerce #ship-to-different-address label{
  font-family:var(--bb-d)!important; font-weight:400!important; text-transform:uppercase!important; letter-spacing:-.01em; color:var(--bb-fg-1)!important;
}
.woocommerce .price,
.woocommerce .woocommerce-Price-amount{ color:var(--bb-fg-1)!important; }
.woocommerce div.product p.price,
.woocommerce div.product span.price{ font-family:var(--bb-d)!important; font-size:34px!important; color:var(--bb-violet)!important; }
.woocommerce .price del{ color:var(--bb-fg-2)!important; opacity:.8; }
.woocommerce .price ins{ text-decoration:none!important; }

/* =====================================================================
   SKLEP / ARCHIWUM — karty produktu (Kadence Shop Kit)
   ===================================================================== */
.woocommerce ul.products{ gap:24px; }
.woocommerce ul.products li.product.loop-entry{
  background:var(--bb-bg-3)!important; border:1px solid var(--bb-border)!important;
  border-radius:0!important; box-shadow:none!important; padding:0!important;
  overflow:hidden; display:flex; flex-direction:column; transition:border-color .2s,transform .2s;
}
.woocommerce ul.products li.product.loop-entry:hover{ border-color:var(--bb-violet)!important; transform:translateY(-2px); }
.woocommerce ul.products li.product .woocommerce-loop-image-link{
  display:block; aspect-ratio:1/1; overflow:hidden;
  background:linear-gradient(135deg,var(--bb-violet-glow) 0%,var(--bb-bg-1) 100%);
}
.woocommerce ul.products li.product .woocommerce-loop-image-link img{ width:100%!important; height:100%!important; object-fit:cover; margin:0!important; border-radius:0!important; transition:transform .35s ease; }
.woocommerce ul.products li.product.loop-entry:hover .woocommerce-loop-image-link img{ transform:scale(1.04); }
.woocommerce ul.products li.product .product-details{ padding:20px!important; background:transparent!important; border:0!important; display:flex; flex-direction:column; gap:12px; flex:1; }
.woocommerce ul.products li.product .woocommerce-loop-product__title{ font-family:var(--bb-d)!important; font-weight:400!important; font-size:22px!important; line-height:1!important; text-transform:uppercase!important; margin:0!important; padding:0!important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title a{ color:var(--bb-fg-1)!important; }
.woocommerce ul.products li.product .product-excerpt, .woocommerce ul.products li.product .product-excerpt p{ font-family:var(--bb-b)!important; font-size:13px!important; color:var(--bb-fg-2)!important; margin:0!important; }
.woocommerce ul.products li.product .price{ font-family:var(--bb-d)!important; font-size:26px!important; color:var(--bb-fg-1)!important; margin-top:auto!important; }
.woocommerce ul.products li.product .product-action-wrap{ position:static!important; opacity:1!important; visibility:visible!important; transform:none!important; margin-top:8px!important; background:transparent!important; width:100%!important; max-width:100%!important; }
/* Przycisk na pełną szerokość karty — nie rozpycha kolumny */
.woocommerce ul.products li.product a.button{
  display:flex!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  justify-content:center!important;
  text-align:center!important;
  align-items:center;
  gap:6px;
  padding:12px 10px!important;
  font-size:11px!important;
  line-height:1.2!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
/* Schowaj dekoracyjną strzałkę Kadence w pętli (zostają ikony stanu: spinner/check) */
.woocommerce ul.products li.product a.button .kadence-svg-iconset:first-of-type{ display:none!important; }

/* =====================================================================
   POJEDYNCZY PRODUKT
   ===================================================================== */
.woocommerce div.product{ color:var(--bb-fg-1); }
.woocommerce div.product .product_title{ font-size:clamp(34px,5vw,64px)!important; line-height:.95; }
.woocommerce div.product .woocommerce-product-gallery{ background:var(--bb-bg-3); border:1px solid var(--bb-border); }
.woocommerce div.product .woocommerce-product-gallery__image img{ border-radius:0!important; }
.woocommerce div.product .summary.entry-summary{ }
.woocommerce div.product form.cart{ margin-top:24px; }
.woocommerce div.product form.cart .quantity input.qty{ height:52px; width:84px; text-align:center; }
.woocommerce div.product .single_add_to_cart_button{ height:52px; }
.woocommerce div.product .woocommerce-product-details__short-description{ color:var(--bb-fg-2); font-family:var(--bb-b); }

/* Zakładki produktu */
.woocommerce div.product .woocommerce-tabs ul.tabs{ border:0; padding:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before{ border-color:var(--bb-border); }
.woocommerce div.product .woocommerce-tabs ul.tabs li{ background:transparent; border:0; border-radius:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a{ font-family:var(--bb-m)!important; text-transform:uppercase; letter-spacing:.05em; color:var(--bb-fg-2)!important; font-weight:500; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{ color:var(--bb-violet)!important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{ border-bottom:2px solid var(--bb-violet); }
.woocommerce div.product .woocommerce-Tabs-panel{ color:var(--bb-fg-2); }
.woocommerce div.product .woocommerce-Tabs-panel h2{ font-family:var(--bb-d)!important; color:var(--bb-fg-1); }

/* Powiązane / up-sell dziedziczą style kart z sekcji archiwum powyżej */
.woocommerce .related > h2, .woocommerce .upsells > h2{ font-family:var(--bb-d)!important; text-transform:uppercase; }

/* =====================================================================
   KOSZYK
   ===================================================================== */
.woocommerce table.shop_table{ background:var(--bb-bg-3)!important; border:1px solid var(--bb-border)!important; border-radius:0!important; }
.woocommerce table.shop_table th{ font-family:var(--bb-m)!important; text-transform:uppercase; letter-spacing:.05em; color:var(--bb-fg-2)!important; border-color:var(--bb-border)!important; }
.woocommerce table.shop_table td{ border-color:var(--bb-border)!important; color:var(--bb-fg-1); }
.woocommerce table.shop_table tbody tr{ border-color:var(--bb-border); }
.woocommerce-cart table.cart img{ border-radius:0; border:1px solid var(--bb-border); }
.woocommerce-cart .cart-collaterals .cart_totals{ background:var(--bb-bg-3); border:1px solid var(--bb-border); padding:24px; }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{ width:100%; text-align:center; justify-content:center; display:flex; }
.woocommerce .cart-collaterals h2{ font-family:var(--bb-d)!important; }

/* =====================================================================
   ZAMÓWIENIE (CHECKOUT)
   ===================================================================== */
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading{ }
.woocommerce-checkout #order_review{ background:var(--bb-bg-3); border:1px solid var(--bb-border); padding:24px; }
.woocommerce-checkout #payment,
.woocommerce-checkout #payment ul.payment_methods{ background:transparent!important; border:0!important; }
.woocommerce-checkout #payment .payment_box{ background:var(--bb-bg-2)!important; border:1px solid var(--bb-border); color:var(--bb-fg-2); }
.woocommerce-checkout #payment .payment_box::before{ border-bottom-color:var(--bb-border)!important; }
.woocommerce-checkout #payment ul.payment_methods li{ border-color:var(--bb-border)!important; }
.woocommerce-checkout #place_order{ width:100%; text-align:center; }
.woocommerce form.checkout h3{ font-family:var(--bb-d)!important; text-transform:uppercase; }

/* =====================================================================
   POWIADOMIENIA
   ===================================================================== */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews{
  background:var(--bb-bg-3)!important; color:var(--bb-fg-1)!important;
  border-top:0!important; border-left:3px solid var(--bb-violet)!important; border-radius:0!important;
}
.woocommerce-message::before,
.woocommerce-info::before{ color:var(--bb-violet)!important; }
.woocommerce-error{ border-left-color:#ff5470!important; }
.woocommerce-error::before{ color:#ff5470!important; }

