/* 4DUTY — motyw OpenCart. PLIK GENEROWANY: work/makieta-sync/sync_theme.py
   z makiety (makieta-src/build/shared: tokens.css, style.css, pages.css). Nie edytuj ręcznie —
   poprawki pod OpenCart idą do 4duty-oc.css. */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/inter-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+2013-2014, U+2018-201E, U+2022, U+2026, U+2032-2033, U+20AC, U+2122, U+2190-2193, U+2212, U+2715, U+2248, U+2264-2265}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/inter-pl.woff2) format('woff2');unicode-range:U+0104-0107, U+0118-0119, U+0141-0144, U+015A-015B, U+0179-017C}
/* 4DUTY — tokeny. Kolory bazowe z logo (oliwka #3B3813, szałwia #7F9540) i z nowej wersji sklepu (4duty.css). */
:root{
  --font:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --mono:ui-monospace,'Cascadia Mono','Cascadia Code',Consolas,'SFMono-Regular',Menlo,monospace;
  --wrap:1320px; --gut:24px;
  --r:6px; --r-lg:12px;
  --sh:0 1px 2px rgba(20,19,8,.06),0 6px 18px rgba(20,19,8,.07);
  --sh-lg:0 18px 50px rgba(15,14,6,.22);
  --t:.18s cubic-bezier(.3,.7,.4,1);

  /* stałe marki (nie zmieniają się z motywem) */
  --night:#14130B; --night-2:#1D1C11; --night-3:#2A2817; --night-line:#3A3822;
  --olive:#3B3813; --olive-2:#4E4A1C;
  --sage:#7F9540; --sage-d:#667A2F; --sage-l:#B6C97B;
  --beam:#F6BE4A; --beam-d:#D99A1E;
  --signal:#C8432B;
  --khaki:#E9E5D2;

  /* motyw: Dzień */
  --bg:#F3F1E7; --bg-2:#ECE9DB; --surface:#FFFFFF; --surface-2:#F7F6F0;
  --ink:#1C1B12; --ink-2:#3F3D2C; --muted:#6B684F; --line:#DCD8C4; --line-2:#C9C4AA;
  --accent:#5E7128; --accent-ink:#FFFFFF; --link:#4F6220;
  --ok:#3E7A1E; --warn:#A8620C; --bad:#B23A24;
  --chip:#EEEBDD; --focus:#C98A14;
  color-scheme:light;
}
:root[data-theme="dark"],:root[data-theme="nv"]{
  --bg:#12120B; --bg-2:#181710; --surface:#1C1B12; --surface-2:#222116;
  --ink:#ECEAD9; --ink-2:#CFCCB4; --muted:#A3A086; --line:#33311F; --line-2:#45432B;
  --accent:#9DB45A; --accent-ink:#14130B; --link:#B6C97B;
  --ok:#8DBA5A; --warn:#E3A44B; --bad:#E07A62;
  --chip:#26251A; --focus:#F6BE4A;
  --sh:0 1px 2px rgba(0,0,0,.4),0 8px 22px rgba(0,0,0,.35);
  color-scheme:dark;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#12120B; --bg-2:#181710; --surface:#1C1B12; --surface-2:#222116;
    --ink:#ECEAD9; --ink-2:#CFCCB4; --muted:#A3A086; --line:#33311F; --line-2:#45432B;
    --accent:#9DB45A; --accent-ink:#14130B; --link:#B6C97B;
    --ok:#8DBA5A; --warn:#E3A44B; --bad:#E07A62;
    --chip:#26251A; --focus:#F6BE4A;
    --sh:0 1px 2px rgba(0,0,0,.4),0 8px 22px rgba(0,0,0,.35);
    color-scheme:dark;
  }
}
/* NV — tryb noktowizji: ciemny motyw przepuszczony przez zielony fosfor (filtr na <html> nie psuje position:fixed) */
:root[data-theme="nv"]{filter:grayscale(1) sepia(1) hue-rotate(52deg) saturate(2.6) brightness(1.02) contrast(1.05)}
:root[data-theme="nv"] body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;
  background:repeating-linear-gradient(0deg,rgba(0,0,0,.16) 0 1px,transparent 1px 3px),
             radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.55) 100%)}
@media (prefers-reduced-motion:reduce){:root{--t:0s}}

/* ================================================================ 4DUTY — style wspólne (makieta, etap 1) */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:130px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
body{margin:0;font-family:var(--font);font-size:15px;line-height:1.55;color:var(--ink);background:var(--bg);
  font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--link);text-decoration-thickness:1px;text-underline-offset:3px}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
h1,h2,h3,h4{margin:0;line-height:1.12;letter-spacing:-.015em;color:var(--ink);text-wrap:balance}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:3px}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:var(--beam);color:#14130B;padding:10px 16px;font-weight:700;border-radius:var(--r)}
.skip:focus{left:8px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.tabular,.num{font-variant-numeric:tabular-nums}
.mono{font-family:var(--mono);font-size:.92em;letter-spacing:0}
.ico{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ico-sm{width:15px;height:15px}
.ico-lg{width:28px;height:28px}

/* ---------------------------------------------------------------- typografia HUD */
.hud{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:10px}
.hud.is-beam{color:var(--beam)}
.h-sec{font-size:clamp(26px,3.2vw,38px);font-weight:850;text-transform:uppercase;letter-spacing:-.01em}
.h-sec em{font-style:normal;color:var(--accent)}
.lead{font-size:17px;color:var(--ink-2);max-width:62ch}
.sec{padding:72px 0}
.sec-tight{padding:44px 0}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px;flex-wrap:wrap}
.sec-head .hud{margin-bottom:10px}
.sec-head p{color:var(--muted);margin-top:8px;max-width:60ch}
.link-arrow{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--link);text-decoration:none;font-size:14px}
.link-arrow .ico{width:16px;height:16px;transition:transform var(--t)}
.link-arrow:hover .ico{transform:translateX(3px)}
.src-note{font-size:12px;color:var(--muted);margin-top:14px}
.src-note::before{content:"ŹRÓDŁO · ";font-family:var(--mono);letter-spacing:.1em}

/* ---------------------------------------------------------------- przyciski */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 22px;border-radius:var(--r);
  border:2px solid transparent;font-weight:750;font-size:14.5px;letter-spacing:.02em;text-transform:uppercase;text-decoration:none;
  transition:background var(--t),color var(--t),border-color var(--t),transform var(--t);white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--accent);color:var(--accent-ink)}
