/* ============================================================
   Giecik — WooCommerce layout (ładowane tylko gdy Woo aktywne)
   Współgra z assets/css/main.css (zmienne --acid, --base, --card, --line…)
   ============================================================ */

/* Kontener treści WooCommerce wpięty przez hooki (functions.php).
   Górny padding, bo nawigacja jest fixed. */
.wc-main{ padding-top:120px; padding-bottom:80px; min-height:60vh; }
.wc-main > h1, .woocommerce-products-header__title{
  font-weight:800; line-height:1.04; font-size:clamp(34px,5vw,56px); margin:0 0 12px;
}
.woocommerce-products-header{ margin-bottom:18px; }
.woocommerce-breadcrumb{ display:none !important; }
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{ float:none !important; color:var(--dim); font-size:14px; margin-bottom:18px; }
.woocommerce .woocommerce-ordering{ margin-bottom:22px; }
.woocommerce .woocommerce-ordering select{
  font-family:inherit; border-radius:999px; padding:8px 14px; border:1px solid var(--line2);
  background:rgba(8,56,43,.5); color:var(--text);
}

/* ---- Katalog produktów: ul.products jako siatka, reuse .card ---- */
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products{
  display:grid !important;
  grid-template-columns:repeat(3,1fr);
  gap:20px; margin:0; padding:0; list-style:none;
}
.woocommerce ul.products li.product,
ul.products li.product{
  width:auto !important; margin:0 !important; float:none !important; clear:none !important; padding:0;
}
/* Reset domyślnych clearfix-ów WooCommerce — w siatce CSS pseudo-elementy
   stają się komórkami i przesuwają pierwszy produkt. */
.woocommerce ul.products::before, .woocommerce ul.products::after,
ul.products::before, ul.products::after,
.woocommerce ul.products li.product::before, .woocommerce ul.products li.product::after{ content:none !important; display:none !important; }
.woocommerce ul.products{ clear:both; }
@media (max-width:1000px){ .woocommerce ul.products, ul.products{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:620px){ .woocommerce ul.products, ul.products{ grid-template-columns:1fr; } }

/* Paginacja katalogu */
.woocommerce nav.woocommerce-pagination ul{ border:0; margin-top:30px; }
.woocommerce nav.woocommerce-pagination ul li{ border:0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  border-radius:10px; background:var(--card); border:1px solid var(--line2); color:var(--text);
}
.woocommerce nav.woocommerce-pagination ul li span.current{ background:var(--acid); color:var(--base); border-color:var(--acid); }

/* ---- Przyciski WooCommerce w stylu marki ---- */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce .button, .woocommerce #place_order{
  background:var(--acid); color:var(--base); border:0; border-radius:999px;
  font-family:inherit; font-weight:700; padding:13px 24px; line-height:1; transition:transform .2s, filter .2s;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce .button:hover,
.woocommerce #place_order:hover{ filter:brightness(1.06); transform:translateY(-2px); color:var(--base); }
.woocommerce .button.alt, .woocommerce button.button.alt, .woocommerce #respond input#submit.alt{
  background:var(--orange); color:#fff;
}
.woocommerce .added_to_cart{ margin-left:8px; font-weight:700; color:var(--acid); }

/* ---- Single product ---- */
.single-product div.product{
  display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start;
}
.single-product div.product .woocommerce-product-gallery{ margin:0; }
.single-product div.product .woocommerce-product-gallery img{ border-radius:18px; }
.single-product div.product .product_title{ font-weight:800; line-height:1.06; font-size:clamp(28px,4vw,46px); margin:0 0 10px; }
.single-product div.product p.price, .single-product div.product span.price{
  color:var(--acid); font-weight:800; font-size:26px; margin:6px 0 16px;
}
.single-product div.product p.price del{ color:var(--dim); font-weight:600; font-size:18px; }
.single-product .woocommerce-product-details__short-description{ color:var(--dim); line-height:1.7; }
.single-product .quantity input.qty{
  border-radius:10px; border:1px solid var(--line2); background:rgba(8,56,43,.5); color:var(--text); padding:10px;
}
.single-product .product_meta{ color:var(--dim); font-size:13px; margin-top:14px; }
.single-product .woocommerce-tabs{ grid-column:1/-1; margin-top:36px; }
.single-product .related.products, .single-product .upsells.products{ grid-column:1/-1; margin-top:40px; }
.single-product .related.products > h2, .single-product .upsells.products > h2{
  font-weight:800; font-size:clamp(24px,3vw,36px); margin:0 0 18px;
}
@media (max-width:900px){ .single-product div.product{ grid-template-columns:1fr; gap:28px; } }

