/* PLIK GENEROWANY przez sklep/work/pynio/build-motyw.py — nie edytować ręcznie.
   Źródła: PYNIO/assety/v3/_src/css/{00-tokeny.css, 10-naglowek.css, 20-karty.css, 30-kategoria.css, 31-produkt.css, 32-koszyk.css, 40-stopka.css, 50-akta.css, 60-home.css}. Z3 (trust/notatnik/artykuł) pominięte. */

/* ===== work/pynio/oc-reset-argo.css ===== */
/* Reset kolizji z argo.css i Bootstrapem 3 (Claude, 2026-10-22). Doklejany na POCZATKU pynio.css:
   wygrywa z argo.css/bootstrap (laduja sie wczesniej), a przegrywa z regulami makiety (te same
   selektory, pozniej w pliku). Docelowo E1 (PLAN-MOTYW.md): strony PYNIO bez argo.css, ten plik znika. */

/* szerokosc jak figurydeco.pl: 1440 px, margines 24 px (telefon 16 px w 10-naglowek.css).
   Bootstrap daje .container sztywne width 750/970/1170 px. */
.container{width:auto}

/* argo.css: .btn{width:100%;height:48/52px} rozciagal kazdy przycisk makiety na cala kolumne */
.btn{width:auto;height:auto}
/* Bootstrap 3: .container::before/::after{content:" ";display:table} (clearfix). W siatce nagłówka i stopki
   PYNIO te pseudo-elementy zajmowały komórki grida: na kontach/kasie stopka rozjechana (Claude, 2026-10-24). */
.site-header .container::before,.site-header .container::after,.site-footer .container::before,.site-footer .container::after{content:none;display:none}

/* ===== _src/css/00-tokeny.css ===== */
/* PYNIO v3: szkielet makiety Argo demo (rytm, siatki, karty, mega-menu),
   barwy PYNIO (krem, czerwień Prezesa). Jeden krój: Lexend Deca (decyzja Arka 10.10.2026:
   bez szeryfu, bez dwukolorowych nagłówków, bez kresek przed nadtytułami, bez „—” w treści).
   Rebranding = tokeny poniżej. Dark mode: media query + [data-theme]. */
:root{
  --primary:#c73e2a;            /* czerwień chusty Prezesa */
  --primary-hover:#a8311f;
  --primary-ink:#ffffff;

  --bg:#faf6ef;                 /* krem */
  --surface:#fffcf7;            /* papier */
  --surface-muted:#f0e5d2;
  --tint:#f4ece0;
  --heading:#1a1410;
  --text:#2b221c;
  --muted:#857769;
  --border:#e8dcc8;
  --border-strong:#cfbfa6;

  --warning:#e9a23b;
  --warning-ink:#3d2600;
  --ok:#3f7d4e;                 /* „pasuje dla psa” */
  --ok-bg:#e4efe2;
  --tp:#00b67a;                 /* ArgoTrust */

  --tile-sand:#efe3cf;
  --tile-sage:#e3e7d6;
  --tile-blush:#f2ddd3;
  --tile-mist:#e7e3dc;
  --tile-terra:#ecd2c3;
  --tile-ink:#8a7563;

  --hero-a:#efdfc6;  --hero-b:#faf3e8;
  --hero2-a:#dfe5d2; --hero2-b:#f3f5ec;
  --hero3-a:#f0d6ca; --hero3-b:#faf0ea;

  --shadow-sm:0 0 1rem 0 rgba(58,38,20,.08);
  --shadow-md:0 0 1.5rem 0 rgba(58,38,20,.16);

  --radius-sm:4px;
  --radius-md:8px;

  --page-width:1440px;
  --page-pad:24px;
  --section-gap:60px;

  --font-sans:'Lexend Deca',system-ui,sans-serif;
  --font-serif:var(--font-sans);  /* alias zostawiony dla zgodności, szeryfu nie używamy */

  --fs-xs:11px; --fs-sm:12px; --fs-md:14px; --fs-lg:16px;
  --fs-xl:20px; --fs-2xl:24px; --fs-3xl:29px; --fs-4xl:35px;
  --fs-serif-sec:30px;          /* H2 sekcji */
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --primary:#ec6750; --primary-hover:#f4836f; --primary-ink:#1c0904;
    --bg:#16120f; --surface:#1f1915; --surface-muted:#2a221c; --tint:#231c17;
    --heading:#f5ece0; --text:#e6ddd1; --muted:#a6978a;
    --border:#352b23; --border-strong:#4f4237;
    --ok:#7cc48c; --ok-bg:#1c2a1f;
    --tile-sand:#2b2318; --tile-sage:#222619; --tile-blush:#2d1f1a; --tile-mist:#26221d; --tile-terra:#2f1f18;
    --tile-ink:#b09c88;
    --hero-a:#2a2016; --hero-b:#1c1712; --hero2-a:#1e2318; --hero2-b:#181b14; --hero3-a:#2b1c16; --hero3-b:#1d1512;
    --shadow-sm:0 0 1rem 0 rgba(0,0,0,.5); --shadow-md:0 0 1.5rem 0 rgba(0,0,0,.6);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --primary:#ec6750; --primary-hover:#f4836f; --primary-ink:#1c0904;
  --bg:#16120f; --surface:#1f1915; --surface-muted:#2a221c; --tint:#231c17;
  --heading:#f5ece0; --text:#e6ddd1; --muted:#a6978a;
  --border:#352b23; --border-strong:#4f4237;
  --ok:#7cc48c; --ok-bg:#1c2a1f;
  --tile-sand:#2b2318; --tile-sage:#222619; --tile-blush:#2d1f1a; --tile-mist:#26221d; --tile-terra:#2f1f18;
  --tile-ink:#b09c88;
  --hero-a:#2a2016; --hero-b:#1c1712; --hero2-a:#1e2318; --hero2-b:#181b14; --hero3-a:#2b1c16; --hero3-b:#1d1512;
  --shadow-sm:0 0 1rem 0 rgba(0,0,0,.5); --shadow-md:0 0 1.5rem 0 rgba(0,0,0,.6);
  color-scheme:dark;
}

/* ============ BAZA ============ */
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-padding-top:120px}
body{margin:0;background:var(--bg);color:var(--text);font:400 var(--fs-md)/1.55 var(--font-sans)}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;color:inherit}
h1,h2,h3,h4{margin:0;color:var(--heading);text-wrap:balance}
h1,h2{font-family:var(--font-sans);font-weight:600;letter-spacing:-.02em;line-height:1.15}
h1 em,h2 em,h3 em{font-style:normal;font-weight:inherit;color:inherit}
:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:2px}
.skip{position:absolute;left:-9999px;top:0;z-index:999;background:var(--primary);color:var(--primary-ink);padding:10px 16px;border-radius:0 0 var(--radius-sm) 0}
.skip:focus{left:0}
.container{max-width:var(--page-width);margin:0 auto;padding:0 var(--page-pad)}
.section{margin-bottom:var(--section-gap)}
.eyebrow{font-size:var(--fs-sm);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--primary);margin:0 0 12px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* przyciski */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--primary);border-radius:var(--radius-sm);background:var(--primary);color:var(--primary-ink);font-weight:500;font-size:var(--fs-md);padding:16px 44px;transition:background .2s,border-color .2s,color .2s}
.btn:hover{background:var(--primary-hover);border-color:var(--primary-hover)}
.btn--ghost{background:transparent;color:var(--heading);border-color:var(--border-strong)}
.btn--ghost:hover{background:var(--surface);color:var(--primary);border-color:var(--primary)}
.btn--dark{background:var(--heading);border-color:var(--heading);color:var(--bg)}
.btn--dark:hover{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}
.btn--sm{padding:11px 22px}
.link{color:var(--primary);font-weight:500;display:inline-flex;align-items:center;gap:6px}
.link:hover{text-decoration:underline}

/* nagłówek sekcji (DNA demo: H2 + podtytuł + „wszystkie”) */
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:26px}
.sec-head h2{font-size:var(--fs-serif-sec)}
.sec-head .sub{margin:6px 0 0;color:var(--muted);font-size:var(--fs-md)}
.sec-head .all{color:var(--primary);font-weight:500;display:flex;align-items:center;gap:6px;white-space:nowrap;padding-bottom:6px}
.sec-head .all:hover{color:var(--primary-hover);text-decoration:underline}

/* okruszki */
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:var(--fs-sm);color:var(--muted);padding:18px 0 10px;list-style:none;margin:0}
.crumbs li+li::before{content:"›";margin-right:8px;color:var(--border-strong)}
.crumbs a:hover{color:var(--primary)}
.crumbs [aria-current]{color:var(--text)}

/* gwiazdki w stylu ArgoTrust */
.stars{display:flex;gap:3px}
.star{width:22px;height:22px;background:var(--tp);display:grid;place-items:center;border-radius:2px}
.star svg{width:14px;height:14px;fill:#fff}
.star.empty{background:var(--border-strong)}
.stars--sm .star{width:17px;height:17px}
.stars--sm .star svg{width:11px;height:11px}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}

/* ===== _src/css/10-naglowek.css ===== */
/* ============ PASEK GÓRNY ============ */
.htop{background:var(--heading);color:color-mix(in srgb,var(--bg) 82%,transparent);font-size:var(--fs-sm)}
.htop .container{display:flex;justify-content:space-between;align-items:center;min-height:36px;gap:16px}
.usp-strip{list-style:none;margin:0;padding:0;display:flex;gap:26px;flex-wrap:wrap}
.usp-strip li{display:flex;align-items:center;gap:7px;white-space:nowrap}
.usp-strip svg{color:var(--primary)}
.usp-mops{color:var(--bg)}
.htop-links{display:flex;gap:20px;white-space:nowrap}
.htop-links a:hover{color:var(--bg);text-decoration:underline}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .htop{background:#0e0b09}}
:root[data-theme="dark"] .htop{background:#0e0b09}

/* ============ NAGŁÓWEK ============ */
.hmain{background:var(--surface)}
.hmain .container{display:flex;align-items:center;gap:36px;padding-top:18px;padding-bottom:18px}
.logo{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.logo-mark{color:var(--heading);transition:color .2s,transform .3s}
.logo:hover .logo-mark{color:var(--primary);transform:rotate(-8deg)}
.logo-txt{display:flex;flex-direction:column;line-height:1}
.logo b{font-size:28px;font-weight:700;letter-spacing:.04em;color:var(--heading)}
.logo b i{font-style:normal;color:var(--primary)}
.logo-txt span{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:5px}
.search{flex:1;display:flex;height:48px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}
.search .cat{display:flex;align-items:center;gap:8px;padding:0 16px;border:0;border-right:1px solid var(--border);color:var(--muted);font-size:var(--fs-md);white-space:nowrap;background:none}
.search input{flex:1;border:0;padding:0 16px;font:inherit;color:var(--text);background:transparent;min-width:60px}
.search input::placeholder{color:var(--muted)}
.search input:focus{outline:none}
.search:focus-within{border-color:var(--primary)}
.search .go{width:56px;border:0;background:var(--primary);color:var(--primary-ink);display:grid;place-items:center;transition:background .2s}
.search .go:hover{background:var(--primary-hover)}
.hicons{display:flex;gap:24px;align-items:flex-end}
.hicon{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--muted);background:none;border:0;padding:0}
.hicon svg{color:var(--heading);transition:color .2s}
.hicon:hover,.hicon:hover svg{color:var(--primary)}
.hicon .badge{position:absolute;top:-6px;right:2px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--primary);color:var(--primary-ink);font-size:10px;font-weight:600;display:grid;place-items:center}
.hicon .badge.bump{animation:bump .5s ease}
@keyframes bump{40%{transform:scale(1.35)}}
/* przycisk akt psa: bez profilu „Dodaj psa” w obrysie, z profilem chip z imieniem */
.hdog-ic{width:24px;height:24px;display:grid;place-items:center}
.hdog-ic svg{color:var(--primary)}
.has-dog .hdog-btn .hdog-label{color:var(--heading);font-weight:600}
.hburger{display:none;border:0;background:none;padding:6px;margin-left:-6px;color:var(--heading)}

/* ============ MENU ============ */
.menu{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);position:relative;z-index:50}
.menu .container{position:relative}
.menu ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex-wrap:wrap}
.menu li{position:relative}
.menu ul>li>a{display:flex;align-items:center;gap:6px;height:46px;padding:0 13px;font-weight:500;font-size:var(--fs-md);border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.menu ul>li>a svg{transition:transform .2s}
.menu ul>li:hover>a,.menu ul>li:focus-within>a,.menu a[aria-current]{color:var(--primary);border-bottom-color:var(--primary)}
.menu ul>li:hover>a svg{transform:rotate(180deg)}
.menu .sale>a{color:var(--primary)}
.menu .trust>a{color:var(--tp)}
.menu .trust>a:hover,.menu .trust:hover>a{border-bottom-color:var(--tp);color:var(--tp)}
.menu .drop{position:absolute;top:100%;left:0;z-index:30;min-width:240px;background:var(--surface);border:1px solid var(--border);border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:var(--shadow-md);padding:10px 0;display:none}
.menu li:hover .drop,.menu li:focus-within .drop{display:block}
.menu .drop a{display:block;padding:9px 18px;font-weight:400}
.menu .drop a:hover{background:var(--tint);color:var(--primary)}

/* ============ MEGA MENU „szyna” (wzór: demo › Meble) ============ */
.menu li.mega-full{position:static}
.menu .mega2{position:absolute;top:100%;left:0;right:0;z-index:45;display:none;background:var(--surface);border:1px solid var(--border);border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden}
.menu li.mega-full:hover .mega2,.menu li.mega-full:focus-within .mega2{display:block;animation:megaIn .18s ease}
@keyframes megaIn{from{opacity:0;transform:translateY(-4px)}}
.m3wrap{display:grid;grid-template-columns:310px 1fr;min-height:430px}
.m3rail{border-right:1px solid var(--border);padding:18px 14px;display:flex;flex-direction:column;gap:2px;background:var(--surface)}
.m3eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:4px 14px 10px}
.menu .m3item{display:flex;align-items:center;gap:13px;padding:12px 14px;border-radius:var(--radius-sm);color:var(--text);font-weight:500;font-size:15px;transition:background .15s,color .15s}
.m3item .m3ic{width:26px;height:26px;flex:0 0 26px;color:var(--muted);transition:color .15s}
.m3item .m3chev{margin-left:auto;flex:0 0 auto;color:var(--border-strong);transition:color .15s}
.m3item:hover,.m3item.is-active{background:var(--tint);color:var(--primary)}
.m3item:hover .m3ic,.m3item.is-active .m3ic,.m3item.is-active .m3chev{color:var(--primary)}
.m3body{position:relative;padding:34px 40px;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:42px}
.m3panel{display:none;grid-template-columns:repeat(2,minmax(0,270px));gap:44px;align-content:start;grid-column:1;grid-row:1}
.m3panel.is-active{display:grid}
.m3col h4{font-size:15px;font-weight:600;color:var(--heading);margin:0 0 16px;padding-bottom:10px;position:relative}
.m3col h4::after{content:"";position:absolute;left:0;bottom:0;width:36px;height:2px;background:var(--primary)}
.menu .m3col a{display:flex;padding:8px 0;color:var(--text);font-size:14.5px}
.menu .m3col a:hover{color:var(--primary)}
.menu .m3col a.m3all{display:inline-flex;margin-top:16px;color:var(--primary);font-weight:600;font-size:var(--fs-sm);letter-spacing:.07em;text-transform:uppercase}
.m3all:hover{text-decoration:underline}
/* panel bez podkategorii: zachęta zamiast pustki */
.m3empty{grid-column:1;grid-row:1;display:none;align-content:start;gap:12px;max-width:420px}
.m3empty.is-active{display:grid}
.m3empty p{margin:0;color:var(--muted)}
.m3empty b{font-size:20px;font-weight:600;color:var(--heading)}
.m3side{grid-column:2;grid-row:1;border-left:1px solid var(--border);padding-left:38px}
.mma-flabel{font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:0 0 12px}
.m3featcol{display:flex;flex-direction:column;gap:6px}
.menu a.mma-featcard{display:flex;gap:14px;align-items:center;padding:9px 10px;border-radius:var(--radius-md);transition:background .2s}
.menu a.mma-featcard:hover{background:var(--tint)}
.mma-fimg{position:relative;width:68px;height:68px;flex:0 0 68px;border-radius:var(--radius-sm);display:grid;place-items:center;color:var(--tile-ink)}
.mma-fimg svg{width:34px;height:34px;transition:transform .3s ease}
.mma-featcard:hover .mma-fimg svg{transform:scale(1.09)}
.mma-featcard b{display:block;font-weight:500;font-size:14.5px;color:var(--heading);line-height:1.35;transition:color .2s}
.mma-featcard:hover b{color:var(--primary)}
.mma-featcard .fp{display:block;color:var(--heading);font-weight:600;font-size:15px;margin-top:4px;font-variant-numeric:tabular-nums}
.mma-featcard .fit{display:inline-flex;margin-top:5px}
.mma-all{display:inline-flex;margin-top:14px;color:var(--primary);font-weight:500}
.mma-all:hover{text-decoration:underline}
@media (max-width:1100px){.m3wrap{grid-template-columns:250px 1fr}.m3panel{grid-template-columns:1fr 1fr;gap:26px}.m3body{grid-template-columns:1fr}.m3side{display:none}}