.btn-primary:hover{background:var(--sage-d);color:#fff}
:root[data-theme="dark"] .btn-primary:hover,:root[data-theme="nv"] .btn-primary:hover{background:var(--sage-l);color:#14130B}
.btn-beam{background:var(--beam);color:#14130B}
.btn-beam:hover{background:#FFD27A}
.btn-ghost{background:transparent;border-color:var(--line-2);color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink)}
.btn-ghost-l{background:transparent;border-color:rgba(236,234,217,.35);color:#ECEAD9}
.btn-ghost-l:hover{border-color:#ECEAD9}
.btn-block{width:100%}
.btn-sm{min-height:36px;padding:0 14px;font-size:12.5px}

/* ---------------------------------------------------------------- pasek górny */
.topbar{background:var(--night);color:#C9C6AE;font-size:12.5px;border-bottom:1px solid var(--night-line)}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;min-height:38px;gap:18px}
.topbar ul{display:flex;gap:22px;align-items:center}
.topbar li{display:flex;align-items:center;gap:7px;white-space:nowrap}
.topbar .ico{width:16px;height:16px;color:var(--sage-l)}
.topbar a{color:#C9C6AE;text-decoration:none}
.topbar a:hover,.topbar a[aria-current]{color:#fff}
.topbar .tb-strong{color:#fff;font-weight:650}
.theme-btn{display:inline-flex;align-items:center;gap:7px;background:var(--night-3);border:1px solid var(--night-line);color:#E9E5D2;border-radius:99px;padding:3px 11px 3px 8px;font-size:12px}
.theme-btn:hover{border-color:var(--sage)}
.theme-btn b{font-family:var(--mono);font-weight:600;letter-spacing:.08em;color:var(--beam)}
@media (max-width:980px){.tb-hide-md{display:none!important}}
@media (max-width:640px){.topbar .tb-right li:not(:last-child){display:none}.topbar ul:first-child li:not(:first-child){display:none}
  .topbar .wrap{gap:10px}.topbar ul:first-child{flex:1;min-width:0}.topbar ul:first-child li{min-width:0}
  .topbar ul:first-child span{overflow:hidden;text-overflow:ellipsis}.tb-right{flex:none}}

/* ---------------------------------------------------------------- nagłówek */
.site-header{position:sticky;top:0;z-index:60;background:var(--surface);border-bottom:1px solid var(--line);transition:box-shadow var(--t)}
.site-header.is-stuck{box-shadow:0 8px 24px rgba(20,19,8,.12)}
.mainbar .wrap{display:flex;align-items:center;gap:26px;min-height:78px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:none}
.logo img{height:46px;width:auto}
.logo .lg-dark{display:none}
:root[data-theme="dark"] .logo .lg-light,:root[data-theme="nv"] .logo .lg-light{display:none}
:root[data-theme="dark"] .logo .lg-dark,:root[data-theme="nv"] .logo .lg-dark{display:block}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .logo .lg-light{display:none}:root:not([data-theme="light"]) .logo .lg-dark{display:block}}
.logo .wm{display:flex;flex-direction:column;line-height:1}
.logo .wm b{font-size:27px;font-weight:900;letter-spacing:-.02em}
.logo .wm b span{color:var(--sage)}
.logo .wm small{font-size:8.6px;font-weight:800;letter-spacing:.16em;color:var(--muted);margin-top:4px}
.logo .wm small i{font-style:normal;color:var(--sage)}
.search{flex:1;display:flex;align-items:stretch;height:48px;border:2px solid var(--ink);border-radius:var(--r);background:var(--surface);overflow:hidden;max-width:720px}
.search select{border:0;border-right:1px solid var(--line);background:var(--surface-2);padding:0 12px;font-size:13px;max-width:180px}
.search input{flex:1;border:0;background:transparent;padding:0 14px;min-width:0;outline:none}
.search button{display:flex;align-items:center;gap:8px;border:0;background:var(--ink);color:var(--bg);padding:0 20px;font-weight:750;text-transform:uppercase;font-size:13px;letter-spacing:.04em}
.search button:hover{background:var(--olive)}
.actions{display:flex;gap:6px;margin-left:auto}
.act{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:58px;padding:6px 6px;border-radius:var(--r);
  color:var(--ink);text-decoration:none;font-size:11.5px;font-weight:600;background:none;border:0}
.act:hover{background:var(--bg-2)}
.act .ico{width:24px;height:24px}
.cnt{position:absolute;top:0;right:6px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:var(--signal);color:#fff;font-size:11px;
  display:flex;align-items:center;justify-content:center;font-style:normal}
.cnt[data-n="0"]{display:none}
.burger{display:none}
@media (max-width:980px){.search select{display:none}}
@media (max-width:860px){
  .mainbar .wrap{flex-wrap:wrap;gap:10px 14px;min-height:0;padding-top:10px;padding-bottom:10px}
  .burger{display:flex}
  .logo img{height:38px}.logo .wm b{font-size:23px}
  .search{order:5;flex-basis:100%;max-width:none;height:44px}
  .search button span{display:none}
  .hide-sm{display:none!important}
}
/* telefon: menu + logo + koszyk w jednym rzędzie (podpis „Koszyk” jest w dolnej nawigacji) */
@media (max-width:560px){
  .mainbar .wrap{column-gap:8px}
  .mainbar .act{min-width:44px;padding:6px 4px}
  .mainbar .act .lbl{display:none}
  .mainbar .cnt{right:0}
  .logo{gap:8px}.logo .wm small{letter-spacing:.12em}
}
@media (max-width:359px){.logo .wm small{display:none}}

/* ---------------------------------------------------------------- pasek kategorii + mega */
.navbar{background:var(--olive);color:#EFECD9;position:relative;border-top:3px solid var(--sage)}
:root[data-theme="dark"] .navbar,:root[data-theme="nv"] .navbar{background:var(--night-2)}
.navbar .wrap{display:flex;align-items:center;gap:6px;min-height:50px}
.nav-all{display:flex;align-items:center;gap:9px;background:var(--sage);color:#14130B;border:0;height:50px;padding:0 18px;font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:.05em;margin-left:calc(var(--gut) * -1 + 0px)}
.nav-all .chev{width:16px;height:16px;transition:transform var(--t)}
.nav-all[aria-expanded="true"] .chev{transform:rotate(180deg)}
.nav-links{display:flex;align-items:center;gap:2px;overflow-x:auto;scrollbar-width:none;flex:1}
.nav-links::-webkit-scrollbar{display:none}
.nav-links a{display:flex;align-items:center;gap:7px;padding:0 13px;height:50px;color:#EFECD9;text-decoration:none;font-weight:650;font-size:13.5px;
  text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-bottom:3px solid transparent;margin-bottom:-3px}
.nav-links a:hover,.nav-links a[aria-current]{color:#fff;border-color:var(--beam)}
.nav-links a .n{font-family:var(--mono);font-size:11px;color:var(--sage-l);letter-spacing:0}
.nav-links a.is-soon{color:#A9A68E}
.nav-links a.is-soon .n{color:#8B886F}
.nav-links a.is-tool{color:var(--beam)}
.nav-links .sep{width:1px;height:22px;background:rgba(255,255,255,.18);margin:0 6px;flex:none}
.nav-contact{display:flex;gap:4px}
.nav-contact a{display:flex;align-items:center;gap:7px;color:#EFECD9;text-decoration:none;font-weight:700;font-size:13.5px;white-space:nowrap;padding-left:12px}
@media (max-width:1560px){.nav-contact{display:none}}
@media (max-width:860px){.navbar{display:none}}
.mega{position:absolute;left:0;right:0;top:100%;background:var(--surface);color:var(--ink);border-bottom:1px solid var(--line);box-shadow:var(--sh-lg);
  display:none;z-index:70}
.mega.is-open{display:block}
.mega .wrap{display:grid;grid-template-columns:250px 1fr 290px;gap:0;min-height:380px;padding:0 var(--gut)}
.mega-side{border-right:1px solid var(--line);padding:18px 0;display:flex;flex-direction:column}
.mega-side button{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:0;background:none;padding:12px 16px;border-radius:var(--r) 0 0 var(--r);font-weight:700;font-size:14px}
.mega-side button span{font-family:var(--mono);font-size:11.5px;color:var(--muted);margin-left:auto}
.mega-side button[aria-selected="true"]{background:var(--bg-2);color:var(--accent)}
.mega-side .is-soon{color:var(--muted)}
.mega-panel{display:none;padding:24px 28px}
.mega-panel.is-active{display:block}
.mega-panel h3{font-size:20px;font-weight:850;text-transform:uppercase}
.mega-panel>p{color:var(--muted);font-size:13.5px;margin-top:4px}
.mega-subs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 20px;margin:18px 0}
.mega-subs a{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:14px}
.mega-subs a:hover{color:var(--accent)}
.mega-subs a.is-soon{color:var(--muted)}
.mega-subs .count{font-family:var(--mono);font-size:12px;color:var(--muted)}
.mega-prods{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.mega-prod{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--ink);font-size:12.5px;line-height:1.3}
.mega-prod img{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:var(--r);border:1px solid var(--line)}
.mega-prod b{font-size:13px}
.mega-promo{background:var(--night);color:#ECEAD9;padding:26px;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;position:relative;overflow:hidden}
.mega-promo::before{content:"";position:absolute;inset:-30% -40% auto auto;width:300px;height:300px;background:radial-gradient(circle,rgba(246,190,74,.35),transparent 65%)}
.mega-promo b{font-size:21px;font-weight:850;text-transform:uppercase;line-height:1.1;position:relative}
.mega-promo p{font-size:13.5px;color:#BDBAA2;position:relative}
.mega-soon{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px}
.mega-soon div{background:var(--bg-2);border-radius:var(--r);padding:12px 14px;font-size:13px}
.mega-soon b{display:block;font-size:20px;font-family:var(--mono)}

/* ---------------------------------------------------------------- szuflada mobilna */
.drawer{position:fixed;inset:0;z-index:120;visibility:hidden}
.drawer.is-open{visibility:visible}
.drawer-bg{position:absolute;inset:0;background:rgba(10,10,5,.6);opacity:0;transition:opacity var(--t)}
.drawer.is-open .drawer-bg{opacity:1}
.drawer-panel{position:absolute;inset:0 auto 0 0;width:min(380px,90vw);background:var(--surface);display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .25s ease}
.drawer.is-open .drawer-panel{transform:none}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--olive);color:#fff}
.drawer-head b{text-transform:uppercase;letter-spacing:.06em}
.drawer-x{background:none;border:0;color:#fff;padding:6px}
.drawer nav{overflow-y:auto;flex:1;padding:8px 0}
.drawer nav a{display:flex;justify-content:space-between;align-items:center;padding:13px 20px;color:var(--ink);text-decoration:none;font-weight:700;border-bottom:1px solid var(--line)}
.drawer nav a span{font-family:var(--mono);font-size:12px;color:var(--muted);font-weight:500}
.drawer nav a.sub{padding-left:36px;font-weight:500;font-size:14px}
.drawer nav a.is-tool{color:var(--accent)}
.drawer nav a.is-info{font-weight:600;font-size:14px;background:var(--surface-2)}
.drawer-foot{padding:16px 18px;display:grid;gap:8px;border-top:1px solid var(--line)}

/* ---------------------------------------------------------------- karty produktu */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(228px,1fr));gap:16px}
.pcard{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;transition:border-color var(--t),box-shadow var(--t),transform var(--t)}
.pcard:hover{border-color:var(--line-2);box-shadow:var(--sh);transform:translateY(-2px)}
.pcard .ph{display:block;background:#fff;aspect-ratio:1;position:relative;overflow:hidden}
.pcard .ph img{width:100%;height:100%;object-fit:contain;padding:14px}
.pcard .ph.is-empty{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,var(--surface-2) 0 10px,var(--bg-2) 10px 20px)}
.pcard .ph.is-empty span{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--muted);text-transform:uppercase;text-align:center;padding:0 16px}
.pcard .ph::after{content:"";position:absolute;inset:8px;pointer-events:none;opacity:0;transition:opacity var(--t);
  background:linear-gradient(var(--sage),var(--sage)) 0 0/14px 2px no-repeat,linear-gradient(var(--sage),var(--sage)) 0 0/2px 14px no-repeat,
  linear-gradient(var(--sage),var(--sage)) 100% 0/14px 2px no-repeat,linear-gradient(var(--sage),var(--sage)) 100% 0/2px 14px no-repeat,
  linear-gradient(var(--sage),var(--sage)) 0 100%/14px 2px no-repeat,linear-gradient(var(--sage),var(--sage)) 0 100%/2px 14px no-repeat,
  linear-gradient(var(--sage),var(--sage)) 100% 100%/14px 2px no-repeat,linear-gradient(var(--sage),var(--sage)) 100% 100%/2px 14px no-repeat}
.pcard:hover .ph::after{opacity:1}
.flags{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:5px;z-index:2;align-items:flex-start}
.badge{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:3px;background:var(--night);color:#ECEAD9}
.badge-beam{background:var(--beam);color:#14130B}
.badge-sage{background:var(--sage);color:#14130B}
.badge-line{background:var(--surface);color:var(--ink);border:1px solid var(--line-2)}
.fav{position:absolute;top:8px;right:8px;z-index:2;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.fav[aria-pressed="true"]{color:var(--signal)}
.fav[aria-pressed="true"] .ico{fill:currentColor}
.pcard .body{display:flex;flex-direction:column;gap:6px;padding:14px 14px 16px;flex:1}
.pcard .brand{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.pcard .nm{color:var(--ink);text-decoration:none;font-weight:700;font-size:14.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
.pcard .nm:hover{color:var(--accent)}
.specs{display:flex;flex-wrap:wrap;gap:5px}
.chip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:3px 8px;border-radius:3px;background:var(--chip);color:var(--ink-2);font-variant-numeric:tabular-nums}
.chip .ico{width:13px;height:13px}
.chip.is-lm{background:rgba(246,190,74,.18);color:var(--ink)}
.pcard .foot{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px}
.price{font-size:20px;font-weight:850;letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.avail{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ok);font-weight:600}
.avail::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.avail.is-order{color:var(--warn)}
.add{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--r);border:0;background:var(--accent);color:var(--accent-ink);flex:none}
.add:hover{background:var(--sage-d);color:#fff}
.add span{display:none}
.cmp{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);cursor:pointer;margin-top:2px}
.cmp input{accent-color:var(--accent);width:15px;height:15px}

/* ---------------------------------------------------------------- karuzele */
.c-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.c-tabs{display:flex;gap:6px;flex-wrap:wrap}
.c-tabs button{border:1px solid var(--line-2);background:var(--surface);border-radius:99px;padding:8px 16px;font-weight:700;font-size:13px}
.c-tabs button[aria-selected="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.c-nav{display:flex;gap:8px}
.c-nav button{width:42px;height:42px;border-radius:50%;border:1px solid var(--line-2);background:var(--surface);display:flex;align-items:center;justify-content:center}
.c-nav button:disabled{opacity:.35;cursor:default}
.track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(232px,1fr);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
.track::-webkit-scrollbar{display:none}
.track>*{scroll-snap-align:start}
@media (min-width:1200px){.track{grid-auto-columns:calc((100% - 64px) / 5)}}
@media (max-width:640px){.track{grid-auto-columns:72%}}

/* ---------------------------------------------------------------- formularze */
.field{display:flex;flex-direction:column;gap:6px}
.field label,.lbl{font-size:12.5px;font-weight:700;color:var(--ink-2)}
.inp,select.inp,textarea.inp{width:100%;min-height:46px;border:1.5px solid var(--line-2);border-radius:var(--r);background:var(--surface);padding:10px 12px}
.inp:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px rgba(127,149,64,.25)}
.inp[aria-invalid="true"]{border-color:var(--bad)}
.err{font-size:12.5px;color:var(--bad);display:none}
.inp[aria-invalid="true"]+.err{display:block}
.check{display:flex;align-items:flex-start;gap:10px;font-size:14px;cursor:pointer}
.check input{accent-color:var(--accent);width:18px;height:18px;margin-top:2px;flex:none}
.stepper{display:inline-flex;align-items:center;border:1.5px solid var(--line-2);border-radius:var(--r);overflow:hidden;background:var(--surface)}
.stepper button{width:42px;height:44px;border:0;background:var(--surface-2);display:flex;align-items:center;justify-content:center}
.stepper input{width:58px;height:44px;border:0;text-align:center;font-weight:800;background:transparent;-moz-appearance:textfield}
.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* ---------------------------------------------------------------- okruszki */
.crumbs{font-size:13px;color:var(--muted);padding-top:16px;padding-bottom:16px}
.crumbs ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.crumbs li+li::before{content:"/";margin-right:6px;color:var(--line-2)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--ink)}

/* ---------------------------------------------------------------- newsletter + stopka */
.nl{background:var(--night);color:#ECEAD9;position:relative;overflow:hidden}
.nl::before{content:"";position:absolute;inset:0;background:radial-gradient(600px 300px at 85% 50%,rgba(127,149,64,.28),transparent 70%)}
.nl .wrap{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;padding-top:48px;padding-bottom:48px}
.nl h2{color:#fff;font-size:28px;font-weight:850;text-transform:uppercase;margin:10px 0 8px}
.nl p{color:#BDBAA2}
.nl-form{display:grid;grid-template-columns:1fr auto;gap:10px}
.nl-form input{min-height:50px;border-radius:var(--r);border:1.5px solid var(--night-line);background:var(--night-2);color:#fff;padding:0 16px}
.nl-form small{grid-column:1/-1;color:#8F8C74;font-size:12px}
@media (max-width:860px){.nl .wrap{grid-template-columns:1fr}.nl-form{grid-template-columns:1fr}}
.footer{background:var(--night-2);color:#BDBAA2;font-size:14px;border-top:1px solid var(--night-line)}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:32px;padding-top:52px;padding-bottom:40px}
.footer h4{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px}
.footer ul{display:grid;gap:9px}
.footer a{color:#BDBAA2;text-decoration:none}
.footer a:hover{color:#fff}
.footer .logo{color:#fff;margin-bottom:14px}
.footer .logo .wm small{color:#8F8C74}
.footer .logo .lg-light{display:none}.footer .logo .lg-dark{display:block}
.footer .about{max-width:34ch;margin-bottom:16px}
.footer .contact li{display:flex;gap:9px;align-items:center}
.footer .contact .ico{color:var(--sage-l)}
.pay{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.pay span{font-size:11px;font-weight:800;letter-spacing:.06em;padding:5px 8px;border:1px solid var(--night-line);border-radius:3px;color:#E9E5D2}
.footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:18px;padding-bottom:22px;border-top:1px solid var(--night-line);font-size:12.5px}
.footer-bottom .note{font-family:var(--mono);font-size:11.5px;color:#8F8C74}
@media (max-width:1000px){.footer-grid{grid-template-columns:1fr 1fr}.footer-grid .f-brand{grid-column:1/-1}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr}}

/* ---------------------------------------------------------------- dolna nawigacja, do góry, toast */
.bottomnav{display:none}
@media (max-width:860px){
  body{padding-bottom:64px}
  .bottomnav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:80;background:var(--surface);border-top:1px solid var(--line);height:64px}
  .bottomnav>*{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;font-weight:650;color:var(--ink-2);text-decoration:none;background:none;border:0}
  .bottomnav [aria-current]{color:var(--accent)}
  .bottomnav .cnt{top:6px;right:calc(50% - 22px)}
}
.to-top{position:fixed;right:20px;bottom:20px;width:46px;height:46px;border-radius:50%;background:var(--ink);color:var(--bg);display:flex;align-items:center;justify-content:center;
  opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity var(--t),transform var(--t);z-index:70}
.to-top.is-visible{opacity:1;pointer-events:auto;transform:none}
@media (max-width:860px){.to-top{bottom:80px}}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:var(--night);color:#fff;border-left:4px solid var(--sage);padding:13px 18px;border-radius:var(--r);
  display:flex;align-items:center;gap:10px;font-weight:600;font-size:14px;box-shadow:var(--sh-lg);opacity:0;pointer-events:none;transition:opacity var(--t),transform var(--t);z-index:300;max-width:calc(100vw - 32px)}
.toast.is-on{opacity:1;transform:translate(-50%,0)}
.toast .ico{color:var(--sage-l)}
@media (max-width:860px){.toast{bottom:80px}}

/* ---------------------------------------------------------------- akordeon / FAQ */
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-weight:750;font-size:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--mono);font-size:20px;color:var(--accent);flex:none}
.faq details[open] summary::after{content:"−"}
.faq details p{padding:0 0 18px;color:var(--ink-2);max-width:75ch}
.faq summary h3{font-size:16px;font-weight:750}

/* ---------------------------------------------------------------- panel „makieta” */
.mk-note{display:flex;gap:10px;align-items:flex-start;background:var(--surface-2);border:1px dashed var(--line-2);border-radius:var(--r);padding:12px 14px;font-size:13px;color:var(--ink-2)}
.mk-note .ico{color:var(--warn);margin-top:1px}

/* widok admina: dopiski zrodel i notatki makiety tylko dla admina (decyzja Arka 2026-10-22) */
:root:not([data-admin]) .src-note,:root:not([data-admin]) .mk-note:not(.is-func){display:none!important}
:root[data-admin] .src-note,:root[data-admin] .mk-note{outline:1px dashed var(--beam-d);outline-offset:3px}
.admin-btn{font:inherit;color:inherit;background:none;border:1px solid var(--night-line);border-radius:99px;padding:2px 10px;cursor:pointer}
.admin-btn[aria-pressed="true"]{border-color:var(--beam);color:var(--beam)}

/* ================================================================ 4DUTY — style podstron */
@property --r{syntax:'<length>';inherits:true;initial-value:360px}

/* ---------------------------------------------------------------- HERO: latarka pod kursorem */
.hero{position:relative;background:#09090500;background-color:#0A0A06;color:#ECEAD9;overflow:hidden;isolation:isolate;
  --x:66%;--y:46%;--r:400px;--glow:255,226,170;touch-action:pan-y;transition:--r .6s cubic-bezier(.3,.7,.3,1)}
.hero-scene{position:absolute;inset:0;display:grid;grid-template-columns:36% 24% 40%;grid-template-rows:1fr 1fr;z-index:0}
.hero-scene::before{content:"";grid-column:1;grid-row:1/3;
  background:linear-gradient(rgba(127,149,64,.22) 1px,transparent 1px) 0 0/44px 44px,linear-gradient(90deg,rgba(127,149,64,.22) 1px,transparent 1px) 0 0/44px 44px,
  radial-gradient(circle at 70% 40%,#2A2817,#0A0A06 70%)}
.hs{width:100%;height:100%;object-fit:cover;display:block}
.hs-1{grid-column:2;grid-row:1/3}
.hs-2{grid-column:3;grid-row:1}
.hs-3{grid-column:3;grid-row:2}
.h-tag{position:absolute;z-index:1;display:flex;flex-direction:column;gap:2px;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  color:#F6E7C3;padding:8px 12px 8px 14px;border-left:2px solid var(--beam);background:rgba(10,10,6,.55);max-width:250px;line-height:1.35}
.h-tag b{font-family:var(--font);font-size:19px;letter-spacing:-.01em;text-transform:none;color:#fff;font-weight:850}
.h-tag::before{content:"";position:absolute;left:-7px;top:-7px;width:12px;height:12px;border:2px solid var(--beam);border-radius:50%;background:#0A0A06}
.hero-night{position:absolute;inset:0;z-index:2;background:rgba(8,8,4,.94);pointer-events:none;
  -webkit-mask:radial-gradient(circle var(--r) at var(--x) var(--y),transparent 0,transparent 28%,rgba(0,0,0,.6) 64%,#000 100%);
          mask:radial-gradient(circle var(--r) at var(--x) var(--y),transparent 0,transparent 28%,rgba(0,0,0,.6) 64%,#000 100%)}
.hero-glow{position:absolute;inset:0;z-index:3;pointer-events:none;mix-blend-mode:screen;
  background:radial-gradient(circle calc(var(--r) * .9) at var(--x) var(--y),rgba(var(--glow),.34),rgba(var(--glow),.08) 42%,transparent 70%)}
.hero-shade{position:absolute;inset:0;z-index:4;pointer-events:none;background:linear-gradient(90deg,rgba(8,8,4,.92) 0,rgba(8,8,4,.72) 30%,rgba(8,8,4,0) 52%)}
.hero-in{position:relative;z-index:5;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:end;gap:40px;min-height:clamp(560px,76vh,700px);padding-top:64px;padding-bottom:48px;pointer-events:none}
.hero-in a,.hero-in button{pointer-events:auto}
.hero-copy{align-self:center;max-width:600px}
.hero h1{color:#fff;font-size:clamp(40px,5.6vw,76px);font-weight:900;text-transform:uppercase;letter-spacing:-.025em;line-height:.95;margin:18px 0 20px}
.hero h1 span{display:block;color:var(--beam)}
.hero .lead{color:#CFCCB4;font-size:17.5px}
.hero .lead b{color:#fff}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero-hint{display:flex;align-items:center;gap:8px;margin-top:22px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#8F8C74}
.hero-hint i{width:9px;height:9px;border-radius:50%;background:var(--beam);box-shadow:0 0 0 0 rgba(246,190,74,.7);animation:ping 2s infinite}
@keyframes ping{70%{box-shadow:0 0 0 10px rgba(246,190,74,0)}100%{box-shadow:0 0 0 0 rgba(246,190,74,0)}}
.beam-panel{justify-self:end;width:min(420px,100%);background:rgba(20,19,11,.82);border:1px solid var(--night-line);border-radius:var(--r-lg);padding:18px 18px 16px;
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.beam-chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 14px}
.beam-chips button{border:1px solid var(--night-line);background:var(--night-2);color:#CFCCB4;border-radius:99px;padding:7px 12px;font-size:12.5px;font-weight:700}
.beam-chips button[aria-pressed="true"]{background:var(--beam);color:#14130B;border-color:var(--beam)}
.readout{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--night-line);border:1px solid var(--night-line);border-radius:var(--r);overflow:hidden;margin:0}
.readout div{background:#12120B;padding:10px 12px}
.readout dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#8F8C74}
.readout dd{margin:2px 0 0;font-size:26px;font-weight:850;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap}
.readout dd small{font-size:13px;font-weight:700;color:var(--beam);margin-left:3px}
.beam-panel .link-arrow{color:var(--sage-l);margin-top:12px}
.beam-panel .src-note{color:#8F8C74;font-size:11.5px}
@media (max-width:980px){
  .hero-scene{grid-template-columns:0 45% 55%}
  .hero-shade{background:linear-gradient(180deg,rgba(8,8,4,.9) 0,rgba(8,8,4,.6) 45%,rgba(8,8,4,.25) 70%,rgba(8,8,4,.85) 100%)}
  .hero-in{grid-template-columns:1fr;min-height:0;padding-top:40px;padding-bottom:28px;gap:28px}
  .beam-panel{justify-self:stretch}
  .h-tag{font-size:10.5px;max-width:180px}.h-tag b{font-size:15px}
}
@media (max-width:640px){.hero-scene{grid-template-columns:0 50% 50%}.h-tag.t-hide-sm{display:none}.h-tag{max-width:42vw}.h-tag.t-a{left:8%!important;top:30%!important}.h-tag.t-b{left:auto!important;right:14px}.opw-row .btn{white-space:normal;text-align:left}.readout dd{font-size:21px}.hero-cta .btn{flex:1}}

/* ---------------------------------------------------------------- pasek zaufania */
.trust{background:var(--surface);border-bottom:1px solid var(--line)}
.trust ul{display:grid;grid-template-columns:repeat(4,1fr)}
.trust li{display:flex;gap:12px;align-items:center;padding:18px 18px 18px 0}
.trust li+li{padding-left:18px;border-left:1px solid var(--line)}
.trust .ico{width:30px;height:30px;color:var(--accent)}
.trust b{display:block;font-size:14.5px}
.trust span{font-size:13px;color:var(--muted)}
@media (max-width:980px){.trust ul{grid-template-columns:1fr 1fr}.trust li:nth-child(3){padding-left:0;border-left:0}.trust li:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:520px){.trust ul{grid-template-columns:1fr}.trust li,.trust li+li{padding:13px 0;border-left:0}.trust li+li{border-top:1px solid var(--line)}}

/* ---------------------------------------------------------------- 3 światy */
.worlds{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.world{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.w-ph{display:block;aspect-ratio:16/10;background:#fff;overflow:hidden}
.w-ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.w-ph img.is-contain{object-fit:contain;padding:14px}
.world:hover .w-ph img{transform:scale(1.04)}
.w-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.w-body h3{font-size:22px;font-weight:850;text-transform:uppercase}
.w-body h3 a{color:var(--ink);text-decoration:none}
.w-meta{color:var(--muted);font-size:14px}
.w-meta b{color:var(--ink)}
.w-body ul{display:grid;gap:0;margin:4px 0 8px}
.w-body li{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px dashed var(--line);font-size:14px}
.w-body li a{color:var(--ink);text-decoration:none}
.w-body li a:hover{color:var(--accent)}
.w-body li .mono{color:var(--muted)}
.w-body .link-arrow{margin-top:auto}
@media (max-width:980px){.worlds{grid-template-columns:1fr 1fr}.world:last-child{grid-column:1/-1}}
@media (max-width:640px){.worlds{grid-template-columns:1fr}}

/* ---------------------------------------------------------------- wykres zasięgu */
.range{background:var(--night);color:#ECEAD9;position:relative;overflow:hidden}
.range .h-sec{color:#fff}
.range .h-sec em{color:var(--beam)}
.range .sec-head p{color:#A9A68E}
.r-tabs{display:flex;flex-wrap:wrap;gap:6px}
.r-tabs button{border:1px solid var(--night-line);background:var(--night-2);color:#CFCCB4;border-radius:99px;padding:8px 14px;font-weight:700;font-size:13px}
.r-tabs button span{font-family:var(--mono);font-size:11.5px;color:#8F8C74;margin-left:3px}
.r-tabs button[aria-pressed="true"]{background:var(--beam);border-color:var(--beam);color:#14130B}
.r-tabs button[aria-pressed="true"] span{color:#14130B}
.rc{--nw:280px;position:relative;margin-top:26px}
.rc-grid{position:absolute;top:0;bottom:0;left:var(--nw);right:0;pointer-events:none}
.rc-grid span{position:absolute;top:0;bottom:0;border-left:1px solid rgba(236,234,217,.08);font-family:var(--mono);font-size:11px;color:#6E6B55}
.rc-grid span::after{content:attr(data-t);position:absolute;bottom:-22px;transform:translateX(-50%)}
.rc-pitch{position:absolute;top:-6px;bottom:0;border-left:2px dashed rgba(127,149,64,.75);z-index:1}
.rc-pitch b{position:absolute;top:-30px;left:-2px;white-space:nowrap;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--sage-l);
  background:var(--night);padding:3px 8px;border:1px solid rgba(127,149,64,.6);border-radius:3px}
.rc-list{position:relative;display:grid;gap:3px;padding:12px 0 0;margin:0 0 30px;list-style:none}
.rc-list li[hidden]{display:none}
.rc-list a{display:grid;grid-template-columns:var(--nw) 1fr;align-items:center;min-height:34px;color:#ECEAD9;text-decoration:none;border-radius:4px}
.rc-list a:hover{background:rgba(246,190,74,.07)}
.rc-name{font-weight:700;font-size:14px;padding-right:14px;display:flex;flex-direction:column;line-height:1.2}
.rc-name small{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:#8F8C74;font-weight:500;text-transform:uppercase}
.rc-bar{position:relative;height:18px;display:flex;align-items:center}
.rc-bar i{display:block;height:100%;width:var(--w);transform-origin:left;
  background:linear-gradient(90deg,rgba(246,190,74,.95),rgba(246,190,74,.55) 70%,rgba(246,190,74,.12));clip-path:polygon(0 30%,100% 0,100% 100%,0 70%);
  transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.rc.is-pre .rc-bar i{transform:scaleX(0)}
.rc-bar b{position:absolute;left:min(calc(var(--w) + 8px),calc(100% - 64px));background:var(--night);padding:0 4px;border-radius:3px;font-size:13px;color:#fff;font-weight:700}
.rc-list a:hover .rc-bar i{background:linear-gradient(90deg,#FFE3A3,rgba(246,190,74,.7) 70%,rgba(246,190,74,.2))}
.rc-foot{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;align-items:center;margin-top:34px;font-size:13px;color:#8F8C74}
.rc-foot .src-note{margin:0;color:#8F8C74}
@media (max-width:860px){
  .rc{--nw:0px;margin-top:46px}
  .rc-grid{right:56px}
  .rc-list a{grid-template-columns:1fr;gap:4px;padding:6px 0}
  .rc-bar b{left:auto;right:0;top:-20px}
  .rc-bar{margin-right:56px}
  .rc-bar b{right:-56px;top:auto}
}

/* ---------------------------------------------------------------- dobór skrzyni (teaser i pełny) */
.finder-t{background:var(--bg-2)}
.ft{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:start}
.ft-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px}
.ft>*{min-width:0}
.dims{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.dims .inp{min-width:0}
.dims .field input{font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}
.unit{position:relative}
.unit::after{content:"cm";position:absolute;right:12px;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:12px;color:var(--muted);pointer-events:none}
.presets{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0}
.presets button{border:1px dashed var(--line-2);background:var(--surface-2);border-radius:99px;padding:6px 12px;font-size:12.5px;font-weight:650}
.presets button:hover{border-style:solid;border-color:var(--accent)}
.ft-out{display:flex;flex-direction:column;gap:12px}
.ft-count{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.ft-count b{font-size:64px;font-weight:900;line-height:1;letter-spacing:-.04em;color:var(--accent);font-variant-numeric:tabular-nums}
.ft-count span{font-size:17px;font-weight:700}
.fit-list{display:grid;gap:8px}
.fit{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:8px 14px 8px 8px;color:var(--ink);text-decoration:none}
.fit:hover{border-color:var(--accent)}
.fit img{width:64px;height:64px;object-fit:contain;background:#fff;border-radius:4px}
.fit b{display:block;font-size:14px;line-height:1.25}
.fit small{font-family:var(--mono);font-size:11.5px;color:var(--muted)}
.fit .price{font-size:16px}
.fit-empty{padding:16px;border:1px dashed var(--line-2);border-radius:var(--r);color:var(--muted);font-size:14px}
@media (max-width:900px){.ft{grid-template-columns:minmax(0,1fr);gap:24px}.ft-count b{font-size:52px}}
@media (max-width:400px){.ft-form{padding:16px}.dims{gap:6px}.dims .field input{font-size:17px;padding-right:30px}}

/* ---------------------------------------------------------------- pasmo OPW */
.opw{background:var(--olive);color:#ECEAD9;position:relative;overflow:hidden}
:root[data-theme="dark"] .opw,:root[data-theme="nv"] .opw{background:#1E1D0D}
.opw::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.03) 0 2px,transparent 2px 14px)}
.opw .wrap{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
.opw-ph{background:#fff;border-radius:var(--r-lg);padding:18px;position:relative}
.opw-ph .badge{position:absolute;top:14px;left:14px}
.opw h2{color:#fff}
.opw .h-sec em{color:var(--beam)}
.opw p{color:#D7D4BD}
.kit{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;margin:20px 0}
.kit li{display:flex;gap:8px;align-items:flex-start;font-size:14px}
.kit .ico{color:var(--sage-l);margin-top:3px}
.opw-row{display:flex;flex-wrap:wrap;gap:12px 26px;align-items:center;margin-top:22px}
.opw-price b{display:block;font-size:34px;font-weight:900;color:#fff;letter-spacing:-.02em;line-height:1}
.opw-price span{font-size:12.5px;color:#BDBAA2}
.opw-contact{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(236,234,217,.18);font-size:14px}
.opw-contact a{color:#fff;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:7px}
.opw-contact .ico{color:var(--sage-l)}
@media (max-width:900px){.opw .wrap{grid-template-columns:minmax(0,1fr);gap:28px}.kit{grid-template-columns:1fr}}

/* ---------------------------------------------------------------- wkrótce */
.q-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.q-tile{background:var(--surface);border:1px dashed var(--line-2);border-radius:var(--r-lg);padding:18px;display:flex;flex-direction:column;gap:6px;position:relative}
.q-tile .q-ico{width:44px;height:44px;border-radius:50%;background:var(--chip);display:flex;align-items:center;justify-content:center;color:var(--accent);margin-bottom:6px}
.q-tile>b{font-size:30px;font-weight:850;letter-spacing:-.02em;line-height:1}
.q-tile h3{font-size:15px;font-weight:800}
.q-tile p{font-size:12.5px;color:var(--muted);line-height:1.45}
.q-tile.is-first{border-style:solid;border-color:var(--accent)}
.q-first{position:absolute;top:14px;right:14px;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--accent);color:var(--accent-ink);border-radius:99px;padding:3px 8px}
.q-brands{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}
.q-brands span{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--surface);border-radius:99px;padding:6px 12px;font-size:13px;font-weight:700}
.q-brands i{font-style:normal;color:var(--muted);font-size:11.5px}
@media (max-width:1100px){.q-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.q-grid{grid-template-columns:1fr 1fr}.q-tile>b{font-size:24px}}

/* ---------------------------------------------------------------- kategoria */
.cat-head{padding:8px 0 26px}
.cat-head .wrap{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.cat-head h1{font-size:clamp(30px,3.6vw,46px);font-weight:900;text-transform:uppercase;margin:10px 0 8px}
.k-chips{display:flex;flex-wrap:wrap;gap:6px;max-width:720px}
.k-chips button,.k-chips a{border:1px solid var(--line-2);background:var(--surface);border-radius:99px;padding:8px 14px;font-weight:700;font-size:13px;color:var(--ink);text-decoration:none}
.k-chips button span,.k-chips a span{color:var(--muted);margin-left:2px}
.k-chips button[aria-pressed="true"],.k-chips a[aria-current]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.k-chips button[aria-pressed="true"] span,.k-chips a[aria-current] span{color:var(--bg)}
.k-chips a.is-soon{border-style:dashed;color:var(--muted)}
.k-chips a:hover{border-color:var(--ink)}
.cat-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:28px;align-items:start;padding-bottom:64px}
.filters{position:sticky;top:150px;max-height:calc(100vh - 170px);overflow-y:auto;scrollbar-width:thin;padding-right:6px}
.f-head{display:none}
.fg{border:0;border-top:1px solid var(--line);margin:0;padding:14px 0 12px}
.fg legend{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);padding:0;float:left;width:100%;margin-bottom:8px}
.fo{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:5px 0;font-size:14px;cursor:pointer;clear:both}
.fo input{accent-color:var(--accent);width:17px;height:17px;margin:0}
.fo .fc{font-size:12px;color:var(--muted)}
.fo.is-zero{opacity:.45}
.f-hint{clear:both;font-size:11.5px;color:var(--muted);margin-top:4px}
.f-price{clear:both;display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}
.f-price .inp{min-height:40px}
.f-foot{display:none}
.f-box{margin-top:18px;background:var(--night);color:#ECEAD9;border-radius:var(--r-lg);padding:18px;display:grid;gap:8px}
.f-box b{font-size:17px;color:#fff}
.f-box p{font-size:13px;color:#BDBAA2}
.f-box .link-arrow{color:var(--beam)}
.toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:14px}
.f-open{display:none}
.f-badge{background:var(--signal);color:#fff;border-radius:99px;min-width:19px;height:19px;font-size:11px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}
.tb-count{font-size:14px;color:var(--muted)}
.tb-count b{color:var(--ink);font-size:16px}
.tb-sort{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:700;color:var(--muted)}
.tb-sort select{min-height:40px;width:auto;padding:6px 10px}
.f-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.f-pills:empty{display:none}
.f-pills button{border:1px solid var(--accent);background:var(--surface);color:var(--ink);border-radius:99px;padding:5px 12px;font-size:12.5px;font-weight:650}
.f-pills button span{color:var(--accent);font-weight:800;margin-left:3px}
.f-pills .is-clear{border-color:transparent;text-decoration:underline;color:var(--muted)}
.cat-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.cat-empty{padding:40px;text-align:center;border:1px dashed var(--line-2);border-radius:var(--r-lg);display:grid;gap:6px}
.linkish{border:0;background:none;padding:0;color:var(--link);text-decoration:underline;font-weight:700}
.more{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:26px}
.more p{font-size:12px;color:var(--muted)}
@media (max-width:980px){
  .cat-layout{grid-template-columns:1fr}
  .f-open{display:inline-flex}
  .filters{position:fixed;inset:0 0 0 auto;width:min(380px,92vw);max-height:none;top:0;z-index:130;background:var(--surface);padding:0 18px 18px;
    transform:translateX(100%);transition:transform .25s ease;visibility:hidden;box-shadow:var(--sh-lg)}
  .filters.is-open{transform:none;visibility:visible}
  .f-head{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:var(--surface);padding:14px 0;z-index:1;border-bottom:1px solid var(--line)}
  .f-foot{display:grid;gap:8px;position:sticky;bottom:0;background:var(--surface);padding:12px 0 4px}
  .tb-sort span{display:none}
}
.f-x{border:0;background:none;padding:6px;color:inherit}

/* porównanie */
.cmp-bar{position:fixed;left:0;right:0;bottom:0;z-index:90;background:var(--night);color:#ECEAD9;border-top:3px solid var(--beam);box-shadow:0 -10px 30px rgba(0,0,0,.25)}
.cmp-bar .wrap{display:flex;align-items:center;gap:16px;min-height:72px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
.cmp-slots{display:flex;gap:8px;flex:1;min-width:0;flex-wrap:wrap}
.cmp-slots li{display:flex;align-items:center;gap:8px;background:var(--night-2);border:1px solid var(--night-line);border-radius:var(--r);padding:4px 6px 4px 4px;font-size:12.5px;max-width:250px}
.cmp-slots img{width:44px;height:44px;object-fit:contain;background:#fff;border-radius:4px}
.cmp-slots span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cmp-slots button{border:0;background:none;color:#BDBAA2;font-size:18px;padding:0 4px}
.cmp-bar .btn:disabled{opacity:.5;cursor:default}
@media (max-width:860px){.cmp-bar{bottom:64px}.cmp-bar .hud,.cmp-slots span{display:none}}
.modal{position:fixed;inset:0;z-index:140;display:flex;align-items:center;justify-content:center;padding:20px}
.modal-bg{position:absolute;inset:0;background:rgba(10,10,5,.65)}
.modal-box{position:relative;background:var(--surface);border-radius:var(--r-lg);width:min(980px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:22px;box-shadow:var(--sh-lg)}
.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.modal-head h2{font-size:22px;font-weight:850;text-transform:uppercase}
.tbl-wrap{overflow-x:auto}
.cmp-tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
.cmp-tbl th,.cmp-tbl td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.cmp-tbl thead th{vertical-align:bottom}
.cmp-tbl thead img{width:110px;height:110px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:var(--r);margin-bottom:8px}
.cmp-tbl thead a{display:block;color:var(--ink);font-weight:750;text-decoration:none;margin-bottom:4px;line-height:1.3}
.cmp-tbl thead .price{display:block;font-size:18px;margin-bottom:8px}
.cmp-tbl tbody th{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);width:150px}
.cmp-tbl td small{display:block;font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:3px}
.cmp-tbl td.na{color:var(--muted)}
.cmp-tbl td.is-best{background:rgba(246,190,74,.14)}
.cmp-tbl td.is-best b::after{content:" ▲";color:var(--beam-d);font-size:11px}

/* ---------------------------------------------------------------- KARTA PRODUKTU */
.pdp{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:44px;align-items:start;padding-bottom:44px}
.gal{position:sticky;top:132px;display:grid;gap:12px}
.gal-main{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;aspect-ratio:1}
.gal-main img{width:100%;height:100%;object-fit:contain;display:block}
.gal-main .flags{top:14px;left:14px;flex-direction:row}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;border-radius:50%;border:1px solid #C9C4AA;background:rgba(255,255,255,.92);color:#1C1B12;display:flex;align-items:center;justify-content:center}
.gal-nav:hover{background:#fff;border-color:#1C1B12}
.gal-nav.is-prev{left:12px}
.gal-nav.is-next{right:12px}
.gal-n{position:absolute;right:14px;bottom:12px;z-index:2;font-size:12px;background:rgba(20,19,11,.8);color:#fff;padding:4px 10px;border-radius:99px}
.gal-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.gal-thumbs button{padding:0;border:1.5px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden;aspect-ratio:1;cursor:pointer}
.gal-thumbs button[aria-current="true"]{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:-3px}
.gal-thumbs img{width:100%;height:100%;object-fit:contain}
.gal-note{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--muted);margin:0}
.buy{display:flex;flex-direction:column;gap:18px;min-width:0}
.buy .brand{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.buy h1{font-size:clamp(28px,3.1vw,42px);font-weight:900;line-height:1.04;letter-spacing:-.02em;text-transform:uppercase;margin:-10px 0 0}
.buy-lead{color:var(--ink-2);font-size:16px;margin:-6px 0 0;max-width:56ch}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);margin:0;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}
.kpis div{padding:12px 14px;border-left:1px solid var(--line);min-width:0}
.kpis div:first-child{border-left:0}
.kpis dt{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.kpis dd{margin:3px 0 0;font-size:22px;font-weight:850;letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.kpis dd small{font-size:13px;font-weight:700;color:var(--muted);margin-left:3px}
.variant{border:0;padding:0;margin:0;min-width:0}
.variant legend{font-weight:800;font-size:14px;margin-bottom:8px;padding:0}
.v-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.v-opt{position:relative;cursor:pointer}
.v-opt input{position:absolute;opacity:0;pointer-events:none}
.v-opt>span{position:relative;display:flex;flex-direction:column;gap:2px;padding:12px 14px 12px 46px;border:1.5px solid var(--line-2);border-radius:var(--r);background:var(--surface);transition:border-color var(--t),box-shadow var(--t)}
.v-opt>span::before{content:"";position:absolute;left:14px;top:50%;width:20px;height:20px;margin-top:-10px;border-radius:50%;border:1px solid var(--line-2);
  background:radial-gradient(circle,#fff 0 30%,#E4EEFF 58%,#AFC6EA 100%)}
.v-opt.is-warm>span::before{background:radial-gradient(circle,#FFF6DD 0 30%,#FFD37E 62%,#EE9F32 100%)}
.v-opt small{color:var(--muted);font-size:12.5px}
.v-opt input:checked+span{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.v-opt input:focus-visible+span{outline:2px solid var(--focus);outline-offset:2px}
.v-hint{font-size:12.5px;color:var(--muted);margin:8px 0 0}
.pbox{display:flex;align-items:flex-end;justify-content:space-between;gap:10px 16px;flex-wrap:wrap}
.pbox small{display:block;font-size:12px;color:var(--muted);margin-top:4px}
.price.big{font-size:38px;letter-spacing:-.03em;line-height:1}
.buy-row{display:flex;gap:10px;align-items:stretch}
.buy-row .stepper button,.buy-row .stepper input{height:52px}
.buy-add{flex:1;min-height:52px;font-size:16px}
.fav.pdp-fav{position:static;width:54px;height:54px;border-radius:var(--r);flex:none;border-color:var(--line-2)}
.buy-usp{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.buy-usp li{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--ink-2)}
.buy-usp .ico{width:22px;height:22px;color:var(--accent);margin-top:1px}
.buy-usp b{display:block;color:var(--ink)}

.bundle-sec{background:var(--bg-2);border-block:1px solid var(--line)}
.bundle{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.b-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.b-item{display:grid;grid-template-columns:auto 64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 14px 10px 12px;background:var(--surface);
  border:1.5px solid var(--line);border-radius:var(--r-lg);cursor:pointer;transition:border-color var(--t)}
.b-item:hover{border-color:var(--line-2)}
.b-item:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.b-item input{width:20px;height:20px;accent-color:var(--accent);margin:0}
.b-item img{width:64px;height:64px;object-fit:contain;background:#fff;border-radius:var(--r)}
.b-txt b{display:block;font-size:14px;line-height:1.25}
.b-why{display:block;font-size:11.5px;color:var(--muted);margin-top:4px;line-height:1.4}
.b-why::before{content:"ŹRÓDŁO · ";font-family:var(--mono);letter-spacing:.08em;color:var(--accent)}
.b-price{font-weight:850;white-space:nowrap;font-variant-numeric:tabular-nums;align-self:start;padding-top:2px}
.b-warn{grid-column:1/-1;display:flex;gap:14px;padding:16px 18px;border:1.5px solid var(--bad);border-radius:var(--r-lg);background:var(--surface)}
.b-warn>.ico{width:24px;height:24px;color:var(--bad)}
.b-warn b{display:block;color:var(--bad)}
.b-warn p{margin:4px 0 0;font-size:13.5px;color:var(--ink-2)}
.b-warn blockquote{margin:8px 0 0;padding:8px 12px;border-left:3px solid var(--bad);background:var(--surface-2);font-size:13.5px;font-style:italic;color:var(--ink)}
.b-sum{position:sticky;top:132px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;display:grid;gap:10px}
.b-line{display:flex;justify-content:space-between;gap:12px;margin:0;font-size:14px}
.b-line b{font-variant-numeric:tabular-nums;white-space:nowrap}
.b-line.is-total{border-top:1px solid var(--line);padding-top:12px;margin-top:2px;font-size:16px;align-items:baseline}
.b-line.is-total b{font-size:24px;font-weight:900;letter-spacing:-.02em}

.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs [role="tab"]{flex:none;border:0;background:none;padding:14px 16px;font-weight:800;font-size:14.5px;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-1px;cursor:pointer}
.tabs [role="tab"]:hover{color:var(--ink)}
.tabs [role="tab"][aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent)}
.tabp{display:none;padding:28px 0 4px}
.tabp.is-active{display:block}
.opis{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;align-items:start}
.opis .lead{margin-bottom:6px}
.opis h3{font-size:16px;margin:20px 0 4px;text-transform:uppercase;letter-spacing:.01em}
.opis p{color:var(--ink-2);max-width:68ch;margin:0}
.opis-fig{margin:0;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);background:#fff;position:sticky;top:132px}
.opis-fig img{width:100%;height:auto;display:block}
.opis-fig figcaption{font-size:12px;color:var(--muted);padding:8px 12px;background:var(--surface)}
.spec{width:100%;border-collapse:collapse;max-width:900px}
.spec th,.spec td{text-align:left;vertical-align:top;padding:12px 14px 12px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.spec th{width:34%;font-weight:650;color:var(--muted)}
.spec td{font-weight:750}
.spec td small{display:block;font-weight:400;font-size:12px;color:var(--muted);margin-top:3px;font-style:italic}
.box-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.box-list li{display:flex;gap:12px;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}
.box-list .ico{color:var(--accent);margin-top:1px}
.box-list b{display:block}
.box-list span{display:block;font-size:13.5px;color:var(--ink-2);margin-top:2px}
.box-list small{display:block;font-size:11.5px;color:var(--muted);margin-top:6px;font-style:italic}
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.two h3{font-size:18px;margin:0 0 12px}
.two p{color:var(--ink-2)}
.pay-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pay-list li{display:flex;gap:12px;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.pay-list .ico{color:var(--accent)}
.pay-list b{display:block;font-size:14px}
.pay-list span{font-size:12.5px;color:var(--muted)}

.fam-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 44px;margin-top:6px}
.fam-t{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#A9A68E;margin:0 0 10px;font-weight:600}
.fam-bars{list-style:none;margin:0;padding:0;display:grid;gap:3px}
.fam-bars a{display:grid;grid-template-columns:150px minmax(0,1fr) 78px;gap:12px;align-items:center;color:#CFCCB4;text-decoration:none;font-size:13.5px;min-height:30px;border-radius:4px;padding-right:4px}
.fam-bars a:hover{background:rgba(246,190,74,.07)}
.fam-bars .fb i{display:block;height:10px;width:var(--w);border-radius:2px;background:linear-gradient(90deg,rgba(246,190,74,.18),rgba(246,190,74,.55))}
.fam-bars b{font-family:var(--mono);font-size:12.5px;text-align:right;color:#ECEAD9;font-weight:600;white-space:nowrap}
.fam-bars .is-me a{color:#fff;font-weight:800;background:rgba(246,190,74,.08)}
.fam-bars .is-me i{background:linear-gradient(90deg,var(--beam-d),var(--beam));box-shadow:0 0 14px rgba(246,190,74,.55)}
.fam-bars .is-me b{color:var(--beam)}

.sticky-buy{position:fixed;left:0;right:0;bottom:0;z-index:55;background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(20,19,8,.12);
  transform:translateY(110%);transition:transform var(--t);visibility:hidden}
.sticky-buy.is-on{transform:none;visibility:visible}
.sticky-buy .wrap{display:flex;align-items:center;gap:14px;min-height:68px}
.sticky-buy img{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:var(--r);border:1px solid var(--line)}
.sticky-buy b{flex:1;font-size:15px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.page-produkt .to-top{bottom:88px}

@media (max-width:1100px){.bundle{grid-template-columns:1fr}.b-sum{position:static}}
@media (max-width:980px){.pdp{grid-template-columns:1fr;gap:26px}.gal{position:static}.opis{grid-template-columns:1fr}.opis-fig{position:static}}
@media (max-width:860px){.sticky-buy{bottom:64px}.page-produkt .to-top{bottom:150px}}
@media (max-width:760px){.b-list{grid-template-columns:1fr}.two{grid-template-columns:1fr;gap:26px}.fam-grid{grid-template-columns:1fr}}
@media (max-width:560px){
  .kpis{grid-template-columns:1fr 1fr}.kpis div:nth-child(3){border-left:0}.kpis div:nth-child(n+3){border-top:1px solid var(--line)}
  .gal-thumbs{gap:6px}.gal-nav{width:38px;height:38px}
  .price.big{font-size:32px}
  .v-opt>span{padding:10px 10px 10px 38px}.v-opt>span::before{left:10px;width:18px;height:18px;margin-top:-9px}.v-opt small{font-size:11.5px}
  .b-item{grid-template-columns:auto 52px minmax(0,1fr)}.b-item img{width:52px;height:52px}.b-price{grid-column:3;padding:0}
  .fam-bars a{grid-template-columns:104px minmax(0,1fr) 66px;gap:8px;font-size:12.5px}
  .spec th{width:40%}
  .sticky-buy .wrap{gap:10px}.sticky-buy img{display:none}.sticky-buy b{font-size:13.5px}
}

/* ---------------------------------------------------------------- SKRZYNIE */
.cs-jump{display:grid;gap:6px;min-width:280px}
.cs-jump a{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);background:var(--surface);border-radius:var(--r);color:var(--ink);font-weight:750;font-size:14px;text-decoration:none;transition:border-color var(--t)}
.cs-jump a:hover{border-color:var(--accent)}
.cs-jump b{font-family:var(--mono);font-size:11.5px;color:var(--accent);letter-spacing:.1em}
.cs-jump .mono{margin-left:auto;color:var(--muted);font-size:12px}

/* dobór */
.cs-finder{background:var(--bg-2);padding:46px 0 52px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cs-fhead{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 40px;flex-wrap:wrap;margin-bottom:24px}
.cs-fhead .h-sec{margin-top:10px}
.cs-fhead .lead{max-width:58ch;font-size:16px}
.fd{display:grid;grid-template-columns:310px minmax(0,1fr) 420px;grid-template-areas:"form list view";gap:22px;align-items:start}
.fd>*{min-width:0}
.fd-form{grid-area:form;padding:20px}
.fd-g{border:0;margin:0;padding:0;min-width:0}
.fd-g+.fd-g{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}
.fd-g legend{float:left;width:100%;padding:0;margin-bottom:12px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.fd-g>:not(legend){clear:both}
.fd-g .check+.check{margin-top:8px}
.fd-foam{margin-top:14px}
.fd-sel{margin-top:14px}
.fd-sel select{min-height:42px}
.fd-res{grid-area:list;display:grid;gap:10px}
.fd-sub{font-size:13px;color:var(--muted)}
.fd-list{display:grid;gap:8px;list-style:none;margin:0;padding:0}
.fd-it{width:100%;display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:6px 12px;align-items:center;text-align:left;background:var(--surface);
  border:1.5px solid var(--line);border-radius:var(--r);padding:8px 14px 8px 8px;color:var(--ink);transition:border-color var(--t)}
.fd-it:hover{border-color:var(--line-2)}
.fd-it[aria-pressed="true"]{border-color:var(--accent);box-shadow:inset 4px 0 0 var(--accent)}
.fd-it img,.fd-noimg{grid-row:1/3;width:56px;height:56px;object-fit:contain;background:#fff;border-radius:4px}
.fd-nm{min-width:0}
.fd-noimg{display:block}
.fd-it b{display:block;font-size:14px;line-height:1.25}
.fd-it small{font-family:var(--mono);font-size:11px;color:var(--muted)}
.fd-fill{grid-column:2;grid-row:2;display:grid;grid-template-columns:72px auto;gap:8px;align-items:center;justify-content:start}
.fd-fill i{display:block;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--beam-d) var(--w),var(--chip) var(--w))}
.fd-it .price{grid-column:3;grid-row:1/3}
.fd-it .price{font-size:15.5px}
.fd-view{grid-area:view;position:sticky;top:140px;background:var(--night);color:#ECEAD9;border:1px solid var(--night-line);border-radius:var(--r-lg);padding:18px;display:grid;gap:14px;box-shadow:var(--sh)}
.fv-head h3{font-size:17px;font-weight:800;color:#fff;margin-top:8px;line-height:1.25}
.fv-svg{width:100%;height:auto;display:block;border-radius:var(--r);background:var(--night-2);border:1px solid var(--night-line)}
.fv-svg text,.cfg-side text{font-family:var(--mono);font-size:11px;fill:#CFCCB4}
.fv-svg text.mut,.cfg-side text.mut{fill:#8E8B72}
.fv-svg .o,.cfg-side .o{fill:#2A2817;stroke:#5B5833;stroke-width:1.5}
.fv-svg .i{stroke:#9DB45A;stroke-width:1.2}
.fv-svg .i:not([fill]){fill:#191810}
.fv-svg .fr{fill:#191810}
.fv-svg .t{fill:rgba(246,190,74,.22);stroke:#F6BE4A;stroke-width:1.6}
.fv-svg .tl{fill:#F6BE4A;font-weight:700}
.fv-svg .dim{stroke:#8E8B72;stroke-width:1}
.fd-view.is-empty .fv-svg{opacity:.7}
.fv-axes{display:grid;gap:9px}
.fv-axes li{display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:2px 10px;align-items:center;font-size:12.5px}
.fv-bar{height:10px;border-radius:3px;background:var(--night-3);display:flex;overflow:hidden}
.fv-bar .it{background:var(--beam)}
.fv-bar .fm{background:repeating-linear-gradient(135deg,#7F9540 0 2px,transparent 2px 5px)}
.fv-axes b{font-family:var(--mono);font-size:12px;color:#fff;font-weight:600;white-space:nowrap}
.fv-axes small{grid-column:2/-1;font-size:11.5px;color:var(--sage-l)}
.fv-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 10px;border-top:1px solid var(--night-line);padding-top:14px;margin:0}
.fv-meta dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:#9E9B82}
.fv-meta dd{margin:3px 0 0;font-weight:800;font-size:14px;color:#fff;font-variant-numeric:tabular-nums}
.fv-cta{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap}
.fv-cta .link-arrow{color:var(--beam)}
.fv-src{font-family:var(--mono);font-size:11px;color:#9E9B82;line-height:1.5}
.fv-src::before{content:"ŹRÓDŁO · ";letter-spacing:.1em}

/* konfigurator Peli 1560 */
.cfg{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.3fr) 300px;grid-template-areas:"l r s";gap:28px;align-items:start}
.cfg-l{grid-area:l;display:grid;gap:14px;min-width:0}
.cfg-ph{background:#fff;border-radius:var(--r-lg);padding:14px;position:relative;margin:0;border:1px solid var(--line)}
.cfg-ph img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;display:block}
.cfg-ph .badge{position:absolute;top:14px;left:14px}
.cfg-ph-note{position:absolute;left:14px;right:14px;bottom:12px;background:rgba(20,19,11,.86);color:#ECEAD9;border-radius:var(--r);padding:8px 12px;font-size:12.5px}
.cfg-side{margin:0;background:var(--night);border:1px solid var(--night-line);border-radius:var(--r-lg);padding:14px 14px 12px;display:grid;gap:8px}
.cfg-side svg{width:100%;height:auto;display:block}
.cfg-side .lid{fill:rgba(127,149,64,.32);stroke:#9DB45A}
.cfg-side .bot{fill:rgba(246,190,74,.16);stroke:#F6BE4A}
.cfg-side .seam{stroke:#F6BE4A;stroke-width:1.2;stroke-dasharray:5 4}
.cfg-side .wh{fill:#14130B;stroke:#8E8B72;stroke-width:2}
.cfg-facts{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:0 16px}
.cfg-facts summary{cursor:pointer;font-weight:800;font-size:14px;padding:14px 0;list-style-position:inside}
.cfg-facts .spec th,.cfg-facts .spec td{font-size:13.5px;padding:10px 10px 10px 0}
.cfg-facts .spec tr:last-child th,.cfg-facts .spec tr:last-child td{border-bottom:0}
.cfg-r{grid-area:r;display:grid;gap:20px;min-width:0}
.cf-g{border:0;margin:0;padding:0;min-width:0}
.cf-g legend{float:left;width:100%;padding:0;margin-bottom:10px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.cf-opts{clear:both;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.cf-opt{position:relative;display:block;cursor:pointer}
.cf-opt input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.cf-opt span{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:52px;height:100%;padding:10px 14px;border:1.5px solid var(--line-2);border-radius:var(--r);background:var(--surface);transition:border-color var(--t)}
.cf-opt:hover span{border-color:var(--ink-2)}
.cf-opt b{font-size:14px;font-weight:700;line-height:1.3}
.cf-opt small{font-size:12px;color:var(--muted);white-space:nowrap}
.cf-opt input:checked+span{border-color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent);background:var(--surface-2)}
.cf-opt input:focus-visible+span{outline:2px solid var(--focus);outline-offset:2px}
.cf-opt.is-neg small{color:var(--bad);font-weight:800}
.cfg-colors{font-size:13px;color:var(--muted)}
.cfg-colors:empty{display:none}
.cfg-sum{grid-area:s;position:sticky;top:140px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;display:grid;gap:12px;box-shadow:var(--sh)}
.cfg-name{font-size:17px;line-height:1.25}
.cfg-lines{display:grid;gap:7px;font-size:13px;border-top:1px solid var(--line);padding-top:12px}
.cfg-lines li{display:flex;justify-content:space-between;gap:12px}
.cfg-lines span{color:var(--ink-2)}
.cfg-lines b{font-variant-numeric:tabular-nums;white-space:nowrap}
.cfg-lines .is-neg b{color:var(--bad)}
.cfg-total{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-top:1px solid var(--line);padding-top:12px;font-weight:700}
.cfg-total .price.big{font-size:30px}
.cfg-mass{font-size:13.5px;color:var(--ink-2)}
.cfg-mass small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.cfg-sum .src-note{margin-top:0}

/* lista */
.cs-list .k-chips{max-width:none;margin-bottom:14px}
.tgl-row{display:flex;flex-wrap:wrap;gap:6px}
.tgl{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-2);background:var(--surface);border-radius:99px;padding:7px 12px;font-size:13px;font-weight:700;cursor:pointer}
.tgl input{accent-color:var(--accent);width:16px;height:16px;margin:0}
.tgl:has(input:checked){border-color:var(--accent);background:var(--surface-2)}
.tgl .mono{color:var(--muted);font-size:12px}
.cs-grid .pcard{scroll-margin-top:150px}
.cs-grid .pcard:target{outline:3px solid var(--beam);outline-offset:3px}
.cs-nodim{margin-top:22px}

@media (max-width:1240px){
  .fd{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"form view" "list view"}
  .cfg{grid-template-columns:minmax(0,1fr) 300px;grid-template-areas:"l l" "r s"}
  .cfg-l{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
  .cfg-facts{grid-column:1/-1}
}
@media (max-width:980px){.cs-jump{min-width:0;width:100%}}
@media (max-width:860px){
  .fd{grid-template-columns:minmax(0,1fr);grid-template-areas:"form" "view" "list"}
  .fd-view{position:static;scroll-margin-top:120px}
  .cfg{grid-template-columns:minmax(0,1fr);grid-template-areas:"l" "r" "s"}
  .cfg-sum{position:static}
  .toolbar .tgl-row{width:100%}
  .cs-list .tb-sort{margin-left:auto}
}
@media (max-width:560px){
  .cfg-l{grid-template-columns:minmax(0,1fr)}
  .cf-opts{grid-template-columns:minmax(0,1fr)}
  .fd-it{grid-template-columns:48px minmax(0,1fr) auto;gap:6px 10px}
  .fd-it img,.fd-noimg{width:48px;height:48px}
  .fv-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fv-axes li{grid-template-columns:70px minmax(0,1fr) auto}
  .fd-form{padding:16px}
}

/* ---------------------------------------------------------------- KLASY MUNDUROWE */
.km-head-l{max-width:760px}
.km-kpi{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:18px}
.km-kpi li{display:grid;gap:4px;max-width:210px;align-content:start}
.km-kpi b{font-size:32px;font-weight:900;line-height:1;font-variant-numeric:tabular-nums}
.km-kpi b small{font-size:17px;color:var(--muted);font-weight:800}
.km-kpi b.is-t{font-size:21px;line-height:32px}
.km-kpi span{font-size:12.5px;color:var(--muted);line-height:1.35}
.km-side{display:grid;gap:10px;min-width:290px}
.km-contact{display:grid;gap:7px;background:var(--night);color:#ECEAD9;border:1px solid var(--night-line);border-radius:var(--r-lg);padding:14px 16px}
.km-contact a{display:flex;align-items:center;gap:10px;color:#fff;font-weight:750;font-size:15px;text-decoration:none}
.km-contact a:hover{color:var(--beam)}
.km-contact .ico{color:var(--beam)}
.km-contact .hud{color:var(--sage-l)}
.km-contact .src-note{color:#8F8C74;margin:2px 0 0}

/* konfigurator klasy */
.kc{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
.kc-form{display:grid;gap:16px;min-width:0}
.kc-step{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-lg);padding:18px 18px 20px;margin:0;min-width:0}
.kc-step legend{float:left;width:100%;padding:0;margin-bottom:14px;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.kc-step legend b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-family:var(--mono);font-size:13px;letter-spacing:0}
.kc-step legend small{font-weight:600;color:var(--muted);text-transform:none;letter-spacing:0}
.kc-step>*:not(legend){clear:both}
.kt-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:8px}
.kt{position:relative;display:block;cursor:pointer}
.kt input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.kt-in{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;height:100%;padding:10px 14px 10px 10px;border:1.5px solid var(--line-2);border-radius:var(--r);background:var(--surface);transition:border-color var(--t)}
.kt:hover .kt-in{border-color:var(--ink-2)}
.kt input:checked+.kt-in{border-color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent);background:var(--surface-2)}
.kt input:focus-visible+.kt-in{outline:2px solid var(--focus);outline-offset:2px}
.kt-t{display:grid;gap:2px;min-width:0}
.kt-t b{font-size:14.5px;line-height:1.25}
.kt-t small{font-size:12px;color:var(--muted);line-height:1.35}
.kt-t .kt-cls{color:var(--accent);font-weight:700}
.kt .price{font-size:16px;white-space:nowrap}
.th{display:block;width:56px;height:56px;border-radius:var(--r);background:#fff;object-fit:contain;border:1px solid var(--line)}
.th.is-empty{background:repeating-linear-gradient(135deg,var(--chip) 0 6px,var(--surface-2) 6px 12px)}
.kc-n{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:14px}
.kc-n .lbl{font-size:14px;color:var(--ink)}
.sz{display:grid;grid-template-columns:30px minmax(0,1fr) 30px;gap:4px;align-items:center;border:1px solid var(--line);border-radius:var(--r);padding:6px;background:var(--surface-2);transition:border-color var(--t)}
.sz.is-on{border-color:var(--accent);background:var(--surface)}
.sz-l{grid-column:1/-1;text-align:center;font-family:var(--mono);font-size:12px;font-weight:700;color:var(--ink-2)}
.sz button{height:34px;border:1px solid var(--line-2);border-radius:4px;background:var(--surface);color:var(--ink);font-size:17px;font-weight:700;line-height:1}
.sz button:hover{border-color:var(--accent);color:var(--accent)}
.sz .inp{min-height:34px;padding:4px 2px;text-align:center;font-weight:800;font-variant-numeric:tabular-nums;-moz-appearance:textfield}
.sz .inp::-webkit-outer-spin-button,.sz .inp::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.sz.kc-cnt{grid-template-columns:40px 76px 40px;padding:4px}
.sz.kc-cnt button{height:42px}
.sz.kc-cnt .inp{min-height:42px;font-size:19px}
.sz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:6px}
.kc-szst{font-size:13px;color:var(--muted);margin:0}
.kc-szst.is-ok,[data-paste-out].is-ok{color:var(--ok)}
.kc-szst.is-warn,[data-paste-out].is-warn{color:var(--warn)}
.kc-paste{margin-top:12px;border:1px dashed var(--line-2);border-radius:var(--r);padding:0 14px}
.kc-paste summary{cursor:pointer;display:flex;align-items:center;gap:8px;padding:12px 0;font-weight:750;font-size:14px}
.kc-paste summary .ico{color:var(--accent)}
.kc-paste .lbl{display:block;margin-bottom:8px;font-weight:600}
.kc-paste textarea{font-family:var(--mono);font-size:13px}
.kc-paste-act{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0 14px}
.kc-paste-act p{font-size:13px;margin:0;flex:1 1 220px}
.kc-hint{font-size:13px;color:var(--muted);margin:0 0 10px}
.x-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px}
.x-it{display:grid;grid-template-columns:18px 44px minmax(0,1fr);gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);cursor:pointer;transition:border-color var(--t)}
.x-it:hover{border-color:var(--line-2)}
.x-it:has(input:checked){border-color:var(--accent);background:var(--surface-2)}
.x-it input{accent-color:var(--accent);width:18px;height:18px;margin:0}
.x-it .th{width:44px;height:44px}
.x-it b{display:block;font-size:13px;line-height:1.25}
.x-it small{font-size:12px;color:var(--muted);font-family:var(--font)}
.kc-mini{display:none}
.kc-sum{position:sticky;top:140px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;box-shadow:var(--sh)}
.kc-sum .btn{white-space:normal;text-align:center}
.kc-sum .cfg-name{scroll-margin-top:150px}
.cfg-lines li span small{display:block;color:var(--muted);font-size:11.5px;font-variant-numeric:tabular-nums}
.ks-per{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;color:var(--ink-2);margin:-4px 0 0}
.ks-per b{font-variant-numeric:tabular-nums}
.ks-meta{display:grid;gap:8px;margin:0;font-size:12.5px;border-top:1px solid var(--line);padding-top:12px}
.ks-meta div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:8px}
.ks-meta dt{font-weight:800;color:var(--muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding-top:1px}
.ks-meta dd{margin:0;color:var(--ink-2)}
.kc-sum .btn[disabled]{opacity:.5;cursor:not-allowed}

/* zapytanie */
.ask{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;align-items:start}
.ask-pre{position:sticky;top:140px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.ask-sz{font-size:13px;color:var(--ink-2);margin:0}
.ask-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;display:grid;gap:16px;min-width:0}
.ask-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.ask-grid .is-wide{grid-column:1/-1}
.ask-form .field label small{font-weight:500;color:var(--muted)}
.ask-form .err:not([hidden]){display:block;margin:0}
.ask-form .check+.err{margin-top:-8px}
.ask-act{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ask-act small{color:var(--muted);font-size:12px}
.ask-done{background:var(--night);color:#ECEAD9;border:1px solid var(--night-line);border-radius:var(--r-lg);padding:22px;display:grid;gap:12px;min-width:0}
.ask-done:focus{outline:2px solid var(--focus);outline-offset:3px}
.ask-done h3{font-size:22px;font-weight:900;color:#fff}
.ask-done p{color:#CFCCB4}
.ask-done b{color:#fff}
.ask-txt{white-space:pre-wrap;word-break:break-word;background:var(--night-2);border:1px solid var(--night-line);border-radius:var(--r);padding:14px;font-family:var(--mono);font-size:12.5px;line-height:1.55;max-height:380px;overflow:auto;margin:0;color:#ECEAD9}
.ask-done .btn-ghost{color:#ECEAD9;border-color:var(--night-line);background:transparent}
.ask-done .btn-ghost:hover{border-color:var(--beam);color:var(--beam)}

/* pakiet OPW */
.km{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:32px;align-items:start}
.km-fig{position:sticky;top:140px;margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px;display:grid;gap:12px}
.km-fig img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;display:block;background:#fff;border-radius:var(--r)}
.km-fig figcaption{display:grid;gap:6px;justify-items:start;min-width:0}
.km-fig .btn{white-space:normal}
.km-fig figcaption b{font-size:16px;line-height:1.3}
.km-fig .price{font-size:22px}
.km-list{display:grid;gap:8px;counter-reset:km;list-style:none;padding:0;margin:0}
.km-row{display:grid;grid-template-columns:minmax(0,.9fr) 22px minmax(0,1.3fr);gap:8px 12px;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);counter-increment:km}
.km-item{font-weight:750;font-size:14px;line-height:1.35}
.km-item::before{content:counter(km,decimal-leading-zero);font-family:var(--mono);color:var(--accent);font-size:11.5px;margin-right:8px}
.km-arr{color:var(--muted);display:flex}
.km-ps{display:grid;gap:6px;min-width:0}
.km-p{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:center;color:var(--ink);text-decoration:none}
.km-p .th{width:44px;height:44px}
.km-p b{display:block;font-size:13px;font-weight:700;line-height:1.25}
.km-p .mono{font-size:12px;color:var(--muted)}
.km-p:hover b{color:var(--link);text-decoration:underline}
.km-note{grid-column:1/-1;display:flex;gap:6px;align-items:flex-start;font-size:12px;color:var(--warn);line-height:1.4}
.km-note .ico{flex:none;margin-top:1px}
.km-sum{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin:14px 0}
.km-sum div{background:var(--surface);padding:12px 14px;display:grid;gap:2px}
.km-sum span{font-size:12px;color:var(--muted)}
.km-sum b{font-size:21px;font-variant-numeric:tabular-nums}
.km-r .src-note{margin-top:12px}

/* FAQ */
.km-faq .wrap{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:40px;align-items:start}
.km-faq-l{display:grid;gap:12px;align-content:start}
.km-faq-l .h-sec{margin:0}
.km-faq-l>p{color:var(--ink-2)}
.km-faq-l .km-contact{margin-top:6px}
.faq .faq-it p.src-note{margin:-8px 0 0;padding-bottom:18px}
.km-faq-r .mk-note{margin-top:18px}

@media (max-width:1100px){.kc{grid-template-columns:minmax(0,1fr) 300px}.km{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}
@media (max-width:980px){
  .km-side{min-width:0;width:100%}
  .km-faq .wrap{grid-template-columns:minmax(0,1fr);gap:22px}
  .km{grid-template-columns:minmax(0,1fr)}
  .km-fig{position:static;grid-template-columns:180px minmax(0,1fr);align-items:center}
}
@media (max-width:860px){
  .kc{grid-template-columns:minmax(0,1fr)}
  .kc-sum{position:static}
  .kc-mini{display:flex;position:sticky;bottom:72px;z-index:20;justify-content:space-between;align-items:center;gap:12px;background:var(--night);color:#fff;border:1px solid var(--night-line);border-radius:var(--r-lg);padding:10px 14px;text-decoration:none;box-shadow:var(--sh-lg)}
  .kc-mini span{display:flex;align-items:center;gap:8px}
  .kc-mini span:first-child{display:grid;gap:0}
  .kc-mini small{font-size:11.5px;color:#CFCCB4}
  .kc-mini b{font-size:18px;font-variant-numeric:tabular-nums}
  .kc-mini span:last-child{font-weight:800;color:var(--beam);font-size:14px}
  .ask{grid-template-columns:minmax(0,1fr)}
  .ask-pre{position:static}
}
@media (max-width:560px){
  .ask-grid{grid-template-columns:minmax(0,1fr)}
  .ask-form{padding:16px}
  .kc-step{padding:14px 12px 16px}
  .kt-list,.x-grid{grid-template-columns:minmax(0,1fr)}
  .kt-in{grid-template-columns:48px minmax(0,1fr);padding-right:12px}
  .kt-in .th{width:48px;height:48px}
  .kt .price{grid-column:2}
  .sz-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .km-row{grid-template-columns:minmax(0,1fr);padding:10px 12px}
  .km-arr{display:none}
  .km-fig{grid-template-columns:110px minmax(0,1fr)}
  .km-sum b{font-size:17px}
  .km-kpi{gap:12px 22px}
  .km-kpi b{font-size:26px}
  .km-kpi b.is-t{font-size:18px;line-height:26px}
}

/* ---------------------------------------------------------------- KOSZYK (kasa jednokrokowa) */
.co-steps{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.co-steps a{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px 0 6px;border:1px solid var(--line-2);border-radius:99px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:750;text-decoration:none;transition:border-color var(--t)}
.co-steps a:hover{border-color:var(--accent)}
.co-steps b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-family:var(--mono);font-size:12px}
.co-sec{padding-top:0}
.co{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}
.co-main{display:grid;gap:16px;min-width:0}
.co-box{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-lg);padding:18px 20px 20px;min-width:0;scroll-margin-top:140px}
.co-bh{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.co-bh b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-family:var(--mono);font-size:13px;letter-spacing:0}
.co-bh .mono{margin-left:auto;font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--muted)}
.co-box>.src-note{margin-bottom:0}

/* pasek darmowej dostawy */

/* linie koszyka */
.ci-list{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--line)}
.ci{display:grid;grid-template-columns:72px minmax(0,1fr) 124px 128px 40px;grid-template-areas:"ph t q p rm";gap:8px 16px;align-items:center;padding:16px 0;border-top:1px solid var(--line)}
.ci-ph{grid-area:ph;display:block}
.ci-ph .th{width:72px;height:72px}
.ci-t{grid-area:t;display:grid;gap:3px;min-width:0;justify-items:start}
.ci-t .brand{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ci-nm{font-weight:750;font-size:15px;line-height:1.3;color:var(--ink);text-decoration:none}
.ci-nm:hover{color:var(--link);text-decoration:underline}
.ci-opt{font-size:12.5px;color:var(--ink-2)}
.ci-why{font-size:12px;line-height:1.4;color:var(--accent)}
.ci .avail{margin-top:2px}
.ci-q{grid-area:q;grid-template-columns:34px minmax(0,1fr) 34px;padding:4px}
.ci-q .inp{min-height:34px}
.ci-p{grid-area:p;display:grid;justify-items:end;gap:2px;text-align:right}
.ci-p .price{font-size:18px}
.ci-p small{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.ci-rm{grid-area:rm;display:grid;place-items:center;width:40px;height:40px;border:1px solid transparent;border-radius:var(--r);background:none;color:var(--muted);transition:color var(--t),border-color var(--t)}
.ci-rm:hover{color:var(--bad);border-color:var(--line-2)}
.ci-undo{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap;margin:12px 0 0;padding:10px 14px;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line);font-size:13.5px;color:var(--ink-2)}

/* podpowiedzi do Viking Pro */
.sg-box{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);display:grid;gap:12px;min-width:0}
.sg-box h3{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin:0;font-size:15px;font-weight:800}
.sg-box h3 .ico{color:var(--beam-d)}
.sg-box h3 small{font-size:12px;font-weight:600;color:var(--muted)}
.sg-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.sg{display:grid;grid-template-columns:52px minmax(0,1fr) auto;grid-template-areas:"i t t" "i p b";gap:6px 12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.sg .th{grid-area:i;width:52px;height:52px;align-self:start}
.sg-t{grid-area:t;display:grid;gap:2px;min-width:0}
.sg-t b{font-size:13.5px;line-height:1.3}
.sg-t small{font-size:11.5px;line-height:1.4;color:var(--muted)}
.sg .price{grid-area:p;font-size:16px}
.sg .btn{grid-area:b;justify-self:end}

/* dostawa i płatność */
.co-opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.co-opt{position:relative;display:block;cursor:pointer}
.co-opt input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.co-opt-in{position:relative;display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:center;height:100%;padding:12px 40px 12px 14px;border:1.5px solid var(--line-2);border-radius:var(--r);background:var(--surface);transition:border-color var(--t)}
.co-opt-in::after{content:"";position:absolute;top:50%;right:14px;width:16px;height:16px;margin-top:-8px;border:1.5px solid var(--line-2);border-radius:50%;box-sizing:border-box;transition:border var(--t)}
.co-opt-in .ico{width:22px;height:22px;color:var(--accent)}
.co-opt-in b{display:block;font-size:14px;line-height:1.25}
.co-opt-in small{display:block;margin-top:2px;font-size:12px;line-height:1.35;color:var(--muted)}
.co-opt:hover .co-opt-in{border-color:var(--ink-2)}
.co-opt input:checked+.co-opt-in{border-color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent);background:var(--surface-2)}
.co-opt input:checked+.co-opt-in::after{border:5px solid var(--accent)}
.co-opt input:focus-visible+.co-opt-in{outline:2px solid var(--focus);outline-offset:2px}
.co-pay{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.co-opt-in .price{grid-column:2;font-size:14px;font-weight:800}
.co-pay.is-off{opacity:.45}
.co-pay.is-off .co-opt,.co-pay.is-off .co-opt input{cursor:not-allowed}
.co-cod{display:flex;gap:8px;align-items:flex-start;margin:0 0 12px;padding:10px 12px;border:1px solid var(--accent);border-radius:var(--r);font-size:14px}
.co-cod .ico{flex:none;color:var(--accent);margin-top:2px}
.co-locker{margin-top:14px;max-width:320px}
.co-eta{display:flex;align-items:center;gap:8px;margin:14px 0 0;font-size:14px;color:var(--ink-2)}
.co-eta .ico{flex:none;color:var(--accent)}
.co-eta b{color:var(--ink)}

/* dane */
.co-who{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;margin-bottom:16px;border:1px solid var(--line-2);border-radius:var(--r);background:var(--surface-2)}
.co-tab{position:relative;cursor:pointer}
.co-tab input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.co-tab span{display:block;padding:9px 14px;border-radius:4px;font-size:13.5px;font-weight:700;color:var(--ink-2);transition:background var(--t),color var(--t)}
.co-tab:hover span{color:var(--ink)}
.co-tab input:checked+span{background:var(--accent);color:var(--accent-ink)}
.co-tab input:focus-visible+span{outline:2px solid var(--focus);outline-offset:1px}
.co .field label small{font-weight:500;color:var(--muted)}
.co .err:not([hidden]){display:block;margin:0}
.co .check+.err{margin-top:-6px}

/* podsumowanie */
.co-sum{position:sticky;top:140px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;box-shadow:var(--sh)}
.co-sum .btn{white-space:normal;text-align:center}
.co-sum .cfg-name{scroll-margin-top:150px}
.co-sum .check{font-size:13px;line-height:1.45}
.co-star{margin:-4px 0 0;font-size:12px;color:var(--muted)}
.co-vat{margin:0;font-size:12.5px;color:var(--muted)}
.co-vat b{color:var(--ink-2)}
.co-trust{list-style:none;margin:0;padding:12px 0 0;border-top:1px solid var(--line);display:grid;gap:8px}
.co-trust li{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink-2)}
.co-trust .ico{flex:none;color:var(--accent)}
.co-sum .mk-note{font-size:12.5px}
.co-mbar{display:none}
.co-done{max-width:860px}
.co-done h2{margin:0;font-size:24px;font-weight:900;color:#fff}
.co-done p{margin:0}
.co-empty{max-width:680px;margin:0 auto}
.co-empty p{margin:0}
.co-empty .btn{justify-self:center;margin-top:8px}

@media (max-width:1100px){
  .co{grid-template-columns:minmax(0,1fr) 320px}
  .ci{grid-template-columns:64px 124px minmax(0,1fr) 40px;grid-template-areas:"ph t t rm" "ph q p p";gap:10px 14px}
  .ci-ph .th{width:64px;height:64px}
}
@media (max-width:860px){
  .co{grid-template-columns:minmax(0,1fr)}
  .co-sum{position:static}
  .co-mbar{display:flex;position:sticky;bottom:72px;z-index:20;justify-content:space-between;align-items:center;gap:12px;background:var(--night);color:#fff;border:1px solid var(--night-line);border-radius:var(--r-lg);padding:10px 14px;text-decoration:none;box-shadow:var(--sh-lg)}
  .co-mbar span{display:flex;align-items:center;gap:8px}
  .co-mbar span:first-child{display:grid;gap:0}
  .co-mbar small{font-size:11.5px;color:#CFCCB4}
  .co-mbar b{font-size:18px;font-variant-numeric:tabular-nums}
  .co-mbar span:last-child{font-weight:800;color:var(--beam);font-size:14px}
}
@media (max-width:560px){
  .co-box{padding:14px 12px 16px}
  .co-steps a{padding-right:12px;font-size:12.5px}
  .ci{grid-template-columns:56px 96px minmax(0,1fr) 36px;grid-template-areas:"ph t t rm" "q q p p";gap:10px}
  .ci-ph .th{width:56px;height:56px}
  .ci-q{width:124px}
  .ci-rm{width:36px;height:36px}
  .sg-box{padding:12px}
  .sg-list{grid-template-columns:minmax(0,1fr)}
  .co-who{display:flex}
  .co-tab{flex:1 1 140px}
  .co-tab span{text-align:center}
}

/* ================================================================ STYL LANDINGU W SKLEPIE (decyzja Arka 2026-10-22: „cały nowy layout”)
   Wzór: landing/src/landing.css — karta z tekstem i sceną (Peli 1560 w wiązce latarki), pasek liczb, siatka z poświatą, kontakt z „Kopiuj adres”. */
@property --x{syntax:'<percentage>';inherits:true;initial-value:50%}
@property --y{syntax:'<percentage>';inherits:true;initial-value:46%}
/* siatka HUD w tle stron, wygaszana ku brzegom (pod treścią, nie zasłania produktów) */
body{background:radial-gradient(ellipse 80% 55% at 50% 0,transparent 0,var(--bg) 100%) 0 0/100% 1400px no-repeat,
  linear-gradient(rgba(127,149,64,.09) 1px,transparent 1px) 0 0/44px 44px,linear-gradient(90deg,rgba(127,149,64,.09) 1px,transparent 1px) 0 0/44px 44px,var(--bg)}

.l-hero{padding-top:6px;padding-bottom:30px}
.l-hero>.src-note{margin-top:10px}
.l-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-lg)}
.l-copy{padding:clamp(26px,3.4vw,46px);display:flex;flex-direction:column;gap:0}
.l-copy h1{font-size:clamp(32px,3.8vw,52px);font-weight:900;text-transform:uppercase;letter-spacing:-.025em;line-height:.98;margin:14px 0 16px;text-wrap:balance}
.l-copy h1 span{display:block;color:var(--accent)}
:root[data-theme="dark"] .l-copy h1 span,:root[data-theme="nv"] .l-copy h1 span{color:var(--beam)}
.l-copy .lead{max-width:36em}
.l-copy .cs-jump{margin-top:22px;min-width:0}
.l-contact{display:flex;flex-wrap:wrap;gap:8px 24px;margin:18px 0 0;padding:0;list-style:none;font-size:14px;color:var(--muted)}
.l-contact li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}
.l-contact .ico{color:var(--sage)}
.l-contact a{font-weight:700}
.l-contact .hrs{font-size:13px}
.copy-btn{border:1px solid var(--line-2);background:transparent;color:var(--ink-2);border-radius:99px;min-height:30px;padding:2px 11px;font-size:12.5px;cursor:pointer}
.copy-btn:hover{border-color:var(--sage)}
.copied{color:var(--ok);font-size:13px;font-weight:600}
.copied:empty{display:none}
.footer .copy-btn{color:#CFCCB4;border-color:var(--night-line);min-height:26px;margin-left:4px}
.footer .copied{color:var(--beam);margin-left:6px}

/* scena: zawsze ciemna, wiązka przesuwa się powoli, pod kursorem podąża za nim */
.l-stage{position:relative;display:flex;flex-direction:column;background:#0A0A06;color:#ECEAD9;isolation:isolate;overflow:hidden;touch-action:pan-y;
  --x:50%;--y:46%;transition:--x .45s cubic-bezier(.3,.7,.3,1),--y .45s cubic-bezier(.3,.7,.3,1)}
.l-stage::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(rgba(127,149,64,.16) 1px,transparent 1px) 0 0/44px 44px,linear-gradient(90deg,rgba(127,149,64,.16) 1px,transparent 1px) 0 0/44px 44px}
.l-stage.is-idle{animation:l-sweep 11s ease-in-out infinite alternate}
@keyframes l-sweep{0%{--x:43%;--y:42%}35%{--x:56%;--y:47%}70%{--x:47%;--y:53%}100%{--x:54%;--y:43%}}
.l-shot{--pt:54px;--px:30px;--pb:18px;position:relative;flex:1;min-height:340px;margin:0;
  background:radial-gradient(ellipse 50% 54% at var(--x) var(--y),#FFF7E4 0,#F6E9C8 34%,rgba(214,190,128,.62) 58%,rgba(90,78,40,.28) 78%,transparent 100%)}
.l-shot img{position:absolute;left:var(--px);top:var(--pt);width:calc(100% - 2 * var(--px));height:calc(100% - var(--pt) - var(--pb));
  object-fit:contain;mix-blend-mode:multiply;user-select:none;-webkit-user-drag:none}
.st-tag{position:absolute;right:20px;top:18px;z-index:1;display:flex;flex-direction:column;gap:1px;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;
  text-transform:uppercase;color:#F6E7C3;padding:7px 12px 7px 14px;border-left:2px solid var(--beam);background:rgba(10,10,6,.72);line-height:1.35}
.st-tag b{font-family:var(--font);font-size:18px;letter-spacing:-.01em;text-transform:none;color:#fff;font-weight:850}
.st-tag::before{content:"";position:absolute;left:-7px;top:-7px;width:12px;height:12px;border:2px solid var(--beam);border-radius:50%;background:#0A0A06}
.l-readout{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 12px;margin:0;padding:16px 22px 18px;
  background:rgba(20,19,11,.94);border-top:1px solid var(--night-line)}
.l-readout>div{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:2px;min-width:0}
.l-readout dt{font-size:12px;line-height:1.3;color:#A3A086}
.l-readout dt a{color:inherit;text-decoration:none;border-bottom:1px dotted #6E6B55}
.l-readout dt a:hover{color:var(--beam);border-color:var(--beam)}
.l-readout dd{margin:0;font-size:22px;font-weight:850;line-height:1.1;color:#ECEAD9;font-variant-numeric:tabular-nums}
.l-readout .ro-all{grid-column:1/-1;flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--night-line)}
.l-readout .ro-all dd{font-size:34px;color:var(--beam)}
.l-readout .ro-all dt{font-size:13.5px;color:#CFCCB4}
.l-readout .ro-all dt small{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#8F8C74}

/* stopka: „Sklep 4DUTY prowadzi” */
.f-firm{margin-top:18px}
.f-firm h4{margin:0 0 8px;color:#8F8C74}
.f-firm p{display:flex;gap:10px;align-items:flex-start;margin:0;padding-top:10px;border-top:1px solid var(--night-line);font-size:13.5px;line-height:1.5;color:#CFCCB4}
.f-firm .ico{color:var(--sage-l);margin-top:1px}
.f-firm b{color:#ECEAD9}

@media (max-width:980px){
  .l-card{grid-template-columns:1fr}
  .l-shot{flex:none;min-height:0;height:clamp(300px,60vw,420px)}
}
@media (max-width:560px){
  .l-copy{padding:22px 18px 24px}
  .l-copy h1{font-size:clamp(28px,8.4vw,36px)}
  .l-shot{--pt:84px;--px:16px;--pb:14px;height:clamp(300px,92vw,380px)}
  .st-tag{right:14px;top:14px}
  .l-readout{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px 16px 16px}
  .l-readout .ro-all dd{font-size:30px}
}
@media (prefers-reduced-motion:reduce){.l-stage.is-idle{animation:none}}

/* ================================================================ EKRANY: KONTAKT, KONTO, ULUBIONE, REGULAMIN, POLITYKA (decyzja Arka 2026-10-22) */
/* kontakt: karta w stylu landingu, po prawej ciemny panel kanałów */
.kt-card{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.kt-jump{margin-top:22px}
.kt-stage{position:relative;display:flex;flex-direction:column;gap:16px;padding:clamp(22px,3vw,38px);background:#0A0A06;color:#ECEAD9;isolation:isolate}
.kt-stage::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 70% 60% at 80% 10%,rgba(246,190,80,.16),transparent 70%),
  linear-gradient(rgba(127,149,64,.16) 1px,transparent 1px) 0 0/44px 44px,linear-gradient(90deg,rgba(127,149,64,.16) 1px,transparent 1px) 0 0/44px 44px}
.kt-ch{display:grid;gap:10px}
.kt-ch li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:start;padding:14px;border:1px solid var(--night-line);border-radius:var(--r);background:rgba(20,19,11,.86)}
.kt-ch .ico{width:24px;height:24px;margin:8px;color:var(--beam)}
.kt-ch div{display:grid;gap:1px;min-width:0}
.kt-ch small{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#8F8C74}
.kt-ch a{font-size:17px;font-weight:850;color:#fff;text-decoration:none;overflow-wrap:anywhere}
.kt-ch a:hover{color:var(--beam);text-decoration:underline}
.kt-ch span{font-size:13px;color:#BDBAA2}
.kt-sec{padding-top:8px}
.kt-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:28px;align-items:start}
.kt-main{min-width:0;scroll-margin-top:140px}
.kt-h2{font-size:clamp(24px,2.6vw,32px);margin-top:8px}
.kt-to{display:flex;align-items:center;gap:8px;margin:0;font-size:13.5px;color:var(--ink-2)}
.kt-to .ico{color:var(--accent)}
.kt-side{display:grid;gap:16px;min-width:0;position:sticky;top:140px;scroll-margin-top:140px}
.kt-firm{display:flex;gap:10px;align-items:flex-start;margin:0 0 10px;font-size:14.5px;line-height:1.55}
.kt-firm .ico{color:var(--accent);margin-top:2px}
.kt-small{font-size:13.5px;color:var(--ink-2);margin:0}
.kt-faq{display:grid;gap:2px}
.kt-faq li{display:grid;gap:1px;padding:9px 0;border-top:1px solid var(--line)}
.kt-faq li:first-child{border-top:0;padding-top:0}
.kt-faq a{font-weight:750}
.kt-faq span{font-size:12.5px;color:var(--muted)}

/* konto */
.ac-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;align-items:start}
.ac-col{display:grid;gap:16px;min-width:0}
.ac-reset .kt-small{margin-top:-6px}
.ac-msg{margin:0;padding:10px 12px;border:1px solid var(--accent);border-radius:var(--r);font-size:13.5px}
.ac-guest p{margin:0 0 12px;font-size:14px;color:var(--ink-2)}
.ac-rules{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12.5px;color:var(--muted)}
.ac-rules li{display:flex;align-items:center;gap:6px}
.ac-rules li::before{content:"";width:8px;height:8px;border-radius:50%;border:1.5px solid var(--line-2)}
.ac-rules li.is-ok{color:var(--ok)}
.ac-rules li.is-ok::before{background:var(--ok);border-color:var(--ok)}
.ac-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.ac-head .h-sec{margin-top:8px;overflow-wrap:anywhere}
[data-ac-panel]:focus{outline:none}
[data-ac-panel] .mk-note{margin-top:18px}
.ac-dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:0}
.ac-dl div{padding:14px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.ac-dl dt{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ac-dl dd{margin:4px 0 0;font-weight:700;overflow-wrap:anywhere}
.tabs [role="tab"] .mono{margin-left:4px;color:var(--accent)}

/* ulubione */
.fv-n{font-size:.42em;letter-spacing:0;text-transform:none;color:var(--muted);vertical-align:middle;margin-left:6px}
.fv-sec{padding-top:0;display:block}
.fv-sec .wrap{display:grid;gap:14px}
.fv-shared{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px 12px;align-items:start;padding:14px 16px;border:1px solid var(--accent);border-radius:var(--r-lg);background:var(--surface)}
.fv-shared>.ico{color:var(--accent);margin-top:2px}
.fv-shared p{margin:0}
.fv-shared .ask-act{grid-column:2}
.fv-gone,.fv-nostore{margin:0;padding:10px 14px;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line);font-size:13.5px;color:var(--ink-2)}
.uf-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
.fv-share{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;flex:1 1 360px;min-width:0}
.fv-share label{font-size:12.5px;font-weight:700;color:var(--ink-2)}
.fv-share .inp{flex:1 1 200px;min-width:0;min-height:36px;padding:6px 10px;font-family:var(--mono);font-size:12px}
.fv-list:empty{display:none}
.fv-it{grid-template-columns:72px minmax(0,1fr) auto auto;grid-template-areas:"ph t p a"}
.fv-act{grid-area:a;display:flex;align-items:center;gap:6px}
.fv-act .ci-rm{grid-area:auto}

/* regulamin i polityka */
.doc-sec{padding-top:0}
.doc{display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px;align-items:start}
.doc-toc{position:sticky;top:140px;display:grid;gap:10px;padding:16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
.doc-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.doc-toc a{display:block;padding:5px 0;font-size:13.5px;font-weight:650;color:var(--ink-2);text-decoration:none}
.doc-toc a:hover{color:var(--link);text-decoration:underline}
.doc-body{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;max-width:78ch}
.doc-body>section{min-width:0;padding:20px 22px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);scroll-margin-top:140px}
.doc-body h2{display:flex;align-items:baseline;gap:12px;margin:0 0 12px;font-size:19px;font-weight:850}
.doc-body h2 b{font-family:var(--mono);font-size:13px;color:var(--accent);letter-spacing:.06em;flex:none}
.doc-body p,.doc-body li{color:var(--ink-2);line-height:1.65}
.doc-body p+p{margin-top:10px}
.doc-body>section>ol{margin:0;padding-left:22px;display:grid;gap:8px}
.doc-body address{font-style:normal;margin:8px 0;padding:10px 14px;border-left:3px solid var(--accent);background:var(--surface-2);color:var(--ink);line-height:1.6}
.doc-ul{list-style:disc;margin:6px 0 0;padding-left:20px;display:grid;gap:3px}
.doc-alpha{list-style:lower-alpha;margin:8px 0;padding-left:24px}
.doc-tbl{overflow-x:auto;margin:10px 0 4px}
.doc-tbl table{width:100%;border-collapse:collapse;font-size:14px}
.doc-tbl th,.doc-tbl td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.doc-tbl thead th{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.doc-tbl td.num{text-align:right;font-weight:800;white-space:nowrap;color:var(--ink)}
.doc-tbl code{font-family:var(--mono);font-size:12.5px}
.doc-body .mk-note{margin:0}
.doc-body .src-note{overflow-wrap:anywhere}

@media (max-width:980px){
  .kt-card{grid-template-columns:1fr}
  .kt-grid,.ac-grid{grid-template-columns:minmax(0,1fr)}
  .kt-side{position:static}
  .doc{grid-template-columns:minmax(0,1fr);gap:16px}
  .doc-toc{position:static}
  .doc-toc ol{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));column-gap:16px}
}
@media (max-width:560px){
  .kt-stage{padding:18px 14px}
  .kt-ch li{grid-template-columns:30px minmax(0,1fr);gap:8px;padding:12px}
  .kt-ch .ico{margin:4px 0 0}
  .fv-it{grid-template-columns:56px minmax(0,1fr) auto;grid-template-areas:"ph t t" "ph p a";gap:8px 10px}
  .fv-it .ci-ph .th{width:56px;height:56px}
  .fv-shared .ask-act{grid-column:1/-1}
  .doc-body>section{padding:16px 14px}
  .doc-body>section>ol{padding-left:18px}
}
@media print{
  .topbar,.site-header,.drawer,.nl,.footer,.bottomnav,.to-top,.toast,.crumbs,.doc-toc,[data-print],.mk-note,.src-note{display:none!important}
  body{background:#fff;padding:0}
  .doc{grid-template-columns:1fr}
  .doc-body>section{border:0;padding:0 0 12px;break-inside:avoid}
}
