/* ============ SKLEP — ARCHIWUM (page-sklep.php) ============ */
.shop-filters{ display:flex; flex-wrap:wrap; gap:.75rem; margin:0 auto 3rem; max-width:900px; justify-content:center; }
.shop-filter-btn{
  font-family:var(--sans); font-size:12px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--text-soft); background:transparent; border:1px solid var(--border);
  padding:10px 22px; border-radius:30px; cursor:pointer; transition:color .2s,border-color .2s,background .2s;
}
.shop-filter-btn:hover{ color:var(--heading); border-color:var(--olive); }
.shop-filter-btn.is-active{ color:#fff; background:var(--olive); border-color:var(--olive); }
.product-card.is-hidden{ display:none; }

.shop-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.shop-grid .product-card{ position:relative; }
.product-card-stretched-link{ position:absolute; inset:0; z-index:1; }
.shop-grid .product-card-actions{ position:relative; z-index:2; }

@media (max-width:1100px){ .shop-grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:900px){ .shop-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .shop-grid{ grid-template-columns:1fr; } }

/* ============ POJEDYNCZY PRODUKT (domyślny szablon WooCommerce) ============ */
.woocommerce div.product{
  display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:start;
  max-width:var(--maxw); margin:0 auto; padding:96px 64px;
}
.woocommerce div.product .woocommerce-product-gallery{ position:relative; }
.woocommerce div.product .woocommerce-product-gallery img{
  width:100%; border-radius:var(--radius-md); object-fit:cover; display:block; border:1px solid var(--border);
}
.woocommerce div.product .flex-control-thumbs{ display:flex; gap:12px; margin-top:16px; list-style:none; padding:0; }
.woocommerce div.product .flex-control-thumbs li img{
  width:76px; height:76px; object-fit:cover; border-radius:10px; border:1px solid var(--border);
  cursor:pointer; opacity:.6; transition:opacity .2s,border-color .2s;
}
.woocommerce div.product .flex-control-thumbs li img.flex-active,
.woocommerce div.product .flex-control-thumbs li img:hover{ opacity:1; border-color:var(--olive); }

.woocommerce div.product .summary{ padding-top:.5rem; }
.woocommerce div.product .product_title{
  font-family:var(--serif); font-size:clamp(2rem,3.2vw,2.8rem); font-weight:600; color:var(--heading);
  line-height:1.1; margin-bottom:1.2rem;
}
.woocommerce div.product p.price, .woocommerce div.product span.price{
  font-family:var(--serif); font-size:1.7rem; color:var(--olive-deep); font-weight:500; margin-bottom:1.6rem; display:block;
}
.woocommerce div.product p.price del{ color:var(--text-soft); opacity:.7; font-size:1.1rem; margin-right:.75rem; }
.woocommerce div.product p.price ins{ text-decoration:none; }
.woocommerce div.product .woocommerce-product-details__short-description{
  font-size:.95rem; line-height:1.9; color:var(--text); margin-bottom:2rem; max-width:460px;
}
.woocommerce div.product .woocommerce-product-details__short-description ul{ list-style:none; padding:0; display:flex; flex-direction:column; gap:10px; }
.woocommerce div.product .woocommerce-product-details__short-description ul li{ display:flex; gap:10px; align-items:flex-start; }
.woocommerce div.product .woocommerce-product-details__short-description ul li::before{
  content:""; flex:0 0 8px; height:8px; width:8px; margin-top:7px; border-radius:50%; background:var(--olive);
}
.woocommerce div.product .star-rating{ color:var(--olive); margin-bottom:1.2rem; }

.woocommerce div.product form.cart{
  display:flex; align-items:center; gap:1rem; flex-wrap:wrap; margin-bottom:2rem; padding-top:1.5rem; border-top:1px solid var(--border);
}
.woocommerce div.product form.cart .quantity{ display:inline-block; }
.woocommerce div.product form.cart .quantity input.qty, .woocommerce input.qty{
  width:90px; height:54px; background:var(--card); border:1px solid var(--border); color:var(--heading);
  font-family:var(--sans); font-size:.95rem; text-align:center; border-radius:10px;
}
.woocommerce div.product form.cart .quantity input.qty:focus{ outline:none; border-color:var(--olive); }

.woocommerce div.product form.cart button.single_add_to_cart_button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce button[name="apply_coupon"],
.woocommerce button[name="update_cart"],
.woocommerce input[name="apply_coupon"],
.woocommerce a.checkout-button,
.woocommerce .wc-proceed-to-checkout a{
  font-family:var(--sans) !important; font-size:13px !important; letter-spacing:.06em !important; text-transform:uppercase !important;
  color:#fff !important; background:var(--olive) !important; border:1.5px solid var(--olive) !important;
  padding:16px 28px !important; border-radius:14px !important; font-weight:600 !important; cursor:pointer;
  transition:background .2s, transform .15s; height:auto !important;
}
.woocommerce div.product form.cart button.single_add_to_cart_button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover{
  background:var(--olive-dark) !important; border-color:var(--olive-dark) !important; transform:translateY(-1px);
}
.woocommerce div.product form.cart button.single_add_to_cart_button{ height:54px !important; }

.woocommerce div.product .product_meta{ font-size:.8rem; color:var(--text-soft); padding-top:1.2rem; border-top:1px solid var(--border); }
.woocommerce div.product .product_meta a{ color:var(--olive-deep); text-decoration:none; }

.woocommerce div.product .woocommerce-tabs{ grid-column:1/-1; margin-top:4rem; border-top:1px solid var(--border); padding-top:2.5rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs{ list-style:none; display:flex; gap:2rem; margin:0 0 2rem; padding:0; border:none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li{ padding:0; margin:0; border:none; background:none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--text-soft); text-decoration:none;
  padding-bottom:.5rem; border-bottom:1px solid transparent; transition:color .2s,border-color .2s;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover{ color:var(--olive-deep); border-bottom-color:var(--olive); }
.woocommerce div.product .woocommerce-tabs .panel{ font-size:.92rem; line-height:1.9; color:var(--text); max-width:700px; }

.woocommerce div.product .related.products{ grid-column:1/-1; margin-top:4rem; border-top:1px solid var(--border); padding-top:2.5rem; }
.woocommerce div.product .related.products > h2{ font-family:var(--serif); font-size:clamp(1.6rem,2.6vw,2.2rem); color:var(--heading); margin-bottom:2rem; }
.woocommerce div.product .related.products ul.products{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; list-style:none; padding:0; }

.woocommerce-breadcrumb{ font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--text-soft); max-width:var(--maxw); margin:0 auto; padding:24px 64px 0; }
.woocommerce-breadcrumb a{ color:var(--text-soft); text-decoration:none; }
.woocommerce-breadcrumb a:hover{ color:var(--olive-deep); }

/* ============ KOSZYK / ZAMÓWIENIE (klasyczne strony WooCommerce) ============ */
.woocommerce-cart .woocommerce, .woocommerce-checkout .woocommerce{
  max-width:var(--maxw); margin:0 auto; padding:64px 64px 96px;
}
.woocommerce table.shop_table{ border-collapse:collapse; width:100%; border:1px solid var(--border); border-radius:var(--radius-md); overflow:hidden; }
.woocommerce table.shop_table th{ background:var(--bg-soft); font-family:var(--sans); font-size:12px; text-transform:uppercase; letter-spacing:.06em; color:var(--heading); padding:16px; text-align:left; }
.woocommerce table.shop_table td{ padding:16px; border-top:1px solid var(--border); color:var(--text); }
.woocommerce #payment{ background:var(--bg-soft); border-radius:var(--radius-md); padding:24px; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row select, .woocommerce form .form-row textarea{
  border:1px solid var(--border); border-radius:10px; padding:12px 14px; background:var(--card); font-family:var(--sans); color:var(--heading);
}
.woocommerce-checkout #payment div.payment_box{ background:var(--card); border-radius:10px; }

@media (max-width:900px){
  .woocommerce div.product{ grid-template-columns:1fr; gap:2rem; padding:64px 28px; }
  .woocommerce div.product .related.products ul.products{ grid-template-columns:repeat(2,1fr); }
  .woocommerce-breadcrumb{ padding:20px 28px 0; }
  .woocommerce-cart .woocommerce, .woocommerce-checkout .woocommerce{ padding:48px 28px 64px; }
}
@media (max-width:560px){
  .woocommerce div.product{ padding:48px 18px; }
  .woocommerce div.product form.cart{ flex-direction:column; align-items:stretch; }
  .woocommerce div.product form.cart button.single_add_to_cart_button{ width:100%; }
  .woocommerce div.product .related.products ul.products{ grid-template-columns:1fr; }
  .woocommerce-breadcrumb{ padding:16px 18px 0; }
}
