/* CELUST: WooCommerce. Nadpisuje układ Storefront (floaty) na grid. */

/* Komunikaty */
.celust .woocommerce-message,.celust .woocommerce-info,.celust .woocommerce-error{background:var(--p1);color:var(--ink);border:0;border-left:4px solid var(--accent);border-radius:var(--r);padding:16px 20px;margin:0 0 24px}
.celust .woocommerce-message::before,.celust .woocommerce-info::before,.celust .woocommerce-error::before{display:none}
.celust .woocommerce-message a.button{float:right}

/* ---------- Sklep (lista produktów) ---------- */
.celust ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px;margin:0 0 48px;padding:0;list-style:none}
.celust ul.products::before,.celust ul.products::after{display:none}
.celust ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:0;background:var(--p1);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;text-align:left}
.celust ul.products li.product img{margin:0;width:100%;aspect-ratio:1/1;object-fit:cover}
.celust ul.products li.product .woocommerce-loop-product__title{font-family:var(--f-head);font-size:20px;font-weight:600;padding:16px 20px 0;margin:0}
.celust ul.products li.product .price{padding:4px 20px 0;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:500}
.celust ul.products li.product .button{margin:16px 20px 20px;align-self:flex-start}
.celust .woocommerce-result-count,.celust .woocommerce-ordering{margin:0 0 24px;color:var(--muted);font-size:14px}
.celust .woocommerce-products-header__title{font-size:clamp(36px,4.4vw,56px);line-height:1.04;margin:0 0 32px}
.celust span.onsale{background:var(--ink);color:var(--bg);border-radius:var(--r);min-height:0;min-width:0;line-height:1;padding:8px 12px;font-size:13px;top:12px;left:12px}

/* ---------- Karta produktu ---------- */
.celust.single-product div.product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px;align-items:start}
.celust.single-product div.product .woocommerce-product-gallery,.celust.single-product div.product .summary{width:100%!important;float:none!important;margin:0!important}
.celust.single-product div.product .woocommerce-product-gallery img{border-radius:var(--r)}
.celust.single-product div.product .woocommerce-product-gallery .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:14px;padding:0}
.celust.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li{width:auto;float:none;margin:0}
.celust.single-product div.product .woocommerce-tabs,.celust.single-product div.product .related,.celust.single-product div.product .upsells,.celust.single-product div.product .c-specs{grid-column:1/-1}
.celust .summary .product_title{font-size:clamp(34px,4vw,52px);line-height:1.04;margin:0 0 20px}
.celust .summary .price{font-family:var(--f-head);font-weight:600;font-size:40px;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums;margin:0 0 8px}
.celust .summary .woocommerce-product-details__short-description{color:var(--muted);max-width:50ch}
.c-direct{margin:0 0 24px;font-size:14px;color:var(--muted)}
.celust .summary form.cart{display:flex;flex-wrap:wrap;gap:14px;align-items:stretch;margin:0 0 32px}
.celust .quantity .qty{width:84px;min-height:52px;text-align:center;font-family:var(--f-head);font-weight:600;font-size:18px;padding:0 8px}
.c-facts{display:grid;grid-template-columns:minmax(0,120px) minmax(0,1fr);gap:12px 24px;padding-top:24px;border-top:1px solid var(--line);font-size:15px;margin:0}
.c-facts dt{color:var(--muted)}
.c-facts dd{margin:0}
.celust .product_meta{display:none}
.c-specs{background:var(--p1);border-top:1px solid var(--line);margin:24px calc(-1 * var(--gutter)) 0;padding:80px var(--gutter)}
.c-specs__in{max-width:1280px;margin:0 auto;display:flex;flex-wrap:wrap;gap:56px}
.c-specs__in>div{flex:1 1 380px;min-width:0}
.c-specs h2{font-size:clamp(28px,3vw,40px);line-height:1.08;margin:0 0 20px}
.c-specs ul{list-style:none;margin:0;padding:0;color:var(--muted);display:flex;flex-direction:column;gap:8px}
.c-specs__dim{font-family:var(--f-head);font-weight:600;font-size:36px;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--ink)!important;margin:0 0 12px}
.celust .woocommerce-tabs ul.tabs{padding:0;margin:0 0 24px;display:flex;gap:24px;border-bottom:1px solid var(--line)}
.celust .woocommerce-tabs ul.tabs::before,.celust .woocommerce-tabs ul.tabs::after{display:none}
.celust .woocommerce-tabs ul.tabs li{background:none;border:0;margin:0;padding:0;box-shadow:none}
.celust .woocommerce-tabs ul.tabs li::before,.celust .woocommerce-tabs ul.tabs li::after{display:none}
.celust .woocommerce-tabs ul.tabs li a{padding:12px 0;display:block;font-family:var(--f-head);font-weight:500}
.celust .woocommerce-tabs ul.tabs li.active a{border-bottom:2px solid var(--accent)}
.celust .related h2,.celust .upsells h2{font-size:clamp(28px,3vw,40px);margin:48px 0 24px}

