.stars{color:var(--muted);white-space:nowrap;align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.stars--md{font-size:.95rem}.stars--empty{font-style:italic}.stars__icons{letter-spacing:.05em;display:inline-flex}.stars__star{color:var(--line)}.stars__star--full{color:#f59e0b}.stars__star--half{background:linear-gradient(90deg, #f59e0b 50%, var(--line) 50%);color:#0000;-webkit-background-clip:text;background-clip:text}.stars__count{font-variant-numeric:tabular-nums}
.listing-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);height:100%;box-shadow:var(--shadow-sm);transition:box-shadow .15s,transform .15s;overflow:hidden}.listing-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.listing-card__link{height:100%;color:inherit;flex-direction:column;display:flex}.listing-card__link:hover{text-decoration:none}.listing-card__media{background:var(--surface-alt);position:relative}.listing-card__image,.listing-card__placeholder{aspect-ratio:3/2;object-fit:cover;background:linear-gradient(135deg, var(--brand-light), #dbe0fb);width:100%;display:block}.listing-card__badge,.listing-card__match{letter-spacing:.02em;border-radius:999px;padding:.25rem .6rem;font-size:.75rem;font-weight:700;position:absolute;top:.75rem}.listing-card__badge{background:var(--success);color:#fff;left:.75rem}.listing-card__match{background:var(--brand);color:#fff;right:.75rem}.listing-card__body{flex-direction:column;flex:1;gap:.5rem;padding:1rem 1.1rem 1.1rem;display:flex}.listing-card__title{margin:0;font-size:1.1rem}.listing-card__meta{color:var(--muted);margin:0;font-size:.9rem}.listing-card__tags{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.listing-card__tags li{background:var(--brand-light);color:var(--brand-dark);border-radius:999px;padding:.2rem .55rem;font-size:.75rem;font-weight:700}.listing-card__footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:auto;padding-top:.5rem;display:flex}.listing-card__price strong{color:var(--ink);font-size:1.2rem}.listing-card__region{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:.75rem;margin:0;padding-top:.6rem;font-size:.8rem;display:flex}.listing-card__number{font-variant-numeric:tabular-nums;color:var(--brand);font-weight:700}
