/* Nativia — koszyk: ikona torby w nagłówku, szuflada koszyka (cart.js) i uproszczony nagłówek kasy (chrome: 'checkout').
   Korzysta ze zmiennych z layout.mjs (--primary, --ink, --muted…). Ładowany na każdej stronie po site.css. */

/* ---------- ikona torby z licznikiem ---------- */
.cart-btn{position:relative;display:inline-grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;color:var(--ink);text-decoration:none;order:1;-webkit-tap-highlight-color:transparent;transition:background-color .15s,color .15s}
.cart-btn:hover{background:rgba(30,77,59,.08);color:var(--primary)}
.cart-btn__ico{width:25px;height:25px;display:block}
.cart-btn__count{position:absolute;top:1px;right:-3px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--primary);color:#fff;font-size:.68rem;font-weight:800;line-height:19px;text-align:center;font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px #fff;pointer-events:none}
.cart-btn__count[hidden]{display:none}
.cart-btn.is-bump .cart-btn__count{animation:cart-bump .5s cubic-bezier(.3,1.6,.5,1)}
@keyframes cart-bump{0%{transform:scale(.4)}60%{transform:scale(1.18)}100%{transform:scale(1)}}
.site-header .nav-toggle{order:2}
@media (max-width:639px){
  .site-header__inner{gap:6px}
  .cart-btn{width:42px;height:42px}
  /* menu mobilne rozwija się pod całym rzędem (logo, CTA, koszyk, hamburger) */
  .site-header.nav-open .site-nav{order:9}
}
/* na bardzo wąskich ekranach CTA w nagłówku ustępuje miejsca ikonie koszyka (przycisk zakupu jest w buy boksie i w pasku sticky) */
@media (max-width:419px){.site-header__cta{display:none}}
@media (min-width:960px){.cart-btn{order:1;margin-left:6px}}

