/* ==========================================================================
   Empty state — shared "nothing here" / "no results" placeholder
   (Sprint 2 Faza D)

   Canonical home for:
   - .no-results        (search returned nothing, list page is empty)
   - .empty-state       (alias used in some templates — same styling)
   - .no-image          (image-not-uploaded placeholder, used inside cards)

   Replaces duplicate definitions in ad-list.css, agency-show.css, faq.css.
   ========================================================================== */

.no-results,
.empty-state {
    padding: clamp(48px, 6vw, 80px) 24px;
    text-align: center;
    background: transparent;
    border: 1px solid var(--hairline);
    color: var(--ink);
}

.no-results i,
.empty-state i {
    display: block;
    margin: 0 auto 18px;
    font-size: 2.5rem;
    color: var(--hairline-strong);
}

.no-results h3,
.empty-state h3 {
    margin: 0 0 8px;
    font-family: var(--font-display);
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.2;
    color: var(--ink);
}

.no-results p,
.empty-state p {
    margin: 0 auto 24px;
    max-width: 50ch;
    font-family: var(--font-body);
    font-size: 0.98rem;
    line-height: 1.6;
    color: var(--taupe);
}

.no-results .btn:last-child,
.empty-state .btn:last-child {
    margin-bottom: 0;
}

/* Compact variant — used inside cards, sidebars */
.no-results--compact,
.empty-state--compact {
    padding: clamp(28px, 4vw, 48px) 18px;
}

.no-results--compact i,
.empty-state--compact i { font-size: 1.8rem; margin-bottom: 12px; }

.no-results--compact h3,
.empty-state--compact h3 { font-size: 1.1rem; }

.no-results--compact p,
.empty-state--compact p { font-size: 0.88rem; margin-bottom: 16px; }

/* ----- .no-image (image placeholder inside cards) --------------------- */
.no-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: var(--paper);
    color: var(--hairline-strong);
    font-size: 2rem;
}