/* ============ WĘDRUJĄCY PASEK + DO GÓRY ============ */
.sticky-bar{position:fixed;top:0;left:0;right:0;z-index:300;background:var(--surface);box-shadow:var(--shadow-md);transform:translateY(-100%);visibility:hidden;transition:transform .28s ease,visibility 0s .28s}
.sticky-bar[hidden]{display:block}
.sticky-bar.show{transform:translateY(0);visibility:visible;transition:transform .28s ease}
.sticky-top{border-bottom:1px solid var(--border)}
.sticky-top .container{display:flex;align-items:center;gap:28px;min-height:58px}
.logo--sm b{font-size:22px}
.search--sm{flex:1;max-width:560px;height:40px}
.search--sm input{padding:0 14px}
.search--sm .go{width:46px}
.hicons--sm{display:flex;gap:22px;margin-left:auto;align-items:center}
.hicons--sm .hicon{flex-direction:row;gap:8px;font-size:var(--fs-sm)}
.hicons--sm .hicon .badge{top:-7px;right:-9px}
.menu--sticky{border:0;z-index:auto}
.menu--sticky ul>li>a{height:42px}
.to-top{position:fixed;right:24px;bottom:24px;z-index:290;width:46px;height:46px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--heading);display:grid;place-items:center;box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s,transform .25s,color .2s}
.to-top.show{opacity:1;visibility:visible;transform:translateY(0)}
.to-top:hover{color:var(--primary);border-color:var(--primary)}

/* ============ RESPONSYWNOŚĆ NAGŁÓWKA ============ */
@media (max-width:1180px){.usp-strip li:nth-child(3){display:none}}
@media (max-width:980px){
  .usp-strip li:nth-child(n+2){display:none}
  .hmain .container{gap:20px}
  .hicons{gap:18px}
}
@media (max-width:900px){
  .hburger{display:block}
  .hmain .container{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}
  .search{order:3;flex-basis:100%;height:44px}
  .search .cat{display:none}
  .hicons{margin-left:auto}
  .hicon{font-size:0;gap:0}
  .hicon .hdog-label{font-size:var(--fs-xs)}
  .logo b{font-size:24px}
  .logo-txt span{display:none}
  .sticky-bar{display:none!important}
  /* menu jako panel rozwijany hamburgerem */
  .menu{display:none;border-top:0}
  .menu.open{display:block}
  .menu ul{flex-direction:column;gap:0;padding:6px 0 12px}
  .menu ul>li>a{height:48px;padding:0 4px;border-bottom:1px solid var(--border);justify-content:space-between}
  .menu ul>li:hover>a svg{transform:none}
  .menu li.open>a svg{transform:rotate(180deg)}
  .menu li.mega-full:hover .mega2,.menu li.mega-full:focus-within .mega2,.menu li:hover .drop,.menu li:focus-within .drop{display:none}
  .menu li.open .mega2,.menu li.open .drop{display:block;position:static;box-shadow:none;border:0;border-radius:0;animation:none}
  .m3wrap{display:block;min-height:0}
  .m3rail{border:0;padding:4px 0 8px 8px}
  .m3eyebrow{margin-left:6px}
  .m3body{display:none}
  .menu .drop{padding:4px 0 8px 8px}
}
@media (max-width:560px){
  :root{--page-pad:16px;--section-gap:44px;--fs-serif-sec:24px}
  .usp-strip li{font-size:11px}
  .htop-links a:not(:first-child){display:none}
  .logo-mark{width:36px;height:36px}
  .hicons{gap:14px}
  .hicon .hdog-label{display:none}
}

/* ===== _src/css/20-karty.css ===== */
/* ============ KAFLE (tint + ikona; w OC = zdjęcie) ============ */
.t-sand{background:var(--tile-sand)}.t-sage{background:var(--tile-sage)}
.t-blush{background:var(--tile-blush)}.t-mist{background:var(--tile-mist)}
.t-terra{background:var(--tile-terra)}

/* ============ KARTY PRODUKTÓW (DNA demo: czysty kafel 1:1, bez ramek) ============ */
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:32px 24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 24px}
.pcard{display:flex;flex-direction:column;min-width:0;position:relative}
.pimg{position:relative;aspect-ratio:1/1;border-radius:var(--radius-sm);overflow:hidden;display:grid;place-items:center;transition:box-shadow .25s}
.pcard:hover .pimg{box-shadow:var(--shadow-md)}
.pimg>svg.art{width:40%;height:auto;color:var(--tile-ink);transition:transform .3s ease}
.pcard:hover .pimg>svg.art{transform:scale(1.06)}
.flags{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:6px;align-items:flex-start;z-index:2}
.flag{font-size:var(--fs-xs);font-weight:500;padding:4px 9px;border-radius:var(--radius-sm);letter-spacing:.02em;line-height:1.3}
.flag-new{background:var(--heading);color:var(--bg)}
.flag-hot{background:var(--warning);color:var(--warning-ink)}
.flag-sale{background:var(--primary);color:var(--primary-ink)}
.flag-lim{background:var(--surface);color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}
.flag-hand{background:var(--surface);color:var(--heading)}
.fav{position:absolute;top:10px;right:10px;z-index:2;width:34px;height:34px;border-radius:50%;border:0;background:color-mix(in srgb,var(--surface) 85%,transparent);color:var(--muted);display:grid;place-items:center;opacity:0;transition:opacity .2s,color .2s}
.pcard:hover .fav,.fav:focus-visible,.fav.on{opacity:1}
.fav:hover,.fav.on{color:var(--primary)}
.fav.on svg path{fill:currentColor}
.pcat{margin-top:14px;font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.pname{margin-top:5px;font-size:var(--fs-lg);font-weight:500;line-height:1.35;color:var(--heading)}
.pcat+.pname{margin-top:4px}
.pimg+.pname{margin-top:14px}
.pcard:hover .pname{color:var(--primary)}
.prate{display:flex;align-items:center;gap:5px;margin-top:6px;font-size:var(--fs-sm);color:var(--muted)}
.prate svg{width:13px;height:13px;fill:var(--warning)}
.prate b{color:var(--heading);font-weight:600}
.prow{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.price{margin:0;font-size:var(--fs-xl);font-weight:600;color:var(--heading);font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.price small{font-size:var(--fs-sm);font-weight:400;color:var(--muted)}
.price .old{font-size:var(--fs-md);font-weight:400;color:var(--muted);text-decoration:line-through}
.price.promo{color:var(--primary)}
.add{width:46px;height:46px;flex:0 0 46px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--primary);display:grid;place-items:center;transition:background .2s,color .2s,border-color .2s,transform .15s}
.add:hover{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}
.add:active{transform:scale(.94)}
.add.done{background:var(--ok);border-color:var(--ok);color:#fff}
.omnibus{margin:6px 0 0;font-size:var(--fs-xs);color:var(--muted)}

/* pieczątka Prezesa na kafelku: wbija się, gdy karta wjeżdża w ekran */
.pstamp{position:absolute;right:8px;bottom:8px;z-index:2;width:76px;height:76px;color:var(--primary);opacity:0;transform:rotate(-14deg) scale(1.6);pointer-events:none;mix-blend-mode:multiply}
.pstamp.in{animation:stampIn .45s cubic-bezier(.2,1.6,.4,1) forwards}
@keyframes stampIn{0%{opacity:0;transform:rotate(-4deg) scale(1.7)}100%{opacity:.82;transform:rotate(-14deg) scale(1)}}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pstamp{mix-blend-mode:normal}}
:root[data-theme="dark"] .pstamp{mix-blend-mode:normal}
@media (prefers-reduced-motion:reduce){.pstamp{opacity:.82;transform:rotate(-14deg)}}

/* plakietka dopasowania z Akt psa (wstawiana przez JS) */
.fit{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-xs);font-weight:600;border-radius:999px;padding:4px 10px 4px 7px;background:var(--ok-bg);color:var(--ok);line-height:1.2;white-space:nowrap}
.fit svg{width:13px;height:13px;flex:0 0 auto}
.fit--no{background:color-mix(in srgb,var(--warning) 22%,var(--surface));color:var(--warning-ink)}
.pcard .fit{margin-top:8px;align-self:flex-start}
.pcard.is-fit .pimg{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--ok) 55%,transparent)}

/* ============ BANERY USP ============ */
.banners{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.banner{display:flex;align-items:center;gap:16px;padding:22px 24px;border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);transition:box-shadow .2s,transform .2s}
.banner:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}
.banner .ic{width:46px;height:46px;flex:0 0 46px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary)}
.banner b{display:block;font-weight:600;font-size:var(--fs-md);color:var(--heading)}
.banner span{font-size:var(--fs-sm);color:var(--muted)}

/* ============ OPINIE (ArgoTrust, karuzela) ============ */
.reviews{background:var(--tint);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:56px 0 60px;margin-bottom:var(--section-gap)}
.reviews .head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:26px}
.reviews h2{font-size:var(--fs-serif-sec)}
.reviews .sub{margin:6px 0 0;color:var(--muted)}
.score{display:flex;align-items:center;gap:14px;margin-top:14px;flex-wrap:wrap}
.score .num{font-size:var(--fs-2xl);font-weight:600;color:var(--heading);font-variant-numeric:tabular-nums}
.score .meta{color:var(--muted)}
.trust-link{display:inline-flex;align-items:center;gap:8px;color:var(--tp);font-weight:500;padding-bottom:6px;white-space:nowrap}
.trust-link:hover{text-decoration:underline}
.trust-link svg{fill:#ff9d00}
.rail-wrap{position:relative}
.rail{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px}
.rail::-webkit-scrollbar{display:none}
.rcard{flex:0 0 340px;scroll-snap-align:start;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:22px 24px;display:flex;flex-direction:column;gap:10px}
.rc-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.rcard time{font-size:var(--fs-sm);color:var(--muted)}
.rc-right{display:flex;align-items:center;gap:10px}
.src{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--muted);background:var(--tint);border:1px solid var(--border);border-radius:999px;padding:3px 10px 3px 4px;white-space:nowrap}
.src-ic{height:17px;width:17px;border-radius:4px}
.rtitle{font-size:var(--fs-lg);font-weight:600;color:var(--heading)}
.rcard p{margin:0}
.who{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--fs-sm);color:var(--muted);padding-top:10px;border-top:1px solid var(--border)}
.who b{color:var(--heading);font-weight:500;display:block}
.who .ok{color:var(--tp);display:inline-flex;align-items:center;gap:5px;font-weight:500;white-space:nowrap}
.rail-btn{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface);color:var(--heading);display:grid;place-items:center;z-index:2;box-shadow:var(--shadow-sm);transition:color .2s}
.rail-btn:hover{color:var(--primary)}
.rail-btn.prev{left:-10px}.rail-btn.next{right:-10px}

/* ============ WPISY Z NOTATNIKA (karty bloga) ============ */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s}
.post:hover{box-shadow:var(--shadow-md)}
.post .cover{position:relative;aspect-ratio:16/9;display:grid;place-items:center}
.post .cover svg{width:72px;color:var(--tile-ink);transition:transform .3s}
.post:hover .cover svg{transform:scale(1.08)}
.post .tag{position:absolute;top:12px;left:12px;background:var(--surface);color:var(--primary);font-size:var(--fs-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-sm);padding:4px 9px}
.post .body{padding:22px 24px 26px;display:flex;flex-direction:column;gap:10px;flex:1}
.post .meta{font-size:var(--fs-sm);color:var(--muted)}
.post h3{font-size:19px;font-weight:600;line-height:1.3}
.post:hover h3{color:var(--primary)}
.post p{margin:0;color:var(--muted)}
.post .more{margin-top:auto;padding-top:8px;color:var(--primary);font-weight:500}

/* ============ AKORDEON (FAQ / SEO) ============ */
.acc details{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:10px}
.acc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;font-weight:500;font-size:var(--fs-lg);color:var(--heading);cursor:pointer}
.acc summary::-webkit-details-marker{display:none}
.acc summary svg{flex:0 0 auto;color:var(--muted);transition:transform .2s}
.acc details[open] summary svg{transform:rotate(180deg)}
.acc details[open] summary{color:var(--primary)}
.acc .a{padding:0 20px 18px}
.acc .a p{margin:0 0 8px}
.acc .a p:last-child{margin-bottom:0}