/* ---------- uproszczony nagłówek kasy ---------- */
.co-header{background:#fff;border-bottom:1px solid #e3e3e3}
.co-header__inner{position:relative;max-width:1200px;margin-inline:auto;padding:14px 64px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.co-header .co-header__logo{margin:0}
.co-header .logo__img{height:30px;width:auto}
.co-proof{display:inline-flex;align-items:center;gap:8px;margin:0;padding:3px 12px 3px 4px;background:#f4f4f4;border:1px solid #e9e9e9;border-radius:999px;font-size:.78rem;font-weight:700;line-height:1.2;color:var(--ink)}
.co-proof__avatars{display:inline-flex;flex:none}
.co-proof__avatars>span{width:22px;height:22px;border-radius:50%;margin-left:-8px;border:2px solid #fff;display:grid;place-items:end center;overflow:hidden;background:var(--primary)}
.co-proof__avatars>span:first-child{margin-left:0;background:var(--gold)}
.co-proof__avatars>span:last-child{background:#8aa89a}
.co-proof__avatars svg{width:18px;height:18px;fill:rgba(255,255,255,.92);display:block;margin-bottom:-2px}
.co-trust{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;margin:0;padding:0;font-size:.76rem;font-weight:600;color:#5c5c5c}
.co-trust li{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.co-trust__ico{width:16px;height:16px;color:var(--primary);flex:none}
.co-header__cart{position:absolute;right:20px;top:50%;transform:translateY(-50%)}
.co-header__cart .cart-btn__count{box-shadow:0 0 0 2px #fff}
.co-proof__text{white-space:nowrap}
@media (max-width:639px){
  /* torba jest tylko w rzędzie logo (logo wyśrodkowane, ~140 px) – kolejne rzędy mogą zająć całą szerokość */
  .co-header__inner{padding:12px 12px 10px;gap:7px}
  .co-header .logo__img{height:26px}
  .co-header__cart{right:6px;top:4px;transform:none}
  .co-trust{gap:3px 10px;font-size:.7rem}
  .co-trust li{gap:4px}
  .co-trust__ico{width:14px;height:14px}
}
/* jeden rząd także na 360 px (na węższych ekranach rząd może się zawinąć) */
@media (max-width:379px){.co-header__inner{padding-inline:8px}.co-trust{font-size:.65rem;gap:2px 7px}.co-trust li{gap:3px}.co-trust__ico{width:12px;height:12px}}

/* ---------- szuflada koszyka ---------- */
html.cart-lock,html.cart-lock body{overflow:hidden}
.cd-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cart-drawer{position:fixed;inset:0;z-index:1100;font-family:var(--font-body);color:var(--ink)}
.cart-drawer[hidden]{display:none}
.cart-drawer__backdrop{position:absolute;inset:0;background:rgba(15,20,18,.52);opacity:0;transition:opacity .32s ease;cursor:pointer}
.cart-drawer__panel{position:absolute;top:0;right:0;bottom:0;width:420px;max-width:100%;display:flex;flex-direction:column;background:#fff;box-shadow:-18px 0 50px -20px rgba(0,0,0,.45);transform:translateX(104%);transition:transform .36s cubic-bezier(.22,.8,.3,1);outline:0;overflow:hidden}
.cart-drawer.is-open .cart-drawer__backdrop{opacity:1}
.cart-drawer.is-open .cart-drawer__panel{transform:none}
@media (max-width:479px){.cart-drawer__panel{width:100%;box-shadow:none}}
@media (prefers-reduced-motion:reduce){.cart-drawer__backdrop,.cart-drawer__panel{transition:none}.cd-line.is-new::before{animation:none}}

.cart-drawer__head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:8px 12px 8px 20px;background:var(--primary);color:#fff}
.cart-drawer__title{margin:0;font-family:var(--font-body);font-size:1rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;line-height:1.2}
.cart-drawer__x{flex:none;width:38px;height:38px;border-radius:50%;border:0;padding:0;display:grid;place-items:center;background:#fff;color:var(--primary);transition:transform .15s,background-color .15s}
.cart-drawer__x:hover{background:#eef3f0;transform:rotate(90deg)}
.cart-drawer__x svg{width:20px;height:20px}
/* specyficzność 0,3,0 – wygrywa z .cart-drawer :focus-visible (kolor primary byłby niewidoczny na pasku primary) */
.cart-drawer .cart-drawer__x:focus-visible{outline:3px solid #fff;outline-offset:2px}
.cart-drawer__body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px 20px calc(28px + env(safe-area-inset-bottom))}
.cart-drawer :focus-visible{outline:3px solid var(--primary);outline-offset:2px}
.cd-ico{width:20px;height:20px;display:block}

/* pasek darmowej dostawy */
.cd-ship{margin:0 0 6px;padding:12px 14px 14px;background:#f5f7f6;border-radius:12px}
.cd-ship__text{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 9px;font-size:.9rem;font-weight:600;line-height:1.3;text-align:center}
.cd-ship__text strong{color:var(--primary);font-weight:800;white-space:nowrap}
.cd-ship__ico{width:20px;height:20px;flex:none;color:var(--primary)}
.cd-ship.is-free .cd-ship__text{font-weight:800;color:var(--primary)}
.cd-ship.is-free .cd-ship__ico{background:var(--primary);color:#fff;border-radius:50%;padding:3px;stroke-width:3}
.cd-ship__bar{height:8px;border-radius:999px;background:#dfe5e2;overflow:hidden}
.cd-ship__bar>span{display:block;height:100%;border-radius:inherit;background:var(--primary);transition:width .45s ease}

/* pozycje */
.cd-lines{list-style:none;margin:0;padding:0}
.cd-line{position:relative;isolation:isolate;display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:14px;align-items:start;padding:16px 0;border-bottom:1px solid #ececec}
/* krótkie podświetlenie świeżo dodanej pozycji */
.cd-line.is-new::before{content:"";position:absolute;inset:6px -10px;z-index:-1;border-radius:12px;background:rgba(30,77,59,.08);opacity:0;animation:cd-flash 1.6s ease;pointer-events:none}
@keyframes cd-flash{0%,35%{opacity:1}100%{opacity:0}}
.cd-line__media{display:block;width:80px;height:80px;border-radius:10px;overflow:hidden;background:#f6f6f6;border:1px solid #ededed}
.cd-line__media img,.cd-card__media img{width:100%;height:100%;object-fit:cover}
.cd-line-ph,.cd-card-ph{display:grid;place-items:center;width:100%;height:100%;color:#b5b5b5}
.cd-line__info{min-width:0}
.cd-line__name{display:block;font-weight:800;font-size:.95rem;line-height:1.25;color:var(--primary);text-decoration:none;overflow-wrap:anywhere}
.cd-line__name:hover{text-decoration:underline}
.cd-line__bundle{margin:3px 0 0;font-size:.82rem;line-height:1.3;color:var(--muted)}
.cd-line__gifts{list-style:none;margin:3px 0 0;padding:0;font-size:.78rem;line-height:1.3;font-weight:700;color:var(--success,#2E7D32)}
.cd-line__actions{display:flex;align-items:center;gap:8px;margin-top:10px}
.cd-qty{display:inline-flex;align-items:center;height:36px;border:1px solid #d6d6d6;border-radius:999px;background:#fff}
.cd-qty__btn{width:34px;height:34px;border:0;padding:0;background:transparent;border-radius:50%;display:grid;place-items:center;color:var(--ink)}
.cd-qty__btn svg{width:16px;height:16px}
.cd-qty__btn:hover:not(:disabled){background:#f1f1f1}
.cd-qty__btn:disabled{color:#c4c4c4;cursor:default}
.cd-qty__val{min-width:24px;text-align:center;font-weight:800;font-size:.92rem;font-variant-numeric:tabular-nums}
.cd-line__remove{width:36px;height:36px;border:0;padding:0;border-radius:50%;display:grid;place-items:center;background:transparent;color:#7a7a7a;transition:color .15s,background-color .15s}
.cd-line__remove:hover{color:var(--danger);background:rgba(179,38,30,.08)}
.cd-line__price{display:flex;flex-direction:column;align-items:flex-end;text-align:right;white-space:nowrap;line-height:1.25}
.cd-line__price strong{font-size:.98rem;font-weight:800}
.cd-line__price s{font-size:.78rem;color:var(--muted)}

/* suma i przyciski */
.cd-sum{padding:18px 0 4px}
.cd-sum__row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 14px}
.cd-sum__row span{font-size:1rem;font-weight:700}
.cd-sum__row strong{font-size:1.5rem;font-weight:800;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.cd-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;padding:12px 20px;border:0;border-radius:999px;background:var(--primary);color:#fff;font-family:var(--font-body);font-size:1rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;text-align:center;line-height:1.2;box-shadow:0 10px 24px -12px rgba(30,77,59,.7);transition:background-color .15s,transform .15s}
.cd-btn:hover{background:var(--primary-dark);color:#fff;transform:translateY(-1px)}
/* kasa i /dziekujemy/ kolorują linki (checkout.css: .page-checkout a) – przycisk szuflady zostaje biały */
.cart-drawer a.cd-btn,.cart-drawer a.cd-btn:hover,.cart-drawer a.cd-btn:focus-visible{color:#fff}
.cd-btn:active{transform:none}
.cd-sum__continue{display:block;margin:12px auto 0;padding:8px 10px;border:0;background:transparent;color:var(--ink);font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}
.cd-sum__continue:hover{color:var(--primary)}

/* cross-sell */
.cd-xsell{margin-top:22px}
.cd-xsell__bar{margin:0 -20px 14px;padding:11px 20px;background:var(--primary);color:#fff;font-family:var(--font-body);font-size:.95rem;font-weight:800;letter-spacing:.01em;text-align:center;line-height:1.3}
.cd-xsell__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cd-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;padding:10px;border:1px solid #e6e6e6;border-radius:12px;background:#fff}
.cd-card__media{display:block;width:64px;height:64px;border-radius:8px;overflow:hidden;background:#f6f6f6}
.cd-card__info{min-width:0}
.cd-card__name{display:block;font-size:.88rem;font-weight:800;line-height:1.25;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
.cd-card__name:hover{color:var(--primary);text-decoration:underline}
.cd-card__bundle{margin:2px 0 0;font-size:.76rem;color:var(--muted);line-height:1.3}
.cd-card__foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 10px;margin-top:6px}
.cd-card__price{margin:0;font-size:.9rem;line-height:1.2;white-space:nowrap}
.cd-card__price strong{font-weight:800}
.cd-card__price s{font-size:.74rem;color:var(--muted);margin-left:2px}
.cd-card__add{flex:none;min-height:32px;padding:5px 12px;border:1.5px solid var(--primary);border-radius:999px;background:#fff;color:var(--primary);font-size:.76rem;font-weight:800;line-height:1.1;white-space:nowrap;transition:background-color .15s,color .15s}
.cd-card__add:hover,.cd-card__add[aria-busy="true"]{background:var(--primary);color:#fff}

/* stany: pusty / ładowanie / błąd */
.cd-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:28px 8px 8px}
.cd-empty__ico{width:72px;height:72px;border-radius:50%;background:#f3f5f4;color:var(--primary);display:grid;place-items:center;margin-bottom:14px}
.cd-empty__ico svg{width:34px;height:34px}
.cd-empty__title{margin:0 0 16px;font-size:1.1rem;font-weight:800}
.cd-empty .cd-btn{max-width:280px}
.cd-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 8px;text-align:center;color:var(--muted)}
.cd-state p{margin:0}
.cd-state .cd-btn{max-width:260px}
.cd-spinner{width:28px;height:28px;border-radius:50%;border:3px solid #e2e2e2;border-top-color:var(--primary);animation:cd-spin .8s linear infinite}
@keyframes cd-spin{to{transform:rotate(360deg)}}

@media (max-width:379px){
  .cart-drawer__body{padding-inline:16px}
  .cd-xsell__bar{margin-inline:-16px}
  .cd-line{grid-template-columns:64px minmax(0,1fr) auto;gap:10px}
  .cd-line__media{width:64px;height:64px}
  .cd-sum__row strong{font-size:1.35rem}
}

/* przycisk w buy boksie / pasku sticky podczas dodawania */
[data-cart-add][aria-busy="true"]{opacity:.75;cursor:progress}

@media print{.cart-drawer,.cart-btn{display:none!important}}
