/* ============================================================
   ApróPortál – Egyedi stílusok
   Bootstrap 5 kiegészítések
   ============================================================ */

/* ── Alap ─────────────────────────────────────────────────── */
:root {
    --ap-primary:     #0d6efd;
    --ap-accent:      #ffc107;
    --ap-card-radius: 1rem;
    --ap-transition:  .18s ease;
}

body {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    color: #212529;
}

a { transition: color var(--ap-transition); }

/* ── Hero banner ──────────────────────────────────────────── */
.hero-banner {
    background: linear-gradient(135deg, #0d6efd 0%, #0a58ca 60%, #084298 100%);
    min-height: 260px;
    display: flex;
    align-items: center;
}

/* ── Hirdetés kártya ──────────────────────────────────────── */
.ad-card {
    transition: transform var(--ap-transition), box-shadow var(--ap-transition);
    border-radius: var(--ap-card-radius) !important;
}
.ad-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 .75rem 1.5rem rgba(0,0,0,.12) !important;
}
.ad-card-img-wrap {
    overflow: hidden;
    border-radius: var(--ap-card-radius) var(--ap-card-radius) 0 0;
    background: #f8f9fa;
    aspect-ratio: 4/3;
}
.ad-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}
.ad-card:hover .ad-card-img {
    transform: scale(1.04);
}
.ad-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.4;
}

/* ── Kategória kártya ─────────────────────────────────────── */
.category-card {
    transition: transform var(--ap-transition), box-shadow var(--ap-transition);
    border-radius: var(--ap-card-radius) !important;
}
.category-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.1) !important;
    background: #f0f7ff !important;
}
.category-icon {
    font-size: 2rem;
    color: var(--ap-primary);
    line-height: 1;
}

/* ── Kategória pill (navbar) ──────────────────────────────── */
.category-pill {
    font-size: .78rem;
    transition: background var(--ap-transition), color var(--ap-transition);
}
.category-pill:hover {
    background: var(--ap-primary) !important;
    color: #fff !important;
    border-color: var(--ap-primary) !important;
}

/* ── Upload area ──────────────────────────────────────────── */
.upload-area {
    background: #f8f9fa;
    transition: border-color var(--ap-transition), background var(--ap-transition);
    cursor: pointer;
}
.upload-area:hover, .upload-area.border-primary {
    background: #e7f1ff;
}
.border-dashed {
    border-style: dashed !important;
}

/* ── Ad leírás tipográfia ─────────────────────────────────── */
.ad-description {
    white-space: pre-line;
    line-height: 1.75;
    color: #343a40;
}

/* ── Statisztika kártyák (admin) ─────────────────────────── */
.col-xl-2-4 {
    flex: 0 0 auto;
    width: 20%;
}
@media (max-width: 1199px) {
    .col-xl-2-4 { width: 33.333%; }
}
@media (max-width: 767px) {
    .col-xl-2-4 { width: 50%; }
}

/* ── Reszponzív táblázat ──────────────────────────────────── */
.table th {
    font-size: .8rem;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: #6c757d;
    font-weight: 600;
    border-top: none;
}

/* ── Sticky sidebar ──────────────────────────────────────── */
@media (max-width: 991px) {
    .sticky-top { position: relative !important; top: auto !important; }
}

/* ── Pagination ──────────────────────────────────────────── */
.pagination .page-link {
    border-radius: .5rem !important;
    margin: 0 2px;
    font-size: .875rem;
    color: var(--ap-primary);
}
.pagination .page-item.active .page-link {
    background-color: var(--ap-primary);
    border-color: var(--ap-primary);
}

/* ── Flash üzenetek animáció ─────────────────────────────── */
.alert {
    animation: fadeSlideDown .25s ease both;
}
@keyframes fadeSlideDown {
    from { opacity: 0; transform: translateY(-10px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Kép bélyegkép hover ─────────────────────────────────── */
.thumb-img { transition: opacity var(--ap-transition); }
.thumb-img:hover { opacity: .8; }

/* ── Scrollbar (Chrome) ──────────────────────────────────── */
::-webkit-scrollbar { width: 7px; height: 7px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { background: #bbb; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #999; }

/* ── Utility ─────────────────────────────────────────────── */
.cursor-pointer { cursor: pointer; }
.hover-light:hover { color: #fff !important; }
.object-fit-cover { object-fit: cover; }

/* ── No-image SVG placeholder ────────────────────────────── */
/* Nincs külső kép szükséges – CSS-ben generálódik */