/* ---- Notyfikacje / tabele / formularze ---- */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-noreviews{
  background:var(--card); color:var(--text); border-top:3px solid var(--acid); border-radius:12px;
}
.woocommerce-error{ border-top-color:var(--orange); }
.woocommerce table.shop_table{ background:var(--card); border-color:var(--line2); border-radius:14px; overflow:hidden; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td{ border-color:var(--line2); }
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review, .woocommerce form.checkout_coupon{
  background:var(--card); border:1px solid var(--line2); border-radius:16px; padding:22px;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-page form .form-row input.input-text{
  border-radius:10px; border:1px solid var(--line2); background:rgba(8,56,43,.5); color:var(--text); padding:12px;
}

/* Komunikaty „shop" w nagłówku motywu mają oddech */
.wc-main .woocommerce-notices-wrapper{ margin-bottom:18px; }

/* ============================================================
   Brandowe akcenty (hooki) + chipy-linki + konto
   ============================================================ */

/* Kategorie jako linki-chipy (archiwum sklepu) — reuse .chipf z main.css */
.shopfilters a.chipf{ display:inline-block; text-decoration:none; }

/* Pasek zaufania pod „Dodaj do koszyka" (strona produktu) */
.giecik-trust{ display:flex; flex-wrap:wrap; gap:10px; margin:16px 0 4px; }
.giecik-trust span{
  font-size:12.5px; font-weight:600; color:var(--dim);
  border:1px solid var(--line2); border-radius:999px; padding:6px 12px;
}

/* Metody płatności + zwroty pod „Dodaj do koszyka" */
.giecik-pay{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:12px 0 4px; }
.giecik-pay__lbl{ font-size:12px; font-weight:700; color:var(--dim); letter-spacing:.02em; }
.giecik-pay .paychip{
  font-size:11.5px; font-weight:800; letter-spacing:.02em; color:var(--text);
  background:rgba(243,241,231,.06); border:1px solid var(--line2); border-radius:7px; padding:5px 9px;
}
.giecik-returns{ font-size:12.5px; color:var(--dim); margin:8px 0 2px; line-height:1.5; }

/* Podziękowanie po zakupie (Order received) */
.giecik-thanks{
  background:linear-gradient(120deg, rgba(165,255,0,.12), var(--card));
  border:1px solid var(--line); border-radius:18px; padding:26px; margin-bottom:26px;
}
.giecik-thanks h2{ font-weight:800; line-height:1.06; font-size:clamp(26px,4vw,40px); margin:0 0 8px; }
.giecik-thanks p{ color:var(--dim); max-width:620px; margin:0; }

/* Powitanie w „Moje konto" */
.giecik-acct{
  background:var(--card); border:1px solid var(--line2); border-radius:14px;
  padding:16px 18px; margin-bottom:18px; color:var(--dim);
}
.giecik-acct a{ color:var(--acid); font-weight:700; }

/* Pusty koszyk */
.cart-empty-giecik{ text-align:center; margin:6px 0 22px; }
.cart-empty-giecik p{ color:var(--dim); }
.cart-empty-giecik .cart-empty{ font-weight:700; color:var(--text); }
.return-to-shop{ text-align:center; }

/* Nawigacja „Moje konto" jako pigułki */
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none; margin:0 0 22px; padding:0; display:flex; flex-wrap:wrap; gap:8px;
}
.woocommerce-account .woocommerce-MyAccount-navigation li{ border:0; }
.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:inline-block; padding:9px 16px; border-radius:999px;
  border:1px solid var(--line2); background:var(--card); color:var(--text);
  text-decoration:none; font-weight:700; font-size:13.5px; transition:.2s;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{ border-color:var(--line); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
  background:var(--acid); color:var(--base); border-color:var(--acid);
}
@media (min-width:783px){
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content{ float:none; width:auto; }
}

/* Brandowa etykieta promocji */
.woocommerce span.onsale, .woocommerce ul.products li.product .onsale{
  background:var(--orange); color:#fff; border-radius:999px; font-weight:700;
  min-height:auto; min-width:auto; padding:4px 12px; line-height:1.4;
}

/* ============================================================
   LANDING POJEDYNCZEGO PRODUKTU (.wc-landing) — np. Grubas
   Reużywa klas z main.css (.sec,.split,.bens,.receipt,.faqlist,.stock…)
   ============================================================ */
.wc-landing{ overflow-x:clip; }

/* HERO */
.wc-landing .pl-hero{
  display:grid; grid-template-columns:1.02fr .98fr; gap:48px; align-items:center;
  padding-top:14px; padding-bottom:48px; min-width:0;
}
.wc-landing .pl-hero__info{ min-width:0; }
.wc-landing .pl-title{ font-size:clamp(36px,6vw,74px); margin:12px 0 4px; }
.wc-landing .pl-lede{ max-width:520px; color:var(--dim); font-size:17px; line-height:1.6; margin:14px 0 20px; }
.wc-landing .pl-lede b{ color:var(--text); font-weight:700; }

.wc-landing .pl-pricebar{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:14px; }
.wc-landing .pl-price{ font-weight:800; font-size:30px; color:var(--acid); line-height:1; }
.wc-landing .pl-price del{ color:var(--dim); font-weight:600; font-size:20px; margin-right:6px; }
.wc-landing .pl-price ins{ text-decoration:none; }
.wc-landing .pl-instock{
  font-weight:700; font-size:13.5px; color:var(--text);
  border:1px solid var(--line); background:rgba(165,255,0,.07); border-radius:999px; padding:6px 13px;
}
.wc-landing .pl-instock--out{ color:var(--dim); border-color:var(--line2); background:none; }
.wc-landing .pl-stock{ margin:4px 0 16px; max-width:460px; }

/* Formularz „Dodaj do koszyka" WooCommerce w hero */
.wc-landing form.cart{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:6px 0 6px; }
.wc-landing form.cart .quantity input.qty{
  width:74px; border-radius:12px; border:1px solid var(--line2);
  background:rgba(8,56,43,.5); color:var(--text); padding:13px 10px; font-weight:700; text-align:center;
}
.wc-landing form.cart .single_add_to_cart_button.button,
.wc-landing form.cart .single_add_to_cart_button.button.alt{
  background:var(--acid); color:var(--base); font-size:16px; padding:15px 30px; border-radius:999px;
}
.wc-landing form.cart .single_add_to_cart_button:hover{ box-shadow:0 12px 30px rgba(165,255,0,.34); }
.wc-landing .pl-rrow{ margin-top:18px; }

/* HERO — media / galeria WooCommerce */
.wc-landing .pl-hero__media{ position:relative; min-width:0; }
.wc-landing .pl-media-chips{ position:absolute; z-index:6; top:10px; left:10px; display:flex; gap:8px; flex-wrap:wrap; }
.wc-landing .pl-media-chips .chip{ position:static; }
.wc-landing .woocommerce-product-gallery{ width:100% !important; float:none !important; margin:0 !important; }
.wc-landing .woocommerce-product-gallery img{ border-radius:22px; filter:drop-shadow(0 24px 34px rgba(0,0,0,.45)); }

/* SPECYFIKACJA */
.wc-landing .pl-specs{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:6px; }
.wc-landing .pl-spec{ background:var(--card); border:1px solid var(--line2); border-radius:14px; padding:16px 16px 18px; }
.wc-landing .pl-spec__k{ font-size:11.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--acid); font-weight:700; margin-bottom:6px; }
.wc-landing .pl-spec__v{ font-weight:600; line-height:1.35; }
.wc-landing .pl-handmade{ color:var(--dim); max-width:700px; margin-top:18px; line-height:1.6; }