/* ---------- Koszyk ---------- */
.celust.woocommerce-cart .woocommerce{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:48px;align-items:start}
.celust.woocommerce-cart .woocommerce-notices-wrapper{grid-column:1/-1}
.celust.woocommerce-cart .woocommerce-cart-form{min-width:0}
.celust table.shop_table{border:0;border-collapse:collapse;width:100%;margin:0}
.celust table.shop_table th{font-family:var(--f-head);font-weight:500;font-size:14px;color:var(--muted);border-bottom:1px solid var(--line);padding:12px 8px;background:none}
.celust table.shop_table td{border-top:1px solid var(--line);padding:20px 8px;vertical-align:middle;background:none}
.celust table.cart img{width:96px;height:96px;object-fit:cover;border-radius:var(--r)}
.celust table.cart td.product-name a{font-family:var(--f-head);font-weight:600;font-size:20px}
.celust table.cart td.product-remove a.remove{color:var(--muted)!important;background:none;border:1px solid var(--line-strong);border-radius:var(--r);width:32px;height:32px;line-height:30px}
.celust table.cart td.actions{padding:24px 0 0;border-top:1px solid var(--line)}
.celust table.cart td.actions .coupon{display:flex;gap:12px;flex-wrap:wrap;align-items:center;float:left}
.celust table.cart td.actions .coupon input.input-text{width:200px;min-height:48px}
.celust table.cart td.actions>.button{float:right}
.celust .cart-collaterals{width:100%;float:none}
.celust .cart-collaterals .cart_totals{width:100%;float:none;background:var(--p1);border-radius:var(--r);padding:32px}
.celust .cart_totals h2{font-size:26px;margin:0 0 20px}
.celust .cart_totals table.shop_table td,.celust .cart_totals table.shop_table th{padding:12px 0;text-align:left}
.celust .cart_totals .order-total th,.celust .cart_totals .order-total td{font-family:var(--f-head);font-weight:600;font-size:20px}
.celust .wc-proceed-to-checkout{padding:20px 0 0}
.celust .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;margin:0}

/* ---------- Kasa ---------- */
.celust form.checkout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);column-gap:56px;align-items:start}
.celust form.checkout #customer_details{grid-column:1;grid-row:1/span 3}
.celust form.checkout #customer_details .col-1,.celust form.checkout #customer_details .col-2{width:100%;float:none;margin:0 0 32px}
.celust form.checkout #order_review_heading{grid-column:2;grid-row:1;font-size:26px;margin:0 0 16px}
.celust form.checkout #order_review{grid-column:2;grid-row:2;background:var(--p1);border-radius:var(--r);padding:32px}
.celust .woocommerce-billing-fields h3,.celust .woocommerce-shipping-fields h3,.celust .woocommerce-additional-fields h3{font-size:24px;margin:0 0 20px}
.celust .form-row{margin:0 0 20px;padding:0}
.celust .form-row label{display:block;margin-bottom:8px}
.celust .form-row-first,.celust .form-row-last{width:calc(50% - 10px)}
.celust #payment{background:none;border-radius:0}
.celust #payment ul.payment_methods{border-bottom:1px solid var(--line);padding:0 0 16px}
.celust #payment div.payment_box{background:var(--p2);color:var(--ink);border-radius:var(--r)}
.celust #payment div.payment_box::before{display:none}
.celust #payment #place_order{width:100%;float:none}
.celust .woocommerce-checkout-review-order-table th,.celust .woocommerce-checkout-review-order-table td{padding:10px 0}
.celust .woocommerce-checkout-review-order-table .order-total th,.celust .woocommerce-checkout-review-order-table .order-total td{font-family:var(--f-head);font-weight:600;font-size:20px}

/* ---------- Moje konto ---------- */
.celust .woocommerce-MyAccount-navigation{width:240px;float:left;margin-right:48px}
.celust .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.celust .woocommerce-MyAccount-navigation li a{display:block;padding:10px 0;border-bottom:1px solid var(--line)}
.celust .woocommerce-MyAccount-navigation li.is-active a{color:var(--accent-ink)}
.celust .woocommerce-MyAccount-content{overflow:hidden}

/* ---------- Wąskie ekrany ---------- */
@media (max-width:900px){
  .celust.single-product div.product,.celust.woocommerce-cart .woocommerce,.celust form.checkout{grid-template-columns:minmax(0,1fr)}
  .celust form.checkout #customer_details,.celust form.checkout #order_review_heading,.celust form.checkout #order_review{grid-column:1;grid-row:auto}
  .celust form.checkout #order_review_heading{margin-top:16px}
  .celust .woocommerce-MyAccount-navigation{width:100%;float:none;margin:0 0 24px}
  .celust .form-row-first,.celust .form-row-last{width:100%}
  .celust table.cart td.actions .coupon,.celust table.cart td.actions>.button{float:none}
}