@media (max-width:1100px){.grid-4{grid-template-columns:repeat(3,1fr)}.banners{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){
  .grid-4,.grid-3,.posts{grid-template-columns:repeat(2,1fr);gap:28px 16px}
  .reviews .rail-btn{display:none}
  .rcard{flex-basis:290px}
  .pname{font-size:15px}
  .price{font-size:18px}
  .add{width:40px;height:40px;flex-basis:40px}
  .pstamp{width:58px;height:58px}
}
@media (max-width:480px){.posts,.banners{grid-template-columns:1fr}}

/* ===== _src/css/30-kategoria.css ===== */
/* ============ KATEGORIA (Legowiska): wszystko pod .page-kategoria ============ */
.page-kategoria{
  /* próbki kolorów produktu: to dane produktu (nie motyw), więc takie same w jasnym i ciemnym trybie */
  --sw-bez:#d9c3a0;--sw-grafit:#4a4642;--sw-terakota:#b9573c;
}
.page-kategoria [hidden]{display:none!important}

/* ---------- nagłówek ---------- */
.page-kategoria .kat-head{padding-bottom:4px}
.page-kategoria .kh-row{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin:6px 0 24px}
.page-kategoria .kh-txt h1{font-size:clamp(32px,3.8vw,46px);margin-bottom:14px}
.page-kategoria .kh-txt .lead{margin:0;max-width:640px}
.page-kategoria .kh-count{display:flex;align-items:center;gap:14px;flex:0 0 auto;padding-bottom:6px}
.page-kategoria .kh-count b{font-size:56px;font-weight:600;line-height:.9;color:var(--primary)}
.page-kategoria .kh-count span{font-size:var(--fs-md);line-height:1.35;color:var(--muted)}

/* chipsy podkategorii */
.page-kategoria .kh-subs{display:flex;flex-wrap:wrap;gap:10px}
.page-kategoria .ksub{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:6px 16px 6px 8px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--heading);font-weight:500;transition:background .2s,color .2s,border-color .2s}
.page-kategoria .ksub:first-child{padding-left:16px}
.page-kategoria .ksub i{font-style:normal;font-size:var(--fs-sm);color:var(--muted);font-variant-numeric:tabular-nums}
.page-kategoria .ksub:hover{border-color:var(--primary);color:var(--primary)}
.page-kategoria .ksub.is-on{background:var(--heading);border-color:var(--heading);color:var(--bg)}
.page-kategoria .ksub.is-on i{color:color-mix(in srgb,var(--bg) 70%,transparent)}
.page-kategoria .ks-ic{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:0 0 30px}
.page-kategoria .ks-ic svg{width:17px;height:17px;color:var(--tile-ink)}

/* ---------- układ ---------- */
.page-kategoria .kat-layout{display:grid;grid-template-columns:268px minmax(0,1fr);gap:40px;align-items:start;margin-top:30px;margin-bottom:var(--section-gap)}
.page-kategoria .kat-main{min-width:0}

/* ---------- filtry ---------- */
.page-kategoria .kfilters{position:sticky;top:112px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex-direction:column;max-height:calc(100vh - 130px)}
.page-kategoria .kf-top{display:none}
.page-kategoria .kf-body{padding:4px 20px;overflow-y:auto;overscroll-behavior:contain}
.page-kategoria .kf-group{border-bottom:1px solid var(--border);padding:14px 0}
.page-kategoria .kf-group:last-child{border-bottom:0}
.page-kategoria .kf-group summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;font-weight:600;font-size:var(--fs-md);color:var(--heading)}
.page-kategoria .kf-group summary::-webkit-details-marker{display:none}
.page-kategoria .kf-group summary svg{color:var(--muted);transition:transform .2s}
.page-kategoria .kf-group[open] summary svg{transform:rotate(180deg)}
.page-kategoria .kf-sizes{margin-top:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.page-kategoria .kf-pill{position:relative;display:block}
.page-kategoria .kf-pill input,.page-kategoria .kf-opt input,.page-kategoria .kf-switch input{position:absolute;opacity:0;pointer-events:none}
.page-kategoria .kf-pill span{display:grid;place-items:center;min-height:42px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);font-weight:500;color:var(--heading);cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.page-kategoria .kf-pill:hover span{border-color:var(--primary)}
.page-kategoria .kf-pill input:checked+span{background:var(--heading);border-color:var(--heading);color:var(--bg)}
.page-kategoria .kf-pill input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}
.page-kategoria .kf-pill.mine span::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok);position:absolute;top:6px;right:6px}
.page-kategoria .kf-hint{margin:10px 0 0;font-size:var(--fs-sm);color:var(--muted)}
.page-kategoria .kf-hint .link{font-size:var(--fs-sm)}
.page-kategoria .kf-opts{margin-top:12px;display:grid;gap:4px}
.page-kategoria .kf-opt{position:relative;display:flex;align-items:center;gap:10px;min-height:38px;padding:2px 0;cursor:pointer;color:var(--text)}
.page-kategoria .kf-opt::before{content:"";flex:0 0 18px;height:18px;border:1.5px solid var(--border-strong);border-radius:3px;background:var(--bg);transition:background .15s,border-color .15s}
.page-kategoria .kf-opt:has(input:checked)::before{background:var(--primary);border-color:var(--primary);box-shadow:inset 0 0 0 3px var(--bg)}
.page-kategoria .kf-opt:has(input:focus-visible)::before{outline:2px solid var(--primary);outline-offset:2px}
.page-kategoria .kf-opt span{flex:1}
.page-kategoria .kf-opt em{font-style:normal;font-size:var(--fs-sm);color:var(--muted);font-variant-numeric:tabular-nums}
.page-kategoria .kf-opt:hover span{color:var(--primary)}
.page-kategoria .cdot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:7px;vertical-align:-1px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--heading) 22%,transparent);background:var(--border-strong)}
.page-kategoria .cdot[data-c="bez"]{background:var(--sw-bez)}
.page-kategoria .cdot[data-c="grafit"]{background:var(--sw-grafit)}
.page-kategoria .cdot[data-c="terakota"]{background:var(--sw-terakota)}
.page-kategoria .cdot--lg{width:18px;height:18px;margin:0;flex:0 0 18px}
.page-kategoria .kf-price{margin-top:14px}
.page-kategoria .kfp-row{display:flex;justify-content:space-between;gap:10px;font-size:var(--fs-sm);color:var(--muted);margin-bottom:6px}
.page-kategoria .kfp-row output{color:var(--heading);font-weight:600;font-variant-numeric:tabular-nums}
.page-kategoria .kf-price input[type=range]{width:100%;height:28px;accent-color:var(--primary)}

/* przełączniki (Szyte ręcznie / Pasuje do psa) */
.page-kategoria .sw{position:relative;flex:0 0 44px;width:44px;height:26px;border-radius:999px;background:var(--border-strong);transition:background .2s}
.page-kategoria .sw::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--surface);box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s}
.page-kategoria .kf-switch{position:relative;display:flex;align-items:center;gap:12px;margin-top:12px;cursor:pointer}
.page-kategoria .kf-switch input:checked+.sw{background:var(--primary)}
.page-kategoria .kf-switch input:checked+.sw::after{transform:translateX(18px)}
.page-kategoria .kf-switch input:focus-visible+.sw{outline:2px solid var(--primary);outline-offset:2px}
.page-kategoria .kf-sw-txt b{display:block;font-weight:500;color:var(--heading)}
.page-kategoria .kf-sw-txt small{font-size:var(--fs-sm);color:var(--muted)}
.page-kategoria .kf-foot{display:none}

.page-kategoria .kf-backdrop{position:fixed;inset:0;z-index:590;background:rgba(26,20,16,.5)}

/* ---------- pasek „pasuje do mojego psa” ---------- */
.page-kategoria .fitbar{display:flex;align-items:center;gap:16px;padding:14px 20px;margin-bottom:14px;border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--tint)}
.page-kategoria .fitbar.has-dog-on{border-style:solid;border-color:color-mix(in srgb,var(--ok) 55%,transparent);background:var(--ok-bg)}
.page-kategoria .fb-ic{width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:var(--surface);color:var(--primary);display:grid;place-items:center}
.page-kategoria .fitbar.has-dog-on .fb-ic{color:var(--ok)}
.page-kategoria .fb-txt{flex:1;min-width:0;display:grid;gap:2px}
.page-kategoria .fb-txt>b{font-size:var(--fs-lg);font-weight:600;color:var(--heading)}
.page-kategoria .fb-sub{color:var(--muted);font-size:var(--fs-md)}
.page-kategoria .fb-sub b{color:var(--heading);font-weight:600}
.page-kategoria .fb-n{white-space:nowrap}
.page-kategoria .fb-switch{display:inline-flex;align-items:center;padding:8px;border:0;background:none;border-radius:999px}
.page-kategoria .fb-switch[aria-checked="true"] .sw{background:var(--ok)}
.page-kategoria .fb-switch[aria-checked="true"] .sw::after{transform:translateX(18px)}
.page-kategoria .fitbar .btn svg{color:currentColor}

/* ---------- pasek sortowania ---------- */
.page-kategoria .ksort{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 18px;margin-bottom:22px}
.page-kategoria .ks-left{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.page-kategoria .kfound{margin:0;color:var(--muted)}
.page-kategoria .kfound b{color:var(--heading);font-weight:600}
.page-kategoria .ks-sort{display:flex;align-items:center;gap:10px;color:var(--muted)}
.page-kategoria .ks-sort select{height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;padding:0 12px;max-width:100%}
.page-kategoria .ks-sort select:focus{outline:none;border-color:var(--primary)}
.page-kategoria .kf-open{display:none}
.page-kategoria .kf-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--primary);color:var(--primary-ink);font-size:var(--fs-xs);font-weight:600;display:inline-grid;place-items:center}

/* aktywne filtry */
.page-kategoria .achips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-8px 0 20px}
.page-kategoria .achip{display:inline-flex;align-items:center;gap:6px;padding:5px 6px 5px 12px;border:1px solid var(--border);border-radius:999px;background:var(--tint);font-size:var(--fs-sm);color:var(--heading)}
.page-kategoria .achip button{width:22px;height:22px;border:0;border-radius:50%;background:none;color:var(--muted);display:grid;place-items:center;padding:0}
.page-kategoria .achip button:hover{color:var(--primary);background:var(--surface)}
.page-kategoria .achips .achip-clear{border:0;background:none;color:var(--primary);font-weight:500;font-size:var(--fs-sm);padding:4px 6px}
.page-kategoria .achips .achip-clear:hover{text-decoration:underline}

/* ---------- siatka ---------- */
.page-kategoria .kat-grid .pcat{display:flex;align-items:center}
.page-kategoria .kat-grid .pcard.is-new-anim{animation:katIn .35s ease both}
@keyframes katIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.page-kategoria .kat-grid .pcard .fit{margin-top:8px}

.page-kategoria .kempty{display:grid;justify-items:center;gap:10px;text-align:center;padding:56px 20px;border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface)}
.page-kategoria .ke-art{width:72px;height:72px;color:var(--tile-ink)}
.page-kategoria .kempty b{font-size:22px;font-weight:600;color:var(--heading)}
.page-kategoria .kempty p{margin:0 0 6px;color:var(--muted)}

.page-kategoria .kmore{display:grid;justify-items:center;gap:12px;margin-top:44px}
.page-kategoria .km-count{margin:0;color:var(--muted)}
.page-kategoria .km-count b{color:var(--heading);font-weight:600}
.page-kategoria .km-bar{width:min(240px,70%);height:4px;border-radius:2px;background:var(--border)}
.page-kategoria .km-bar i{display:block;height:100%;border-radius:2px;background:var(--primary);transition:width .3s}
.page-kategoria .kmore .btn{min-width:240px}

/* ---------- baner: szyte na wymiar ---------- */
.page-kategoria .kbespoke{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:center;background:var(--tint);border:1px solid var(--border);border-radius:var(--radius-md);padding:28px;overflow:hidden}
.page-kategoria .kb-art{position:relative;aspect-ratio:5/4;border-radius:var(--radius-md);display:grid;place-items:center}
.page-kategoria .kb-art .art{width:42%;color:var(--tile-ink)}
.page-kategoria .kb-label{position:absolute;left:20px;bottom:20px;background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);padding:10px 14px;font-size:var(--fs-sm);line-height:1.5;color:var(--text);transform:rotate(-2deg);box-shadow:var(--shadow-sm)}
.page-kategoria .kb-label b{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--primary)}
.page-kategoria .kb-label i{font-style:normal;color:var(--muted)}
.page-kategoria .kb-txt h2{font-size:clamp(26px,3vw,36px);margin-bottom:14px}
.page-kategoria .kb-txt>p{margin:0 0 18px;max-width:560px}
.page-kategoria .kb-pts{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:8px}
.page-kategoria .kb-pts li{display:flex;gap:9px;align-items:center}
.page-kategoria .kb-pts svg{color:var(--ok);flex:0 0 auto}
.page-kategoria .kb-cta{display:flex;gap:12px;flex-wrap:wrap}

/* ---------- FAQ ---------- */
.page-kategoria .kfaq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:56px;align-items:start}
.page-kategoria .kfaq-head h2{font-size:clamp(26px,2.6vw,32px);margin-bottom:12px}
.page-kategoria .kfaq-head .sub{margin:0 0 14px;color:var(--muted)}

