/* Spiżarnia Baby Jagi — sbj-shop.css v3.0 */
:root{
  --g:#4a7c3f;--gm:#5a9050;--gl:#74aa64;
  --a:#c8780a;--al:#e8a020;
  --cr:#f7f9f3;--cd:#eaf0e2;
  --br:#2e2a20;--bl:#5a5040;
  --wh:#fbfdf8;--bo:#cdd9be;
  --sh:rgba(30,50,20,.10);
  --tb:#eef5e8;--tt:#3d6b32;
}
#sbj-shop-wrap{font-family:'Nunito',sans-serif;background:#f2f6ee;color:var(--br);overflow-x:hidden}
#sbj-shop-wrap *{box-sizing:border-box}

/* [SBJ-Patch v3.9.31] Pełna szerokość kolorowych sekcji — usuwa białe marginesy
   po bokach na dużych ekranach, niezależnie od szerokości kontenera motywu WP */
.sbj-topbar,.sbj-hero,.sbj-story,.sbj-badges-strip,.sbj-testi,.sbj-footer,.sbj-withdraw-sec{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}

/* HERO */
.sbj-hero{background:linear-gradient(135deg,#4a7c3f 0%,#5a9050 50%,#6aaa5a 100%);padding:36px 24px 28px;text-align:center;color:var(--cr);position:relative;overflow:hidden}
.sbj-hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E") repeat}
.sbj-hero h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(24px,4vw,38px);font-weight:700;line-height:1.2;position:relative;text-shadow:0 2px 12px rgba(0,0,0,.3);margin-bottom:8px}
.sbj-hero h1 em{font-style:italic;color:#e8a020}
.sbj-hero p{font-size:15px;opacity:.88;position:relative}
.sbj-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;position:relative}
.sbj-badge{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:4px 13px;font-size:12px;font-weight:600}

/* [SBJ-Patch v3.9.33] NASZA HISTORIA — zdjęcia + osobisty tekst */
.sbj-story{background:var(--cr);padding:44px 24px}
.sbj-story-in{max-width:1100px;margin:0 auto}
.sbj-story-quote{text-align:center;font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:clamp(16px,2.4vw,20px);color:var(--tt);max-width:640px;margin:0 auto 32px}
.sbj-story-grid{display:grid;grid-template-columns:1fr 2fr 1fr;gap:28px;align-items:center}
.sbj-story-photos{display:flex;flex-direction:column;gap:18px;align-items:center}
.sbj-story-photo{width:100%;max-width:220px;aspect-ratio:1;object-fit:cover;border-radius:50%;box-shadow:0 8px 24px var(--sh);border:4px solid var(--wh)}
.sbj-story-photo-sm{max-width:150px;align-self:flex-end}
.sbj-story-photos-r .sbj-story-photo-sm{align-self:flex-start}
.sbj-story-text{text-align:center;padding:0 8px}
.sbj-story-text h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(26px,4vw,40px);font-weight:700;line-height:1.2;color:var(--g);margin-bottom:14px}
.sbj-story-text h1 em{font-style:italic;color:var(--a)}
.sbj-story-text p{font-size:15px;line-height:1.75;color:var(--bl)}
.sbj-story-sig{margin-top:14px;font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:18px;color:var(--g)!important}
.sbj-badges-strip{background:var(--tb);padding:14px 24px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;border-top:1px solid var(--bo);border-bottom:1px solid var(--bo)}
.sbj-badges-strip .sbj-badge{background:var(--wh);border:1px solid var(--bo);color:var(--tt)}

@media (max-width:820px){
  .sbj-story-grid{grid-template-columns:1fr}
  .sbj-story-photos{flex-direction:row;justify-content:center;order:1;margin-bottom:20px}
  .sbj-story-photo{max-width:110px}
  .sbj-story-photo-sm{max-width:84px;align-self:center}
  .sbj-story-text{order:2}
}

