/* =========================================================
   EKOWOLT — lista produktów (category).
   Zmienne, layout, przyciski, koszyk-drawer, toast: page/style.css
   ========================================================= */
.breadcrumb-bar{padding:16px 0 4px;font-size:13px;color:var(--muted);}
.breadcrumb-bar a{color:var(--muted);}
.breadcrumb-bar a:hover{color:var(--green-700);}
.breadcrumb-bar .sep{margin:0 7px;color:#c3ccbb;}
.breadcrumb-bar .current{color:var(--ink);font-weight:600;}

.cat-header{padding:6px 0 18px;}
.cat-header h1{font-size:32px;margin:0 0 10px;}
.category-banner{width:100%;border-radius:14px;margin:6px 0 12px;}
.cat-desc{color:var(--muted);font-size:15px;max-width:820px;line-height:1.7;max-height:48px;overflow:hidden;transition:.2s;}
.cat-desc.open{max-height:1600px;}
.cat-more{background:none;border:0;color:var(--green-700);font-weight:700;font-size:13.5px;cursor:pointer;padding:4px 0;font-family:inherit;}

/* layout listy */
.listing{display:grid;grid-template-columns:268px 1fr;gap:28px;align-items:start;padding-bottom:44px;}
.l-side{top:95px;}
.l-side-head{display:none;}
.fbox{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--card-shadow);padding:18px 20px;margin-bottom:16px;}
.fbox h3{font-size:15px;text-transform:uppercase;letter-spacing:.04em;margin:0 0 14px;color:var(--ink);}

