/*
Theme Name: Shopaq Industrial
Template: astra
Description: Child theme Astra z designem "Industrial Pro" dla shopaq.eu. Powrót do poprzedniego wyglądu: aktywacja motywu Astra.
Version: 0.9
Author: Shopaq
*/

:root{
  --sq-red:#c00000; --sq-red-dark:#970000;
  --sq-ink:#141414; --sq-steel:#4a4a4c; --sq-line:#e6e4e2;
  --sq-paper:#ffffff; --sq-shop:#f6f5f3; --sq-plate:#1b1b1d;
  --sq-ok:#1e7c3a; --sq-radius:6px;
}

/* ====== tło i typografia ====== */
body{ background:var(--sq-shop); }
h1,h2.woocommerce-loop-category__title, .woocommerce-products-header h1,
.product_title, .entry-title, .ast-archive-title{
  font-family:"Arial Narrow","Segoe UI",system-ui,sans-serif;
  font-weight:800; text-transform:uppercase; letter-spacing:-.01em;
}
h1::selection{ background:var(--sq-red); color:#fff; }

/* ====== pasek topline (wstrzykiwany w functions.php) ====== */
.sq-topline{ background:var(--sq-plate); color:#c9c9ce; font-size:12.5px; }
.sq-topline .sq-wrap{ max-width:1240px; margin:0 auto; padding:6px 20px;
  display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.sq-topline b{ color:#fff; font-weight:600; }
.sq-topline .sq-dot{ color:var(--sq-red); }
.sq-topline a{ color:#fff; }

/* ====== własny header ====== */
.sq-header{ background:var(--sq-paper); border-bottom:3px solid var(--sq-ink); }
.sq-hdr{ max-width:1240px; margin:0 auto; padding:16px 20px;
  display:grid; grid-template-columns:auto 1fr auto; gap:26px; align-items:center; }
.sq-logo{ display:flex; align-items:center; }
.sq-logo-img{ max-height:52px; width:auto; }
.sq-logo-txt{ font-family:"Arial Narrow","Segoe UI",system-ui,sans-serif; font-weight:800;
  font-size:34px; color:var(--sq-ink); letter-spacing:-.02em; }
.sq-logo-txt b{ color:var(--sq-red); }
.sq-logo-txt sup{ font-size:.32em; }
.sq-search{ display:flex; border:2px solid var(--sq-ink); border-radius:var(--sq-radius);
  overflow:hidden; background:#fff; }
.sq-search input[type=search]{ flex:1; border:0; outline:none; padding:11px 14px;
  font-size:14.5px; min-width:0; background:#fff; }
.sq-search button{ background:var(--sq-ink); color:#fff; border:0; padding:0 22px;
  font-weight:700; letter-spacing:.06em; text-transform:uppercase; font-size:12.5px; cursor:pointer; }
.sq-search button:hover, .sq-search button:focus-visible{ background:var(--sq-red); }
.sq-tools{ display:flex; gap:20px; align-items:center; font-size:13px; }
.sq-tools > a{ color:var(--sq-ink); font-weight:600; }
.sq-cart{ display:flex; gap:9px; align-items:center; border:2px solid var(--sq-ink);
  border-radius:var(--sq-radius); padding:8px 14px; font-weight:700; white-space:nowrap; }
.sq-cart:hover{ border-color:var(--sq-red); color:var(--sq-red); }
.sq-cart-n{ background:var(--sq-red); color:#fff; border-radius:99px; font-size:11px; padding:1px 7px; }
.sq-cats{ background:var(--sq-paper); border-top:1px solid var(--sq-line); }
.sq-cats ul{ max-width:1240px; margin:0 auto; padding:0 12px; display:flex; gap:2px;
  list-style:none; overflow-x:auto; }
.sq-cats a{ display:block; padding:11px 15px; font-size:13.5px; font-weight:600;
  color:var(--sq-ink); border-bottom:3px solid transparent; white-space:nowrap; }
.sq-cats a:hover, .sq-cats a:focus-visible{ border-color:var(--sq-red); color:var(--sq-red); }

/* ====== przyciski globalnie ====== */
.woocommerce a.button, .woocommerce button.button,
.woocommerce #respond input#submit, .woocommerce input.button,
button.single_add_to_cart_button, .wc-block-cart__submit-button,
.checkout-button, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  border-radius:var(--sq-radius) !important;
  font-weight:700; letter-spacing:.04em; text-transform:uppercase;
  transition:background .15s ease, color .15s ease, border-color .15s ease;
}
button.single_add_to_cart_button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
#place_order{
  background:var(--sq-red) !important; border:2px solid var(--sq-red) !important; color:#fff !important;
}
button.single_add_to_cart_button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
#place_order:hover{
  background:var(--sq-red-dark) !important; border-color:var(--sq-red-dark) !important;
}

/* Furgonetka "Kup teraz" — czarny kontur, wypełnienie na hover (odwrotnie niż główne CTA) */
.furgonetka-checkout-btn-container button{
  background:#fff !important; background-image:none !important;
  color:var(--sq-ink) !important; border:2px solid var(--sq-ink) !important;
  border-radius:var(--sq-radius) !important; box-shadow:none !important;
  font-weight:800 !important; text-transform:uppercase; letter-spacing:.05em;
}
.furgonetka-checkout-btn-container button:hover{ background:var(--sq-ink) !important; color:#fff !important; }
.furgonetka-checkout-btn-container button *{ color:inherit !important; }

/* ====== karty produktów ====== */
ul.products li.product{
  background:var(--sq-paper); border:1px solid var(--sq-line); border-radius:8px;
  padding:12px 12px 16px !important;
  transition:box-shadow .18s ease, transform .18s ease;
}
ul.products li.product:hover{ box-shadow:0 10px 28px rgba(20,20,20,.10); transform:translateY(-2px); }
ul.products li.product img{ border-radius:6px; aspect-ratio:1/1; object-fit:contain; background:#fff; }
ul.products li.product .woocommerce-loop-product__title{ line-height:1.35; font-weight:600; }
ul.products li.product .price{ font-weight:800; color:var(--sq-ink); }
ul.products li.product .price del{ opacity:.55; font-weight:400; }
ul.products li.product .button{
  border:2px solid var(--sq-ink); background:#fff; color:var(--sq-ink);
}
ul.products li.product .button:hover{
  background:var(--sq-red); border-color:var(--sq-red); color:#fff;
}

/* badge Promocja — czerwona pastylka */
span.onsale{
  background:var(--sq-red) !important; color:#fff !important;
  border-radius:4px !important; padding:3px 10px !important;
  font-size:11px !important; font-weight:700 !important;
  letter-spacing:.06em; text-transform:uppercase;
  line-height:1.6 !important; min-height:0 !important; min-width:0 !important;
}

/* ====== karta produktu ====== */
.single-product .product_title{ font-size:clamp(22px,2.6vw,30px); }
.single-product p.price{ font-size:30px; font-weight:800; color:var(--sq-ink); }
.single-product p.price .woocommerce-price-suffix{ font-size:.45em; color:var(--sq-steel); }
.single-product .woocommerce-product-details__short-description,
.single-product .woocommerce-product-details__short-description *{
  color:#555 !important; font-weight:400 !important;
}
.single-product form.cart .quantity .qty{ border:2px solid var(--sq-ink); border-radius:var(--sq-radius); font-weight:700; }
/* tabliczka SKU */
.single-product .sku_wrapper, .single-product .sq-sku-plate{
  display:inline-flex; align-items:center; gap:8px;
  background:var(--sq-plate); color:#fff !important; border-radius:6px;
  padding:5px 12px; font-size:13px;
  font-family:ui-monospace,Consolas,monospace;
}
.single-product .sku_wrapper .sku{ color:#fff; }

/* ====== koszyk / checkout ====== */
.woocommerce-cart table.cart, .woocommerce table.shop_table{
  background:var(--sq-paper); border:1px solid var(--sq-line); border-radius:10px;
}
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review{
  background:var(--sq-paper); border:1px solid var(--sq-line); border-radius:10px; padding:18px;
}
.woocommerce-checkout form .form-row input.input-text{
  border:1.5px solid var(--sq-line); border-radius:var(--sq-radius); padding:10px 12px;
}
.woocommerce-checkout form .form-row input.input-text:focus{ border-color:var(--sq-ink); }

/* ====== stopka ====== */
.site-footer{ border-top:3px solid var(--sq-ink); }

/* ====== drobiazgi ====== */
.woocommerce-breadcrumb{ font-size:12.5px; color:var(--sq-steel); }
.woocommerce-message, .woocommerce-info{ border-top-color:var(--sq-red); }

/* ====== hero "znajdź część" na stronie sklepu (wstrzykiwany w functions.php) ====== */
.sq-partfinder{ background:var(--sq-plate); color:#fff; position:relative; overflow:hidden; }
.sq-partfinder::after{ content:""; position:absolute; inset:0;
  background:repeating-linear-gradient(-45deg,transparent 0 34px,rgba(255,255,255,.028) 34px 36px); }
.sq-partfinder .sq-wrap{ position:relative; z-index:1; max-width:1240px; margin:0 auto;
  padding:34px 20px; display:grid; grid-template-columns:1.2fr .8fr; gap:32px; align-items:center; }
.sq-partfinder h2{ color:#fff; font-family:"Arial Narrow","Segoe UI",system-ui,sans-serif;
  font-weight:800; text-transform:uppercase; font-size:clamp(22px,3vw,34px); line-height:1.05; margin:0; }
.sq-partfinder h2 em{ color:var(--sq-red); font-style:normal; }
.sq-partfinder p{ color:#b9b9c0; font-size:14.5px; margin:10px 0 0; }
.sq-pf-box{ background:#fff; border-radius:8px; padding:18px; color:var(--sq-ink);
  box-shadow:0 18px 44px rgba(0,0,0,.4); }
.sq-pf-box h3{ font-size:15px; margin:0 0 4px; }
.sq-pf-box p{ font-size:12.5px; color:var(--sq-steel); margin:0 0 12px; }
.sq-pf-box form{ display:flex; border:2px solid var(--sq-ink); border-radius:var(--sq-radius); overflow:hidden; }
.sq-pf-box input[type=search]{ flex:1; border:0; outline:none; padding:11px 13px; font-size:15px; min-width:0; }
.sq-pf-box button{ background:var(--sq-red); color:#fff; border:0; padding:0 18px; font-weight:700; cursor:pointer; }
.sq-pf-box button:hover{ background:var(--sq-red-dark); }

/* ====== strona główna: pełna szerokość, bez flexa treść+sidebar ====== */
body.home #content .ast-container,
body.home .site-content .ast-container{
  display:block !important; max-width:none !important;
  width:100% !important; padding:0 !important; margin:0 !important;
}
body.home #content #primary, body.home #content #secondary{ display:none; }

/* ====== wspólne kontenery sekcji ====== */
.sq-wrap-flex{ max-width:1240px; margin:0 auto; padding:6px 20px;
  display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; align-items:center; }
.sq-wrap-n{ max-width:1240px; margin:0 auto; padding:0 20px; }
.sq-sec{ padding:48px 0; }
.sq-sec-tight{ padding-top:0; }
.sq-sec-head{ display:flex; justify-content:space-between; align-items:baseline; gap:16px; margin-bottom:24px; }
.sq-sec-head h2{ font-family:"Arial Narrow","Segoe UI",system-ui,sans-serif; font-weight:800;
  text-transform:uppercase; font-size:26px; margin:0; }
.sq-sec-head h2::after{ content:""; display:block; width:56px; height:4px; background:var(--sq-red); margin-top:8px; }
.sq-sec-head a{ font-size:13.5px; font-weight:700; color:var(--sq-red); }

/* ====== part-finder: dopiski ====== */
.sq-pf-hint{ margin-top:10px; font-size:12px; color:var(--sq-steel); }
.sq-pf-hint code{ background:var(--sq-shop); padding:2px 7px; border-radius:4px; margin-right:4px; }

/* ====== pasek marek ====== */
.sq-brandbar{ background:#111; border-top:1px solid #2a2a2e; position:relative; z-index:1; }
.sq-brandbar .sq-wrap-flex{ padding:13px 20px; }
.sq-b{ color:#8f8f96; font-weight:800; letter-spacing:.14em; font-size:14px; }
.sq-b.sq-dealer{ color:#fff; }
.sq-b.sq-dealer small{ display:block; font-weight:600; font-size:9px; color:var(--sq-red); letter-spacing:.2em; }

/* ====== kafle kategorii ====== */
.sq-tiles{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.sq-tile{ background:var(--sq-paper); border:1px solid var(--sq-line); border-radius:8px;
  padding:20px; display:flex; flex-direction:column; gap:6px; min-height:128px;
  transition:border-color .15s, box-shadow .15s; }
.sq-tile:hover{ border-color:var(--sq-ink); box-shadow:0 8px 24px rgba(20,20,20,.08); }
.sq-tile .sq-k{ font-size:11px; letter-spacing:.14em; color:var(--sq-red); font-weight:700; text-transform:uppercase; }
.sq-tile h3{ font-size:16.5px; line-height:1.25; margin:0; color:var(--sq-ink); }
.sq-tile p{ font-size:12.5px; color:var(--sq-steel); margin:auto 0 0; }
.sq-tile.sq-big{ grid-column:span 2; background:var(--sq-plate); border-color:var(--sq-plate); }
.sq-tile.sq-big h3{ color:#fff; }
.sq-tile.sq-big p{ color:#a9a9b0; }

/* ====== sekcja doradztwa ====== */
.sq-advice{ background:var(--sq-plate); color:#fff; }
.sq-wrap-adv{ max-width:1240px; margin:0 auto; padding:36px 20px;
  display:grid; grid-template-columns:1fr auto; gap:32px; align-items:center; }
.sq-advice h2{ color:#fff; font-family:"Arial Narrow","Segoe UI",system-ui,sans-serif; font-weight:800;
  text-transform:uppercase; font-size:24px; margin:0; max-width:28ch; text-wrap:balance; }
.sq-advice p{ color:#b9b9c0; font-size:14.5px; margin:8px 0 0; max-width:58ch; }
.sq-tel{ display:flex; flex-direction:column; gap:6px; text-align:right; }
.sq-tel a{ font-size:30px; font-weight:800; color:#fff; }
.sq-tel a:hover{ color:var(--sq-red); }
.sq-tel span{ font-size:12.5px; color:#9a9aa0; }

/* ====== treść SEO strony głównej na dole ====== */
.sq-seo .sq-seo-box{ background:var(--sq-paper); border:1px solid var(--sq-line); border-radius:8px;
  padding:26px 28px; font-size:14px; color:var(--sq-steel); }
.sq-seo .sq-seo-box h1,.sq-seo .sq-seo-box h2{ font-size:19px; }

/* ====== tabliczka SKU na karcie produktu ====== */
.sq-sku-plate{ display:inline-flex; align-items:center; gap:10px; background:var(--sq-plate);
  color:#fff; border-radius:6px; padding:6px 12px; font-size:13px;
  font-family:ui-monospace,Consolas,monospace; margin-bottom:10px; }
.sq-sku-plate .sq-copy{ background:#333; border:0; color:#ddd; font-size:11px;
  border-radius:4px; padding:3px 9px; cursor:pointer; }
.sq-sku-plate .sq-copy:hover{ background:var(--sq-red); color:#fff; }

/* ====== dostępność ====== */
.sq-avail{ display:flex; gap:8px; align-items:center; color:var(--sq-ok);
  font-size:13.5px; font-weight:600; margin:6px 0 10px; }
.sq-avail::before{ content:""; width:9px; height:9px; border-radius:50%; background:var(--sq-ok); flex-shrink:0; }

/* ====== kroki koszyka ====== */
.sq-steps{ display:flex; gap:0; margin:6px 0 22px; font-size:13px; font-weight:600; color:var(--sq-steel); flex-wrap:wrap; }
.sq-steps .sq-s{ display:flex; align-items:center; gap:9px; padding-right:22px; }
.sq-steps .sq-s + .sq-s{ padding-left:22px; border-left:1px solid var(--sq-line); }
.sq-steps i{ font-style:normal; width:24px; height:24px; border-radius:50%; background:var(--sq-line);
  display:grid; place-items:center; font-size:12px; }
.sq-steps .sq-s.on{ color:var(--sq-ink); }
.sq-steps .sq-s.on i{ background:var(--sq-red); color:#fff; }
.sq-steps .sq-s.done i{ background:var(--sq-ink); color:#fff; }

/* ====== notki w podsumowaniu koszyka ====== */
.sq-shipnote{ margin-top:12px; background:#eaf5ee; border:1px solid #cde6d6; border-radius:8px;
  padding:10px 14px; font-size:12.8px; color:var(--sq-ok); }
.sq-safe{ margin-top:10px; font-size:12px; color:var(--sq-steel); text-align:center; }

/* ====== własny footer ====== */
.sq-footer{ background:#111; color:#9a9aa0; font-size:13px; border-top:3px solid var(--sq-red); }
.sq-foot-grid{ max-width:1240px; margin:0 auto; padding:44px 20px;
  display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:32px; }
.sq-footer h4{ color:#fff; font-size:13px; letter-spacing:.1em; text-transform:uppercase; margin:0 0 12px; }
.sq-footer ul{ list-style:none; margin:0; padding:0; }
.sq-footer li{ padding:3px 0; }
.sq-footer a{ color:#9a9aa0; }
.sq-footer a:hover{ color:#fff; }
.sq-foot-line{ max-width:1240px; margin:0 auto; padding:14px 20px; font-size:12px;
  border-top:1px solid #2a2a2e; }
/* ukryj ewentualne stare stopki (Elementor/HFE/Astra widgets), gdyby się renderowały */
.site-footer .footer-adv, .site-footer .ast-builder-grid-row-container,
.hfe-footer, footer .elementor-location-footer{ display:none !important; }

/* ====== sidebar kategorii jako facety ====== */
.woocommerce-page #secondary .widget, body.tax-product_cat #secondary .widget{
  background:var(--sq-paper); border:1px solid var(--sq-line); border-radius:8px;
  padding:16px; margin-bottom:16px; }
.woocommerce-page #secondary .widget-title, body.tax-product_cat #secondary .widget-title{
  font-size:12px; letter-spacing:.1em; text-transform:uppercase; font-weight:800; }
.woocommerce-page #secondary .widget ul li, body.tax-product_cat #secondary .widget ul li{
  font-size:13.5px; padding:3px 0; }
.woocommerce-page #secondary .widget a:hover{ color:var(--sq-red); }

/* ====== szybki filtr nad produktami ====== */
.sq-qf{ background:var(--sq-paper); border:1px solid var(--sq-line); border-radius:8px;
  padding:14px 16px; margin:0 0 18px; }
.sq-qf-row{ display:flex; align-items:center; gap:14px; }
.sq-qf-input{ flex:1; border:2px solid var(--sq-ink); border-radius:var(--sq-radius);
  padding:10px 13px; font-size:14px; outline:none; min-width:0; background:#fff; }
.sq-qf-input:focus{ border-color:var(--sq-red); }
.sq-qf-count{ font-size:12.5px; color:var(--sq-steel); white-space:nowrap; }
.sq-qf-chips{ display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.sq-qf-chips:empty{ display:none; }
.sq-chip{ border:1px solid var(--sq-line); background:#fff; border-radius:99px;
  font-size:12.5px; padding:5px 13px; color:var(--sq-steel); cursor:pointer;
  transition:border-color .12s, color .12s, background .12s; }
.sq-chip:hover{ border-color:var(--sq-red); color:var(--sq-red); }
.sq-chip.on{ background:var(--sq-red); border-color:var(--sq-red); color:#fff; font-weight:600; }
.sq-qf-empty{ margin-top:12px; font-size:13.5px; color:var(--sq-steel); }
.sq-qf-empty a{ color:var(--sq-red); font-weight:700; }

/* ====== responsywność dodatków ====== */
@media (max-width:1100px){
  .sq-tiles{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:900px){
  .sq-partfinder .sq-wrap{ grid-template-columns:1fr; gap:20px; padding:26px 16px; }
  .sq-topline .sq-wrap-flex{ justify-content:center; text-align:center; }
  .sq-hdr{ grid-template-columns:auto auto; grid-template-rows:auto auto; gap:12px 18px; padding:12px 16px; }
  .sq-search{ grid-column:1/-1; grid-row:2; }
  .sq-tools{ justify-self:end; }
  .sq-foot-grid{ grid-template-columns:1fr 1fr; gap:24px; padding:32px 16px; }
  .sq-tiles{ grid-template-columns:repeat(2,1fr); }
  .sq-tile.sq-big{ grid-column:span 2; }
  .sq-wrap-adv{ grid-template-columns:1fr; }
  .sq-tel{ text-align:left; }
  .sq-brandbar .sq-wrap-flex{ justify-content:flex-start; gap:18px; }
}
@media (max-width:560px){
  .sq-tiles{ grid-template-columns:1fr 1fr; gap:10px; }
  .sq-steps{ font-size:11.5px; }
  .sq-steps .sq-s{ padding-right:10px; }
  .sq-steps .sq-s + .sq-s{ padding-left:10px; }
  .sq-sec-head h2{ font-size:21px; }
  .sq-tel a{ font-size:24px; }
}
@media (prefers-reduced-motion:reduce){
  ul.products li.product{ transition:none; }
}