/* ---------- longread SEO ---------- */
.page-kategoria .klr-head{margin-bottom:26px}
.page-kategoria .klr-head h2{font-size:clamp(26px,2.6vw,32px)}
.page-kategoria .klr-cols{column-count:2;column-gap:56px}
.page-kategoria .klr-b{break-inside:avoid;margin-bottom:22px}
.page-kategoria .klr-b h3{font-size:20px;font-weight:600;line-height:1.15;margin-bottom:8px}
.page-kategoria .klr-b p{margin:0;color:var(--muted)}
.page-kategoria .klr-th{font-size:20px;font-weight:600;margin:14px 0 14px}
.page-kategoria .sizetab-wrap{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}
.page-kategoria .sizetab{width:100%;border-collapse:collapse;font-size:var(--fs-md)}
.page-kategoria .sizetab th,.page-kategoria .sizetab td{padding:14px 20px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}
.page-kategoria .sizetab thead th{background:var(--tint);font-size:var(--fs-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
.page-kategoria .sizetab tbody th{font-size:20px;font-weight:600;color:var(--primary);width:110px;line-height:1.1}
.page-kategoria .sizetab td:nth-child(2){white-space:nowrap;font-weight:500;color:var(--heading)}
.page-kategoria .sizetab tr:last-child th,.page-kategoria .sizetab tr:last-child td{border-bottom:0}
.page-kategoria .sizetab tr.is-mine th,.page-kategoria .sizetab tr.is-mine td{background:var(--ok-bg)}
.page-kategoria .sizetab .mine-tag{display:inline-block;margin-left:8px;vertical-align:middle;padding:3px 9px;border-radius:999px;background:var(--ok);color:var(--surface);font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:600;letter-spacing:.02em}
.page-kategoria .klr-note{margin:12px 2px 0;font-size:var(--fs-sm);color:var(--muted)}
.page-kategoria .klr-note b{color:var(--heading)}

/* ---------- RWD ---------- */
@media (max-width:1100px){
  .page-kategoria .kat-layout{grid-template-columns:236px minmax(0,1fr);gap:28px}
  .page-kategoria .kbespoke{gap:32px}
  .page-kategoria .kfaq{gap:36px}
}
@media (max-width:900px){
  .page-kategoria .kh-count b{font-size:48px}
  .page-kategoria .kat-layout{grid-template-columns:1fr;margin-top:22px}
  .page-kategoria .kf-open{display:inline-flex}
  .page-kategoria .kfilters{position:fixed;z-index:600;top:0;bottom:0;left:0;width:min(360px,90vw);max-height:none;border-radius:0 var(--radius-md) var(--radius-md) 0;border-left:0;transform:translateX(-102%);visibility:hidden;transition:transform .28s ease,visibility 0s .28s;box-shadow:var(--shadow-md)}
  .page-kategoria .kfilters.is-open{transform:none;visibility:visible;transition:transform .28s ease}
  .page-kategoria .kf-top{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}
  .page-kategoria .kf-top b{font-size:22px;font-weight:600;color:var(--heading)}
  .page-kategoria .kf-x{width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background:var(--surface);display:grid;place-items:center;color:var(--heading)}
  .page-kategoria .kf-body{flex:1}
  .page-kategoria .kf-foot{display:flex;gap:10px;padding:14px 20px;border-top:1px solid var(--border);background:var(--surface)}
  .page-kategoria .kf-foot .btn{flex:1;display:block;padding-left:12px;padding-right:12px;line-height:1.3}
  .page-kategoria.kf-lock{overflow:hidden}
  .page-kategoria .kbespoke,.page-kategoria .kfaq{grid-template-columns:1fr;gap:28px}
  .page-kategoria .kb-art{aspect-ratio:16/9}
}
@media (max-width:760px){
  .page-kategoria .kh-row{flex-direction:column;align-items:flex-start;gap:14px}
  .page-kategoria .kh-count{padding:0}
  .page-kategoria .kh-count b{font-size:40px}
  .page-kategoria .kh-count span br{display:none}
  .page-kategoria .kh-subs{flex-wrap:nowrap;overflow-x:auto;margin:0 calc(var(--page-pad) * -1);padding:2px var(--page-pad) 6px;scrollbar-width:none}
  .page-kategoria .kh-subs::-webkit-scrollbar{display:none}
  .page-kategoria .ksub{flex:0 0 auto;white-space:nowrap}
  .page-kategoria .fitbar{flex-wrap:wrap;padding:14px 16px;gap:12px}
  .page-kategoria .fb-txt{flex:1 1 calc(100% - 60px)}
  .page-kategoria .fitbar>.btn{flex:1 1 100%}
  .page-kategoria .fb-switch{margin-left:auto}
  .page-kategoria .ksort{padding:10px 12px}
  .page-kategoria .ks-sort span{display:none}
  .page-kategoria .kmore .btn{min-width:0;width:100%}
  .page-kategoria .klr-cols{column-count:1}
  .page-kategoria .sizetab th,.page-kategoria .sizetab td{padding:12px 14px}
  .page-kategoria .sizetab tbody th{width:auto;font-size:18px}
  .page-kategoria .kbespoke{padding:18px}
  .page-kategoria .kb-cta .btn{flex:1 1 100%}
}
@media (max-width:560px){
  .page-kategoria .col-dim{display:none}
  .page-kategoria .sizetab .mine-tag{display:block;margin:4px 0 0;width:max-content}
}
@media (prefers-reduced-motion:reduce){
  .page-kategoria .kfilters{transition:none}
}

/* ===== _src/css/31-produkt.css ===== */
/* ============ STRONA PRODUKTU (body.page-produkt) ============ */
.page-produkt{--sw-bez:#d9c6a3;--sw-grafit:#4a4745;--sw-terakota:#b8603f}

/* układ: galeria | kolumna zakupu */
.page-produkt .pdp{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);gap:56px;align-items:start;margin-bottom:var(--section-gap)}

/* ---------- galeria ---------- */
.page-produkt .pdp-gal{position:sticky;top:130px;min-width:0}
.page-produkt .pg-main{position:relative;aspect-ratio:1/1;border-radius:var(--radius-sm);overflow:hidden;display:grid;place-items:center;transition:background .3s}
.page-produkt .pg-main>svg.art{width:52%;height:auto;color:color-mix(in srgb,var(--pg-ink,var(--tile-ink)) 72%,var(--tile-ink));transition:transform .3s ease,color .3s}
.page-produkt .pg-main:hover>svg.art{transform:scale(1.04)}
.page-produkt .pg-main .pstamp{width:128px;height:128px;right:20px;bottom:20px}
.page-produkt .pg-cap{position:absolute;left:14px;bottom:14px;z-index:2;font-size:var(--fs-sm);color:var(--heading);background:color-mix(in srgb,var(--surface) 88%,transparent);padding:5px 11px;border-radius:999px}
.page-produkt .pg-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px}
.page-produkt .pg-thumb{aspect-ratio:1/1;border:0;border-radius:var(--radius-sm);display:grid;place-items:center;padding:0;position:relative;transition:box-shadow .2s,transform .15s}
.page-produkt .pg-thumb svg{width:44%;height:auto;color:var(--tile-ink)}
.page-produkt .pg-thumb:hover{transform:translateY(-2px)}
.page-produkt .pg-thumb.is-on{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--primary)}

/* ---------- kolumna zakupu ---------- */
.page-produkt .pdp-buy{min-width:0}
.page-produkt .pdp-buy .pcat{margin-top:0;display:block}
/* nagłówki tej strony: Lexend, jednokolorowe */
.page-produkt h1,.page-produkt h2{font-family:var(--font-sans);font-weight:600;letter-spacing:-.01em;line-height:1.2}
.page-produkt .sec-head h2{font-size:var(--fs-3xl)}
.page-produkt .pdp-h1{font-size:clamp(28px,3vw,36px);line-height:1.15;margin:8px 0 14px}
.page-produkt .pdp-rate{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.page-produkt .pdp-rate a{color:var(--tp);font-weight:500}
.page-produkt .pdp-rate a b{color:var(--heading)}
.page-produkt .pdp-rate a:hover{text-decoration:underline}
.page-produkt .pdp-price{margin:20px 0 4px;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.page-produkt .pdp-price .price{font-size:36px;line-height:1.1;align-items:baseline}
.page-produkt .pdp-price .price small{font-size:var(--fs-md)}
.page-produkt .pdp-price .omnibus{margin-top:6px}

.page-produkt .pdp-opt{margin-top:22px}
.page-produkt .pdp-label{margin:0 0 10px;font-size:var(--fs-md);color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}
.page-produkt .pdp-label b{color:var(--heading);font-weight:600}
.page-produkt .pdp-tablink{margin-left:auto;color:var(--primary);font-size:var(--fs-sm);text-decoration:underline;text-underline-offset:3px}
.page-produkt .pdp-tablink:hover{color:var(--primary-hover)}

/* kolory */
.page-produkt .pdp-dots{display:flex;gap:14px}
.page-produkt .pdp-dot{width:40px;height:40px;border-radius:50%;border:0;padding:0;background:var(--sw);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--heading) 18%,transparent);position:relative;transition:transform .15s}
.page-produkt .pdp-dot:hover{transform:scale(1.07)}
.page-produkt .pdp-dot::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid transparent;transition:border-color .15s}
.page-produkt .pdp-dot.is-on::after{border-color:var(--primary)}

/* rozmiary */
.page-produkt .pdp-sizes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.page-produkt .pdp-sizes button{position:relative;display:grid;gap:1px;justify-items:center;text-align:center;padding:11px 6px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);line-height:1.25;transition:border-color .15s,background .15s,box-shadow .15s}
.page-produkt .pdp-sizes b{font-size:var(--fs-xl);font-weight:600;color:var(--heading)}
.page-produkt .pdp-sizes span{font-size:var(--fs-sm);color:var(--text)}
.page-produkt .pdp-sizes small{font-size:var(--fs-xs);color:var(--muted)}
.page-produkt .pdp-sizes button:hover{border-color:var(--primary)}
.page-produkt .pdp-sizes button.is-on{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface));box-shadow:inset 0 0 0 1px var(--primary)}
.page-produkt .pdp-sizes button.is-on b{color:var(--primary)}
.page-produkt .pdp-sizes button.is-rec::after{content:"Prezes poleca";position:absolute;top:-9px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10px;font-weight:600;letter-spacing:.02em;line-height:1;padding:4px 7px;border-radius:999px;background:var(--ok);color:var(--surface)}

/* dobór z Akt psa */
.page-produkt .pdp-fit{margin-top:22px;border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--tint);padding:16px 18px}
.page-produkt .pdp-fit.has-dog{border-style:solid;border-color:color-mix(in srgb,var(--ok) 45%,var(--border));background:color-mix(in srgb,var(--ok-bg) 70%,var(--surface))}
.page-produkt .pdp-fit-h{margin:0 0 10px;display:flex;align-items:center;gap:8px;font-size:var(--fs-sm);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--heading)}
.page-produkt .pdp-fit-h svg{color:var(--primary)}
.page-produkt .pdp-fit-line{margin:0;font-size:var(--fs-lg);color:var(--heading);display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.page-produkt .pdp-fit-line b{font-weight:600}
.page-produkt .pdp-fit-rec{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-sm);font-weight:600;border-radius:999px;padding:4px 11px;background:var(--ok);color:var(--surface)}
.page-produkt .pdp-fit-rec b{font-size:var(--fs-md)}
.page-produkt .pdp-fit-state{margin:10px 0 0}
.page-produkt .pdp-fit-state .fit{margin:0}
.page-produkt .pdp-fit-state .linkbtn{margin-left:8px}
.page-produkt .pdp-fit-note{margin:8px 0 0;font-size:var(--fs-sm);color:var(--muted)}
.page-produkt .linkbtn{border:0;background:none;padding:0;color:var(--primary);font-size:inherit;font-weight:500;text-decoration:underline;text-underline-offset:3px}
.page-produkt .linkbtn:hover{color:var(--primary-hover)}
.page-produkt .pdp-calc-l{display:block;font-size:var(--fs-md);color:var(--muted);margin-bottom:6px}
.page-produkt .pdp-calc-l b{color:var(--heading);font-size:var(--fs-lg)}
.page-produkt .pdp-range{width:100%;height:28px;accent-color:var(--primary)}
.page-produkt .pdp-calc-res{margin:4px 0 14px;font-size:var(--fs-lg);color:var(--heading)}
.page-produkt .pdp-calc-res b{display:inline-block;min-width:2.2em;text-align:center;font-size:var(--fs-xl);color:var(--surface);background:var(--ok);border-radius:var(--radius-sm);padding:1px 8px;margin:0 4px}
.page-produkt .pdp-calc-res span{color:var(--muted);font-size:var(--fs-md)}
.page-produkt .pdp-calc-act{display:flex;flex-wrap:wrap;gap:10px}
.page-produkt .pdp-calc-act .btn{padding:11px 18px}

/* przyciski zakupu */
.page-produkt .pdp-cta{display:flex;gap:10px;margin-top:24px;align-items:stretch}
.page-produkt .pdp-qty{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden;flex:0 0 auto}
.page-produkt .pdp-qty button{width:42px;border:0;background:none;display:grid;place-items:center;color:var(--heading);transition:background .15s,color .15s}
.page-produkt .pdp-qty button:hover{background:var(--tint);color:var(--primary)}
.page-produkt .pdp-qty input{width:42px;border:0;border-left:1px solid var(--border);border-right:1px solid var(--border);text-align:center;font:600 var(--fs-lg) var(--font-sans);color:var(--heading);background:transparent;padding:0}
.page-produkt .pdp-qty input:focus-visible{outline-offset:-2px}
.page-produkt .pdp-add{flex:1;min-width:0;padding:16px 20px;white-space:nowrap}
.page-produkt .pdp-add-sum{font-variant-numeric:tabular-nums;padding-left:12px;margin-left:2px;border-left:1px solid color-mix(in srgb,var(--primary-ink) 40%,transparent)}
.page-produkt .pdp-add.is-done{background:var(--ok);border-color:var(--ok);color:var(--surface)}
.page-produkt .pdp-fav.fav{position:static;opacity:1;width:54px;height:auto;flex:0 0 54px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--muted)}
.page-produkt .pdp-fav.fav:hover,.page-produkt .pdp-fav.fav.on{color:var(--primary);border-color:var(--primary)}

.page-produkt .pdp-usp{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.page-produkt .pdp-usp li{display:flex;align-items:center;gap:12px;font-size:var(--fs-sm);color:var(--muted);line-height:1.35}
.page-produkt .pdp-usp .ic{flex:0 0 40px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary)}
.page-produkt .pdp-usp b{display:block;font-size:var(--fs-md);font-weight:600;color:var(--heading)}
.page-produkt .pdp-metka{margin:22px 0 0;display:inline-flex;align-items:center;gap:10px;padding:9px 16px;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font-size:var(--fs-sm);letter-spacing:.02em}
.page-produkt .pdp-metka svg{color:var(--primary);flex:0 0 auto}
.page-produkt .pdp-metka b{color:var(--heading);font-weight:600}

/* ---------- Słowo Prezesa ---------- */
.page-produkt .pdp-word{position:relative;margin:0;padding:44px 200px 44px 52px;border-radius:var(--radius-md);background:var(--tint);border:1px solid var(--border);overflow:hidden}
.page-produkt .pdp-word-h{margin:0 0 16px;font-size:var(--fs-sm);letter-spacing:.22em;text-transform:uppercase;color:var(--primary);font-weight:600}
.page-produkt .pdp-word blockquote{margin:0;max-width:760px;font-weight:500;font-size:clamp(20px,2.2vw,28px);line-height:1.4;color:var(--heading)}
.page-produkt .pdp-word figcaption{margin-top:18px;color:var(--muted)}
.page-produkt .pdp-word figcaption span{font-size:var(--fs-sm)}
.page-produkt .pdp-word figcaption b{color:var(--heading);font-weight:600}
.page-produkt .pdp-word .pstamp{width:140px;height:140px;right:36px;top:50%;bottom:auto;margin-top:-70px}

