/* OE Porównywarka 1.1 — EroticMystery */
.oepc{--bg:#12091c;--card:#1b0d28;--card2:#241033;--border:#44205a;--text:#fff;--muted:#cbbbd8;--pink:#f00091;--violet:#c900e9;max-width:1180px;margin:18px auto;color:var(--text)!important;font-family:inherit}
.oepc *{box-sizing:border-box}.oepc a{color:inherit}
.oepc-hero{padding:24px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(135deg,var(--card),#12091d);margin-bottom:18px}
.oepc-hero h2{margin:0 0 6px!important;font-size:30px!important;line-height:1.15;color:#fff!important}.oepc-hero p{margin:0 0 18px!important;color:var(--muted)!important}
.oepc-search{display:grid;grid-template-columns:minmax(220px,2fr) minmax(170px,1fr) auto;gap:10px}
.oepc-search input,.oepc-search select{width:100%;height:46px;padding:0 14px!important;border:1px solid #654079!important;border-radius:10px!important;background:#fff!important;color:#23182a!important;font-size:14px!important}
.oepc-search button,.oepc-btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:11px 18px!important;border:0!important;border-radius:10px!important;background:linear-gradient(90deg,var(--violet),var(--pink))!important;color:#fff!important;text-decoration:none!important;font-weight:800!important;cursor:pointer;box-shadow:none!important}
.oepc-search button:hover,.oepc-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}
.oepc-count{margin:14px 2px;color:var(--muted)!important}.oepc-count strong{color:#fff!important}
.oepc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.oepc-card{border:1px solid var(--border)!important;border-radius:15px!important;overflow:hidden;background:var(--card)!important;display:flex;flex-direction:column;min-width:0;box-shadow:0 10px 24px rgba(0,0,0,.16)}
.oepc-img{height:220px;display:flex;align-items:center;justify-content:center;padding:14px;background:#fff!important;border-bottom:1px solid var(--border)}.oepc-img img{width:100%;height:100%;object-fit:contain}
.oepc-body{padding:15px!important;display:flex;flex:1;flex-direction:column;min-height:205px}.oepc-brand{font-size:11px!important;line-height:1.3;text-transform:uppercase;letter-spacing:.05em;color:#e7a7df!important;opacity:1!important;min-height:14px}
.oepc-card h3{font-size:16px!important;line-height:1.3!important;margin:7px 0 9px!important;color:#fff!important}.oepc-card h3 a{color:#fff!important;text-decoration:none!important}.oepc-card h3 a:hover{color:#ff6ac4!important}
.oepc-meta{font-size:12px!important;color:var(--muted)!important;margin-top:auto}.oepc-price{font-size:23px!important;line-height:1.15;font-weight:900!important;margin:7px 0 13px!important;color:#fff!important}.oepc-body .oepc-btn{width:100%}
.oepc-pages{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:28px 0}.oepc-pages .page-numbers{padding:8px 12px!important;border:1px solid var(--border)!important;border-radius:8px!important;background:var(--card)!important;color:#fff!important;text-decoration:none!important}.oepc-pages .current{background:var(--pink)!important;border-color:var(--pink)!important}
.oepc-back{display:inline-block;margin-bottom:18px;color:#ff65c0!important;text-decoration:none!important}.oepc-product-top{display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:30px;align-items:center;margin-bottom:30px;padding:22px;border:1px solid var(--border);border-radius:16px;background:var(--card)}
.oepc-product-img{height:310px;border-radius:13px;padding:18px;display:flex;align-items:center;justify-content:center;background:#fff}.oepc-product-img img{max-width:100%;max-height:100%;object-fit:contain}
.oepc-product h1{font-size:32px!important;line-height:1.15!important;color:#fff!important}.oepc-product h2{color:#fff!important}.oepc-product p{color:var(--muted)!important}
.oepc-offers{display:flex;flex-direction:column;gap:10px}.oepc-offer{display:grid;grid-template-columns:1.3fr 1fr .7fr auto;gap:15px;align-items:center;padding:15px;border:1px solid var(--border)!important;border-radius:12px;background:var(--card)!important;color:#fff!important}.oepc-offer.best{border:2px solid var(--pink)!important;background:var(--card2)!important}
.oepc-offer strong{color:#fff!important}.oepc-badge{display:inline-block;margin-left:8px;font-size:10px;padding:4px 7px;border-radius:99px;background:var(--pink)!important;color:#fff!important}.oepc-offer-price{font-size:20px;font-weight:900;text-align:right;color:#fff!important}.oepc-avail{font-size:12px;color:var(--muted)!important}
.oepc-desc{margin-top:28px;border-top:1px solid var(--border);padding-top:16px;color:var(--muted)}.oepc-desc summary{font-weight:800;cursor:pointer;color:#fff}.oepc-note{font-size:12px!important;color:#9e8eaa!important;margin-top:24px}
@media(max-width:1050px){.oepc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.oepc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.oepc-search{grid-template-columns:1fr}.oepc-product-top{grid-template-columns:1fr}.oepc-product-img{height:260px}.oepc-offer{grid-template-columns:1fr 1fr}.oepc-offer-price{text-align:left}}
@media(max-width:480px){.oepc-grid{grid-template-columns:1fr}.oepc-hero{padding:17px}.oepc-img{height:245px}.oepc-offer{grid-template-columns:1fr}.oepc-product h1{font-size:26px!important}}

/* v1.2 */
.oepc-offer-price small{display:block;margin-top:3px;font-size:10px!important;font-weight:500!important;color:var(--muted)!important;white-space:nowrap}
.oepc-shipping{white-space:nowrap}

/* v1.3 */
.oepc-count{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.oepc-updated{font-size:12px;color:var(--muted)!important}
.oepc-offer-price del{display:block;font-size:11px!important;font-weight:500!important;color:#b9a7c4!important}
@media(max-width:600px){.oepc-updated{width:100%}}

.oepc-seo{margin-top:38px;padding:26px;border:1px solid #44205a;border-radius:16px;background:#1b0d28}
.oepc-seo h2{margin:0 0 12px!important;padding-top:8px;font-size:23px!important;color:#fff!important}
.oepc-seo h2:first-child{padding-top:0}.oepc-seo p{line-height:1.75!important;margin:0 0 18px!important}
.oepc-faq{display:flex;flex-direction:column;gap:9px}.oepc-faq details{border:1px solid #44205a;border-radius:10px;padding:13px 15px}
.oepc-faq summary{cursor:pointer;font-weight:800;color:#fff!important}.oepc-faq details p{margin:10px 0 2px!important}
@media(max-width:600px){.oepc-seo{padding:18px}}

/* 1.8.4 – kosmetyka frontendu; bez zmian SQL/importera */
.oepc-intro{margin:0 0 14px!important;line-height:1.65!important}
.oepc-grid{align-items:stretch}
.oepc-card{display:flex!important;flex-direction:column!important;height:100%!important}
.oepc-card .oepc-body{display:flex!important;flex-direction:column!important;flex:1 1 auto!important}
.oepc-card h3{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:4!important;
  overflow:hidden!important;
  line-height:1.22!important;
  min-height:4.88em!important;
  max-height:4.88em!important;
}
.oepc-card .oepc-meta{margin-top:auto!important}
.oepc-card .oepc-btn{margin-top:10px!important}
.oepc-faq details:not([open]) p{display:none!important}
.oepc-faq summary{list-style:revert!important}
@media(max-width:600px){
  .oepc-card h3{min-height:4.88em!important;max-height:4.88em!important}
}

/* 1.9.0 – rekomendacje klientów */
.oepc-vote{display:flex;align-items:center;gap:8px;margin:10px 0 2px}
.oepc-vote button{border:1px solid #f00091;background:transparent;color:#fff;border-radius:999px;padding:7px 12px;font-weight:800;cursor:pointer}
.oepc-vote button:hover{background:#f00091}
.oepc-vote span,.oepc-voted{font-size:12px;opacity:.82}
.oepc-voted{margin:10px 0 2px;color:#fff}
.oepc-recommended{margin:20px 0 28px;padding:20px;border:1px solid #f00091;border-radius:16px;background:#1b0d28}
.oepc-recommended-head h2{margin:0 0 5px!important;color:#fff!important;font-size:24px!important}
.oepc-recommended-head p{margin:0 0 16px!important;opacity:.85}
.oepc-recommended-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.oepc-rec-card{display:grid;grid-template-columns:105px 1fr;gap:13px;border:1px solid #44205a;border-radius:12px;padding:12px;background:#12091c}
.oepc-rec-img{display:flex;align-items:center;justify-content:center;min-height:125px}
.oepc-rec-img img{max-width:100%;max-height:125px;object-fit:contain}
.oepc-rec-body{min-width:0}.oepc-rec-body h3{font-size:16px!important;line-height:1.25!important;margin:7px 0!important}
.oepc-rec-badge{display:inline-block;background:#f00091;color:#fff;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:800}
@media(max-width:900px){.oepc-recommended-grid{grid-template-columns:1fr}.oepc-rec-card{grid-template-columns:90px 1fr}}

/* 1.9.2 – poprawiony układ kart „Polecane przez klientów” */
.oepc-recommended-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,220px))!important;
  gap:16px!important;
  justify-content:start!important;
  align-items:stretch!important;
}
.oepc-rec-card{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  min-width:0!important;
  max-width:220px!important;
  padding:12px!important;
  gap:0!important;
  overflow:hidden!important;
}
.oepc-rec-img{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:180px!important;
  min-height:180px!important;
  margin:0 0 12px!important;
  padding:8px!important;
  border-radius:9px!important;
  background:#fff!important;
  overflow:hidden!important;
}
.oepc-rec-img img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
}
.oepc-rec-body{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  min-width:0!important;
  width:100%!important;
}
.oepc-rec-badge{
  align-self:flex-start!important;
  margin:0 0 8px!important;
  white-space:nowrap!important;
}
.oepc-rec-body h3{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:4!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  min-height:5em!important;
  max-height:5em!important;
  margin:0 0 8px!important;
  font-size:16px!important;
  line-height:1.25!important;
}
.oepc-rec-body h3 a{overflow-wrap:anywhere!important;word-break:normal!important}
.oepc-rec-body .oepc-meta{margin-top:auto!important}
.oepc-rec-body .oepc-price{margin-top:5px!important}
.oepc-rec-body .oepc-btn{margin-top:10px!important;width:100%!important;text-align:center!important}
@media(max-width:600px){
  .oepc-recommended{padding:15px!important}
  .oepc-recommended-grid{grid-template-columns:1fr!important}
  .oepc-rec-card{max-width:none!important}
  .oepc-rec-img{height:210px!important}
}

/* 1.9.3 – pojedyncza rekomendacja wykorzystuje szerokość sekcji */
.oepc-recommended-grid:has(.oepc-rec-card:only-child){
  grid-template-columns:minmax(0,1fr)!important;
}
.oepc-recommended-grid:has(.oepc-rec-card:only-child) .oepc-rec-card{
  display:grid!important;
  grid-template-columns:190px minmax(0,1fr)!important;
  column-gap:20px!important;
  max-width:620px!important;
  width:100%!important;
}
.oepc-recommended-grid:has(.oepc-rec-card:only-child) .oepc-rec-img{
  grid-column:1!important;
  grid-row:1!important;
  width:190px!important;
  height:190px!important;
  min-height:190px!important;
  margin:0!important;
}
.oepc-recommended-grid:has(.oepc-rec-card:only-child) .oepc-rec-body{
  grid-column:2!important;
  grid-row:1!important;
}
.oepc-recommended-grid:has(.oepc-rec-card:only-child) .oepc-rec-body h3{
  min-height:0!important;
  max-height:none!important;
  -webkit-line-clamp:5!important;
  font-size:19px!important;
}
@media(max-width:600px){
  .oepc-recommended-grid:has(.oepc-rec-card:only-child) .oepc-rec-card{
    display:flex!important;
    max-width:none!important;
  }
  .oepc-recommended-grid:has(.oepc-rec-card:only-child) .oepc-rec-img{
    width:100%!important;
    height:210px!important;
    min-height:210px!important;
  }
}

/* 1.9.4 – zakres cen */
.oepc-price-range{display:flex;align-items:center;gap:7px;min-width:245px}
.oepc-price-range input{width:100px!important;min-width:0!important}
.oepc-price-range span{white-space:nowrap}
.oepc-price-range .oepc-currency{font-weight:800}
@media(max-width:850px){
  .oepc-price-range{width:100%;min-width:0}
  .oepc-price-range input{flex:1 1 0;width:auto!important}
}
