:root{
  --brand:#e11d2e;      /* raudona */
  --brand-dark:#b81422;
  --bg:#ffffff;
  --muted:#6b7280;
  --soft:#f6f7fb;
  --border:#e5e7eb;
  --shadow: 0 10px 30px rgba(17,24,39,.08);
}

body{ background:var(--bg); color:#111827; }

.btn-primary{
  background:var(--brand);
  border-color:var(--brand);
}
.btn-primary:hover{ background:var(--brand-dark); border-color:var(--brand-dark); }

.btn-accent{
  background:rgba(225,29,46,.10);
  color:var(--brand-dark);
  border:1px solid rgba(225,29,46,.18);
}
.btn-accent:hover{
  background:rgba(225,29,46,.14);
  border-color:rgba(225,29,46,.24);
}

.icon-btn{
  width:44px;height:44px; display:flex; align-items:center; justify-content:center;
  border-radius:14px;
}

.search-pill{
  border:1px solid var(--border);
  border-radius:18px;
  overflow:hidden;
  box-shadow: 0 1px 0 rgba(17,24,39,.02);
}
.search-pill .form-control:focus{ box-shadow:none; }

.hero{
  background:
    radial-gradient(900px 300px at 20% 20%, rgba(225,29,46,.10), transparent 60%),
    radial-gradient(900px 300px at 80% 10%, rgba(225,29,46,.06), transparent 60%),
    linear-gradient(#fff, #fff);
  padding: 28px 0 24px;
  border-bottom:1px solid var(--border);
}

.card-soft{
  border:1px solid var(--border);
  border-radius:20px;
  box-shadow: var(--shadow);
}

.cat-card{
  display:flex; gap:10px; align-items:center;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:18px;
  text-decoration:none;
  color:#111827;
  background:#fff;
  transition:transform .12s ease, box-shadow .12s ease;
}
.cat-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 25px rgba(17,24,39,.07);
}
.cat-ic{
  width:36px;height:36px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(225,29,46,.10);
  color:var(--brand-dark);
}

.listing-card{
  display:block;
  border:1px solid var(--border);
  border-radius:20px;
  overflow:hidden;
  text-decoration:none;
  color:inherit;
  background:#fff;
  transition:transform .12s ease, box-shadow .12s ease;
}
.listing-card:hover{ transform: translateY(-2px); box-shadow: 0 14px 30px rgba(17,24,39,.08); }

.thumb{
  position:relative;
  aspect-ratio: 4 / 3;
  background: var(--soft);
}
.thumb img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
.badge-cond{
  position:absolute;
  left:12px; top:12px;
  background: rgba(17,24,39,.78);
  color:#fff;
  padding:7px 10px;
  border-radius:999px;
  font-size:12px;
}

.price{
  font-weight:800;
  letter-spacing:-.02em;
}

.chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 10px;
  border:1px solid var(--border);
  border-radius:999px;
  font-size:12px;
  color:#111827;
  background:#fff;
}
.chip i{ color:var(--muted); }

.line-clamp-2{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.cta-strip{
  border:1px solid rgba(225,29,46,.18);
  background: rgba(225,29,46,.06);
  border-radius:22px;
  padding:18px 18px;
}