/* menu kategorii */
.cat-list{list-style:none;margin:0;padding:0;}
.cat-list li a{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;border-radius:10px;color:var(--ink);font-size:14px;font-weight:600;}
.cat-list li a:hover{background:var(--bg);}
.cat-list li a.active{background:#eef7e8;color:var(--green-700);}
.cat-list li a .c{font-size:12px;color:var(--muted);font-weight:600;}
.cat-list .sub{list-style:none;margin:2px 0 6px;padding:0 0 0 12px;}
.cat-list .sub li a{font-weight:500;font-size:13.5px;color:var(--muted);padding:7px 12px;}
.cat-list .sub li a:hover{color:var(--green-700);}
.cat-list .sub li a.active{color:var(--green-700);background:#eef7e8;}

/* filtry */
.frange{display:flex;align-items:center;gap:8px;}
.frange input{width:100%;height:42px;border:1.5px solid var(--line);border-radius:10px;padding:0 12px;font-family:inherit;font-size:14px;outline:none;background:var(--bg);text-align:center;}
.frange input:focus{border-color:var(--green);background:#fff;}
.frange span{color:var(--muted);}
.fcheck{display:flex;align-items:center;gap:10px;padding:7px 0;font-size:14px;cursor:pointer;}
.fcheck input{accent-color:var(--green);width:17px;height:17px;}
.fcheck .cnt{margin-left:auto;font-size:12px;color:var(--muted);}
.fbox .fbtns{display:flex;gap:8px;}
.fbox .fbtns .btn-pill{flex:1;height:42px;font-size:14px;padding:0;justify-content:center;}
.fclear{display:block;text-align:center;font-size:13px;font-weight:600;color:var(--muted);margin-top:8px;}

/* toolbar + chipy */
.subchips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;}
.subchips a{background:#fff;border:1px solid var(--line);border-radius:50px;padding:8px 16px;font-size:13.5px;font-weight:600;color:var(--ink);}
.subchips a:hover{border-color:var(--green);color:var(--green-700);}
.subchips a.active{background:var(--green);border-color:var(--green);color:#fff;}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px;}
.toolbar .res{font-size:14px;color:var(--muted);}
.toolbar .res b{color:var(--ink);}
.toolbar .right{display:flex;align-items:center;gap:10px;}
.toolbar label{font-size:13.5px;color:var(--muted);font-weight:600;}
.sortsel{height:44px;border:1.5px solid var(--line);border-radius:50px;padding:0 38px 0 18px;font-family:inherit;font-size:14px;font-weight:600;color:var(--ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23357a24' d='M6 8 0 0h12z'/%3E%3C/svg%3E") no-repeat right 16px center;-webkit-appearance:none;appearance:none;cursor:pointer;outline:none;}
.sortsel:focus{border-color:var(--green);}
.filter-toggle{display:none;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--green);color:var(--green-700);border-radius:50px;font-family:inherit;font-weight:700;font-size:14px;padding:11px 18px;cursor:pointer;}

/* baner CTA do kalkulatora off-grid (kategorie 19, 115, 116) */
.cat-calc-banner{display:flex;align-items:center;gap:20px;background:linear-gradient(135deg,var(--green-700),var(--green));color:#fff;border-radius:20px;padding:26px 30px;margin:0 0 22px;}
.cat-calc-banner .ccb-ic{width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-size:26px;flex:0 0 56px;}
.cat-calc-banner .ccb-body{flex:1;min-width:0;}
.cat-calc-banner .ccb-body b{display:block;font-size:18px;margin-bottom:4px;color:#fff;}
.cat-calc-banner .ccb-body span{display:block;font-size:13.5px;color:rgba(255,255,255,.9);line-height:1.5;max-width:640px;}
.cat-calc-banner .btn-white{background:#fff;color:var(--green-700);white-space:nowrap;}
.cat-calc-banner .btn-white:hover{background:#eef7e8;color:var(--green-700);transform:translateY(-2px);}

/* karty produktow */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.pcard{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:.25s;position:relative;display:flex;flex-direction:column;}
.pcard:hover{transform:translateY(-6px);box-shadow:var(--card-shadow-hover);border-color:#cfe6c2;}
.pcard .tags{position:absolute;top:12px;left:12px;display:flex;flex-direction:column;gap:6px;z-index:2;}
.pcard .t-new{background:var(--green);color:#fff;font-size:11px;font-weight:800;padding:4px 11px;border-radius:50px;}
.pcard .t-sale{background:#d9534f;color:#fff;font-size:11px;font-weight:800;padding:4px 11px;border-radius:50px;}
.pcard .t-free{background:var(--sun);color:#3a2600;font-size:11px;font-weight:800;padding:4px 11px;border-radius:50px;}
.pcard .wish{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid var(--line);color:var(--muted);display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;z-index:2;}
.pcard .wish:hover,.pcard .wish.active{color:#d9534f;border-color:#d9534f;}
.pcard .pthumb{height:240px;display:flex;align-items:center;justify-content:center;padding:16px;position:relative;}
.pcard .pthumb img{max-height:100%;max-width:100%;object-fit:contain;}
.pcard .attr{position:absolute;bottom:10px;left:14px;background:var(--ink);color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:50px;}
.pcard .pbody{padding:14px 16px 16px;display:flex;flex-direction:column;flex:1;border-top:1px solid var(--line);}
.pcard .pname{font-size:14.5px;font-weight:700;line-height:1.35;margin:0 0 12px;flex:1;}
.pcard .pname a{color:var(--ink);}
.pcard .pname a:hover{color:var(--green-700);}
.pcard .prow{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;}
.pcard .pprice{font-size:20px;font-weight:900;color:var(--green-700);}
.pcard .ppseudo{display:block;font-size:12.5px;color:var(--muted);text-decoration:line-through;font-weight:600;}
.pcard .padd{width:44px;height:44px;border-radius:12px;background:var(--green);color:#fff;border:0;font-size:17px;cursor:pointer;flex:0 0 44px;}
.pcard .padd:hover{background:var(--green-600);}

/* paginacja (Helper_Paginator -> ul.pagination) */
.pager{display:flex;justify-content:center;margin-top:34px;}
.pager .pagination{display:inline-flex;gap:8px;padding:0;margin:0;list-style:none;}
.pager .pagination > li > a,.pager .pagination > li > span{min-width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:var(--ink);padding:0 12px;text-decoration:none;}
.pager .pagination > li > a:hover{border-color:var(--green);color:var(--green-700);}
.pager .pagination > li.active > a,.pager .pagination > li.active > span{background:var(--green);border-color:var(--green);color:#fff;}
.pager .pagination > li.disabled > a,.pager .pagination > li.disabled > span{color:#c3ccbb;}

/* SEO artykul */
.cat-article{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--card-shadow);padding:30px 32px;margin-top:30px;}
.cat-article h2{font-size:22px;margin:0 0 14px;}
.cat-article p{font-size:15px;color:#3c463d;line-height:1.75;margin:0 0 14px;}

/* Pytania i odpowiedzi (FAQ kategorii) */
.cat-faq{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--card-shadow);padding:30px 32px;margin-top:22px;}
.cat-faq h2{font-size:22px;margin:0 0 18px;display:flex;align-items:center;gap:10px;}
.cat-faq h2 i{color:var(--green-700);}
.cat-faq-list{margin:0;}
.cat-faq .sq{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:10px;overflow:hidden;}
.cat-faq .sq:last-child{margin-bottom:0;}
.cat-faq dt{margin:0;}
.cat-faq .sq-head{width:100%;display:flex;justify-content:space-between;align-items:center;background:#fff;border:0;padding:18px 22px;font-family:inherit;font-weight:700;font-size:15.5px;color:var(--ink);cursor:pointer;text-align:left;line-height:1.4;}
.cat-faq .sq-head:hover{color:var(--green-700);}
.cat-faq .sq-head i{color:var(--muted);font-size:14px;transition:.25s;flex:0 0 auto;margin-left:14px;}
.cat-faq .sq.open .sq-head i{transform:rotate(180deg);color:var(--green-700);}
.cat-faq dd.sq-body{display:none;margin:0;padding:0 22px 18px;font-size:14px;color:#3c463d;line-height:1.65;}
.cat-faq .sq.open dd.sq-body{display:block;}
.cat-faq dd.sq-body p{margin:0 0 10px;}
.cat-faq dd.sq-body p:last-child{margin-bottom:0;}

/* ===== RESPONSIVE ===== */
@media (max-width:1100px){.pgrid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:992px){
    .listing{grid-template-columns:1fr;}
    .filter-toggle{display:inline-flex;}
    .l-side{position:fixed;top:0;left:0;bottom:0;width:86%;max-width:340px;background:var(--bg);z-index:2000;overflow-y:auto;padding:18px;transform:translateX(-100%);transition:.3s;box-shadow:0 0 40px rgba(0,0,0,.3);}
    .l-side.open{transform:translateX(0);}
    .l-side-head{display:flex;justify-content:space-between;align-items:center;font-weight:800;font-size:18px;margin-bottom:14px;}
    .l-side-head i{cursor:pointer;font-size:22px;}
}
@media (max-width:767px){
    .cat-header h1{font-size:24px;}
    /* 1 produkt na wiersz (zachowany pionowy układ karty) */
    .pgrid{grid-template-columns:1fr;gap:14px;}
    .pcard .pthumb{height:220px;}
    .toolbar .res{flex:1;}
    .cat-calc-banner{flex-direction:column;align-items:flex-start;text-align:left;padding:20px 22px;}
    .cat-calc-banner .btn-white{width:100%;justify-content:center;}
    .cat-faq{padding:20px 18px;}
    .cat-faq .sq-head{padding:14px 16px;font-size:14.5px;}
    .cat-faq dd.sq-body{padding:0 16px 14px;font-size:13.5px;}
}