/* ---------- zakładki ---------- */
.page-produkt .pdp-tabs{display:flex;gap:6px;border-bottom:1px solid var(--border-strong);overflow-x:auto;scrollbar-width:none;margin-bottom:30px}
.page-produkt .pdp-tabs::-webkit-scrollbar{display:none}
.page-produkt .pdp-tabs button{flex:0 0 auto;border:0;background:none;padding:14px 22px;font-size:var(--fs-lg);font-weight:500;color:var(--muted);position:relative;white-space:nowrap;transition:color .15s}
.page-produkt .pdp-tabs button::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--primary);transform:scaleX(0);transition:transform .2s}
.page-produkt .pdp-tabs button:hover{color:var(--heading)}
.page-produkt .pdp-tabs button[aria-selected="true"]{color:var(--heading);font-weight:600}
.page-produkt .pdp-tabs button[aria-selected="true"]::after{transform:scaleX(1)}
.page-produkt .pdp-cnt{display:inline-block;margin-left:6px;font-size:var(--fs-xs);font-weight:600;padding:2px 8px;border-radius:999px;background:var(--tint);color:var(--tp);vertical-align:1px}
.page-produkt .pdp-panel[hidden]{display:none}
.page-produkt .pdp-panel:focus-visible{outline-offset:6px}
.page-produkt .pdp-panel h2{font-size:var(--fs-3xl);margin-bottom:14px}
.page-produkt .pdp-panel p{margin:0 0 14px;max-width:68ch}
.page-produkt .pdp-lead{color:var(--muted)}
.page-produkt .pdp-cols{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:56px;align-items:start}
.page-produkt .pdp-ticks{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:9px}
.page-produkt .pdp-ticks li{display:flex;gap:10px;align-items:flex-start}
.page-produkt .pdp-ticks svg{color:var(--ok);flex:0 0 auto;margin-top:3px}
.page-produkt .pdp-spec{margin:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:6px 22px}
.page-produkt .pdp-spec div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--border)}
.page-produkt .pdp-spec div:last-child{border-bottom:0}
.page-produkt .pdp-spec dt{color:var(--muted)}
.page-produkt .pdp-spec dd{margin:0;text-align:right;color:var(--heading);font-weight:500}

/* tabela rozmiarów */
.page-produkt .pdp-tw{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);margin-bottom:18px}
.page-produkt .pdp-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.page-produkt .pdp-table th,.page-produkt .pdp-table td{padding:14px 20px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}
.page-produkt .pdp-table thead th{font-size:var(--fs-sm);letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--muted);background:var(--tint)}
.page-produkt .pdp-table tbody tr:last-child>*{border-bottom:0}
.page-produkt .pdp-table tbody th{padding-top:8px;padding-bottom:8px}
.page-produkt .pdp-table td:last-child{font-weight:600;color:var(--heading)}
.page-produkt .pdp-table [data-pick]{min-width:56px;height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);font-weight:600;color:var(--heading);transition:border-color .15s,background .15s,color .15s}
.page-produkt .pdp-table [data-pick]:hover{border-color:var(--primary);color:var(--primary)}
.page-produkt .pdp-table tr.is-sel{background:color-mix(in srgb,var(--primary) 7%,var(--surface))}
.page-produkt .pdp-table tr.is-sel [data-pick]{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}
.page-produkt .pdp-table tr.is-rec td:nth-child(3)::after{content:"Prezes poleca";margin-left:10px;font-size:10px;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--ok);color:var(--surface);vertical-align:1px}
.page-produkt .pdp-tip{display:flex;gap:12px;align-items:flex-start;padding:16px 20px;border-radius:var(--radius-md);background:var(--tint);border:1px solid var(--border);max-width:none!important}
.page-produkt .pdp-tip svg{color:var(--primary);flex:0 0 auto;margin-top:2px}
.page-produkt .pdp-panel p.pdp-tip{margin:0}

/* pielęgnacja */
.page-produkt .pdp-care{list-style:none;counter-reset:care;margin:0 0 22px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.page-produkt .pdp-care li{counter-increment:care;display:grid;gap:6px;align-content:start;padding-top:14px;border-top:1px solid var(--border-strong)}
.page-produkt .pdp-care li::before{content:"0" counter(care);font-size:22px;font-weight:600;color:var(--primary);line-height:1}
.page-produkt .pdp-care b{color:var(--heading);font-size:var(--fs-lg)}
.page-produkt .pdp-care span{color:var(--muted)}

/* opinie ArgoTrust */
.page-produkt .pdp-sumrev{display:grid;grid-template-columns:auto minmax(220px,340px) 1fr;gap:20px 48px;align-items:center;margin-bottom:28px}
.page-produkt .pdp-score{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.page-produkt .pdp-score .num{font-size:var(--fs-4xl);font-weight:600;color:var(--heading);line-height:1}
.page-produkt .pdp-score .meta{flex-basis:100%;color:var(--muted)}
.page-produkt .pdp-dist{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.page-produkt .pdp-dist li{display:grid;grid-template-columns:14px 1fr 30px;align-items:center;gap:10px;font-size:var(--fs-sm);color:var(--muted)}
.page-produkt .pdp-dist i{display:block;height:8px;border-radius:4px;background:var(--border);position:relative;overflow:hidden}
.page-produkt .pdp-dist i::after{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--w);background:var(--tp);border-radius:4px}
.page-produkt .pdp-dist em{font-style:normal;text-align:right;font-variant-numeric:tabular-nums}
.page-produkt .pdp-sumrev .trust-link{justify-self:end;padding-bottom:0}
.page-produkt .pdp-revs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.page-produkt .pdp-revs .rcard{flex:none}

/* ---------- pasek zakupu (mobile) ---------- */
.page-produkt .pdp-bar{display:none}

/* ---------- RWD ---------- */
@media (max-width:1100px){
  .page-produkt .pdp{gap:36px}
  .page-produkt .pdp-sumrev{grid-template-columns:auto 1fr;}
  .page-produkt .pdp-sumrev .trust-link{grid-column:1/-1;justify-self:start}
}
@media (min-width:1101px){
  .page-produkt .pdp-sizes{grid-template-columns:repeat(6,1fr)}
  .page-produkt .pdp-sizes button{padding:11px 2px 10px}
}
@media (max-width:900px){
  .page-produkt .pdp{grid-template-columns:1fr;gap:28px}
  .page-produkt .pdp-gal{position:static}
  .page-produkt .pdp-cols{grid-template-columns:1fr;gap:28px}
  .page-produkt .pdp-care{grid-template-columns:1fr 1fr}
  .page-produkt .pdp-revs{grid-template-columns:1fr}
  .page-produkt .pdp-word{padding:36px 36px 150px}
  .page-produkt .pdp-word .pstamp{top:auto;bottom:22px;right:22px;margin-top:0;width:112px;height:112px}
}
@media (max-width:760px){
  .page-produkt{padding-bottom:82px}
  .page-produkt .pdp-sizes{grid-template-columns:repeat(3,1fr)}
  .page-produkt .pg-main .pstamp{width:92px;height:92px;right:12px;bottom:12px}
  .page-produkt .pdp-price .price{font-size:30px}
  .page-produkt .pdp-sumrev{grid-template-columns:1fr}
  .page-produkt .pdp-sumrev .trust-link{grid-column:auto}
  .page-produkt .pdp-tabs{margin-left:calc(var(--page-pad) * -1);margin-right:calc(var(--page-pad) * -1);padding:0 calc(var(--page-pad) - 12px)}
  .page-produkt .pdp-tabs button{padding:13px 16px}
  .page-produkt .pdp-panel h2{font-size:var(--fs-2xl)}
  .page-produkt .pdp-table th,.page-produkt .pdp-table td{padding:10px 8px;white-space:normal;font-size:var(--fs-md)}
  .page-produkt .pdp-table thead th{font-size:var(--fs-xs);letter-spacing:.04em}
  .page-produkt .pdp-table [data-pick]{min-width:44px;height:38px}
  .page-produkt .pdp-table .c-ex{display:none}
  .page-produkt .pdp-table tr.is-rec td:nth-child(3)::after{display:block;margin:4px 0 0;width:max-content}
  .page-produkt .pdp-usp{grid-template-columns:1fr}
  .page-produkt .pdp-word{padding:30px 22px 130px}
  .page-produkt .pdp-word .pstamp{width:96px;height:96px;right:16px;bottom:16px}

  .page-produkt .pdp-bar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:310;background:var(--surface);border-top:1px solid var(--border-strong);box-shadow:var(--shadow-md);padding:10px var(--page-pad) calc(10px + env(safe-area-inset-bottom,0px));transform:translateY(110%);visibility:hidden;transition:transform .25s ease,visibility 0s .25s}
  .page-produkt .pdp-bar.show{transform:none;visibility:visible;transition:transform .25s ease}
  .page-produkt .pdp-bar-in{display:flex;align-items:center;gap:14px}
  .page-produkt .pdp-bar-txt{flex:1;min-width:0;display:grid;gap:1px}
  .page-produkt .pdp-bar-txt .pname{margin:0;font-size:var(--fs-md);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .page-produkt .pdp-bar-var{font-size:var(--fs-sm);color:var(--muted)}
  .page-produkt .pdp-bar-var b{font-size:var(--fs-lg);color:var(--heading);font-variant-numeric:tabular-nums}
  .page-produkt .pdp-bar .btn{flex:0 0 auto;padding:12px 18px}
  .page-produkt .to-top{bottom:88px;right:14px}
  .page-produkt .toast{bottom:92px;max-width:calc(100vw - 32px)}
}
@media (max-width:480px){
  .page-produkt .pdp-care{grid-template-columns:1fr}
  .page-produkt .pdp-cta{flex-wrap:wrap}
  .page-produkt .pdp-add{flex:1 1 100%;order:3}
  .page-produkt .pdp-qty{order:1}
  .page-produkt .pdp-fav.fav{order:2;margin-left:auto}
  .page-produkt .pdp-add-sum{padding-left:10px}
  .page-produkt .pdp-calc-act .btn{flex:1 1 100%}
}

/* ===== _src/css/32-koszyk.css ===== */
/* PYNIO v3, KOSZYK (checkout jednokrokowy „Paczka”). Wszystko pod .page-koszyk. */
.page-koszyk [hidden]{display:none!important}
.page-koszyk .co{padding-bottom:var(--section-gap)}

/* nagłówek strony */
.page-koszyk .co-head{margin:4px 0 22px}
.page-koszyk h1,.page-koszyk h2,.page-koszyk h3{font-family:var(--font-sans);font-style:normal;letter-spacing:0;color:var(--heading)}
.page-koszyk .co-head h1{font-size:var(--fs-4xl);font-weight:600}
.page-koszyk .co-head .sub{margin:8px 0 0;color:var(--muted)}

/* pasek postępu (kroki) */
.page-koszyk .co-steps{list-style:none;margin:0 0 26px;padding:0;display:flex;align-items:center;gap:0}
.page-koszyk .co-steps li{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:var(--fs-md);flex:0 0 auto}
.page-koszyk .co-steps li+li::before{content:"";display:block;width:56px;height:2px;background:var(--border-strong);margin:0 14px;border-radius:2px}
.page-koszyk .co-steps li.is-done+li::before,.page-koszyk .co-steps li.is-current+li::before{background:var(--border-strong)}
.page-koszyk .co-steps li.is-done+li.is-current::before,.page-koszyk .co-steps li.is-done+li.is-done::before{background:var(--primary)}
.page-koszyk .co-steps .no{width:28px;height:28px;border-radius:50%;border:2px solid var(--border-strong);display:grid;place-items:center;font-size:var(--fs-sm);font-weight:600;background:var(--surface);flex:0 0 auto}
.page-koszyk .co-steps b{font-weight:500}
.page-koszyk .co-steps li.is-current{color:var(--heading)}
.page-koszyk .co-steps li.is-current .no{border-color:var(--primary);color:var(--primary)}
.page-koszyk .co-steps li.is-current b{font-weight:600}
.page-koszyk .co-steps li.is-done{color:var(--heading)}
.page-koszyk .co-steps li.is-done .no{background:var(--primary);border-color:var(--primary);color:var(--primary-ink)}
.page-koszyk .co-steps .no svg{width:14px;height:14px}

/* układ */
.page-koszyk .co-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:28px;align-items:start}
.page-koszyk .co-side{position:sticky;top:116px}

/* pudełka */
.page-koszyk .co-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:28px;margin-bottom:20px}
.page-koszyk .co-box h2{font-family:var(--font-sans);font-size:var(--fs-xl);font-weight:600;line-height:1.25;letter-spacing:0;margin:0 0 18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.page-koszyk .co-box h2 small{margin-left:auto;font-weight:400;font-size:var(--fs-md);color:var(--muted)}
.page-koszyk .co-no{width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:var(--primary);color:var(--primary-ink);font-size:var(--fs-md);font-weight:600;display:grid;place-items:center}
.page-koszyk .co-no--gift{background:var(--tint);color:var(--primary);border:1px solid var(--border)}
.page-koszyk .co-box--extra{background:linear-gradient(180deg,var(--tint),var(--surface) 70%);border-style:dashed;border-color:var(--border-strong)}
.page-koszyk .co-lead{margin:-6px 0 18px;color:var(--muted)}
.page-koszyk .co-lead b{color:var(--heading);font-weight:600}
.page-koszyk .co-lead .link{background:none;border:0;padding:0;font-size:inherit}

/* pozycje */
.page-koszyk .co-items{list-style:none;margin:0;padding:0}
.page-koszyk .co-item{display:grid;grid-template-columns:80px minmax(0,1fr) auto 100px 32px;gap:8px 18px;align-items:center;padding:16px 0;border-bottom:1px solid var(--border)}
.page-koszyk .co-item:first-child{padding-top:0}
.page-koszyk .co-thumb{width:80px;height:80px;border-radius:var(--radius-sm);display:grid;place-items:center}
.page-koszyk .co-thumb .art{width:46%;height:auto;color:var(--tile-ink)}
.page-koszyk .co-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}
.page-koszyk .co-name{font-weight:500;color:var(--heading);font-size:var(--fs-lg);line-height:1.3}
.page-koszyk .co-name:hover{color:var(--primary)}
.page-koszyk .co-var,.page-koszyk .co-unit{font-size:var(--fs-sm);color:var(--muted)}
.page-koszyk .co-unit s{margin-left:4px;opacity:.8}
.page-koszyk .co-fitslot:not(:empty){margin-top:6px}
.page-koszyk .co-qty{display:flex;height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}
.page-koszyk .co-qty button{width:36px;border:0;background:var(--surface);color:var(--heading);display:grid;place-items:center;padding:0}
.page-koszyk .co-qty button:hover{color:var(--primary);background:var(--tint)}
.page-koszyk .co-qty input{width:40px;text-align:center;border:0;border-left:1px solid var(--border);border-right:1px solid var(--border);font:inherit;font-weight:600;color:var(--heading);background:var(--surface);padding:0;border-radius:0}
.page-koszyk .co-line{font-weight:600;font-size:var(--fs-lg);color:var(--heading);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.page-koszyk .co-rm{width:32px;height:32px;border:0;border-radius:50%;background:none;color:var(--muted);display:grid;place-items:center;padding:0}
.page-koszyk .co-rm:hover{color:var(--primary);background:var(--tint)}
.page-koszyk .co-empty{text-align:center;padding:24px 0 12px;color:var(--muted)}
.page-koszyk .co-empty svg{margin:0 auto 10px;color:var(--tile-ink)}
.page-koszyk .co-empty b{display:block;font-size:var(--fs-xl);color:var(--heading);font-weight:600;margin-bottom:4px}
.page-koszyk .co-empty p{margin:0 0 16px}
.page-koszyk .co-foot{padding-top:14px}

/* pasek darmowej dostawy */
.page-koszyk .co-free{margin-top:18px;padding:14px 16px;border-radius:var(--radius-md);background:var(--tint);border:1px solid var(--border)}
.page-koszyk .co-free-txt{margin:0 0 10px;font-size:var(--fs-md);color:var(--text);display:flex;align-items:center;gap:8px}
.page-koszyk .co-free-txt svg{color:var(--ok);flex:0 0 auto}
.page-koszyk .co-free-txt b{color:var(--heading);font-weight:600}
.page-koszyk .co-track{height:8px;border-radius:999px;background:var(--border);overflow:hidden}
.page-koszyk .co-track i{display:block;height:100%;width:0;border-radius:999px;background:var(--primary);transition:width .35s ease,background .2s}
.page-koszyk .co-free.is-ok .co-track i{background:var(--ok)}
.page-koszyk .co-free.is-ok .co-free-txt{color:var(--ok)}

/* formularze */
.page-koszyk .co-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.page-koszyk .co-span2{grid-column:1/-1}
.page-koszyk .co-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.page-koszyk .co-field label{font-size:var(--fs-sm);font-weight:500;color:var(--heading)}
.page-koszyk .co-field label i,.page-koszyk .co-check i{font-style:normal;color:var(--primary)}
.page-koszyk .co-field input,.page-koszyk .co-field textarea,.page-koszyk .co-coupon input{height:46px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:0 14px;font:inherit;background:var(--surface);color:var(--text);width:100%}
.page-koszyk .co-field textarea{height:auto;min-height:120px;padding:12px 14px;resize:vertical;line-height:1.5}
.page-koszyk .co-field input::placeholder,.page-koszyk .co-field textarea::placeholder,.page-koszyk .co-coupon input::placeholder{color:var(--muted)}
.page-koszyk .co-field input:focus,.page-koszyk .co-field textarea:focus,.page-koszyk .co-coupon input:focus{outline:2px solid var(--primary);outline-offset:0;border-color:var(--primary)}
.page-koszyk .co-field.has-err input{border-color:var(--primary)}
.page-koszyk .co-err{font-size:var(--fs-sm);color:var(--primary);margin:0}
.page-koszyk .co-hint{margin:2px 0 0;font-size:var(--fs-sm);color:var(--muted)}
.page-koszyk .co-hint a{color:var(--primary);font-weight:500}
.page-koszyk .co-hint a:hover{text-decoration:underline}
.page-koszyk .co-hint--lock{display:flex;gap:8px;align-items:flex-start;margin-top:14px}
.page-koszyk .co-hint--lock svg{color:var(--ok);flex:0 0 auto;margin-top:2px}
.page-koszyk .co-ship-fields{margin-top:18px}
.page-koszyk .co-ship-fields .co-row:last-child{margin-bottom:0}

/* karty-radio (dostawa, płatność) */
.page-koszyk .co-cards{border:0;margin:0;padding:0;min-width:0;display:grid;gap:10px}
.page-koszyk .co-cards--2{grid-template-columns:1fr 1fr}
.page-koszyk .co-card{position:relative;display:block;cursor:pointer}
.page-koszyk .co-card input,.page-koszyk .co-sample input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.page-koszyk .co-card-in{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);transition:border-color .2s,background .2s,box-shadow .2s;height:100%}
.page-koszyk .co-card:hover .co-card-in{border-color:var(--border-strong)}
.page-koszyk .co-card:has(input:checked) .co-card-in{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 5%,var(--surface));box-shadow:0 0 0 1px var(--primary)}
.page-koszyk .co-card:has(input:focus-visible) .co-card-in,.page-koszyk .co-sample:has(input:focus-visible) .co-sample-in{outline:2px solid var(--primary);outline-offset:2px}
.page-koszyk .co-card-in::after{content:"";order:9;flex:0 0 18px;width:18px;height:18px;border-radius:50%;border:2px solid var(--border-strong);transition:border-color .2s,box-shadow .2s,background .2s}
.page-koszyk .co-card:has(input:checked) .co-card-in::after{border-color:var(--primary);background:var(--primary);box-shadow:inset 0 0 0 3px var(--surface)}
.page-koszyk .co-ic{width:44px;height:44px;flex:0 0 44px;border-radius:var(--radius-sm);background:var(--tint);color:var(--heading);display:grid;place-items:center;border:1px solid var(--border)}
.page-koszyk .co-ic--txt{font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em}
.page-koszyk .co-card-txt{flex:1;min-width:0;display:flex;flex-direction:column}
.page-koszyk .co-card-txt b{font-weight:600;color:var(--heading)}
.page-koszyk .co-card-txt small{color:var(--muted);font-size:var(--fs-sm);line-height:1.4}
.page-koszyk .co-card-price{font-weight:600;color:var(--heading);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.page-koszyk .co-card-price s{display:block;font-weight:400;font-size:var(--fs-sm);color:var(--muted)}
.page-koszyk .co-card-price.is-free{color:var(--ok)}

/* próbki */
.page-koszyk .co-samples{border:0;margin:0;padding:0;min-width:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.page-koszyk .co-sample{position:relative;display:block;cursor:pointer}
.page-koszyk .co-sample-in{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);height:100%;transition:border-color .2s,box-shadow .2s,background .2s}
.page-koszyk .co-sample:hover .co-sample-in{border-color:var(--border-strong)}
.page-koszyk .co-sample:has(input:checked) .co-sample-in{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary);background:color-mix(in srgb,var(--primary) 5%,var(--surface))}
.page-koszyk .co-sample-art{aspect-ratio:16/10;border-radius:var(--radius-sm);display:grid;place-items:center;position:relative}
.page-koszyk .co-sample-art .art{width:34%;height:auto;color:var(--tile-ink)}
.page-koszyk .co-sample-art::after{content:"";position:absolute;top:8px;right:8px;width:20px;height:20px;border-radius:50%;border:2px solid var(--border-strong);background:var(--surface)}
.page-koszyk .co-sample:has(input:checked) .co-sample-art::after{border-color:var(--primary);background:var(--primary);box-shadow:inset 0 0 0 4px var(--surface)}
.page-koszyk .co-sample-txt{display:flex;flex-direction:column;gap:3px}
.page-koszyk .co-sample-txt b{font-weight:600;color:var(--heading);line-height:1.3}
.page-koszyk .co-sample-txt small{color:var(--muted);font-size:var(--fs-sm);line-height:1.4}
.page-koszyk .co-rec{align-self:flex-start;display:inline-flex;gap:4px;font-size:var(--fs-xs);font-weight:600;border-radius:999px;padding:3px 10px;background:var(--ok-bg);color:var(--ok);line-height:1.3;margin-bottom:4px}
.page-koszyk .co-unavail{font-size:var(--fs-sm);font-weight:600;color:var(--warning-ink);background:color-mix(in srgb,var(--warning) 22%,var(--surface));border-radius:var(--radius-sm);padding:3px 8px;align-self:flex-start;margin-top:4px}
.page-koszyk .co-sample.is-unavail{cursor:not-allowed}
.page-koszyk .co-sample.is-unavail .co-sample-in{opacity:.6;background:var(--surface-muted)}
.page-koszyk .co-sample.is-unavail .co-sample-txt b{text-decoration:line-through;text-decoration-thickness:1px}
.page-koszyk .co-sample.is-unavail .co-unavail{opacity:1}
.page-koszyk .co-sample.is-unavail .co-sample-art::after{display:none}