/* TESTIMONIALS */
.sbj-testi{padding:28px 0 24px;background:linear-gradient(135deg,#4a7c3f 0%,#5a9050 100%);position:relative;overflow:hidden}
.sbj-testi::before{content:'';position:absolute;inset:0;opacity:.04;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4z'/%3E%3C/g%3E%3C/svg%3E") repeat}
.sbj-testi-hd{text-align:center;margin-bottom:18px;position:relative}
.sbj-testi-hd h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(18px,3vw,26px);color:#fff;font-weight:700}
.sbj-testi-hd p{font-size:13px;color:rgba(255,255,255,.75);margin-top:4px}
.sbj-src-badges{display:flex;justify-content:center;gap:10px;margin-top:8px}
.sbj-src-b{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:20px;padding:3px 13px;font-size:11px;font-weight:600;color:#fff}
.sbj-twrap{position:relative}
.sbj-track{display:flex;gap:14px;overflow-x:scroll;padding:4px 24px 14px;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;max-width:1200px;margin:0 auto}
.sbj-track::-webkit-scrollbar{display:none}
.sbj-tarr{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.25);border:1.5px solid rgba(255,255,255,.45);color:#fff;border-radius:50%;width:36px;height:36px;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;z-index:10;line-height:1}
.sbj-tarr:hover{background:rgba(255,255,255,.4)}
.sbj-tarr-l{left:4px}
.sbj-tarr-r{right:4px}
.sbj-tcard{background:#fff;border-radius:16px;padding:16px 18px;min-width:258px;max-width:275px;flex-shrink:0;box-shadow:0 4px 20px rgba(0,0,0,.15);display:flex;flex-direction:column;gap:9px}
.sbj-tctop{display:flex;align-items:center;gap:10px}
.sbj-tcav{width:40px;height:40px;border-radius:50%;background:var(--cd);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:var(--g)}
.sbj-tcname{font-size:13px;font-weight:700;color:var(--br)}
.sbj-tcsrc{font-size:10px;color:#aaa;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.sbj-tcstars{color:#f5a623;font-size:14px;letter-spacing:1px}
.sbj-tctxt{font-size:12px;line-height:1.65;color:var(--br);flex:1}
.sbj-tcdate{font-size:10px;color:#bbb;align-self:flex-end}

/* LAYOUT */
.sbj-layout{display:grid;grid-template-columns:1fr 310px;max-width:1200px;margin:0 auto;align-items:start}
.sbj-main{padding:20px 18px 40px 22px}

/* SEARCH MOBILE */
.sbj-search-mob{display:none;position:relative;margin-bottom:14px}
.sbj-search-mob input{width:100%;padding:10px 16px 10px 38px;border:1.5px solid var(--bo);border-radius:24px;font-size:14px;background:var(--wh);outline:none;font-family:'Nunito',sans-serif}
.sbj-search-mob input:focus{border-color:var(--g)}
.sbj-sico{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:15px;opacity:.6}

/* FILTERS */
.sbj-fbar{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--bo);justify-content:center}
.sbj-fbtn{background:var(--wh);border:1.5px solid var(--bo);border-radius:20px;padding:6px 14px;font-family:'Nunito',sans-serif;font-size:12px;font-weight:600;color:var(--bl);cursor:pointer;transition:all .15s;white-space:nowrap}
.sbj-fbtn:hover{border-color:var(--g);color:var(--g);background:var(--tb)}
.sbj-fbtn.active{background:var(--g);border-color:var(--g);color:#fff}

/* SKELETON */
@keyframes sbj-shimmer{0%{background-position:-400px 0}100%{background-position:400px 0}}
.sbj-skel{background:var(--wh);border:1.5px solid var(--bo);border-radius:16px;overflow:hidden}
.sbj-skel-img{aspect-ratio:1;background:linear-gradient(90deg,var(--cd) 25%,#f0f7e8 50%,var(--cd) 75%);background-size:400px 100%;animation:sbj-shimmer 1.4s infinite linear}
.sbj-skel-txt{height:13px;margin:12px 12px 5px;border-radius:5px;background:linear-gradient(90deg,var(--cd) 25%,#f0f7e8 50%,var(--cd) 75%);background-size:400px 100%;animation:sbj-shimmer 1.4s infinite linear}
.sbj-skel-txt.sbj-skel-s{width:55%;height:18px}
.sbj-skel-btn{height:28px;margin:8px 12px 12px;border-radius:7px;background:linear-gradient(90deg,var(--cd) 25%,#f0f7e8 50%,var(--cd) 75%);background-size:400px 100%;animation:sbj-shimmer 1.4s infinite linear}

/* GRID */
.sbj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(162px,1fr));gap:14px}
@keyframes sbj-fu{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.sbj-pcard{background:var(--wh);border:1.5px solid var(--bo);border-radius:16px;overflow:hidden;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;flex-direction:column;animation:sbj-fu .28s ease both}
.sbj-pcard:hover{border-color:var(--gl);box-shadow:0 6px 24px var(--sh);transform:translateY(-2px)}
.sbj-pcard.oos{opacity:.6}
.sbj-pimgw{position:relative;cursor:pointer;overflow:hidden;aspect-ratio:1;background:var(--cd)}
.sbj-pimgw img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}
.sbj-pimgw:hover img{transform:scale(1.05)}
.sbj-pov{position:absolute;inset:0;background:rgba(74,124,63,.72);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;opacity:0;transition:opacity .2s;font-family:'Nunito',sans-serif}
.sbj-pimgw:hover .sbj-pov{opacity:1}
.sbj-ptags{position:absolute;top:7px;left:7px;display:flex;flex-wrap:wrap;gap:3px;z-index:2}
.sbj-tag{background:var(--tb);color:var(--tt);border-radius:8px;padding:2px 7px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.sbj-tag.a{background:#fff3dc;color:#8a5a00}
.sbj-tag.new{background:#e8f4d0;color:var(--g)}
.sbj-oos-badge{position:absolute;bottom:7px;right:7px;background:rgba(0,0,0,.6);color:#fff;font-size:10px;font-weight:700;border-radius:6px;padding:2px 7px}
.sbj-pbody{padding:10px 11px 12px;flex:1;display:flex;flex-direction:column;gap:7px}
.sbj-pname{font-family:'Playfair Display',Georgia,serif;font-size:13px;font-weight:600;line-height:1.35;color:var(--br);flex:1;cursor:pointer;transition:color .15s}
.sbj-pname:hover{color:var(--gm);text-decoration:underline;text-underline-offset:2px}
.sbj-pprice{font-size:17px;font-weight:800;color:var(--g)}
.sbj-pprice del{font-size:12px;color:#bbb;font-weight:400}
.sbj-qrow{display:flex;align-items:center;background:var(--cr);border:1.5px solid var(--bo);border-radius:9px;overflow:hidden}
.sbj-qbtn{background:transparent;border:none;width:30px;height:30px;font-size:17px;cursor:pointer;color:var(--g);font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .1s}
.sbj-qbtn:hover{background:var(--cd)}
.sbj-qdsp{flex:1;text-align:center;font-size:13px;font-weight:700;color:var(--br)}
.sbj-abtn{background:var(--g);color:#fff;border:none;border-radius:9px;padding:9px 10px;min-height:38px;font-family:'Nunito',sans-serif;font-size:12px;font-weight:700;cursor:pointer;width:100%;transition:background .2s,transform .15s;display:flex;align-items:center;justify-content:center;gap:5px}
.sbj-abtn:hover{background:var(--gl)}
.sbj-abtn.added{background:var(--a)}
.sbj-abtn.disabled{background:#bbb;cursor:not-allowed}
.sbj-abtn.pulse{transform:scale(1.06)}

/* PAGINATION */
.sbj-pagination{display:flex;justify-content:center;gap:8px;margin-top:28px;flex-wrap:wrap}
.sbj-pgbtn{background:var(--wh);border:1.5px solid var(--bo);border-radius:10px;padding:8px 16px;font-family:'Nunito',sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s;color:var(--bl)}
.sbj-pgbtn:hover{border-color:var(--g);color:var(--g)}
.sbj-pgbtn.active{background:var(--g);border-color:var(--g);color:#fff;cursor:default}

/* CART SIDEBAR */
.sbj-cart{background:var(--wh);border-left:1.5px solid var(--bo);position:sticky;top:80px;max-height:calc(100vh - 80px);display:flex;flex-direction:column;overflow:hidden}
.sbj-chdr{background:var(--g);color:#fff;padding:14px 18px;font-family:'Playfair Display',Georgia,serif;font-size:17px;font-weight:700;display:flex;align-items:center;gap:10px;flex-shrink:0}
.sbj-citems{flex:1;overflow-y:auto}
.sbj-cempty{padding:36px 18px;text-align:center;color:#aaa}
.sbj-cempty-ico{font-size:44px;margin-bottom:10px}
.sbj-cempty p{font-size:13px;line-height:1.6}
.sbj-ci{display:flex;gap:10px;align-items:flex-start;padding:11px 14px;border-bottom:1px solid var(--bo)}
.sbj-ci-img{width:42px;height:42px;border-radius:8px;background:var(--cd);flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:20px}
.sbj-ci-img img{width:100%;height:100%;object-fit:cover}
.sbj-ci-info{flex:1;min-width:0}
.sbj-ci-nm{font-size:11px;font-weight:600;line-height:1.35;color:var(--br)}
.sbj-ci-pr{font-size:12px;font-weight:800;color:var(--g);margin-top:2px}
.sbj-ci-row{display:flex;align-items:center;gap:6px;margin-top:5px}
.sbj-ciqbtn{width:21px;height:21px;border-radius:50%;border:1.5px solid var(--bo);background:var(--cr);cursor:pointer;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;color:var(--br);transition:all .1s}
.sbj-ciqbtn:hover{background:var(--cd);border-color:var(--g)}
.sbj-ciqn{font-size:12px;font-weight:700;min-width:14px;text-align:center}
.sbj-ciqinp{width:36px;text-align:center;border:1.5px solid var(--bo);border-radius:6px;font-family:'Nunito',sans-serif;font-weight:700;font-size:12px;padding:2px 0;background:#fff;color:var(--br);-webkit-appearance:none;appearance:none;outline:none;min-height:26px;touch-action:manipulation}
.sbj-cirm{background:none;border:none;cursor:pointer;font-size:13px;color:#bbb;padding:0;transition:color .1s;flex-shrink:0}
.sbj-cirm:hover{color:#c00}
.sbj-cfoot{border-top:2px solid var(--bo);background:var(--cr);padding:13px;flex-shrink:0}
.sbj-pbar{height:5px;background:var(--bo);border-radius:3px;margin-bottom:5px;overflow:hidden}
.sbj-pfill{height:100%;background:linear-gradient(90deg,var(--gl),var(--g));border-radius:3px;transition:width .5s ease}
.sbj-pnote{font-size:10px;color:var(--bl);margin-bottom:10px;text-align:center}
.sbj-pnote strong{color:var(--a)}
.sbj-cpnrow{display:flex;gap:6px;margin-bottom:6px}
.sbj-cpninp{flex:1;padding:7px 10px;border:1.5px solid var(--bo);border-radius:8px;font-family:'Nunito',sans-serif;font-size:12px;color:var(--br);background:#fff;outline:none;transition:border-color .15s}
.sbj-cpninp:focus{border-color:var(--g)}
.sbj-cpnbtn{background:var(--g);color:#fff;border:none;border-radius:8px;padding:7px 11px;font-family:'Nunito',sans-serif;font-size:11px;font-weight:700;cursor:pointer;transition:background .15s;white-space:nowrap}
.sbj-cpnbtn:hover{background:var(--gl)}
.sbj-cpn-msg{font-size:11px;margin-bottom:6px;padding:4px 8px;border-radius:6px;display:none}
.sbj-cpn-msg.ok{background:#e6f4d0;color:var(--g);display:block}
.sbj-cpn-msg.err{background:#fde8e8;color:#a00;display:block}
.sbj-cpn-rm{background:none;border:none;font-size:11px;color:#888;cursor:pointer;padding:2px 0;font-family:'Nunito',sans-serif;margin-bottom:6px}
.sbj-cpn-rm:hover{color:#c00}
.sbj-totals{margin-bottom:10px}
.sbj-crow{display:flex;justify-content:space-between;font-size:12px;padding:2px 0;color:var(--bl)}
.sbj-disc-row{color:var(--gm);font-weight:700}
.sbj-tot{font-size:16px;font-weight:800;color:var(--g);padding-top:7px;border-top:1px solid var(--bo);margin-top:5px}
.sbj-chkbtn{background:linear-gradient(135deg,var(--a),#e09010);color:#fff;border:none;border-radius:11px;padding:13px 18px;font-family:'Nunito',sans-serif;font-size:14px;font-weight:800;cursor:pointer;width:100%;transition:all .2s;box-shadow:0 4px 14px rgba(200,120,10,.35)}
.sbj-chkbtn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(200,120,10,.45)}
.sbj-chkbtn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.sbj-chknote{font-size:10px;text-align:center;color:#aaa;margin-top:6px}

/* PRODUCT MODAL */
.sbj-pdov{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:500;display:none;align-items:flex-start;justify-content:center;padding:30px 16px;overflow-y:auto;-webkit-overflow-scrolling:touch}
.sbj-pdov.open{display:flex}
.sbj-pdm{position:relative;background:var(--wh);border-radius:20px;max-width:640px;width:100%;max-height:none;animation:sbj-fu .25s ease;box-shadow:0 24px 60px rgba(0,0,0,.4);margin:auto 0}
.sbj-pdtop{position:relative;display:grid;grid-template-columns:220px 1fr}
.sbj-pdimgw{background:var(--cd);border-radius:20px 0 0 0;overflow:hidden;min-height:220px;display:flex;align-items:center;justify-content:center}
.sbj-pdimgw img{width:100%;height:220px;object-fit:cover;display:block}
.sbj-pdinfo{padding:20px 18px 18px;display:flex;flex-direction:column;gap:9px;background:linear-gradient(135deg,var(--cr),var(--wh));border-radius:0 20px 0 0}
.sbj-pdcats{display:flex;flex-wrap:wrap;gap:5px}
.sbj-pdctag{background:var(--tb);color:var(--tt);border-radius:10px;padding:2px 10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.sbj-pdname{font-family:'Playfair Display',Georgia,serif;font-size:19px;font-weight:700;color:var(--br);line-height:1.25;margin:0;padding-right:38px}
.sbj-pdprice{font-size:26px;font-weight:800;color:var(--g)}
.sbj-pdstock{font-size:12px;font-weight:600}
.sbj-pdstock.in{color:var(--gl)}
.sbj-pdstock.out{color:#c00}
.sbj-pd-revsum{display:flex;align-items:center;gap:6px;margin-top:2px}
.sbj-avg{font-size:19px;font-weight:800;color:var(--g)}
.sbj-astar{color:#f5a623;font-size:14px}
.sbj-acnt{font-size:11px;color:var(--bl)}
.sbj-pdclose{position:fixed;top:18px;right:18px;background:#fff;border:2px solid var(--g);border-radius:50%;width:42px;height:42px;font-size:22px;cursor:pointer;color:var(--g);display:flex;align-items:center;justify-content:center;transition:all .15s;z-index:510;box-shadow:0 4px 14px rgba(0,0,0,.3);font-weight:700;line-height:1}
.sbj-pdclose:hover{background:var(--g);color:#fff;transform:scale(1.08)}
.sbj-pdbody{padding:18px 20px 22px;border-top:1px solid var(--bo)}
.sbj-pddesc{font-size:13px;line-height:1.8;color:var(--br);margin-bottom:16px}
.sbj-pddesc p{margin:0 0 12px 0}
.sbj-pddesc p:last-child{margin-bottom:0}
.sbj-pddesc em{color:var(--br);opacity:.85;font-style:italic}
.sbj-pdact{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;margin-bottom:20px}
.sbj-pdqrow{display:flex;align-items:center;background:var(--cr);border:1.5px solid var(--bo);border-radius:10px;overflow:hidden}
.sbj-pdqbtn{background:transparent;border:none;width:36px;height:40px;font-size:20px;font-weight:700;cursor:pointer;color:var(--g);display:flex;align-items:center;justify-content:center;transition:background .1s}
.sbj-pdqbtn:hover{background:var(--cd)}
.sbj-pdqnum{min-width:36px;text-align:center;font-size:16px;font-weight:800;color:var(--br)}
.sbj-pdaddbtn{background:var(--g);color:#fff;border:none;border-radius:10px;padding:11px 18px;font-family:'Nunito',sans-serif;font-size:15px;font-weight:800;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:7px}
.sbj-pdaddbtn:hover{background:var(--gl)}
.sbj-pdaddbtn.added{background:var(--a)}
.sbj-pdaddbtn.disabled{background:#bbb;cursor:not-allowed}

/* REVIEWS */
.sbj-rvsec{border-top:1px solid var(--bo);padding-top:18px}
.sbj-rvhdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap;gap:8px}
.sbj-rvtitle{font-family:'Playfair Display',Georgia,serif;font-size:15px;font-weight:700;color:var(--br)}
.sbj-rvtgl{background:none;border:1.5px solid var(--g);color:var(--g);border-radius:10px;padding:6px 14px;font-family:'Nunito',sans-serif;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s}
.sbj-rvtgl:hover{background:var(--g);color:#fff}
.sbj-rvform{background:var(--cr);border:1.5px solid var(--bo);border-radius:12px;padding:16px;margin-bottom:14px;display:none}
.sbj-rvform.open{display:block}
.sbj-rvform h4{font-family:'Playfair Display',Georgia,serif;font-size:14px;margin-bottom:12px;color:var(--br)}
.sbj-spick{display:flex;gap:5px;margin-bottom:0}
.sbj-sp{font-size:26px;cursor:pointer;color:#ddd;transition:color .1s;line-height:1}
.sbj-sp.lit{color:#f5a623}
.sbj-rvrow{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.sbj-rvgrp{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}
.sbj-rvgrp label{font-size:10px;font-weight:700;color:var(--bl);text-transform:uppercase;letter-spacing:.04em}
.sbj-rvgrp input,.sbj-rvgrp textarea{padding:8px 11px;border:1.5px solid var(--bo);border-radius:8px;font-family:'Nunito',sans-serif;font-size:13px;color:var(--br);background:#fff;outline:none;transition:border-color .15s;width:100%}
.sbj-rvgrp input:focus,.sbj-rvgrp textarea:focus{border-color:var(--g)}
.sbj-rvgrp textarea{resize:vertical;min-height:65px}
.sbj-rvsubmit{background:var(--g);color:#fff;border:none;border-radius:9px;padding:8px 18px;font-family:'Nunito',sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s}
.sbj-rvsubmit:hover{background:var(--gl)}
.sbj-rv-msg{font-size:12px;margin-top:8px;padding:5px 9px;border-radius:7px;display:none}
.sbj-rv-msg.ok{background:#e6f4d0;color:var(--g);display:block}
.sbj-rv-msg.err{background:#fde8e8;color:#a00;display:block}
.sbj-rvpriv{font-size:10px;color:#aaa;margin-top:5px}
.sbj-rvlist{display:flex;flex-direction:column;gap:10px;max-height:250px;overflow-y:auto}
.sbj-rcard{background:var(--cr);border:1px solid var(--bo);border-radius:11px;padding:11px 13px}
.sbj-rctop{display:flex;align-items:center;gap:9px;margin-bottom:5px}
.sbj-rcav{width:34px;height:34px;border-radius:50%;background:var(--cd);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--g)}
.sbj-rcav img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.sbj-rcauth{font-size:12px;font-weight:700;color:var(--br)}
.sbj-rcdate{font-size:10px;color:#aaa}
.sbj-rcstars{color:#f5a623;font-size:12px;margin-left:auto}
.sbj-rctxt{font-size:12px;line-height:1.6;color:var(--br)}
.sbj-norv{text-align:center;padding:18px;color:#aaa;font-size:13px}

/* CHECKOUT MODAL */
.sbj-checkout-ov{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:10000;display:none;align-items:center;justify-content:center;padding:20px}
.sbj-checkout-ov.open{display:flex}
.sbj-checkout-modal{background:var(--wh);border-radius:20px;max-width:540px;width:100%;max-height:90vh;overflow-y:auto;animation:sbj-fu .25s ease;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.sbj-checkout-hdr{background:var(--g);color:#fff;padding:20px 24px;border-radius:20px 20px 0 0;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.sbj-checkout-hdr h2{font-family:'Playfair Display',Georgia,serif;font-size:20px;margin:0}
.sbj-modal-close{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;opacity:.8;padding:0 4px;line-height:1}
.sbj-modal-close:hover{opacity:1}
.sbj-checkout-body{padding:22px}
.sbj-oms{background:var(--cr);border:1px solid var(--bo);border-radius:12px;padding:13px 15px;margin-bottom:20px}
.sbj-oms h3{font-family:'Playfair Display',Georgia,serif;font-size:13px;font-weight:600;margin-bottom:9px;color:var(--bl)}
.sbj-oms-item{display:flex;justify-content:space-between;font-size:12px;padding:3px 0;color:var(--br)}
.sbj-oms-disc{display:flex;justify-content:space-between;font-size:12px;padding:3px 0;color:var(--gm);font-weight:700}
.sbj-oms-tot{display:flex;justify-content:space-between;font-size:15px;font-weight:800;color:var(--g);padding-top:8px;border-top:1px solid var(--bo);margin-top:7px}
.sbj-fs{margin-bottom:0}
.sbj-fs h3{font-family:'Playfair Display',Georgia,serif;font-size:15px;font-weight:600;margin-bottom:13px;color:var(--br)}
.sbj-fr2{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:11px}
.sbj-fg{display:flex;flex-direction:column;gap:4px;margin-bottom:11px}
.sbj-fg label{font-size:11px;font-weight:700;color:var(--bl);text-transform:uppercase;letter-spacing:.04em}
.sbj-fg input,.sbj-fg textarea{padding:9px 13px;border:1.5px solid var(--bo);border-radius:10px;font-family:'Nunito',sans-serif;font-size:13px;color:var(--br);background:#fff;outline:none;transition:border-color .15s;width:100%}
.sbj-fg input:focus,.sbj-fg textarea:focus{border-color:var(--g)}
.sbj-fg textarea{resize:vertical;min-height:75px}
.sbj-rg{display:flex;flex-direction:column;gap:7px}
.sbj-ropt{display:flex;align-items:center;gap:10px;padding:9px 13px;border:1.5px solid var(--bo);border-radius:10px;cursor:pointer;transition:all .15s;font-size:13px}
.sbj-ropt:hover{border-color:var(--g);background:var(--tb)}
.sbj-ropt input[type=radio]{accent-color:var(--g)}
.sbj-ropt.selected{border-color:var(--g);background:var(--tb)}
.sbj-ropt .sbj-op{margin-left:auto;font-weight:700;color:var(--g);font-size:12px}
.sbj-div{height:1px;background:var(--bo);margin:18px 0}
.sbj-place-order-btn{background:linear-gradient(135deg,var(--g),var(--gm));color:#fff;border:none;border-radius:12px;padding:15px;font-family:'Nunito',sans-serif;font-size:15px;font-weight:800;cursor:pointer;width:100%;margin-top:18px;box-shadow:0 4px 16px rgba(45,80,22,.35);transition:all .2s}
.sbj-place-order-btn:hover{transform:translateY(-1px);box-shadow:0 6px 22px rgba(45,80,22,.4)}

/* LEGAL MODAL */
.sbj-legal-ov{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:10001;display:none;align-items:center;justify-content:center;padding:20px}
.sbj-legal-ov.open{display:flex}
.sbj-legal-m{background:var(--wh);border-radius:20px;max-width:680px;width:100%;max-height:88vh;display:flex;flex-direction:column;animation:sbj-fu .25s ease;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.sbj-legal-hdr{background:var(--g);color:#fff;padding:18px 24px;border-radius:20px 20px 0 0;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.sbj-legal-hdr h2{font-family:'Playfair Display',Georgia,serif;font-size:19px;margin:0}
.sbj-legal-body{padding:24px;overflow-y:auto;flex:1}
.sbj-legal-body h2,.sbj-legal-body h3{font-family:'Playfair Display',Georgia,serif;font-size:15px;margin:16px 0 7px;color:var(--g)}
.sbj-legal-body h4{font-size:13px;font-weight:800;margin:14px 0 6px;color:var(--a)}
.sbj-legal-body h2:first-child,.sbj-legal-body h3:first-child{margin-top:0}
.sbj-legal-body p{font-size:13px;line-height:1.75;color:var(--br);margin-bottom:9px}
.sbj-legal-body ul,.sbj-legal-body ol{font-size:13px;line-height:1.75;color:var(--br);margin-bottom:9px;padding-left:20px}
.sbj-legal-body li{margin-bottom:3px}

/* TOAST */
.sbj-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(80px);background:var(--g);color:#fff;padding:12px 22px;border-radius:12px;font-size:14px;font-weight:700;font-family:'Nunito',sans-serif;z-index:9999;opacity:0;transition:opacity .3s,transform .3s;box-shadow:0 8px 24px rgba(0,0,0,.25);pointer-events:none;white-space:nowrap}
.sbj-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.sbj-toast.err{background:#c0392b}

/* MOBILE CART OVERLAY */
.sbj-cart-ov{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:190}
.sbj-cart-ov.open{display:block}

/* RESPONSIVE */
@media(max-width:860px){
  .sbj-layout{grid-template-columns:1fr}
  .sbj-cart{position:fixed;top:0;right:0;bottom:0;width:310px;transform:translateX(100%);transition:transform .3s ease;z-index:200;box-shadow:-8px 0 32px rgba(0,0,0,.25);max-height:100vh;top:0}
  .sbj-cart.open{transform:translateX(0)}
  .sbj-search-mob{display:block}
  .sbj-main{padding:14px}
  .sbj-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:11px}
}
@media(max-width:520px){
  .sbj-grid{grid-template-columns:repeat(2,1fr)}
  .sbj-pdov{padding:30px 33px} /* więcej luzu od krawędzi na telefonie */
  .sbj-pdtop{grid-template-columns:1fr}
  .sbj-pdimgw{border-radius:20px 20px 0 0}
  .sbj-pdimgw img{height:200px}
  .sbj-pdinfo{border-radius:0}
  .sbj-pdact{grid-template-columns:1fr}
  .sbj-fr2{grid-template-columns:1fr}
}

/* ============================================================
   SEKCJA O NAS
============================================================ */
.sbj-about{background:var(--wh);padding:48px 24px;border-top:2px solid var(--bo)}
.sbj-about-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:start}
.sbj-about-text h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(22px,3vw,30px);font-weight:700;color:var(--br);margin-bottom:16px}
.sbj-about-text p{font-size:14px;line-height:1.8;color:var(--bl);margin-bottom:12px}
.sbj-about-text p strong{color:var(--br)}
.sbj-about-vals{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}
.sbj-aval{background:var(--cr);border:1px solid var(--bo);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:4px}
.sbj-aval span{font-size:26px;margin-bottom:4px}
.sbj-aval strong{font-size:13px;font-weight:700;color:var(--br)}
.sbj-aval p{font-size:12px;line-height:1.5;color:var(--bl);margin:0}

.sbj-about-contact{background:var(--cr);border:1.5px solid var(--bo);border-radius:20px;padding:24px}
.sbj-about-contact h3{font-family:'Playfair Display',Georgia,serif;font-size:18px;font-weight:700;color:var(--br);margin-bottom:6px}
.sbj-about-sub{font-size:13px;color:var(--bl);margin-bottom:18px}
.sbj-clist{display:flex;flex-direction:column;gap:8px}
.sbj-citem{display:flex;align-items:center;gap:12px;padding:11px 14px;background:var(--wh);border:1.5px solid var(--bo);border-radius:12px;text-decoration:none;color:var(--br);transition:all .15s}
.sbj-citem:hover{border-color:var(--g);background:var(--tb);color:var(--br)}
.sbj-citem > span{font-size:20px;flex-shrink:0;width:28px;text-align:center}
.sbj-citem > div{display:flex;flex-direction:column;gap:1px}
.sbj-citem > div strong{font-size:12px;font-weight:700;color:var(--br)}
.sbj-citem > div span{font-size:12px;color:var(--bl)}
.sbj-citem-google{border-color:var(--a);background:#fffbf4}
.sbj-citem-google:hover{border-color:var(--al);background:#fff3dc}

/* STOPKA */
.sbj-footer{background:#2a3320;color:#f0f5eb;padding:36px 24px 24px}
.sbj-footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr;gap:24px;margin-bottom:28px}
.sbj-fcol h4{font-family:'Playfair Display',Georgia,serif;font-size:14px;margin-bottom:12px;color:#e8a020;font-weight:700}
.sbj-fcol p{font-size:12px;line-height:1.9;opacity:.8;margin:0}
.sbj-fcol a{font-size:12px;line-height:2.1;opacity:.8;text-decoration:none;color:inherit;display:block;transition:opacity .15s}
.sbj-fcol a:hover{opacity:1;color:#e8a020}
.sbj-footer-bot{border-top:1px solid rgba(255,255,255,.12);padding-top:18px;text-align:center;font-size:11px;opacity:.45}

/* MOBILE */
#sbj-mob-cart{bottom:16px !important;right:16px !important}

@media(max-width:860px){
  .sbj-about-inner{grid-template-columns:1fr !important}
  .sbj-about-contact{margin-top:0}
  .sbj-footer-inner{grid-template-columns:1fr 1fr;gap:20px}
  .sbj-fr2{grid-template-columns:1fr!important}
  .sbj-checkout-modal{max-height:95vh;border-radius:12px 12px 0 0}
}
@media(max-width:520px){
  .sbj-about-vals{grid-template-columns:1fr}
  .sbj-footer-inner{grid-template-columns:1fr}
  body.sbj-checkout-open #sbj-mob-cart{display:none !important}
}

/* ============================================================
   IFRAME PŁATNOŚCI
============================================================ */
.sbj-pay-ov{
  position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:10100;
  display:none;align-items:center;justify-content:center;padding:16px;
}
.sbj-pay-ov.open{display:flex}
.sbj-pay-wrap{
  background:#fff;border-radius:20px;width:100%;max-width:680px;
  max-height:92vh;display:flex;flex-direction:column;
  box-shadow:0 24px 60px rgba(0,0,0,.4);overflow:hidden;
}
.sbj-pay-hdr{
  background:linear-gradient(135deg,#4a7c3f,#5a9050);
  padding:14px 20px;display:flex;align-items:center;
  justify-content:space-between;flex-shrink:0;
}
.sbj-pay-hdr-left{display:flex;align-items:center;gap:12px;color:#fff}
.sbj-pay-hdr-left strong{display:block;font-size:15px;font-weight:700}
.sbj-pay-hdr-left span{font-size:11px;opacity:.8}
.sbj-pay-close{
  background:rgba(255,255,255,.15);border:1.5px solid rgba(255,255,255,.35);
  color:#fff;border-radius:10px;padding:6px 14px;font-family:'Nunito',sans-serif;
  font-size:12px;font-weight:700;cursor:pointer;transition:background .15s;
}
.sbj-pay-close:hover{background:rgba(255,255,255,.28)}
.sbj-pay-body{flex:1;position:relative;min-height:480px;background:#f8f9fa}
.sbj-pay-loading{
  position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:16px;color:#888;font-size:14px;
}
@keyframes sbj-spin{to{transform:rotate(360deg)}}
.sbj-pay-spinner{
  width:40px;height:40px;border:3px solid #e0e0e0;
  border-top-color:#4a7c3f;border-radius:50%;
  animation:sbj-spin .8s linear infinite;
}
#sbj-pay-iframe{
  position:absolute;inset:0;width:100%;height:100%;border:none;
}

/* ============================================================
   EKRAN SUKCESU
============================================================ */
.sbj-success-ov{
  position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:10200;
  display:none;align-items:center;justify-content:center;padding:20px;
}
.sbj-success-ov.open{display:flex}
.sbj-success-modal{
  background:#fff;border-radius:24px;max-width:480px;width:100%;
  padding:40px 32px;text-align:center;
  box-shadow:0 24px 60px rgba(0,0,0,.35);
  animation:sbj-fu .3s ease;
}
.sbj-success-ico{font-size:72px;margin-bottom:16px;line-height:1}
.sbj-success-modal h2{
  font-family:'Playfair Display',Georgia,serif;font-size:24px;
  font-weight:700;color:#2e2a20;margin-bottom:14px;
}
.sbj-success-modal p{
  font-size:14px;line-height:1.75;color:#5a5040;margin-bottom:28px;
}
.sbj-success-modal p strong{color:#4a7c3f}
.sbj-success-modal p em{color:#888;font-style:normal}
.sbj-success-back{
  background:linear-gradient(135deg,#4a7c3f,#5a9050);color:#fff;
  border:none;border-radius:12px;padding:13px 28px;
  font-family:'Nunito',sans-serif;font-size:15px;font-weight:700;
  cursor:pointer;transition:all .2s;
  box-shadow:0 4px 14px rgba(74,124,63,.35);
}
.sbj-success-back:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(74,124,63,.45)}

@media(max-width:520px){
  .sbj-pay-wrap{max-height:96vh;border-radius:16px}
  .sbj-success-modal{padding:28px 20px}
  .sbj-success-ico{font-size:56px}
}

/* Stan magazynowy na karcie */
.sbj-pstock {
  font-size: 11px;
  color: #5a5040;
  margin-top: -2px;
}
.sbj-pstock strong { color: #4a7c3f; font-weight: 800; }

/* Zgoda na newsletter w podsumowaniu zamówienia */
.sbj-consent {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  background: #f7f9f3;
  border: 1.5px solid #cdd9be;
  border-radius: 10px;
  padding: 11px 13px;
  margin-bottom: 10px;
  cursor: pointer;
  transition: border-color .15s, background .15s;
}
.sbj-consent:hover { border-color: #4a7c3f; }
.sbj-consent input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: #4a7c3f;
  flex-shrink: 0;
  margin-top: 1px;
  cursor: pointer;
}
.sbj-consent span {
  font-size: 12px;
  color: #5a5040;
  line-height: 1.5;
}

/* ============================================================
   DOSTĘPNE WKRÓTCE — karta i badge
============================================================ */
.sbj-pcard.soon { opacity: .96; }
.sbj-soon-badge {
  position: absolute;
  top: 10px; left: 10px;
  background: #7a6a3d;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  padding: 4px 10px;
  border-radius: 20px;
  letter-spacing: .02em;
}
.sbj-notify-btn {
  width: 100%;
  background: #7a6a3d;
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 11px 10px;
  font-family: 'Nunito', sans-serif;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: background .15s, transform .1s;
  min-height: 40px;
}
.sbj-notify-btn:hover { background: #635534; }
.sbj-notify-btn:active { transform: scale(.98); }

/* ============================================================
   POPUP POWIADOMIEŃ
============================================================ */
.sbj-notify-ov {
  position: fixed; inset: 0;
  background: rgba(20,18,12,.55);
  display: none;
  align-items: center; justify-content: center;
  z-index: 100000;
  padding: 20px;
  backdrop-filter: blur(3px);
}
.sbj-notify-ov.open { display: flex; }
.sbj-notify-m {
  background: #fff;
  border-radius: 20px;
  max-width: 420px;
  width: 100%;
  position: relative;
  box-shadow: 0 20px 60px rgba(0,0,0,.3);
  animation: sbjPopIn .25s ease;
}
@keyframes sbjPopIn {
  from { opacity: 0; transform: translateY(20px) scale(.96); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}
.sbj-notify-content {
  padding: 30px 26px 26px;
  text-align: center;
}
.sbj-notify-ico { font-size: 44px; margin-bottom: 6px; }
.sbj-notify-content h2 {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 20px;
  color: #2e2a20;
  margin: 0 0 8px;
}
.sbj-notify-sub { font-size: 14px; color: #5a5040; margin: 0 0 4px; }
.sbj-notify-sub strong { color: #4a7c3f; }
.sbj-notify-desc { font-size: 13px; color: #888; line-height: 1.6; margin: 8px 0 16px; }
.sbj-notify-m input[type="email"] {
  width: 100%;
  box-sizing: border-box;
  border: 1.5px solid #cdd9be;
  border-radius: 10px;
  padding: 12px 14px;
  font-family: 'Nunito', sans-serif;
  font-size: 14px;
  color: #2e2a20;
  outline: none;
  transition: border-color .15s;
}
.sbj-notify-m input[type="email"]:focus {
  border-color: #4a7c3f;
  box-shadow: 0 0 0 3px rgba(74,124,63,.12);
}
.sbj-notify-consent {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  text-align: left;
  margin: 12px 0 16px;
  cursor: pointer;
}
.sbj-notify-consent input { width: 17px; height: 17px; accent-color: #4a7c3f; flex-shrink: 0; margin-top: 1px; }
.sbj-notify-consent span { font-size: 11px; color: #888; line-height: 1.5; }
.sbj-notify-submit {
  width: 100%;
  background: linear-gradient(135deg, #4a7c3f, #5a9050);
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 14px;
  font-family: 'Nunito', sans-serif;
  font-size: 15px;
  font-weight: 800;
  cursor: pointer;
  transition: all .2s;
}
.sbj-notify-submit:hover:not(:disabled) { transform: translateY(-1px); box-shadow: 0 6px 18px rgba(74,124,63,.4); }
.sbj-notify-submit:disabled { opacity: .6; cursor: default; }
.sbj-notify-result { font-size: 13px; font-weight: 700; margin-top: 12px; display: none; }

/* ============================================================
   CROSS-SELL — "Pasuje do tego"
============================================================ */
.sbj-crosssell {
  margin: 20px 0;
  padding: 18px 0 4px;
  border-top: 1.5px solid #eaf0e2;
}
.sbj-cross-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 16px;
  color: #2e2a20;
  margin: 0 0 14px;
}
.sbj-cross-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 12px;
}
.sbj-cross-item {
  background: #f7f9f3;
  border: 1.5px solid #e0e8d4;
  border-radius: 12px;
  padding: 10px;
  text-align: center;
  transition: border-color .15s, transform .1s;
}
.sbj-cross-item:hover { border-color: #4a7c3f; }
.sbj-cross-item img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 8px;
  cursor: pointer;
  margin-bottom: 7px;
}
.sbj-cross-nm {
  font-size: 12px;
  font-weight: 700;
  color: #2e2a20;
  cursor: pointer;
  line-height: 1.35;
  min-height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sbj-cross-pr { font-size: 13px; font-weight: 800; color: #4a7c3f; margin: 4px 0 8px; }
.sbj-cross-pr del { color: #aaa; font-weight: 400; font-size: 11px; }
.sbj-cross-add {
  width: 100%;
  background: #4a7c3f;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 7px;
  font-family: 'Nunito', sans-serif;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: background .15s;
}
.sbj-cross-add:hover { background: #3d6834; }

@media (max-width: 480px) {
  .sbj-cross-row { grid-template-columns: repeat(2, 1fr); }
  .sbj-notify-content { padding: 24px 18px 20px; }
}

/* ============================================================
   PASEK GÓRNY — konto klienta
============================================================ */
.sbj-topbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  flex-wrap: wrap;
  padding: 8px 24px;
  background: #ecf2e4;
  border-bottom: 1px solid #cdd9be;
  font-family: 'Nunito', sans-serif;
  font-size: 13px;
}
.sbj-topbar-hi { color: #5a5040; margin-right: auto; }
.sbj-topbar-hi strong { color: #4a7c3f; }
.sbj-topbar-link {
  color: #4a7c3f;
  text-decoration: none;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 8px;
  transition: background .15s, color .15s;
  white-space: nowrap;
}
.sbj-topbar-link:hover { background: #4a7c3f; color: #fff; }
.sbj-topbar-reg {
  background: #4a7c3f;
  color: #fff;
}
.sbj-topbar-reg:hover { background: #3d6834; }
.sbj-topbar-out { color: #999; }
.sbj-topbar-out:hover { background: #999; color: #fff; }

@media (max-width: 520px) {
  .sbj-topbar { justify-content: center; padding: 7px 14px; gap: 8px; }
  .sbj-topbar-hi { margin-right: 0; width: 100%; text-align: center; }
}

/* ============================================================
   WALIDACJA — pole z błędem
============================================================ */
.sbj-field-error,
input.sbj-field-error,
textarea.sbj-field-error {
  border-color: #d63638 !important;
  background: #fdf2f2 !important;
  box-shadow: 0 0 0 3px rgba(214,54,56,.14) !important;
  animation: sbjShake .3s ease;
}
@keyframes sbjShake {
  0%,100% { transform: translateX(0); }
  20%,60% { transform: translateX(-5px); }
  40%,80% { transform: translateX(5px); }
}

/* ============================================================
   GALERIA W MODALU PRODUKTU
============================================================ */
.sbj-pdimgw { position: relative; }
.sbj-pdgal-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255,255,255,.92);
  border: none;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  font-size: 22px;
  font-weight: 700;
  color: #4a7c3f;
  cursor: pointer;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0,0,0,.2);
  transition: background .15s, transform .1s;
  line-height: 1;
}
.sbj-pdgal-arrow:hover { background: #4a7c3f; color: #fff; }
.sbj-pdgal-arrow:active { transform: translateY(-50%) scale(.92); }
.sbj-pdgal-arrow.prev { left: 8px; }
.sbj-pdgal-arrow.next { right: 8px; }
.sbj-pdgal-dots {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 6px;
  z-index: 3;
}
.sbj-pdgal-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: rgba(255,255,255,.55);
  border: 1.5px solid rgba(0,0,0,.2);
  cursor: pointer;
  transition: background .15s;
}
.sbj-pdgal-dot.active { background: #4a7c3f; border-color: #fff; }

/* ============================================================
   BADGE Z PODPOWIEDZIĄ — rabat dla stałych klientów
============================================================ */
.sbj-badge-tip {
  position: relative;
  cursor: pointer;
  background: linear-gradient(135deg, #fff4d6, #ffe4a3) !important;
  color: #7a5510 !important;
  border-color: #f0c878 !important;
  font-weight: 700;
  transition: transform .15s;
}
.sbj-badge-tip:hover,
.sbj-badge-tip:focus { transform: translateY(-1px); outline: none; }

.sbj-tip-bubble {
  position: absolute;
  bottom: calc(100% + 10px);
  left: 50%;
  transform: translateX(-50%) translateY(6px);
  background: #2e2a20;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  padding: 9px 13px;
  border-radius: 10px;
  white-space: normal;
  width: max-content;
  max-width: 260px;
  text-align: center;
  line-height: 1.45;
  pointer-events: none;
  opacity: 0;
  transition: opacity .18s, transform .18s;
  box-shadow: 0 8px 24px rgba(0,0,0,.3);
  z-index: 100;
}
.sbj-tip-bubble::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 6px solid transparent;
  border-top-color: #2e2a20;
}
.sbj-badge-tip:hover .sbj-tip-bubble,
.sbj-badge-tip:focus .sbj-tip-bubble,
.sbj-badge-tip.tap-open .sbj-tip-bubble {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

@media (max-width: 520px) {
  .sbj-tip-bubble { max-width: 220px; font-size: 11px; padding: 8px 11px; }
}

/* [SBJ-Patch v3.9.20] Przycisk "Dane do przelewu / BLIK" w górnym pasku + okienko */
.sbj-pay-info-btn{background:none;border:1px solid rgba(255,255,255,.35);cursor:pointer;font-family:inherit;font-size:inherit}
.sbj-payinfo-overlay{position:fixed;inset:0;z-index:9999;background:rgba(20,30,17,.55);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:16px}
.sbj-payinfo-box{background:var(--wh,#fff);color:var(--tx,#1E3319);border-radius:16px;max-width:420px;width:100%;padding:24px 22px 20px;position:relative;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.sbj-payinfo-box h3{margin:0 0 6px;font-size:19px}
.sbj-payinfo-sub{font-size:13px;opacity:.75;margin-bottom:16px;line-height:1.5}
.sbj-payinfo-block{margin-bottom:14px}
.sbj-payinfo-label{display:block;font-size:12px;font-weight:700;opacity:.7;margin-bottom:5px}
.sbj-payinfo-box .sbj-fbank{cursor:pointer;background:rgba(30,51,25,.06);border:1px solid rgba(30,51,25,.14);border-radius:8px;padding:10px 12px;font-family:monospace;font-size:14.5px;letter-spacing:.02em;user-select:all;transition:background .15s}
.sbj-payinfo-box .sbj-fbank:hover{background:rgba(30,51,25,.1)}
.sbj-payinfo-note{font-size:12px;opacity:.65;margin-top:14px}
.sbj-payinfo-x{position:absolute;top:12px;right:12px;background:none;border:none;font-size:18px;cursor:pointer;opacity:.6;width:30px;height:30px;border-radius:50%}
.sbj-payinfo-x:hover{opacity:1;background:rgba(30,51,25,.08)}

/* [SBJ-Patch v3.9.23] Formularz szybkiego odstąpienia od umowy */
.sbj-withdraw-sec{background:var(--cd);border-top:1px solid var(--bo);border-bottom:1px solid var(--bo);padding:26px 16px}
.sbj-withdraw-in{max-width:760px;margin:0 auto}
.sbj-withdraw-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--wh);border:1.5px solid var(--bo);border-radius:14px;padding:14px 18px;font-family:'Playfair Display',Georgia,serif;font-size:15.5px;font-weight:700;color:var(--br);cursor:pointer;text-align:left}
.sbj-withdraw-toggle:hover{border-color:var(--g)}
.sbj-withdraw-arrow{font-size:16px;color:var(--g);transition:transform .15s}
.sbj-withdraw-sub{font-size:13px;color:var(--bl);margin:10px 2px 0;line-height:1.55}
.sbj-withdraw-body{background:var(--wh);border:1.5px solid var(--bo);border-top:none;border-radius:0 0 14px 14px;padding:18px;margin-top:-1px}
.sbj-wd-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:520px){.sbj-wd-row{grid-template-columns:1fr}}
.sbj-wd-grp{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}
.sbj-wd-grp label{font-size:11px;font-weight:700;color:var(--bl);text-transform:uppercase;letter-spacing:.03em}
.sbj-wd-grp input,.sbj-wd-grp textarea{padding:9px 12px;border:1.5px solid var(--bo);border-radius:9px;font-family:'Nunito',sans-serif;font-size:13.5px;color:var(--br);background:#fff;outline:none;transition:border-color .15s;width:100%}
.sbj-wd-grp input:focus,.sbj-wd-grp textarea:focus{border-color:var(--g)}
.sbj-wd-grp textarea{resize:vertical;min-height:56px}
.sbj-wd-agree{display:flex;gap:9px;align-items:flex-start;font-size:12.5px;color:var(--bl);margin:6px 0 14px;cursor:pointer;line-height:1.5}
.sbj-wd-agree input{margin-top:3px;flex-shrink:0}
.sbj-wd-submit{background:var(--g);color:#fff;border:none;border-radius:10px;padding:12px 22px;font-family:'Nunito',sans-serif;font-size:14px;font-weight:800;cursor:pointer;transition:background .15s;width:100%}
.sbj-wd-submit:hover{background:var(--gl)}
.sbj-wd-submit:disabled{opacity:.6;cursor:default}
.sbj-wd-msg{font-size:13px;margin:4px 0 12px;padding:9px 12px;border-radius:9px;display:none}
.sbj-wd-msg.ok{background:#e6f4d0;color:var(--g);display:block}
.sbj-wd-msg.err{background:#fde8e8;color:#a00;display:block}
.sbj-wd-note{font-size:11.5px;color:#999;margin-top:10px;line-height:1.5}
.sbj-wd-note a{color:var(--g);font-weight:700}
