﻿/* iCan checkout / shop — header/footer aligned with homepage Elementor */
:root{
  --ican-red:#B50015;
  --ican-red-soft:#D63C4E;
  --ican-red-deep:#7A000E;
  --ican-ink:#464646;
  --ican-bg:#f6f4f5;
  --ican-card:#fff;
  --ican-line:#e6e0e2;
}
body.woocommerce-checkout,
body.woocommerce-cart,
body.woocommerce-account,
body.woocommerce-page{
  font-family:"Lato",system-ui,sans-serif;
  background:#fff;
  color:var(--ican-ink);
}
.ican-cux-inner{width:min(1140px,94%);margin:0 auto}

.skip-link,
.wp-skip-link,
a.skip-link{
  display:none!important;
}
#ican-cux-header.ican-cux-shell{
  margin:0!important;
  padding:0!important;
  position:relative;
  top:0;
  left:0;
  right:0;
  z-index:1000;
}

/* ===== HEADER (ss3: czerwony top + białe menu) ===== */
.ican-cux-shell{position:relative;z-index:1000}
.ican-cux-topbar{background:var(--ican-red);color:#fff}
.ican-cux-topbar__inner{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  min-height:72px;
  gap:16px;
  padding:8px 0;
}
.ican-cux-topbar--mobile .ican-cux-topbar__inner{
  grid-template-columns:auto 1fr auto;
}
.ican-cux-topbar--mobile .ican-cux-logo{
  justify-self:center;
}
.ican-cux-topbar__actions{
  display:inline-flex;
  align-items:center;
  gap:10px;
  justify-self:end;
}
.ican-cux-logo{display:inline-flex;align-items:center;justify-self:start}
.ican-cux-logo img{
  display:block;
  height:52px;
  width:auto;
  max-width:200px;
  filter:brightness(0) invert(1);
}
.ican-cux-btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 18px;border-radius:2px;
  font-weight:800;font-size:14px;text-decoration:none;letter-spacing:.4px;
  white-space:nowrap;
}
.ican-cux-btn--light{background:#fff;color:var(--ican-red)}
.ican-cux-btn--light:hover{background:#ffe8eb;color:var(--ican-red)}
.ican-cux-btn--outline{
  background:transparent;color:#fff;
  border:1px solid rgba(255,255,255,.85);
}
.ican-cux-btn--outline:hover{background:rgba(255,255,255,.12);color:#fff}

/* Cart icon */
.ican-cux-cart{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;height:42px;
  color:#fff;
  text-decoration:none;
  border-radius:4px;
}
.ican-cux-cart:hover{background:rgba(255,255,255,.12);color:#fff}
.ican-cux-cart__svg{display:block}
.ican-cux-cart__badge{
  position:absolute;
  top:2px;right:2px;
  min-width:18px;height:18px;
  padding:0 4px;
  border-radius:999px;
  background:#fff;
  color:var(--ican-red);
  font-size:11px;font-weight:800;
  line-height:18px;
  text-align:center;
}

/* Dolny pasek menu — biały jak na ss3 */
.ican-cux-navbar{
  background:#fff;
  border-bottom:1px solid #ececec;
  position:relative;
  z-index:900;
  box-shadow:none;
}
.ican-cux-navbar__inner{
  display:flex;align-items:center;justify-content:center;
  min-height:52px;padding:2px 0;
}
.ican-cux-nav__list{
  display:flex;flex-wrap:wrap;justify-content:center;
  gap:2px 20px;list-style:none;margin:0;padding:0;
}
.ican-cux-nav__list > li{position:relative}
.ican-cux-nav--desktop .ican-cux-nav__list > li > a{
  color:#464646;
  text-decoration:none;
  font-weight:500;
  font-size:15px;
  letter-spacing:-.15px;
  padding:14px 2px;
  display:inline-block;
}
.ican-cux-nav--desktop .ican-cux-nav__list > li > a:hover,
.ican-cux-nav--desktop .ican-cux-nav__list > li.current-menu-item > a,
.ican-cux-nav--desktop .ican-cux-nav__list > li.current-menu-ancestor > a{
  color:var(--ican-red);
}
.ican-cux-nav--desktop .menu-item-has-children > a::after{
  content:"";
  display:inline-block;
  margin-left:6px;
  width:0;height:0;
  border-left:4px solid transparent;
  border-right:4px solid transparent;
  border-top:5px solid currentColor;
  vertical-align:middle;
  transform:translateY(1px);
}
.ican-cux-nav__list .sub-menu{
  display:none;position:absolute;left:50%;transform:translateX(-50%);
  top:100%;min-width:240px;background:#fff;color:#333;
  list-style:none;margin:0;padding:8px 0;
  box-shadow:0 10px 28px rgba(0,0,0,.14);z-index:120;
  border-radius:4px;border:1px solid #eee;
}
.ican-cux-nav__list > li:hover > .sub-menu{display:block}
.ican-cux-nav__list .sub-menu a{
  color:#333;display:block;padding:9px 16px;font-size:14px;font-weight:500;text-decoration:none;
}
.ican-cux-nav__list .sub-menu a:hover{background:#fff5f6;color:var(--ican-red)}

.ican-cux-burger{
  display:inline-flex;background:transparent;border:0;border-radius:4px;
  width:42px;height:36px;padding:8px;flex-direction:column;
  justify-content:space-between;cursor:pointer;justify-self:start;
}
.ican-cux-burger span{display:block;height:2px;background:#fff;border-radius:2px}

.ican-cux-topbar--mobile{display:none}
.ican-cux-nav--mobile{
  display:none;background:#8e0010;padding:8px 4% 16px;
}
.ican-cux-nav--mobile.is-open{display:block}
.ican-cux-nav--mobile .ican-cux-nav__list{flex-direction:column;align-items:stretch;gap:0}
.ican-cux-nav--mobile .ican-cux-nav__list a{
  color:#fff;text-decoration:none;padding:12px 4px;
  border-bottom:1px solid rgba(255,255,255,.12);display:block;
}
.ican-cux-nav--mobile .sub-menu{
  position:static;transform:none;display:block;background:transparent;
  box-shadow:none;padding:0 0 0 12px;border:0;
}
.ican-cux-nav--mobile .sub-menu a{color:#ffe3e7;border-bottom:0;padding:8px 4px;font-size:13px}

@media (max-width:1024px){
  .ican-cux-topbar--desktop,
  .ican-cux-navbar--desktop{display:none}
  .ican-cux-topbar--mobile{display:block}
  .ican-cux-logo img{height:42px}
}

/* ===== FOOTER (homepage-like) ===== */
.ican-cux-footer{
  background:linear-gradient(180deg,var(--ican-red-deep) 0%,var(--ican-red) 100%);
  color:#fff;
  margin-top:48px;
  padding:40px 0 28px;
}
.ican-cux-footer__grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px 40px;
}
.ican-cux-footer__col h3{
  margin:0 0 8px;font-size:1.15rem;font-weight:800;color:#fff;text-align:center;
}
.ican-cux-footer__col hr{
  border:0;border-top:1px solid rgba(255,255,255,.35);margin:0 0 14px;
}
.ican-cux-footer__col p{
  margin:0;font-size:14px;line-height:1.65;text-align:center;color:#fff;
}
.ican-cux-footer a{color:#fff;text-decoration:underline}
.ican-cux-footer a:hover{color:#ffd6db}
.ican-cux-footer__sep{
  border:0;border-top:1px solid rgba(255,255,255,.35);
  margin:28px 0 18px;
}
.ican-cux-footer__logo{display:flex;justify-content:center;margin-bottom:10px}
.ican-cux-footer__logo img{
  height:48px;width:auto;filter:brightness(0) invert(1);
}
.ican-cux-footer__copy{
  text-align:center;margin:0;font-size:13px;opacity:.9;
}
@media (max-width:800px){
  .ican-cux-footer__grid{grid-template-columns:1fr;gap:24px}
}

/* ===== CHECKOUT — naprawa układu (Kadence boxed + WC float) ===== */
body.woocommerce-checkout{
  overflow-x:hidden;
}
/* Bez dodatkowego zawężania wewnątrz site-container */
.ican-cux-checkout-wrap,
body.woocommerce-checkout .woocommerce{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  float:none!important;
  box-sizing:border-box;
}
/* Odjąć „pudełko” Kadence, które psuło szerokość */
body.woocommerce-checkout .entry.content-bg.single-entry{
  box-shadow:none!important;
  background:transparent!important;
  border:0!important;
}
body.woocommerce-checkout .entry-content-wrap{
  padding:0!important;
}
body.woocommerce-checkout .content-area{
  margin-top:1.25rem;
  margin-bottom:2.5rem;
}
body.woocommerce-checkout h1.entry-title,
body.woocommerce-checkout .entry-title,
body.woocommerce-checkout .entry-hero .entry-header{
  font-family:"Lato",sans-serif;
  font-weight:800;
  color:#222;
  text-align:center;
}
body.woocommerce-checkout .entry-hero.page-hero-section .entry-header{
  min-height:0!important;
  padding:12px 0 4px!important;
}

/* Keep classic order review visible */
body.woocommerce-checkout #order_review,
body.woocommerce-checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout .woocommerce-checkout-review-order-table,
body.woocommerce-checkout #payment{
  opacity:1!important;
  visibility:visible!important;
}
body.woocommerce-checkout .wc-block-components-spinner,
body.woocommerce-checkout .wp-block-woocommerce-checkout{
  display:none!important;
}

/* 2 kolumny: dane | podsumowanie */
@media (min-width:900px){
  body.woocommerce-checkout form.checkout.woocommerce-checkout{
    display:grid!important;
    grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
    column-gap:32px;
    row-gap:0;
    align-items:start;
    clear:both;
  }
  body.woocommerce-checkout form.checkout::before,
  body.woocommerce-checkout form.checkout::after{
    display:none!important;
    content:none!important;
  }
  body.woocommerce-checkout #customer_details{
    grid-column:1;
    grid-row:1 / span 4;
    width:100%!important;
    float:none!important;
    margin:0!important;
  }
  body.woocommerce-checkout #order_review_heading{
    grid-column:2;
    grid-row:1;
    width:100%!important;
    float:none!important;
    margin:0 0 12px!important;
  }
  body.woocommerce-checkout #order_review{
    grid-column:2;
    grid-row:2;
    width:100%!important;
    float:none!important;
    margin:0!important;
  }
}
@media (max-width:899px){
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout #order_review_heading{
    width:100%!important;
    float:none!important;
  }
  body.woocommerce-checkout #order_review_heading{margin-top:24px!important}
}

/* Billing full width inside left column */
body.woocommerce-checkout #customer_details .col2-set .col-1,
body.woocommerce-checkout #customer_details .col2-set .col-2{
  width:100%!important;
  float:none!important;
  max-width:100%!important;
}

body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #order_review{
  background:var(--ican-card);
  border:1px solid var(--ican-line);
  border-radius:12px;
  padding:22px 24px;
  box-shadow:0 8px 28px rgba(40,0,10,.05);
  box-sizing:border-box;
}
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout .woocommerce-additional-fields > h3{
  font-size:1.15rem;
  font-weight:800;
  color:#222;
  border-bottom:2px solid var(--ican-red);
  padding-bottom:8px;
  margin-bottom:18px;
}
body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .select2-selection{
  border:1px solid #d9d2d5!important;
  border-radius:8px!important;
  min-height:44px;
  padding:8px 12px!important;
  background:#fff;
  max-width:100%;
  box-sizing:border-box;
}
body.woocommerce-checkout .form-row input.input-text:focus,
body.woocommerce-checkout .form-row textarea:focus{
  border-color:var(--ican-red)!important;
  outline:none;
  box-shadow:0 0 0 3px rgba(181,0,21,.12);
}
body.woocommerce-checkout #payment{
  background:#faf7f8!important;
  border-radius:10px;
  border:1px solid var(--ican-line);
  margin-top:16px;
  padding:22px 28px!important;
  box-sizing:border-box;
}
body.woocommerce-checkout #payment div.payment_box{
  background:#fff;
  border-radius:8px;
  padding:16px 20px!important;
  margin:12px 0 0!important;
  box-sizing:border-box;
}
body.woocommerce-checkout #payment ul.payment_methods{
  padding:4px 4px 12px!important;
  margin:0!important;
  border-bottom:1px solid var(--ican-line);
}
body.woocommerce-checkout #payment ul.payment_methods li{
  padding:10px 4px!important;
}
body.woocommerce-checkout #payment .p24-payment-container,
body.woocommerce-checkout #payment .p24-methods,
body.woocommerce-checkout #payment .p24-methods__items,
body.woocommerce-checkout #payment .p24-online-payments{
  padding-left:8px!important;
  padding-right:8px!important;
  box-sizing:border-box;
}
body.woocommerce-checkout #payment .p24-methods__items{
  gap:10px!important;
}