/* list od Prezesa */
.page-koszyk .co-letter-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.page-koszyk .co-count{display:flex;justify-content:space-between;gap:12px;font-size:var(--fs-sm);color:var(--muted)}
.page-koszyk .co-count b{font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.page-koszyk .co-count b.is-warn{color:var(--primary)}
.page-koszyk .co-paper{position:relative;margin:0;padding:18px 22px 18px;border-radius:3px;background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-sm);transform:rotate(-1.2deg);min-height:200px;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 27px,var(--border) 27px,var(--border) 28px);background-position:0 46px;background-repeat:repeat-y;overflow:hidden}
.page-koszyk .co-paper::before{content:"";position:absolute;top:0;bottom:0;left:12px;width:1px;background:color-mix(in srgb,var(--primary) 35%,transparent)}
.page-koszyk .co-paper figcaption{font-size:var(--fs-sm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);line-height:28px;margin-bottom:0;padding-left:8px}
.page-koszyk .co-paper figcaption b{font-weight:600;color:var(--heading);letter-spacing:.04em}
.page-koszyk .co-paper-txt{margin:0;padding-left:8px;font-size:var(--fs-lg);line-height:28px;color:var(--heading);overflow-wrap:anywhere;white-space:pre-wrap;min-height:84px}
.page-koszyk .co-paper-txt.is-ph{color:var(--muted)}
.page-koszyk .co-paper-sign{display:block;text-align:right;font-weight:600;font-size:var(--fs-md);line-height:28px;color:var(--primary);margin-top:14px}
.page-koszyk .co-paper-stamp{position:absolute;right:10px;top:8px;width:58px;height:58px;color:var(--primary);opacity:.55;transform:rotate(-14deg);pointer-events:none}

/* zgody */
.page-koszyk .co-consent{padding:22px 28px;display:flex;flex-direction:column;gap:10px}
.page-koszyk .co-check{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:var(--fs-md)}
.page-koszyk .co-check input{width:18px;height:18px;accent-color:var(--primary);margin:2px 0 0;flex:0 0 auto}
.page-koszyk .co-check a{color:var(--primary);font-weight:500}
.page-koszyk .co-check a:hover{text-decoration:underline}
.page-koszyk .co-check small{color:var(--muted)}