/* SKALA RZADKOŚCI */
.wc-landing .pl-rar{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:6px; }
.wc-landing .pl-rar__card{ background:var(--card); border:1px solid var(--line2); border-radius:18px; padding:18px 16px; text-align:center; }
.wc-landing .pl-rar__card--secret{ border-color:#e0467e; box-shadow:0 0 0 1px rgba(224,70,126,.4) inset; }
.wc-landing .pl-rar__card img{ width:100%; max-width:160px; height:auto; display:block; margin:0 auto 12px; filter:drop-shadow(0 14px 22px rgba(0,0,0,.45)); }
.wc-landing .pl-rar__card img.rare{ filter:var(--rare-filter) drop-shadow(0 14px 22px rgba(0,0,0,.45)); }
.wc-landing .pl-rar__nm{ font-weight:800; font-size:18px; }
.wc-landing .pl-rar__pc{ color:var(--dim); font-size:13px; margin-top:4px; }

/* FINAŁ / disclaimer */
.wc-landing .pl-final{ padding-top:22px; }
.wc-landing .pl-disc{ font-size:12.5px; color:var(--dim); max-width:640px; margin:24px auto 0; line-height:1.6; }

/* Produkt wariantowy (Kopciuchy) — wybór rozmiaru w hero */
.wc-landing form.cart .variations{ width:100%; margin:0 0 6px; border-collapse:collapse; }
.wc-landing form.cart .variations th,
.wc-landing form.cart .variations td{ display:block; text-align:left; padding:4px 0; border:0; }
.wc-landing form.cart .variations th.label{ font-weight:700; color:var(--dim); font-size:13.5px; }
.wc-landing form.cart .variations select{
  width:100%; max-width:280px; font-family:inherit; font-weight:700; border-radius:12px;
  padding:12px 14px; border:1px solid var(--line2); background:rgba(8,56,43,.5); color:var(--text);
}
.wc-landing form.cart .reset_variations{ display:inline-block; margin:6px 0 0; color:var(--acid); font-weight:700; font-size:13px; }
.wc-landing form.cart .woocommerce-variation-price{ margin:8px 0; }
.wc-landing form.cart .woocommerce-variation-price .price{ color:var(--acid); font-weight:800; font-size:22px; }
.wc-landing form.cart.variations_form .woocommerce-variation-add-to-cart{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:8px; }

/* Podpowiedź rozmiaru / preorder */
.wc-landing .pl-sizehint{ color:var(--dim); font-size:13.5px; margin:12px 0 0; max-width:460px; }
.wc-landing .pl-sizehint a{ color:var(--acid); font-weight:700; }
.wc-landing .pl-preorder-tag{ border-color:var(--orange); background:rgba(255,114,0,.08); }
.wc-landing .pl-preorder{
  border:1px solid var(--line); background:rgba(165,255,0,.05); border-radius:16px;
  padding:18px 20px; margin:8px 0 4px; max-width:520px;
}
.wc-landing .pl-preorder p{ color:var(--dim); margin:0 0 14px; line-height:1.55; }
.wc-landing .pl-preorder p b{ color:var(--text); }

/* Cross-sell „Skompletuj ekipę" — rząd 4 kart */
.wc-landing #dobierz .grid{ grid-template-columns:repeat(4,1fr); }

/* Zakładki WooCommerce (Opis / Dane / Opinie) w stylu marki */
.wc-landing .woocommerce-tabs{ margin-top:4px; }
.wc-landing .woocommerce-tabs ul.tabs{ list-style:none; margin:0 0 18px; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.wc-landing .woocommerce-tabs ul.tabs::before,
.wc-landing .woocommerce-tabs ul.tabs::after{ display:none; content:none; }
.wc-landing .woocommerce-tabs ul.tabs li{ margin:0; padding:0; background:none; border:0; border-radius:999px; }
.wc-landing .woocommerce-tabs ul.tabs li::before,
.wc-landing .woocommerce-tabs ul.tabs li::after{ display:none; content:none; }
.wc-landing .woocommerce-tabs ul.tabs li a{
  display:inline-block; padding:9px 16px; border-radius:999px; text-decoration:none;
  border:1px solid var(--line2); background:var(--card); color:var(--text); font-weight:700; font-size:13.5px;
}
.wc-landing .woocommerce-tabs ul.tabs li.active a{ background:var(--acid); color:var(--base); border-color:var(--acid); }
.wc-landing .woocommerce-tabs .panel{ color:var(--dim); line-height:1.75; max-width:840px; margin:0; }
.wc-landing .woocommerce-tabs .panel h2{ font-weight:800; font-size:clamp(22px,3vw,30px); color:var(--text); margin:0 0 12px; }
.wc-landing .woocommerce-tabs table.shop_attributes{
  background:var(--card); border:1px solid var(--line2); border-radius:14px; overflow:hidden; width:100%; max-width:560px;
}
.wc-landing .woocommerce-tabs table.shop_attributes th,
.wc-landing .woocommerce-tabs table.shop_attributes td{ border-color:var(--line2); color:var(--text); padding:10px 14px; }
.wc-landing #reviews .comment-text{ color:var(--text); }

/* Przyklejony pasek „kup" (mobile) */
.giecik-stickybuy{
  position:fixed; left:0; right:0; bottom:0; z-index:190;
  display:none; align-items:center; gap:12px; padding:10px 14px;
  background:rgba(8,56,43,.92); backdrop-filter:blur(14px);
  border-top:1px solid var(--line); box-shadow:0 -10px 30px rgba(0,0,0,.35);
  transform:translateY(110%); transition:transform .35s var(--ease);
  padding-bottom:calc(10px + env(safe-area-inset-bottom));
}
.giecik-stickybuy.show{ transform:none; }
.giecik-stickybuy__img{ width:44px; height:44px; border-radius:10px; object-fit:cover; flex:0 0 auto; }
.giecik-stickybuy__info{ display:flex; flex-direction:column; min-width:0; line-height:1.15; }
.giecik-stickybuy__name{ font-weight:700; font-size:13px; color:var(--text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.giecik-stickybuy__price{ font-weight:800; font-size:15px; color:var(--acid); }
.giecik-stickybuy__price .woocommerce-Price-amount{ color:var(--acid); }
.giecik-stickybuy__cta{ margin-left:auto; flex:0 0 auto; padding:12px 18px; font-size:14px; white-space:nowrap; }
@media (max-width:720px){
  .giecik-stickybuy{ display:flex; }
}

/* RESPONSYWNOŚĆ */
@media (max-width:1000px){
  .wc-landing #dobierz .grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:900px){
  .wc-landing .pl-hero{ grid-template-columns:1fr; gap:30px; }
  .wc-landing .pl-hero__media{ order:-1; }
  .wc-landing .pl-specs{ grid-template-columns:repeat(2,1fr); }
  .wc-landing .pl-rar{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .wc-landing #dobierz .grid{ grid-template-columns:1fr; }
  .wc-landing .pl-title{ font-size:clamp(25px,8vw,34px); }
  .wc-landing .pl-lede{ font-size:15.5px; }
  .wc-landing .pl-hero{ gap:22px; }
}
@media (max-width:480px){
  .wc-landing .pl-specs{ grid-template-columns:1fr 1fr; }
}