/*
 * Checkboxy (shipping / P24 / regulamin).
 * Wpautop wstawia <br> w labelach → checkbox ląduje NAD tekstem.
 * Ukrywamy br + checkbox absolutnie w jednej linii z treścią.
 * Bez flex na labelu z gołym tekstem + <a> (P24).
 */
body.woocommerce-checkout #payment .p24-payment-container .woocommerce-input-wrapper,
body.woocommerce-checkout #payment .payment_box .woocommerce-input-wrapper{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box;
}
body.woocommerce-checkout label.checkbox br,
body.woocommerce-checkout label.woocommerce-form__label-for-checkbox br,
body.woocommerce-checkout #ship-to-different-address label br,
body.woocommerce-checkout #payment label br,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label br{
  display:none!important;
}
body.woocommerce-checkout #ship-to-different-address{
  margin:0 0 12px!important;
  border:0!important;
  padding:0!important;
}
body.woocommerce-checkout #ship-to-different-address label,
body.woocommerce-checkout #payment label.checkbox,
body.woocommerce-checkout #payment .woocommerce-form__label-for-checkbox,
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper label,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox,
body.woocommerce-checkout label.woocommerce-form__label-for-checkbox{
  display:block!important;
  position:relative!important;
  padding:0 0 0 28px!important;
  margin:12px 0!important;
  line-height:1.45!important;
  font-weight:500!important;
  font-size:15px!important;
  cursor:pointer;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word;
}
body.woocommerce-checkout #ship-to-different-address label input[type="checkbox"],
body.woocommerce-checkout #payment label.checkbox input[type="checkbox"],
body.woocommerce-checkout #payment .woocommerce-form__label-for-checkbox input[type="checkbox"],
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"],
body.woocommerce-checkout label.woocommerce-form__label-for-checkbox input[type="checkbox"],
body.woocommerce-checkout #payment .p24-payment-container input[type="checkbox"]{
  position:absolute!important;
  left:0!important;
  top:.15em!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  display:block!important;
  flex:none!important;
  accent-color:var(--ican-red);
  vertical-align:top;
}
body.woocommerce-checkout #ship-to-different-address label span,
body.woocommerce-checkout #payment label.checkbox a,
body.woocommerce-checkout #payment .p24-payment-container label.checkbox a,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
body.woocommerce-checkout #payment label.checkbox span,
body.woocommerce-checkout #payment .woocommerce-form__label-for-checkbox span,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper span{
  display:inline!important;
  white-space:normal!important;
  position:static!important;
  float:none!important;
}
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper{
  padding:8px 4px 4px!important;
}
body.woocommerce-checkout #place_order,
body.woocommerce-checkout button.button.alt{
  background:var(--ican-red)!important;
  color:#fff!important;
  border:0!important;
  border-radius:8px!important;
  font-weight:800!important;
  font-size:16px!important;
  padding:14px 22px!important;
  width:100%;
  margin-top:8px;
}
body.woocommerce-checkout #place_order:hover{background:#970012!important}
body.woocommerce-checkout table.shop_table{
  width:100%!important;
  table-layout:auto;
}
body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td{border-color:var(--ican-line)!important}