/* podsumowanie */
.page-koszyk .co-sum{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:26px;box-shadow:var(--shadow-sm)}
.page-koszyk .co-sum h2{font-size:var(--fs-2xl);font-weight:600;margin:0 0 14px}
.page-koszyk .co-lines{margin:0}
.page-koszyk .co-lines>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:var(--fs-md)}
.page-koszyk .co-lines dt{color:var(--text)}
.page-koszyk .co-lines dt small{color:var(--muted);font-size:var(--fs-sm);margin-left:4px}
.page-koszyk .co-lines dd{margin:0;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.page-koszyk .co-lines .is-disc{color:var(--ok)}
.page-koszyk .co-lines .is-disc dt,.page-koszyk .co-lines .is-disc dt small{color:var(--ok)}
.page-koszyk .co-lines .is-total{border-top:1px solid var(--border);margin-top:8px;padding-top:14px;align-items:baseline}
.page-koszyk .co-lines .is-total dt{font-size:var(--fs-lg);font-weight:600;color:var(--heading)}
.page-koszyk .co-lines .is-total dd{font-size:var(--fs-2xl);font-weight:600;color:var(--heading)}
.page-koszyk .co-coupon{margin:16px 0 18px}
.page-koszyk .co-coupon label{display:block;font-size:var(--fs-sm);font-weight:500;color:var(--heading);margin-bottom:6px}
.page-koszyk .co-coupon-row{display:flex;gap:10px}
.page-koszyk .co-coupon input{text-transform:uppercase;letter-spacing:.06em}
.page-koszyk .co-coupon button{flex:0 0 auto;padding:0 20px;height:46px;border:1px solid var(--primary);border-radius:var(--radius-sm);background:transparent;color:var(--primary);font-weight:500;transition:background .2s,color .2s}
.page-koszyk .co-coupon button:hover{background:var(--primary);color:var(--primary-ink)}
.page-koszyk .co-coupon-msg{margin:6px 0 0;font-size:var(--fs-sm);min-height:1.2em}
.page-koszyk .co-coupon-msg.ok{color:var(--ok)}
.page-koszyk .co-coupon-msg.err{color:var(--primary)}
.page-koszyk .co-pay{width:100%;height:54px;padding:0 24px;font-size:var(--fs-lg)}
.page-koszyk .co-pay[disabled],.page-koszyk .co-bar .btn[disabled]{opacity:.45;cursor:not-allowed}
.page-koszyk .co-pay-note{margin:8px 0 0;font-size:var(--fs-xs);color:var(--muted);text-align:center}
.page-koszyk .co-paystrip{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:14px}
.page-koszyk .co-paystrip span{border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px 9px;font-size:var(--fs-xs);font-weight:600;color:var(--muted);background:var(--bg)}
.page-koszyk .co-trust{list-style:none;margin:20px 0 0;padding:18px 0 0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:14px}
.page-koszyk .co-trust li{display:flex;gap:12px;align-items:center}
.page-koszyk .co-trust li>svg{color:var(--primary);flex:0 0 auto}
.page-koszyk .co-trust b{display:block;font-weight:600;color:var(--heading);font-size:var(--fs-md);line-height:1.3}
.page-koszyk .co-trust small{display:block;color:var(--muted);font-size:var(--fs-sm)}
.page-koszyk .co-trust small a{color:var(--primary)}
.page-koszyk .co-trust small a:hover{text-decoration:underline}
.page-koszyk .co-trust-rate{align-items:flex-start}
.page-koszyk .co-trust-rate .stars{flex:0 0 auto;margin-top:2px}

/* mobile: przyklejony pasek z sumą */
.page-koszyk .co-bar{display:none}

@media (max-width:1100px){
  .page-koszyk .co-grid{grid-template-columns:minmax(0,1fr) 330px;gap:22px}
  .page-koszyk .co-box{padding:24px}
  .page-koszyk .co-item{grid-template-columns:72px minmax(0,1fr) auto 90px 32px;gap:8px 14px}
  .page-koszyk .co-thumb{width:72px;height:72px}
  .page-koszyk .co-letter-grid{grid-template-columns:1fr}
  .page-koszyk .co-samples{grid-template-columns:1fr}
  .page-koszyk .co-sample-in{flex-direction:row;align-items:center}
  .page-koszyk .co-sample-art{aspect-ratio:1/1;width:72px;flex:0 0 72px}
}
@media (max-width:900px){
  .page-koszyk .co-grid{grid-template-columns:1fr}
  .page-koszyk .co-side{position:static}
  .page-koszyk .co-letter-grid{grid-template-columns:1fr 1fr}
  .page-koszyk .co-samples{grid-template-columns:repeat(3,1fr)}
  .page-koszyk .co-sample-in{flex-direction:column;align-items:stretch}
  .page-koszyk .co-sample-art{aspect-ratio:16/10;width:auto;flex:none}
  .page-koszyk{padding-bottom:84px}
  .page-koszyk .co-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;position:fixed;left:0;right:0;bottom:0;z-index:250;padding:10px var(--page-pad) calc(10px + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--border-strong);box-shadow:0 -6px 24px rgba(58,38,20,.12);transition:transform .25s ease}
  .page-koszyk .co-bar.is-off{transform:translateY(110%)}
  .page-koszyk .co-bar-sum{display:flex;flex-direction:column;line-height:1.15}
  .page-koszyk .co-bar-sum small{font-size:var(--fs-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.12em}
  .page-koszyk .co-bar-sum b{font-size:var(--fs-xl);font-weight:600;color:var(--heading);font-variant-numeric:tabular-nums}
  .page-koszyk .co-bar .btn{height:48px;padding:0 24px;white-space:nowrap}
  .page-koszyk .toast{bottom:96px}
  .page-koszyk .to-top{bottom:96px}
}
@media (max-width:760px){
  .page-koszyk .co-head h1{font-size:var(--fs-3xl)}
  .page-koszyk .co-steps li b{font-size:var(--fs-sm)}
  .page-koszyk .co-steps li+li::before{width:22px;margin:0 8px}
  .page-koszyk .co-steps{gap:0}
  .page-koszyk .co-box{padding:20px 16px}
  .page-koszyk .co-box h2{font-size:var(--fs-lg)}
  .page-koszyk .co-item{grid-template-columns:64px minmax(0,1fr) auto;grid-template-areas:"th info rm" "qty qty line";gap:10px 12px}
  .page-koszyk .co-thumb{grid-area:th;width:64px;height:64px}
  .page-koszyk .co-info{grid-area:info}
  .page-koszyk .co-rm{grid-area:rm;align-self:start;justify-self:end}
  .page-koszyk .co-qty{grid-area:qty;justify-self:start}
  .page-koszyk .co-line{grid-area:line;align-self:center}
  .page-koszyk .co-cards--2{grid-template-columns:1fr}
  .page-koszyk .co-letter-grid,.page-koszyk .co-samples{grid-template-columns:1fr}
  .page-koszyk .co-sample-in{flex-direction:row;align-items:center}
  .page-koszyk .co-sample-art{aspect-ratio:1/1;width:72px;flex:0 0 72px}
  .page-koszyk .co-consent{padding:18px 16px}
  .page-koszyk .co-sum{padding:20px 16px}
}
@media (max-width:480px){
  .page-koszyk .co-row{grid-template-columns:1fr}
  .page-koszyk .co-steps li:not(.is-current) b{display:none}
  .page-koszyk .co-steps li+li::before{width:32px}
  .page-koszyk .co-card-in{padding:12px;gap:10px}
  .page-koszyk .co-ic{width:38px;height:38px;flex-basis:38px}
  .page-koszyk .co-card-txt small{font-size:var(--fs-xs)}
  
  .page-koszyk .co-bar .btn{padding:0 18px}
}
@media (prefers-reduced-motion:reduce){
  .page-koszyk .co-track i,.page-koszyk .co-bar{transition:none}
}

/* ===== _src/css/40-stopka.css ===== */
/* ============ STOPKA ============ */
.site-footer{background:var(--surface);border-top:1px solid var(--border);margin-top:var(--section-gap)}
.site-footer>.container{display:grid;grid-template-columns:minmax(0,340px) 1fr;gap:64px;padding-top:56px;padding-bottom:48px}
.fbrand p{margin:18px 0 20px;color:var(--muted);max-width:320px}
.logo--foot b{font-size:26px}
.fsocial{display:flex;gap:10px}
.fsocial a{width:40px;height:40px;border-radius:50%;border:1px solid var(--border-strong);display:grid;place-items:center;color:var(--heading);transition:color .2s,border-color .2s,background .2s}
.fsocial a:hover{color:var(--primary-ink);background:var(--primary);border-color:var(--primary)}
.fcols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.fcols h4{font-size:var(--fs-sm);letter-spacing:.16em;text-transform:uppercase;color:var(--heading);font-weight:600;margin:0 0 18px}
.fcols ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.fcols a{color:var(--text);transition:color .2s}
.fcols a:hover{color:var(--primary)}
.fcols .contact li{display:flex;align-items:center;gap:10px;color:var(--text)}
.fcols .contact svg{color:var(--primary);flex:0 0 auto}
/* długi e-mail nie rozpycha kolumny na telefonie (Claude, 2026-10-23) */
.fcols .contact a,.fcols .contact span{min-width:0;overflow-wrap:anywhere}

/* pasek pamięci: Prezes na zawsze */
.fmemory{border-top:1px solid var(--border);background:var(--tint)}
.fmemory .container{display:flex;align-items:center;justify-content:center;gap:10px;padding-top:14px;padding-bottom:14px;color:var(--muted);font-size:var(--fs-sm);letter-spacing:.04em;text-align:center}
.fmemory svg{color:var(--primary);flex:0 0 auto}
.fmemory b{font-weight:600;color:var(--heading)}

.fbottom{border-top:1px solid var(--border)}
.fbottom .container{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px;font-size:var(--fs-sm);color:var(--muted)}
.fbottom a:hover{color:var(--primary)}
.pay{display:flex;gap:6px;flex-wrap:wrap}
.pay span{border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px 9px;font-size:var(--fs-xs);font-weight:600;color:var(--text);background:var(--bg)}

/* toast (koszyk, ulubione, akta) */
.toast{position:fixed;left:50%;bottom:28px;z-index:400;transform:translate(-50%,20px);opacity:0;visibility:hidden;background:var(--heading);color:var(--bg);padding:13px 22px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-weight:500;display:flex;align-items:center;gap:10px;max-width:calc(100vw - 32px);transition:opacity .25s,transform .25s,visibility 0s .25s}
.toast.show{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .25s,transform .25s}
.toast svg{color:var(--primary);flex:0 0 auto}

@media (max-width:1100px){.site-footer>.container{grid-template-columns:1fr;gap:40px}}
@media (max-width:760px){
  .fcols{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}
  .fbottom .container{flex-direction:column;align-items:flex-start}
}

/* ===== _src/css/50-akta.css ===== */
/* ============ AKTA PSA: dialog + legitymacja służbowa ============ */
.akta{border:0;padding:0;border-radius:var(--radius-md);background:var(--bg);color:var(--text);width:min(980px,calc(100vw - 32px));max-height:calc(100dvh - 32px);box-shadow:0 20px 60px rgba(30,18,8,.35)}
.akta::backdrop{background:rgba(26,20,16,.55);backdrop-filter:blur(3px)}
.akta[open]{animation:aktaIn .25s ease}
@keyframes aktaIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.akta-form{position:relative;margin:0}
.akta-x{position:absolute;top:14px;right:14px;z-index:3;width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background:var(--surface);display:grid;place-items:center;color:var(--heading)}
.akta-x:hover{color:var(--primary);border-color:var(--primary)}
.akta-cols{display:grid;grid-template-columns:minmax(0,1fr) 360px}
.akta-fields{padding:40px 44px 36px}
.akta-fields h2{font-size:28px;margin-bottom:10px}
.akta-lead{margin:0 0 24px;color:var(--muted)}

/* pola */
.fld{display:grid;gap:8px;margin:0 0 18px;border:0;padding:0;min-width:0}
.fld>span,.fld legend{font-size:var(--fs-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--heading);padding:0}
.fld legend{margin-bottom:8px}
.fld i{font-style:normal;font-weight:400;text-transform:none;letter-spacing:0;color:var(--muted)}
.fld .akta-size b{color:var(--primary)}
.fld input[type=text],.fld input:not([type]),.fld input[type=email]{height:48px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);padding:0 14px;font:inherit;color:var(--text)}
.fld input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}
.fld input[type=range]{accent-color:var(--primary);width:100%;height:24px}

/* przełącznik segmentowy i chipsy */
.seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}
.seg label{position:relative}
.seg input,.chips input{position:absolute;opacity:0;pointer-events:none}
.seg span{display:block;padding:10px 18px;cursor:pointer;font-weight:500;transition:background .15s,color .15s}
.seg label+label span{border-left:1px solid var(--border-strong)}
.seg input:checked+span{background:var(--heading);color:var(--bg)}
.seg input:focus-visible+span,.chips input:focus-visible+span{outline:2px solid var(--primary);outline-offset:-2px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips span{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.chips input:checked+span{background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-color:var(--primary);color:var(--primary);font-weight:500}
.chips input:checked+span::before{content:"✓";font-weight:700}
.akta-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}

/* legitymacja (podgląd na żywo) */
.akta-card{position:relative;margin:28px 28px 28px 0;align-self:start;background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;padding:0 24px 24px;box-shadow:var(--shadow-sm);overflow:hidden;
  background-image:repeating-linear-gradient(135deg,transparent 0 14px,color-mix(in srgb,var(--primary) 4%,transparent) 14px 15px)}
.ak-head{display:flex;justify-content:space-between;gap:8px;margin:0 -24px 22px;padding:12px 24px;background:var(--primary);color:var(--primary-ink);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}
.ak-photo{width:104px;height:120px;border-radius:var(--radius-sm);background:var(--tile-sand);border:1px solid var(--border-strong);display:grid;place-items:center;color:var(--tile-ink);margin-bottom:16px}
.ak-name{display:block;font-size:28px;letter-spacing:-.02em;font-weight:700;line-height:1;color:var(--heading);word-break:break-word}
.ak-role{display:block;margin-top:6px;font-size:var(--fs-sm);color:var(--primary);font-weight:500}
.ak-data{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin:20px 0 16px;padding:16px 0;border-top:1px dashed var(--border-strong);border-bottom:1px dashed var(--border-strong)}
.ak-data dt{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.ak-data dd{margin:2px 0 0;font-weight:600;color:var(--heading)}
.ak-tags{display:flex;flex-wrap:wrap;gap:6px;min-height:4px}
.ak-tags span{font-size:var(--fs-xs);font-weight:600;padding:3px 9px;border-radius:999px;background:var(--tint);color:var(--text)}
.ak-tags span.al{background:color-mix(in srgb,var(--warning) 25%,var(--surface));color:var(--warning-ink)}
.ak-note{margin:16px 0 0;font-size:var(--fs-sm);color:var(--muted);padding-right:70px}
.ak-note i{font-style:normal;font-weight:500;color:var(--heading)}
.ak-stamp{position:absolute;right:14px;bottom:14px;color:var(--primary);opacity:0;transform:rotate(-16deg) scale(1.6);pointer-events:none}
.akta-card.is-approved .ak-stamp{animation:akStamp .5s cubic-bezier(.2,1.6,.4,1) forwards}
@keyframes akStamp{0%{opacity:0;transform:rotate(-4deg) scale(1.8)}100%{opacity:.85;transform:rotate(-16deg) scale(1)}}
@media (prefers-reduced-motion:reduce){.akta-card.is-approved .ak-stamp{opacity:.85;transform:rotate(-16deg)}}

/* w nagłówku po przyjęciu psa */
.has-dog .hdog-btn .hdog-ic{background:color-mix(in srgb,var(--primary) 12%,transparent);border-radius:50%}

@media (max-width:860px){
  .akta-cols{grid-template-columns:1fr}
  .akta-card{order:-1;margin:20px 20px 0}
  .ak-photo{display:none}
  .akta-fields{padding:24px 20px 28px}
  .akta-fields h2{font-size:24px}
}

/* ===== _src/css/60-home.css ===== */
/* ============ STRONA GŁÓWNA ============ */
.lead{font-size:var(--fs-lg);line-height:1.65;color:var(--text);margin:0 0 26px;max-width:520px}

/* HERO */
.hero{position:relative;margin-bottom:40px;overflow:hidden}
.slides{display:grid}
.slide{grid-area:1/1;background:linear-gradient(115deg,var(--ha) 0%,var(--hb) 70%);opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s .6s}
.slide.is-active{opacity:1;visibility:visible;transition:opacity .6s ease}
.slide-in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:40px;min-height:520px;padding-top:48px;padding-bottom:88px}
.slide h1,.slide .h1{font-size:clamp(32px,4vw,52px);line-height:1.1;margin-bottom:22px;max-width:620px}
.slide.is-active .slide-txt>*{animation:heroUp .6s ease both}
.slide.is-active .slide-txt>*:nth-child(2){animation-delay:.06s}
.slide.is-active .slide-txt>*:nth-child(3),.slide.is-active .slide-txt>*:nth-child(4){animation-delay:.12s}
.slide.is-active .slide-txt>*:last-child{animation-delay:.18s}
@keyframes heroUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.hero-cta .btn--ghost svg{color:var(--primary)}
.slide-art{position:relative;justify-self:center;width:min(440px,100%);aspect-ratio:1}
.art-disc{position:absolute;inset:6%;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tile-ink) 18%,transparent)}
.art-disc svg{width:52%;height:52%;color:var(--tile-ink)}
.slide.is-active .art-disc svg{animation:artFloat 6s ease-in-out infinite}
@keyframes artFloat{50%{transform:translateY(-8px) rotate(-2deg)}}
.art-stamp{position:absolute;right:2%;bottom:6%;width:28%;height:28%;color:var(--primary);opacity:0;transform:rotate(-14deg) scale(1.6)}
.slide.is-active .art-stamp{animation:stampIn .5s .55s cubic-bezier(.2,1.6,.4,1) forwards}
.art-note{position:absolute;left:-4%;top:10%;background:var(--surface);padding:14px 18px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:16px;font-weight:600;line-height:1.3;color:var(--heading);transform:rotate(-3deg)}
.art-note i{display:block;margin-top:6px;font-family:var(--font-sans);font-size:var(--fs-sm);font-style:normal;font-weight:500;color:var(--primary)}
.art-chip{position:absolute;left:0;bottom:14%;display:inline-flex;align-items:center;gap:8px;background:var(--surface);padding:10px 16px;border-radius:999px;box-shadow:var(--shadow-md);font-weight:500;color:var(--heading)}
.art-chip svg{color:var(--primary)}
.hero-ctrl{position:absolute;left:0;right:0;bottom:26px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}
.hero-ctrl>*{pointer-events:auto}
.hero-dots{display:flex;gap:8px}
.hero-dots button{width:28px;height:4px;border:0;padding:0;border-radius:2px;background:color-mix(in srgb,var(--heading) 22%,transparent);transition:width .3s,background .3s}
.hero-dots button[aria-selected="true"]{width:52px;background:var(--primary)}
.hero-arrows{display:flex;gap:8px}
.hero-arrows button{width:44px;height:44px;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface);display:grid;place-items:center;color:var(--heading);transition:color .2s,border-color .2s}
.hero-arrows button:hover{color:var(--primary);border-color:var(--primary)}

/* DZIAŁY */
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.cat-tile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:300px;padding:24px;border-radius:var(--radius-md);overflow:hidden;transition:box-shadow .25s}
.cat-tile:hover{box-shadow:var(--shadow-md)}
.ct-no{position:absolute;top:20px;left:24px;font-size:32px;font-weight:600;line-height:1;color:color-mix(in srgb,var(--tile-ink) 45%,transparent)}
.ct-art{position:absolute;top:16%;right:-6%;width:56%;height:auto;aspect-ratio:1;color:var(--tile-ink);opacity:.9;transition:transform .4s ease}
.cat-tile:hover .ct-art{transform:rotate(-6deg) scale(1.06)}
.ct-txt{position:relative;display:grid;gap:4px;padding-right:48px}
.ct-txt b{font-size:22px;font-weight:600;line-height:1.05;color:var(--heading)}
.ct-txt span{color:var(--text);font-size:var(--fs-sm)}
.ct-go{position:absolute;right:20px;bottom:22px;width:40px;height:40px;border-radius:50%;background:var(--surface);color:var(--primary);display:grid;place-items:center;transition:background .2s,color .2s,transform .2s}
.cat-tile:hover .ct-go{background:var(--primary);color:var(--primary-ink);transform:translateX(3px)}

