:root{--green:#233a52;--green-d:#16273a;--lime:#95d31c;--lime-d:#79ad12;--bg:#f5f7f9;--card:#fff;--txt:#1d2733;--muted:#64748b;--line:#dde4ec;--hot:#e0442c;--cold:#2c7fe0;--warn-bg:#fff7e0;--err-bg:#fde8e8;--ok-bg:#eef7dd}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--txt);line-height:1.5}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}
a{color:var(--green-d)}
.muted{color:var(--muted);font-size:.9em}
.center{text-align:center}
.inline{display:inline}
.narrow{max-width:520px;margin:0 auto}

.topbar{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.topbar-in{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;flex-wrap:wrap;gap:8px}
.logo{font-size:1.3rem;font-weight:800;text-decoration:none;color:var(--txt)}
.logo span{color:var(--green)}
nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
nav a{text-decoration:none;font-weight:500}
.admin-link{color:var(--hot)}
.linklike{background:none;border:none;color:var(--green-d);cursor:pointer;font:inherit;padding:0;text-decoration:underline}

.btn{display:inline-block;padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--txt);text-decoration:none;cursor:pointer;font:inherit;font-weight:600}
.btn-primary{background:var(--green);border-color:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-d)}
.btn-primary{box-shadow:inset 0 -2px 0 var(--lime)}
.btn-danger{border-color:var(--hot);color:var(--hot)}
.btn-hot{background:var(--hot);border-color:var(--hot);color:#fff}
.btn-cold{background:var(--cold);border-color:var(--cold);color:#fff}
.btn-lg{padding:12px 22px;font-size:1.05rem}
.btn-sm{padding:4px 8px;font-size:.85rem}

.hero{text-align:center;padding:34px 0 10px}
.hero h1{font-size:2rem;margin:0}
.hero em{color:var(--lime-d);font-style:normal}

.flash{padding:10px 14px;border-radius:8px;margin:14px 0}
.flash-ok{background:var(--ok-bg)}
.flash-warn{background:var(--warn-bg)}
.flash-err{background:var(--err-bg)}
.flash ul{margin:0;padding-left:18px}

.filters{display:flex;flex-wrap:wrap;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;margin:18px 0}
.filters input,.filters select{padding:8px;border:1px solid var(--line);border-radius:8px;font:inherit}
.filters input[type=number]{width:100px}
.filters input[type=search]{flex:1;min-width:200px}
.chk{display:flex;align-items:center;gap:6px;font-size:.92rem}

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin:16px 0 40px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;text-decoration:none;color:var(--txt);display:flex;flex-direction:column;transition:box-shadow .15s}
.card:hover{box-shadow:0 4px 16px rgba(0,0,0,.1)}
.card.hot{border-color:var(--hot)}
.card.cold{opacity:.75}
.card-img{position:relative;aspect-ratio:4/3;background:#eef1ee}
.card-img img{width:100%;height:100%;object-fit:cover}
.noimg{display:flex;align-items:center;justify-content:center;font-size:3rem;height:100%}
.noimg.big{aspect-ratio:4/3;font-size:6rem;background:#eef1ee;border-radius:12px}
.badge{position:absolute;padding:3px 8px;border-radius:6px;font-size:.75rem;font-weight:700;color:#fff}
.badge-new{top:8px;left:8px;background:var(--lime);color:var(--green-d)}
.badge-demo{top:8px;left:8px;background:#b07a1a}
.badge-shop{bottom:8px;left:8px;background:#333a}
.card-body{padding:10px 12px}
.card-body h3{margin:4px 0;font-size:1rem}
.card-meta{margin:2px 0;font-size:.85rem;color:var(--muted)}
.card-price{margin:4px 0;font-size:1.15rem;font-weight:800;color:var(--green-d)}
.card-temp{font-weight:700;font-size:.9rem}
.t-hot{color:var(--hot)}
.t-cold{color:var(--cold)}

.listing{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin-top:20px}
@media(max-width:800px){.listing{grid-template-columns:1fr}}
.gallery img#mainphoto{width:100%;border-radius:12px;aspect-ratio:4/3;object-fit:cover}
.thumbs{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.thumbs img{width:72px;height:54px;object-fit:cover;border-radius:6px;cursor:pointer;border:2px solid transparent}
.thumbs img:hover{border-color:var(--green)}
.specs{width:100%;border-collapse:collapse;margin:12px 0}
.specs th{text-align:left;padding:6px 10px 6px 0;color:var(--muted);font-weight:500;width:160px}
.specs td{padding:6px 0}
.specs .price{font-size:1.3rem;font-weight:800;color:var(--green-d)}
.desc{white-space:pre-line}

.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:16px}
.temp-panel{text-align:center}
.temp-big{font-size:2rem;font-weight:800}
.vote-btns{display:flex;gap:8px;justify-content:center;margin-top:10px}

.comments{margin:30px 0 50px}
.comment{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin:10px 0}
.comment-head{margin:0 0 4px}
.comment p{margin:4px 0}
.comment-form textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;font:inherit;margin-bottom:8px}

.form{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;margin:16px 0 40px}
.form label{display:block;margin:10px 0;font-weight:600}
.form input,.form select,.form textarea{width:100%;padding:9px;border:1px solid var(--line);border-radius:8px;font:inherit;margin-top:4px;font-weight:400}
.form .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;align-items:end}
.form .chk{font-weight:400}
.form .chk input{width:auto}
fieldset{border:none;border-top:2px solid var(--line);padding:10px 0;margin:14px 0 0}
legend{font-weight:800;padding-right:10px}
small{display:block;font-weight:400}

.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:30px}
.table td{padding:10px;border-bottom:1px solid var(--line);vertical-align:middle}
.table .actions{white-space:nowrap;text-align:right}
.table .actions input{padding:6px;border:1px solid var(--line);border-radius:6px;width:150px}
.mini{width:80px;height:60px;object-fit:cover;border-radius:6px}
.tag{display:inline-block;padding:3px 8px;border-radius:6px;background:#eee;font-size:.82rem}
.tag-ok{background:var(--ok-bg)}
.tag-warn{background:var(--warn-bg)}
.tag-err{background:var(--err-bg)}
.tag-shop{background:#eef4ff}

.stats{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}
.stat{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 18px}
.stat strong{font-size:1.4rem;display:block}

.pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:26px 0}
.price-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;position:relative;text-align:center}
.price-card.featured{border:2px solid var(--lime);box-shadow:0 6px 20px rgba(149,211,28,.25)}
.ribbon{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--lime);color:var(--green-d);padding:3px 12px;border-radius:20px;font-size:.8rem;font-weight:700}
.price-big{font-size:2.2rem;font-weight:800;color:var(--green-d);margin:6px 0}
.price-big span{font-size:1rem;color:var(--muted);font-weight:400}
.price-card ul{text-align:left;padding-left:18px}
.price-card li{margin:6px 0}

.footer{border-top:1px solid var(--line);background:#fff;padding:18px 0;margin-top:20px}

.legal{max-width:820px;margin:20px auto 50px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px 34px}
.legal h2{margin-top:22px}
.legal li{margin:6px 0}

.ad-banner{position:relative;margin:14px 0;text-align:center}
.ad-banner img{max-width:100%;max-height:170px;border-radius:12px;border:1px solid var(--line)}
.ad-label{position:absolute;top:6px;right:10px;background:#000a;color:#fff;font-size:.7rem;padding:2px 8px;border-radius:8px}
.tag-badge{background:#fff3d6;border:1px solid #e8c66a;font-weight:700}
.rate-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.rate-form input,.rate-form select{padding:8px;border:1px solid var(--line);border-radius:8px;font:inherit}
.rate-form input[name=body],.rate-form input[name=target_url]{flex:1;min-width:200px}
.sold-form input{padding:5px;border:1px solid var(--line);border-radius:6px;width:210px;font-size:.85rem}
.panel.narrow{max-width:820px;margin:0 auto 30px}

.spec-details{border:1px dashed var(--line);border-radius:10px;padding:10px 14px;margin:12px 0;background:#fafbfa}
.spec-details summary{cursor:pointer;font-weight:700}
.spec-grid{margin-top:8px}
.spec-grid label{font-weight:500;font-size:.92rem}


.logo{display:flex;align-items:center;gap:12px}
.logo-img{height:52px;display:block}
.logo-text{font-size:1.55rem;font-weight:800;letter-spacing:.06em;color:var(--green);white-space:nowrap}
.logo-text em{font-style:normal;color:var(--lime-d)}
@media(max-width:640px){.logo-img{height:40px}.logo-text{font-size:1.15rem}}
.footer-logo{height:120px;float:right;margin-left:18px}
.topbar{border-bottom:3px solid var(--lime)}
.thumbs img:hover{border-color:var(--lime-d)}
.filters input:focus,.filters select:focus,.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--lime);outline-offset:0;border-color:var(--lime-d)}

.price-old{color:var(--muted);font-weight:400;font-size:.85em}
.price-promo{color:var(--hot);font-weight:800}
.badge-discount{top:8px;right:8px;background:var(--hot)}
.tag-discount{background:var(--hot);color:#fff;font-weight:700}
.edit-photos{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0}
.edit-photo{display:flex;flex-direction:column;align-items:center;gap:4px;font-weight:400}
.edit-photo img{width:110px;height:82px;object-fit:cover;border-radius:8px}
.edit-photo input{width:auto}

/* mobile */
@media(max-width:720px){
  .table{display:block;overflow-x:auto;white-space:nowrap}
  .table td{white-space:normal;min-width:120px}
  .filters input[type=search]{min-width:100%}
  .filters input,.filters select{flex:1 1 45%}
  .hero h1{font-size:1.4rem}
  .listing{grid-template-columns:1fr}
  .topbar-in{justify-content:center}
  nav{justify-content:center;gap:10px;font-size:.95rem}
  .stats{gap:8px}
  .stat{padding:8px 12px;flex:1 1 40%}
  .footer-logo{float:none;display:block;margin:0 auto 10px}
  .legal{padding:18px 16px}
}

.usp{font-size:.95rem;color:var(--muted)}
.shop-avatar{width:84px;height:84px;object-fit:cover;border-radius:12px;border:1px solid var(--line);display:block;margin-bottom:8px}
.filters input[type=number]{width:130px}
.pagination{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0 30px}

.fav-panel{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.admin-toolbar{background:#fff7e0;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.reactions{display:flex;gap:4px;margin-top:6px}
.reaction{border:1px solid var(--line);background:#f6f8f6;border-radius:14px;padding:2px 9px;font-size:.85rem;cursor:pointer}
.reaction.mine{border-color:var(--lime-d);background:var(--ok-bg)}

/* licznik tytułu + pełna szerokość specyfikacji */
.title-over{color:var(--hot);font-weight:700}
.spec-grid{display:block}
.spec-grid label{display:block;margin:10px 0}
.spec-grid textarea{width:100%;resize:vertical}

/* badge powiadomień */
.notif-badge{display:inline-block;background:var(--hot);color:#fff;border-radius:12px;padding:0 7px;font-size:.75rem;font-weight:800;margin-left:4px;vertical-align:super}
.nav-account{position:relative}

/* lupa i lightbox */
.mainphoto-wrap{position:relative;cursor:zoom-in}
.zoom-hint{position:absolute;bottom:10px;right:10px;background:#000a;color:#fff;padding:4px 10px;border-radius:8px;font-size:.85rem}
.lightbox{position:fixed;inset:0;background:#000d;z-index:100;display:flex;align-items:center;justify-content:center}
.lightbox[hidden]{display:none!important}
.lightbox figure{margin:0;max-width:92vw;max-height:92vh;text-align:center}
.lightbox img{max-width:92vw;max-height:86vh;object-fit:contain;border-radius:8px}
.lb-caption{color:#fffc;margin-top:8px;font-size:.9rem}
.lb-btn{position:absolute;background:#ffffff22;border:none;color:#fff;font-size:2rem;cursor:pointer;border-radius:50%;width:52px;height:52px;line-height:1;display:flex;align-items:center;justify-content:center}
.lb-btn:hover{background:#ffffff44}
.lb-prev{left:14px;top:50%;transform:translateY(-50%)}
.lb-next{right:14px;top:50%;transform:translateY(-50%)}
.lb-close{top:14px;right:14px;font-size:1.3rem}
@media(max-width:640px){.lb-prev{left:4px}.lb-next{right:4px}}

/* ładniejsze przyciski ulubione/udostępnij */
.fav-panel{flex-direction:column}
.fav-panel .grow{width:100%}
.btn-block{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:11px}
.btn-fav{border-color:var(--hot);color:var(--hot)}
.btn-fav:hover{background:#fff1ee}
.btn-fav-on{background:var(--hot);border-color:var(--hot);color:#fff}
.btn-share{border-color:var(--green);color:var(--green)}
.btn-share:hover{background:#eef2f7}
.fav-count{background:#0002;border-radius:10px;padding:0 8px;font-size:.85rem}


/* pasek administracyjny */
.adminbar{background:var(--green-d);color:#fff;font-size:.85rem;padding:6px 0}
.adminbar-in{display:flex;gap:4px 18px;flex-wrap:wrap;align-items:center;max-width:1180px;margin:0 auto;padding:0 16px}
.adminbar a{color:#fff;text-decoration:none}
.adminbar .stat-i{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.adminbar .stat-i strong{color:var(--lime);font-size:1rem}
.adminbar .sep{opacity:.3}

/* kafelki kategorii */
.cat-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:10px;margin:18px 0}
.cat-tile{display:flex;flex-direction:column;align-items:center;gap:3px;padding:12px 6px;background:#fff;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--txt);transition:.15s}
.cat-tile:hover{border-color:var(--lime);box-shadow:0 3px 12px rgba(0,0,0,.08);transform:translateY(-2px)}
.cat-tile.active{border-color:var(--lime);background:var(--ok-bg)}
.cat-ico{font-size:1.7rem;line-height:1}
.cat-name{font-weight:700;font-size:.85rem;text-align:center}
.cat-count{font-size:.75rem;color:var(--muted)}

/* sekcje personalne */
.personal-row{margin:22px 0}
.personal-row h2{font-size:1.15rem;display:flex;align-items:center;gap:10px;margin-bottom:8px}
.see-all{font-size:.8rem;font-weight:400}
.grid-4{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.section-h{border-top:2px solid var(--line);padding-top:16px;margin-top:26px}

/* kredyty */
.credits-chip{background:var(--ok-bg);border:1px solid var(--lime);border-radius:14px;padding:2px 10px;font-weight:700;text-decoration:none;font-size:.9rem}
.credits-panel .credits-big{color:var(--lime-d);font-size:1.5rem}
.credits-log td{padding:5px 8px;font-size:.85rem}
.credit-plus{color:var(--lime-d);font-weight:800}
.credit-minus{color:var(--hot);font-weight:800}
.btn-boost{border-color:var(--lime-d);color:var(--lime-d);font-weight:700}
.btn-boost:hover{background:var(--ok-bg)}
.tag-boost{background:var(--ok-bg);border:1px solid var(--lime);font-weight:700}

/* zgłoszenia */
.report-box{margin-top:6px;font-size:.85rem}
.report-box summary{cursor:pointer;color:var(--muted)}
.report-box summary:hover{color:var(--hot)}
.report-inline{display:inline-block;margin-right:8px}
.report-form{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.report-form select,.report-form input{padding:6px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:.85rem}
.report-form input{flex:1;min-width:140px}

/* moneta kredytów */
.coin{width:16px;height:16px;vertical-align:-3px}
.credits-chip{display:inline-flex;align-items:center;gap:5px}
.offers-chip{display:inline-flex;align-items:center;gap:4px;text-decoration:none;font-weight:600}

/* breadcrumbs */
.crumbs{font-size:.85rem;color:var(--muted);margin:14px 0 4px;display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--green);text-decoration:underline}
.crumb-sep{opacity:.5}
.crumb-current{color:var(--txt);font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* oferty */
.offer-panel .offer-form label{font-weight:700;display:block}
.offer-row{display:flex;align-items:center;gap:6px;margin:6px 0}
.offer-row input{flex:1;padding:10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:1.05rem}
.offer-cur{font-weight:700;color:var(--muted)}
.offer-form input[name=message]{width:100%;padding:8px;border:1px solid var(--line);border-radius:8px;font:inherit;margin-bottom:8px}
.hot-interest{background:#fff4ec;border:1px solid #f3c9a8;border-radius:8px;padding:8px 10px;font-size:.9rem;color:#a24b17}
.offer-mini{list-style:none;padding:0;margin:6px 0;font-size:.9rem}
.offer-mini li{margin:3px 0}
.offer-item{border-left:4px solid var(--line)}
.offer-item.offer-new{border-left-color:var(--lime)}
.offer-amount{font-size:1.05rem;margin:4px 0}
.offer-msg{background:#f6f8f6;border-radius:8px;padding:8px 10px;font-style:italic;margin:6px 0}
.offer-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px}
.offer-actions input{padding:7px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:.9rem}
.counter-group{display:flex;gap:4px;align-items:center}

/* profil sprzedającego */
.seller-facts{list-style:none;padding:0;margin:8px 0;font-size:.88rem}
.seller-facts li{margin:4px 0;color:var(--txt)}
.shop-about{margin:8px 0;font-size:.88rem}
.shop-about summary{cursor:pointer;font-weight:700}
.shop-about-full{margin:14px 0;padding:14px;background:#f8faf9;border-radius:10px}
.seller-reviews{margin:26px 0}
.review-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.review-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px}
.stars{color:#e8a33d;margin:0 0 4px;font-size:1.05rem}
.badge-sold{top:8px;right:8px;background:#555}
.archive-grid .card{opacity:.85}

/* --- nawigacja: przycisk dodaj po prawej --- */
.topbar-in{align-items:center}
.top-right{display:flex;align-items:center;gap:10px;margin-left:auto}
.btn-add{white-space:nowrap;font-size:1rem;padding:10px 18px}
.navrow{display:flex;padding:0 16px 8px}
.navrow nav{gap:16px}
.theme-toggle{font-size:1.05rem;text-decoration:none}

/* --- wyszukiwarka OLX --- */
.searchbar{display:flex;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;margin:18px 0 10px;box-shadow:0 2px 10px rgba(0,0,0,.05);flex-wrap:wrap}
.sb-main,.sb-region{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:10px;background:#fafbfa;border:1px solid transparent}
.sb-main{flex:2;min-width:240px}
.sb-region{flex:1;min-width:180px;border-left:1px solid var(--line)}
.sb-main input,.sb-region select{border:none;background:none;font:inherit;font-size:1.05rem;width:100%;outline:none}
.sb-ico{opacity:.6}
.sb-btn{padding:12px 28px;font-size:1.05rem;border-radius:10px}
.filters-box{margin:6px 0 12px}
.filters-box summary{cursor:pointer;font-weight:700;padding:8px 0;color:var(--green-d)}
.filters-box .filters{margin-top:0}

/* --- slider marek --- */
.brand-slider{position:relative;margin:16px 0;display:flex;align-items:center;gap:6px}
.bs-track{display:flex;gap:12px;overflow-x:auto;scroll-behavior:smooth;padding:6px 2px;scrollbar-width:thin;flex:1}
.bs-item{flex:0 0 auto;width:132px;height:82px;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-decoration:none;color:var(--txt);transition:.15s;padding:8px}
.bs-item:hover{border-color:var(--lime);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.bs-item img{max-width:100%;max-height:38px;object-fit:contain}
.bs-item span{font-size:.78rem;font-weight:700}
.bs-nav{background:#fff;border:1px solid var(--line);border-radius:50%;width:34px;height:34px;font-size:1.3rem;cursor:pointer;flex:0 0 auto;line-height:1}
.bs-nav:hover{background:var(--ok-bg)}

/* --- baner cookies --- */
.cookie-bar{position:fixed;bottom:0;left:0;right:0;background:var(--green-d);color:#fff;padding:12px 18px;display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;z-index:90;box-shadow:0 -3px 14px rgba(0,0,0,.2)}
.cookie-bar p{margin:0;font-size:.9rem;max-width:760px}
.cookie-bar a{color:var(--lime)}
.cookie-actions{display:flex;gap:8px}

/* --- ciemny motyw --- */
body.dark{--bg:#161b1f;--card:#1e2429;--txt:#e6ebee;--muted:#9aa6ae;--line:#2f373d;--green:#95d31c;--green-d:#7bb013;--ok-bg:#20301a;--warn-bg:#332b12;--err-bg:#3a1f1f}
body.dark .topbar,body.dark .panel,body.dark .card,body.dark .table,body.dark .form,body.dark .filters,body.dark .searchbar,body.dark .footer,body.dark .legal,body.dark .bs-item,body.dark .cat-tile,body.dark .price-card,body.dark .comment,body.dark .review-card,body.dark .stat{background:var(--card);color:var(--txt)}
body.dark .sb-main,body.dark .sb-region,body.dark .spec-details,body.dark .offer-msg,body.dark .shop-about-full{background:#232a30}
body.dark .btn{background:#242c32;color:var(--txt);border-color:var(--line)}
body.dark .btn-primary{background:var(--green-d);color:#0d1216;border-color:var(--green-d)}
body.dark input,body.dark select,body.dark textarea{background:#232a30;color:var(--txt);border-color:var(--line)}
body.dark .logo-text{color:#e6ebee}
body.dark a{color:var(--lime)}
body.dark .card-price,body.dark .specs .price{color:var(--lime)}

/* --- panel admina --- */
.admin-tabs{display:flex;gap:4px;flex-wrap:wrap;margin:16px 0;border-bottom:2px solid var(--line);padding-bottom:0}
.atab{padding:9px 14px;text-decoration:none;color:var(--txt);border-radius:10px 10px 0 0;font-weight:600;font-size:.92rem;border:1px solid transparent;border-bottom:none;display:inline-flex;align-items:center;gap:6px}
.atab:hover{background:var(--ok-bg)}
.atab.active{background:#fff;border-color:var(--line);color:var(--green-d);position:relative;top:2px}
body.dark .atab.active{background:var(--card)}
.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:16px 0}
.dash-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:2px}
body.dark .dash-card{background:var(--card)}
.dc-ico{font-size:1.4rem}
.dash-card strong{font-size:1.7rem;color:var(--green-d);line-height:1.1}
body.dark .dash-card strong{color:var(--lime)}
.dash-card span{font-size:.85rem;font-weight:600}
.dash-card em{font-size:.78rem;color:var(--muted);font-style:normal}
.bars{display:flex;gap:6px;align-items:flex-end;height:120px;padding:6px 0}
.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px;position:relative}
.bar-col span{font-size:.65rem;color:var(--muted)}
.bar{width:100%;max-width:22px;border-radius:3px 3px 0 0;min-height:2px}
.bar-l{background:var(--green)}
.bar-v{background:var(--lime);opacity:.65}
.lg{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-2px}
.lg-l{background:var(--green)}
.lg-v{background:var(--lime)}
.admin-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px}
body.dark .admin-filters{background:var(--card)}
.admin-filters input,.admin-filters select{padding:8px;border:1px solid var(--line);border-radius:8px;font:inherit}
.admin-filters input[name=q]{flex:1;min-width:200px}
.bulk-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:var(--warn-bg);border-radius:10px;padding:8px 12px;margin-bottom:8px}
.bulk-bar input{padding:6px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:.85rem}
.user-row summary{cursor:pointer;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.user-row.is-banned{border-left:4px solid var(--hot)}
.mini-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}
.brand-admin{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:12px 0}
.brand-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:6px;align-items:center}
body.dark .brand-card{background:var(--card)}
.brand-card img{max-width:100%;max-height:46px;object-fit:contain}
.brand-card input{width:100%;padding:6px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:.85rem}
.brand-row{display:flex;gap:6px;align-items:center;width:100%}
.no-logo{height:46px;display:flex;align-items:center;color:var(--muted);font-size:.8rem}
.tx-log{white-space:pre-wrap;font-size:.75rem;max-width:420px;margin:0}

/* rangi, awatary, popularność */
.rank-badge{background:linear-gradient(135deg,#fff6dc,#ffe9b0);border:1px solid #e8c66a;border-radius:12px;padding:2px 9px;font-size:.82rem;font-weight:700;white-space:nowrap}
body.dark .rank-badge{background:#3a3016;border-color:#6b5a2a;color:#f5e3b0}
.rank-line{margin:4px 0;display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.seller-head{display:flex;gap:10px;align-items:center;margin-bottom:8px}
.seller-name{margin:0}
.avatar-ph{width:48px;height:48px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.2rem;flex:0 0 auto}
.avatar-ph.big{width:76px;height:76px;font-size:1.9rem}
.profile-head{display:flex;gap:16px;align-items:center;margin:10px 0}
.profile-avatar{width:76px;height:76px;border-radius:14px;object-fit:cover;border:1px solid var(--line)}
.wanted-tag{margin:0 0 4px;font-size:.75rem;font-weight:800;color:#a24b17;background:#fff4ec;border:1px solid #f3c9a8;border-radius:8px;padding:2px 7px;display:inline-block}
.msg-form textarea{width:100%;padding:8px;border:1px solid var(--line);border-radius:8px;font:inherit;margin:8px 0 6px}
.danger-zone{border-left:4px solid var(--hot)}
.danger-zone summary{cursor:pointer;font-weight:700;color:var(--hot)}

/* skrzynka odbiorcza */
.inbox{display:grid;grid-template-columns:300px 1fr;gap:16px;margin:16px 0 40px}
@media(max-width:760px){.inbox{grid-template-columns:1fr}}
.inbox-list{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;max-height:70vh;overflow-y:auto}
body.dark .inbox-list{background:var(--card)}
.ib-item{display:flex;gap:10px;align-items:center;padding:10px 12px;text-decoration:none;color:var(--txt);border-bottom:1px solid var(--line)}
.ib-item:hover{background:var(--ok-bg)}
.ib-item.active{background:var(--ok-bg);border-left:3px solid var(--lime)}
.ib-item img{width:48px;height:38px;object-fit:cover;border-radius:6px;flex:0 0 auto}
.ib-noimg{width:48px;height:38px;display:flex;align-items:center;justify-content:center;background:#eef1ee;border-radius:6px}
.ib-meta{display:flex;flex-direction:column;font-size:.85rem;flex:1;min-width:0}
.ib-meta strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.inbox-thread{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column}
body.dark .inbox-thread{background:var(--card)}
.ib-head{border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:10px}
.ib-partner{display:flex;gap:8px;align-items:center;margin-top:6px;font-size:.88rem;flex-wrap:wrap}
.ib-msgs{flex:1;overflow-y:auto;max-height:52vh;display:flex;flex-direction:column;gap:8px}
.ib-msg{max-width:78%;background:#f2f5f3;border-radius:12px;padding:8px 12px;align-self:flex-start}
body.dark .ib-msg{background:#232a30}
.ib-msg.mine{align-self:flex-end;background:var(--ok-bg)}
.ib-msg p{margin:2px 0}
.ib-offer{font-weight:700}
.ib-time{font-size:.72rem;color:var(--muted)}
.ib-reply{display:flex;gap:8px;margin-top:12px;align-items:flex-end}
.ib-reply textarea{flex:1;padding:9px;border:1px solid var(--line);border-radius:10px;font:inherit;resize:vertical}

/* kalkulator ceny */
.price-hint{background:var(--ok-bg);border:1px solid var(--lime);border-radius:10px;padding:10px 12px;margin:8px 0;display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:.9rem}
.ph-range{font-weight:700;color:var(--green-d)}

/* specyfikacja: pełna szerokość, jedna pod drugą */
.spec-grid{display:block!important}
.spec-grid label{display:block!important;width:100%;margin:10px 0}
.spec-grid textarea{width:100%;min-height:52px}

/* mobile: dodawanie ogłoszeń ze smartfona */
@media(max-width:640px){
  .form input,.form select,.form textarea{font-size:16px;padding:12px}
  .form .row{grid-template-columns:1fr}
  .btn,.btn-primary{padding:12px 16px}
  .btn-lg{width:100%;text-align:center}
  .searchbar{flex-direction:column;gap:8px}
  .sb-region{border-left:none;border-top:1px solid var(--line)}
  .sb-btn{width:100%}
  .top-right{width:100%;margin:6px 0 0}
  .btn-add{width:100%;text-align:center}
  .navrow{overflow-x:auto}
  .navrow nav{flex-wrap:nowrap;white-space:nowrap}
  .admin-tabs{overflow-x:auto;flex-wrap:nowrap}
  .dash-grid{grid-template-columns:repeat(2,1fr)}
  input[type=file]{width:100%}
}

/* import ogłoszenia */
.import-box{background:linear-gradient(135deg,#f3faea,#eef7fb);border:1px solid var(--lime);border-radius:14px;padding:16px;margin:14px 0}
body.dark .import-box{background:#25301f;border-color:#4b6b1f}
.import-head{display:flex;gap:12px;align-items:flex-start}
.import-ico{font-size:1.6rem}
.import-head p{margin:2px 0 0}
.import-row{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.import-row input{flex:1;min-width:240px;padding:11px;border:1px solid var(--line);border-radius:10px;font:inherit}
.import-result{margin-top:12px;background:#fff;border-radius:10px;padding:12px;font-size:.92rem}
body.dark .import-result{background:var(--card)}
.imp-imgs{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.imp-img{position:relative;cursor:pointer}
.imp-img img{width:96px;height:72px;object-fit:cover;border-radius:8px;border:2px solid transparent}
.imp-img input{position:absolute;top:4px;left:4px;z-index:2}
.imp-img input:checked + img{border-color:var(--lime)}

/* porady */
.tips-box{background:#fffdf5;border:1px solid #e8dfc0;border-radius:12px;padding:14px 18px;margin:14px 0}
body.dark .tips-box{background:#2b2a20;border-color:#4a452f}
.tips-box ul{margin:8px 0 0;padding-left:20px}
.tips-box li{margin:5px 0;font-size:.92rem}

/* ocena ceny */
.ph-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;width:100%}
.ph-label{display:block;font-size:.85rem;color:var(--muted)}
.ph-big{font-size:1.6rem;font-weight:800;color:var(--green-d)}
body.dark .ph-big{color:var(--lime)}
.ph-note{margin:6px 0;font-size:.88rem;width:100%}
.ph-rating{width:100%;border-top:1px solid var(--line);padding-top:10px;margin-top:6px}
.ph-rating-head{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.ph-scale{display:flex;gap:3px;margin-top:8px}
.sc{flex:1;text-align:center;font-size:.75rem;font-weight:700;color:#fff;padding:5px 2px;opacity:.45}
.sc.on{opacity:1;transform:scale(1.04)}
.sc1{background:#137a3c;border-radius:8px 0 0 8px}
.sc2{background:#2f9e50}
.sc3{background:#d9a520}
.sc4{background:#c0392b;border-radius:0 8px 8px 0}
.ph-scale-nums{display:flex;justify-content:space-between;font-size:.7rem;color:var(--muted);margin-top:3px}

/* menu użytkownika w górnym pasku */
.user-menu{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.um-item{display:inline-flex;align-items:center;gap:5px;text-decoration:none;color:var(--txt);font-size:.9rem;font-weight:600;background:none;border:none;cursor:pointer;font-family:inherit;padding:4px 2px}
.um-item:hover{color:var(--green-d)}
body.dark .um-item{color:var(--txt)}
.um-item .mini-avatar{width:24px;height:24px}
.topbar-in{gap:14px}
.navrow nav a{font-size:.95rem}
.menu-catalog{color:var(--lime-d)}
@media(max-width:900px){
  .um-txt{display:none}
  .user-menu{gap:10px}
}

/* strona kategorii */
.cat-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px;margin:18px 0 40px;align-items:start}
.cat-col{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}
body.dark .cat-col{background:var(--card)}
.cat-col h2{margin:0 0 10px;font-size:1.1rem;display:flex;justify-content:space-between;align-items:center}
.cat-total{background:var(--ok-bg);border-radius:10px;padding:1px 10px;font-size:.85rem;color:var(--green-d)}
body.dark .cat-total{color:var(--lime)}
.cat-tree{list-style:none;padding:0;margin:0}
.cat-tree li{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px dashed var(--line)}
.cat-tree li:last-child{border-bottom:none}
.cat-tree a{text-decoration:none;color:var(--txt)}
.cat-tree a:hover{color:var(--green-d);text-decoration:underline}
.cat-tree.sub{padding-left:12px;margin:4px 0 8px}
.cat-tree.sub li{font-size:.9rem;padding:3px 0}
.cat-group{border-bottom:1px solid var(--line);padding:6px 0}
.cat-group:last-child{border-bottom:none}
.cat-group summary{cursor:pointer;font-weight:700;display:flex;justify-content:space-between;align-items:center;gap:8px}
.cat-group summary a{text-decoration:none;color:var(--txt)}
.cat-group .cat-count,.cat-tree .cat-count{color:var(--muted);font-size:.8rem;font-weight:600;min-width:26px;text-align:right}

/* logotyp przezroczysty (działa też w ciemnym motywie) */
.logo-full{height:52px;display:block}
@media(max-width:640px){.logo-full{height:40px}}


/* karuzele: obserwowane / ostatnio oglądane */
.row-carousel{position:relative}
.row-track{display:flex;gap:14px;overflow-x:auto;scroll-behavior:smooth;padding:4px 2px 10px;scroll-snap-type:x mandatory}
.row-track::-webkit-scrollbar{height:8px}
.row-track::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}
.row-track > .card{flex:0 0 232px;scroll-snap-align:start}
.row-nav{position:absolute;top:38%;background:#fff;border:1px solid var(--line);border-radius:50%;width:38px;height:38px;font-size:1.4rem;line-height:1;cursor:pointer;z-index:3;box-shadow:0 2px 8px rgba(0,0,0,.12)}
body.dark .row-nav{background:var(--card);color:var(--txt)}
.row-nav:hover{background:var(--ok-bg)}
.row-prev{left:-14px}
.row-next{right:-14px}
@media(max-width:640px){.row-nav{display:none}.row-track > .card{flex:0 0 76%}}

/* szersza strona płatności */
.narrow-wide{max-width:720px}
.narrow-wide select,.narrow-wide input{width:100%;max-width:100%}
.narrow-wide .rate-form{flex-direction:column;align-items:stretch}

/* awatar w Moim koncie */
.avatar-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}

/* oznaczanie sprzedanego */
.sold-box{display:inline-block}
.sold-box summary{list-style:none;cursor:pointer}
.sold-box summary::-webkit-details-marker{display:none}
.sold-form{margin-top:8px;background:#f7f9f7;padding:10px;border-radius:8px;max-width:420px}
body.dark .sold-form{background:#232a30}
.sold-form input{width:100%;padding:8px;border:1px solid var(--line);border-radius:6px;font:inherit;margin-bottom:6px}

/* edytor kategorii i uprawnienia */
.cat-admin{display:flex;flex-direction:column;gap:6px;margin:8px 0}
.cat-edit{display:flex;gap:6px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:8px;padding:6px 10px}
body.dark .cat-edit{background:var(--card)}
.cat-edit input[type=text],.cat-edit input:not([type]),.cat-edit input[type=number]{padding:6px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:.88rem}
.cat-new{background:var(--ok-bg)}
.cat-group-admin summary{cursor:pointer}
.perm-box{display:inline-block}
.perm-box summary{list-style:none}
.perm-box summary::-webkit-details-marker{display:none}
.perm-form{margin-top:8px;max-width:420px}
.perm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:4px;margin:8px 0;width:100%}

/* kredyty w panelu admina */
.credit-box{display:inline-block}
.credit-box summary{list-style:none;cursor:pointer}
.credit-box summary::-webkit-details-marker{display:none}
.credit-box .coin{margin-right:2px}
.credit-form{margin-top:8px;background:#fffdf3;border:1px solid #e8dfc0;border-radius:8px;padding:10px;max-width:520px}
body.dark .credit-form{background:#2b2a20;border-color:#4a452f}
.credit-form input{padding:7px;border:1px solid var(--line);border-radius:6px;font:inherit}
.rank-help{font-size:.8rem;font-weight:400}
.dash-card .coin{width:22px;height:22px}