/* Qty +/- + remove in order review */
body.woocommerce-checkout .ican-cux-line{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:8px 12px;
}
body.woocommerce-checkout .ican-cux-line__name{
  flex:1 1 auto;
  min-width:0;
  font-weight:600;
}
body.woocommerce-checkout .ican-cux-line-controls{
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
body.woocommerce-checkout .ican-cux-qty{
  display:inline-flex;
  align-items:center;
  border:1px solid var(--ican-line);
  border-radius:6px;
  overflow:hidden;
  background:#fff;
}
body.woocommerce-checkout .ican-cux-qty__btn{
  width:30px;height:30px;
  border:0;background:#f7f4f5;
  color:#333;font-size:16px;font-weight:700;
  cursor:pointer;line-height:1;
}
body.woocommerce-checkout .ican-cux-qty__btn:hover{background:#ffe8eb;color:var(--ican-red)}
body.woocommerce-checkout .ican-cux-qty__val{
  min-width:36px;height:30px;
  border-left:1px solid var(--ican-line);border-right:1px solid var(--ican-line);
  display:inline-flex;align-items:center;justify-content:center;
  text-align:center;font-size:14px;font-weight:700;
  padding:0 4px;
}
body.woocommerce-checkout td.product-name{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:8px 12px;
}
body.woocommerce-checkout .ican-cux-line-controls{
  margin-left:auto;
}
body.woocommerce-checkout .ican-cux-remove{
  width:30px;height:30px;
  border:1px solid #e2c8cc;border-radius:6px;
  background:#fff;color:var(--ican-red);
  font-size:20px;line-height:1;cursor:pointer;font-weight:700;
}
body.woocommerce-checkout .ican-cux-remove:hover{background:#fff5f6;border-color:var(--ican-red)}

/*
 * Shipping radios — keep input + label on one line (mobile was broken by <br>/block styles).
 */
body.woocommerce-checkout ul#shipping_method,
body.woocommerce-checkout .woocommerce-shipping-methods{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout ul#shipping_method li,
body.woocommerce-checkout .woocommerce-shipping-methods li{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px;
  margin:0 0 10px!important;
  padding:0!important;
  list-style:none!important;
}
body.woocommerce-checkout ul#shipping_method li label,
body.woocommerce-checkout .woocommerce-shipping-methods li label{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
  line-height:1.35!important;
  font-weight:500!important;
  cursor:pointer;
  width:auto!important;
  max-width:100%;
  white-space:normal!important;
}
body.woocommerce-checkout ul#shipping_method li input[type="radio"],
body.woocommerce-checkout .woocommerce-shipping-methods li input[type="radio"]{
  position:static!important;
  float:none!important;
  display:inline-block!important;
  margin:0!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  flex:0 0 18px;
  accent-color:var(--ican-red);
  vertical-align:middle;
}
body.woocommerce-checkout ul#shipping_method li br,
body.woocommerce-checkout .woocommerce-shipping-methods li br,
body.woocommerce-checkout ul#shipping_method li label br,
body.woocommerce-checkout .woocommerce-shipping-methods li label br{
  display:none!important;
}
body.woocommerce-checkout .woocommerce-shipping-totals td,
body.woocommerce-checkout tr.woocommerce-shipping-totals td{
  text-align:left!important;
}

/* Ukryj chrome Kadence — zastąpiony przez ican-cux */
#masthead,
.site-header,
.site-header-wrap,
.site-top-header-wrap,
.site-main-header-wrap,
.site-bottom-header-wrap,
.kadence-sticky-header,
#colophon,
.site-footer,
.site-footer-wrap{
  display:none!important;
}