/* PREZES POLECA */
.hits{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.hit{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}
.hit-art{position:relative;display:grid;place-items:center;min-height:100%}
.hit-art .art{width:48%;color:var(--tile-ink);transition:transform .3s}
.hit:hover .hit-art .art{transform:scale(1.06)}
.hit-art .pstamp{width:86px;height:86px}
.hit-txt{padding:28px 28px 26px;display:flex;flex-direction:column}
.hit-txt .eyebrow{margin-bottom:10px}
.hit h3{font-size:21px;font-weight:600;line-height:1.25}
.hit blockquote{margin:14px 0 16px;padding-left:14px;border-left:3px solid var(--primary);font-size:var(--fs-md);line-height:1.5;color:var(--text)}
.hit-pts{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:7px}
.hit-pts li{display:flex;gap:8px;align-items:center;font-size:var(--fs-md)}
.hit-pts svg{color:var(--ok);flex:0 0 auto}
.hit-buy{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}

/* AKTA CTA */
.akta-cta{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center;background:var(--heading);color:var(--bg);border-radius:var(--radius-md);padding:52px 56px;position:relative;overflow:hidden}
.akta-cta::after{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 35%,transparent),transparent 70%);pointer-events:none}
.akta-cta h2{color:var(--bg);font-size:34px;margin-bottom:14px}
.akta-cta h2 em{color:#f08a74}
.akta-cta .eyebrow{color:color-mix(in srgb,var(--bg) 65%,transparent)}
.ac-txt>p{margin:0 0 20px;color:color-mix(in srgb,var(--bg) 82%,transparent);max-width:520px}
.ac-list{list-style:none;margin:0 0 28px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}
.ac-list li{display:flex;gap:9px;align-items:center}
.ac-list svg{color:#f08a74;flex:0 0 auto}
.ac-card{position:relative;z-index:1;justify-self:center;width:min(360px,100%);background:#fffcf7;color:#2b221c;border-radius:12px;padding:0 24px 24px;transform:rotate(2.5deg);box-shadow:0 20px 40px rgba(0,0,0,.35);
  background-image:repeating-linear-gradient(135deg,transparent 0 14px,rgba(199,62,42,.05) 14px 15px)}
.ac-card .ak-head{background:#c73e2a;color:#fff}
.ac-card .ak-name{color:#1a1410}
.ac-card .ak-role{color:#c73e2a}
.ac-card .ak-data dd{color:#1a1410}
.ac-card .ak-data dt,.ac-card .ak-note{color:#857769}
.ac-card .ak-note{padding-right:92px}
.ac-card .ak-note i{color:#1a1410}
.ac-card .ak-data{border-color:#cfbfa6}
.ac-card .ak-stamp{width:96px;height:96px;color:#c73e2a;opacity:.85;transform:rotate(-16deg)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .akta-cta{background:var(--surface-muted);color:var(--text)}:root:not([data-theme="light"]) .akta-cta h2{color:var(--heading)}}
:root[data-theme="dark"] .akta-cta{background:var(--surface-muted);color:var(--text)}
:root[data-theme="dark"] .akta-cta h2{color:var(--heading)}

/* MOPSY W POTRZEBIE */
.mopsy{display:grid;grid-template-columns:auto minmax(0,1.2fr) minmax(0,1fr);gap:40px;align-items:center;border:1px solid var(--border);border-radius:var(--radius-md);padding:36px 40px;background:var(--surface)}
.mo-num{display:grid;justify-items:center;text-align:center;width:150px;height:150px;border-radius:50%;background:var(--primary);color:var(--primary-ink);align-content:center}
.mo-num b{font-size:46px;letter-spacing:-.03em;line-height:1;font-weight:700}
.mo-num span{font-size:var(--fs-xs);max-width:100px;line-height:1.3}
.mo-txt h2{font-size:var(--fs-serif-sec);margin-bottom:8px}
.mo-txt p{margin:0;color:var(--muted)}
.mo-pts{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mo-pts li{display:flex;gap:10px;align-items:center}
.mo-pts svg{color:var(--primary);flex:0 0 auto}

/* SEO + FAQ */
.seotext-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.seotext h2{font-size:var(--fs-serif-sec);margin-bottom:16px}
.seotext p{color:var(--muted);margin:0 0 14px}
.acc-title{font-size:var(--fs-xl);font-weight:600;margin:0 0 16px}

/* LIST OD PREZESA */
.nl-form{display:flex;gap:10px;flex-wrap:wrap}
.nl-form input{flex:1 1 240px;height:52px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);padding:0 16px;font:inherit;color:var(--text)}
.nl-form input:focus{outline:none;border-color:var(--primary)}
.newsletter{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:40px 48px;overflow:hidden;
  background-image:repeating-linear-gradient(-45deg,transparent 0 10px,color-mix(in srgb,var(--primary) 9%,transparent) 10px 20px,transparent 20px 30px,color-mix(in srgb,#2f5d8a 9%,transparent) 30px 40px);background-size:100% 8px;background-repeat:no-repeat}
.nl-letter{width:84px;height:84px;color:var(--primary);transform:rotate(-8deg)}
.nl-txt h2{font-size:var(--fs-serif-sec);margin-bottom:8px}
.nl-txt p{margin:0;color:var(--muted)}
.nl-form small{flex-basis:100%;color:var(--muted);font-size:var(--fs-sm)}

/* ============ RWD ============ */
@media (max-width:1100px){
  .cats{grid-template-columns:repeat(2,1fr)}
  .hits{grid-template-columns:minmax(0,1fr)}
  .mopsy{grid-template-columns:auto 1fr}
  .mo-pts{grid-column:1/-1}
  .newsletter{grid-template-columns:auto 1fr}
  .nl-form{grid-column:1/-1}
}
@media (max-width:900px){
  .slide-in{grid-template-columns:1fr;min-height:0;gap:8px;padding-top:32px;padding-bottom:84px}
  .slide-art{order:-1;width:min(260px,70%)}
  .art-note{font-size:16px;padding:10px 12px}
  .akta-cta,.seotext-grid{grid-template-columns:1fr;gap:32px}
  .akta-cta{padding:36px 28px}
}
@media (max-width:760px){
  .hit{grid-template-columns:minmax(0,1fr)}
  .hit-art{aspect-ratio:16/10}
  .akta-cta h2{font-size:26px}
  .ac-list{grid-template-columns:1fr}
  .mopsy{grid-template-columns:1fr;justify-items:start;padding:28px 22px}
  .newsletter{grid-template-columns:1fr;padding:30px 22px}
  .nl-letter{width:60px;height:60px}
  .hero-arrows{display:none}
}
@media (max-width:480px){
  .cats{grid-template-columns:1fr}
  .cat-tile{min-height:220px}
  .slide h1,.slide .h1{font-size:30px}
  .hero-cta .btn{flex:1 1 100%;padding:14px 20px}
}
@media (prefers-reduced-motion:reduce){.slide.is-active .art-stamp{opacity:.82;transform:rotate(-14deg)}}

/* ===== work/pynio/oc-suplement.css ===== */
/* Suplement sklepowy motywu PYNIO (nie pochodzi z makiety V3): elementy, ktorych
   makieta nie ma, a OpenCart wymaga — opcje produktu jako pigułki z prawdziwymi
   inputami, drzewo kategorii w sidebarze, paginacja, formularz opinii, alerty OC,
   przyklejony pasek zakupu. Doklejany przez build-motyw.py na końcu pynio.css. */

/* opcje produktu: label z ukrytym inputem, wygląd pigułki jak .pdp-sizes button */
.pdp-sizes .pdp-opt{position:relative;display:inline-flex}
.pdp-sizes .pdp-opt input{position:absolute;opacity:0;pointer-events:none}
.pdp-sizes .pdp-opt>span{display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;min-width:64px;text-align:center;transition:border-color .2s,background .2s,color .2s}
.pdp-sizes .pdp-opt>span b{font-weight:600;color:var(--heading)}
.pdp-sizes .pdp-opt>span small{color:var(--muted);font-size:var(--fs-xs)}
.pdp-sizes .pdp-opt input:checked+span{border-color:var(--primary);background:var(--tint);box-shadow:0 0 0 1px var(--primary) inset}
.pdp-sizes .pdp-opt input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}
.pdp-sizes{display:flex;flex-wrap:wrap;gap:10px}
.pdp-opt-label{font-size:var(--fs-md);color:var(--heading);font-weight:600;margin:18px 0 8px}
.pdp-opt-label .req{color:var(--primary)}
.pdp-select,.page-produkt select.form-control,.page-produkt textarea.form-control,.page-produkt input.form-control{width:100%;max-width:420px;padding:11px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit}
.pdp-check .pdp-opt>span{flex-direction:row;min-width:0}

/* sidebar kategorii (bez filtrów — kontroler ich nie daje) */
.kf-group-static{margin-bottom:22px}
.kf-title{display:block;font-size:var(--fs-lg);color:var(--heading);margin-bottom:10px}
.kf-tree{list-style:none;margin:0;padding:0}
.kf-tree li a{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--border);color:var(--text)}
.kf-tree li a:hover{color:var(--primary)}
.kf-tree li.is-on a{font-weight:600;color:var(--primary)}
.kf-tree .count{color:var(--muted);font-size:var(--fs-sm)}
.kfilters .mini{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}
.kfilters .mini .thumb{width:56px;height:56px;flex:0 0 auto;border-radius:var(--radius-sm);overflow:hidden;background:var(--tint)}
.kfilters .mini .thumb img{width:100%;height:100%;object-fit:cover}
.kfilters .mini b{display:block;font-size:var(--fs-sm);color:var(--heading);font-weight:500}
.kfilters .mini .p{color:var(--primary);font-size:var(--fs-sm)}

/* paginacja */
.pager{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:28px}
.pager-links .pagination{display:flex;gap:6px;list-style:none;margin:0;padding:0}
.pager-links .pagination li a,.pager-links .pagination li span{display:inline-grid;place-items:center;min-width:38px;height:38px;padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text)}
.pager-links .pagination li.active span,.pager-links .pagination li a:hover{border-color:var(--primary);color:var(--primary)}
.pager-results{color:var(--muted);font-size:var(--fs-sm)}

/* alerty OpenCart (common.js wstawia .alert przed #content) */
.alert{padding:12px 16px;border-radius:var(--radius-sm);margin:12px 0;border:1px solid}
.alert-success{background:var(--ok-bg);border-color:var(--ok);color:var(--ok)}
.alert-danger{background:#f9e5e1;border-color:var(--primary);color:var(--primary)}
.alert .close{float:right;background:none;border:0;font-size:18px;line-height:1;color:inherit}
.text-danger{color:var(--primary);font-size:var(--fs-sm);margin-top:6px}
.has-error input,.has-error select,.has-error textarea{border-color:var(--primary)}

/* formularz opinii i lista recenzji */
#review .review-item{border-bottom:1px solid var(--border);padding:14px 0}
#form-review .form-group{margin-bottom:14px}
#form-review label{display:block;font-weight:600;color:var(--heading);margin-bottom:6px;font-size:var(--fs-md)}
#form-review .help-block{color:var(--muted);font-size:var(--fs-xs);margin-top:4px}

/* przyklejony pasek zakupu (mobile i desktop po przewinięciu buy-boxa) */
.pdp-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--surface);border-top:1px solid var(--border);box-shadow:var(--shadow-md);transform:translateY(110%);transition:transform .25s}
.pdp-bar.show{transform:none}
@media (prefers-reduced-motion:reduce){.pdp-bar{transition:none}}

/* pusta kategoria / koszyk — ikonka */
.kempty{text-align:center;padding:44px 0;color:var(--muted)}
.kempty .ke-art{width:64px;height:64px;margin:0 auto 12px;color:var(--tile-ink)}
.kempty b{display:block;color:var(--heading);font-size:var(--fs-lg);margin-bottom:6px}

/* licznik przy podkategoriach w chipach */
.ksub{display:inline-flex;align-items:center;gap:8px}
.ksub i{font-style:normal;color:var(--muted);font-size:var(--fs-xs)}

/* newsletter w stopce (klasy z argo.css, drobne dopasowanie do V3) */
.site-footer .argo-gcm-open{background:none;border:0;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer}
.site-footer .argo-gcm-open:hover{color:var(--primary)}

/* logo i zdjęcie Prezesa z zaślepki pynio.pl (Claude, 2026-10-24, prośba Arka): makieta miała tu rysunek SVG */
.logo-img{display:block;height:52px;width:auto}
.logo--sm .logo-img{height:34px}
.logo--foot .logo-img{height:45px}
.logo-txt>span{margin-top:0;max-width:110px;line-height:1.35}
.art-photo{overflow:hidden;background:var(--tint)}
.art-photo img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:980px){.hmain .logo-txt{display:none}}
@media (max-width:560px){.logo-img{height:40px}.logo--sm .logo-img{height:30px}}
/* dymek Prezesa przy zdjęciu: na dół w lewo, żeby nie zasłaniał pyska (makieta: góra w lewo, nad rysunkiem) */
.art-photo~.art-note{top:auto;bottom:0;left:-8%}
/* plakietka przed startem sprzedaży (Arek, 2026-10-24): usunąć z home.twig w dniu startu */
.art-start{position:absolute;right:-2%;top:4%;z-index:2;background:var(--primary);color:#fff;font-weight:600;font-size:15px;letter-spacing:.06em;text-transform:uppercase;padding:10px 16px;border-radius:999px;box-shadow:var(--shadow-md);transform:rotate(6deg)}
@media (max-width:900px){.art-start{font-size:12px;padding:8px 12px;right:-6%}}

/* ===== work/pynio/argo-moduly.css ===== */
/* Reguły z argo.css / Bootstrapa potrzebne na stronach PYNIO (Claude, 2026-10-23, E1).
   Od E1 strony z szablonem pynio nie ładują argo.css, argo-sklep.css, bootstrap.css ani Font Awesome.
   Tu tylko to, czego używają szablony pynio i moduły Argo, a czego nie ma makieta.
   Lista z wykrywacza work/pynio/kolizje-css.js i skanu klas (home, kategoria, produkt). */

/* stan magazynu na karcie produktu (argo.css 958-959) */
.stock{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:var(--fs-md);color:var(--ok);font-weight:500}
.stock .dot{width:9px;height:9px;border-radius:50%;background:var(--ok)}

/* captcha Argo (Turnstile) w formularzu opinii: szablon default ma fieldset + col-sm-* */
#form-review fieldset{border:0;margin:0 0 14px;padding:0;min-width:0}
#form-review legend{font-size:var(--fs-md);font-weight:600;color:var(--heading);margin-bottom:6px;padding:0}
#form-review .control-label{display:block;font-weight:600;color:var(--heading);margin-bottom:6px;font-size:var(--fs-md)}

/* pomocnicze klasy OC wstawiane przez rdzeń i common.js */
.clearfix::after{content:"";display:table;clear:both}
.pull-right{float:right}
.pull-left{float:left}
