/* ===========================================================
   Ingatlan lista (grid) — CSS
   Bemásolható: public/css/property-list.css
   =========================================================== */

/* Kiemelt (featured) ingatlankártya */
.card-property.is-featured{background:linear-gradient(180deg,#fff7e6 0%,#fffaf0 100%);border:1px solid #f4d28a !important;box-shadow:0 6px 24px rgba(214,158,46,.18),0 2px 6px rgba(15,23,42,.06) !important;position:relative}
.card-property.is-featured .card-property-facilities{background:rgba(255,255,255,.7);border-color:#f4d28a !important}
.card-property.is-featured .property-card-title{color:#7a4a00}

/* "Kiemelt" szalag bal felső sarokban */
.featured-ribbon{position:absolute;top:12px;left:12px;z-index:3;display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#f6b73c,#d99412);color:#fff;font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px;box-shadow:0 4px 12px rgba(214,148,18,.35);letter-spacing:.02em;text-transform:uppercase}
.featured-ribbon i{font-size:11px}

/* "1 napra is!" zöld badge a kép jobb felső sarkában (a Kiadó címke alatt) */
.shortterm-badge{position:absolute;top:48px;right:12px;z-index:3;display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#16a34a,#0d8a3f);color:#fff;font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px;box-shadow:0 4px 12px rgba(13,138,63,.35);letter-spacing:.02em}
.shortterm-badge i{font-size:11px}

/* "Azonnal költözhető" finom kék chip a szöveges részben */
.movein-chip{display:inline-flex;align-items:center;gap:5px;background:#eaf3fc;color:#1e74d6;border:1px solid #cfe2f7;font-size:11px;font-weight:600;padding:2px 9px;border-radius:999px;letter-spacing:.01em;white-space:nowrap;line-height:1.4}
.movein-chip i{font-size:9px}

/* Kép galéria a kártyán */
.property-img{position:relative}
.pg-slider{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.pg-track{display:flex;width:100%;height:100%;transition:transform .35s cubic-bezier(.22,.61,.36,1);will-change:transform;touch-action:pan-y}
.pg-track.no-anim{transition:none}
.pg-slide{flex:0 0 100%;width:100%;height:100%}
.pg-slide img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;-webkit-user-drag:none;user-select:none}

.pg-nav{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);border:0;display:flex;align-items:center;justify-content:center;color:#0f172a;font-size:13px;cursor:pointer;z-index:4;box-shadow:0 4px 12px rgba(15,23,42,.18);opacity:0;transition:opacity .2s,transform .15s,background .15s}
.pg-nav:hover{background:#fff;transform:translateY(-50%) scale(1.06)}
.pg-nav.prev{left:10px}
.pg-nav.next{right:10px}
.property-img:hover .pg-nav,
.property-row-image:hover .pg-nav{opacity:1}

.pg-dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:5px;z-index:4;padding:4px 8px;background:rgba(15,23,42,.35);border-radius:999px;backdrop-filter:blur(4px)}
.pg-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.55);transition:all .2s}
.pg-dot.active{background:#fff;width:18px;border-radius:999px}

.pg-counter{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:3;background:rgba(15,23,42,.55);color:#fff;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;backdrop-filter:blur(4px);opacity:0;transition:opacity .2s}
.property-img:hover .pg-counter,
.property-row-image:hover .pg-counter{opacity:1}

/* Húzás-tipp ikon (animált kéz) */
.pg-swipe-hint{position:absolute;top:50%;left:50%;width:48px;height:48px;margin-left:-24px;margin-top:-24px;border-radius:50%;background:rgba(255,255,255,.95);color:#1e74d6;display:flex;align-items:center;justify-content:center;font-size:18px;z-index:5;pointer-events:none;opacity:0;box-shadow:0 6px 20px rgba(15,23,42,.25)}
.pg-swipe-hint.show{animation:pgSwipeHint 1.8s ease-in-out 1}
@keyframes pgSwipeHint{
    0%{opacity:0;transform:translateX(-30px) scale(.85)}
    15%{opacity:1;transform:translateX(-30px) scale(1)}
    50%{opacity:1;transform:translateX(30px) scale(1)}
    85%{opacity:1;transform:translateX(-15px) scale(1)}
    100%{opacity:0;transform:translateX(0) scale(.9)}
}

/* A kártya linkje ne fogja el a slider gombokat */
.card-property .card-link{z-index:1}

@media(max-width:767px){
    .pg-nav{display:none}
    .pg-dots{bottom:8px}
}

/* Már megtekintett hirdetés – letompított állapot */
.card-property.is-viewed .property-img::after{content:"";position:absolute;inset:0;background:rgba(15,23,42,.28);z-index:2;pointer-events:none}
.card-property.is-viewed .pg-slide img{filter:grayscale(.35) brightness(.9)}
.card-property.is-viewed .property-card-title,
.card-property.is-viewed .card-property-description,
.card-property.is-viewed .card-property-price{opacity:.72}
.viewed-badge{position:absolute;top:12px;left:12px;z-index:4;display:inline-flex;align-items:center;gap:6px;background:rgba(15,23,42,.85);color:#fff;font-size:11px;font-weight:700;padding:5px 10px;border-radius:999px;box-shadow:0 4px 12px rgba(15,23,42,.35);letter-spacing:.02em;text-transform:uppercase;backdrop-filter:blur(4px)}
.viewed-badge i{font-size:11px;color:#94a3b8}
.card-property.is-viewed .viewed-badge + .featured-ribbon{top:44px}

/* Már megtekintett hirdetés – lista nézet */
.property-row-image{min-height:220px}
.property-row .pg-slider{z-index:2;cursor:pointer}
.property-row .pg-counter{top:auto;bottom:44px}
.property-row .card-property-badge{z-index:3}
.property-row.is-viewed .property-row-image::after{content:"";position:absolute;inset:0;background:rgba(15,23,42,.28);z-index:2;pointer-events:none}
.property-row.is-viewed .property-row-image .pg-slide img{filter:grayscale(.35) brightness(.9)}
.property-row.is-viewed .property-row-title,
.property-row.is-viewed .property-row-description,
.property-row.is-viewed .card-property-price{opacity:.72}
.property-row.is-viewed .viewed-badge + .featured-ribbon{top:44px}

/* Kiemelt hirdetés – lista nézet */
.property-row.is-featured{background:linear-gradient(180deg,#fff7e6 0%,#fffaf0 100%);border:1px solid #f4d28a !important;box-shadow:0 6px 24px rgba(214,158,46,.18),0 2px 6px rgba(15,23,42,.06) !important}
.property-row.is-featured .property-row-content{background:rgba(255,255,255,.35) !important}
.property-row.is-featured .card-property-facilities{background:rgba(255,255,255,.7);border-color:#f4d28a !important}
.property-row.is-featured .property-row-title{color:#7a4a00}

/* Recent property-view activity badge */
.property-viewers-row{display:block}
.property-viewers-badge{position:relative;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:4px 9px 4px 7px;border-radius:999px;background:#444a59;box-shadow:0 4px 12px rgba(15,23,42,.15);color:#fff;font-size:11px;font-weight:600;line-height:1;white-space:nowrap}
.property-viewers-dot{position:relative;width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:#22c55e}
.property-viewers-dot::before{position:absolute;inset:-3px;border-radius:50%;background:#22c55e;content:"";opacity:.55;animation:propertyViewersPulse 1.6s ease-out infinite}
@keyframes propertyViewersPulse{0%{transform:scale(.6);opacity:.6}100%{transform:scale(1.6);opacity:0}}
@media(prefers-reduced-motion:reduce){.property-viewers-dot::before{animation:none}}

.property-row-contact-reveal{display:grid;place-items:center}
.property-row-contact-reveal>*{grid-area:1/1}
.property-row-contact-reveal>.is-concealed{visibility:hidden;pointer-events:none}
.property-row-contact-reveal--phone{transform:translateY(-4px)}
