/* ==========================================================================
   Responsive kurallar (responsive.css)
   Masaustu -> laptop -> tablet -> mobil uyum
   ========================================================================== */

/* Laptop / kucuk masaustu */
@media (max-width: 1024px) {
    .feature-grid { grid-template-columns: repeat(2, 1fr); }
    .listing-grid { grid-template-columns: repeat(2, 1fr); }
    .hero-title { font-size: 2.4rem; }
    .stat-grid { grid-template-columns: repeat(3, 1fr); }
    .detail-grid { grid-template-columns: 1.4fr 1fr; }
}

/* Tablet */
@media (max-width: 860px) {
    .hero-inner { grid-template-columns: 1fr; }
    .hero-visual { min-height: 280px; order: -1; }
    .tenant-hero-inner { grid-template-columns: 1fr; }
    .detail-grid { grid-template-columns: 1fr; }
    .detail-side { position: static; }
    .contact-grid { grid-template-columns: 1fr; }
    .filter-bar { grid-template-columns: repeat(2, 1fr); }

    /* Mobil menu */
    .nav-toggle { display: flex; }
    .site-nav {
        position: fixed; top: 68px; right: 0; left: 0;
        background: #fff; border-bottom: 1px solid var(--line);
        flex-direction: column; align-items: stretch; gap: 0;
        padding: 10px 20px 20px; box-shadow: var(--shadow);
        transform: translateY(-140%); transition: transform .25s ease; z-index: 39;
    }
    .site-nav.open { transform: translateY(0); }
    .site-nav a { padding: 12px 0; border-bottom: 1px solid var(--line); }
    .site-nav a:last-child { border-bottom: 0; }
    .tenant-header .site-nav { top: 68px; }

    /* Panel: sidebar kayar menu olur */
    .panel-sidebar {
        position: fixed; top: 0; left: 0; height: 100vh; z-index: 50;
        transform: translateX(-105%); transition: transform .25s ease;
        box-shadow: var(--shadow-lg);
    }
    .panel-sidebar.open { transform: translateX(0); }
    .panel-toggle { display: flex; }
    .panel-content { padding: 20px 16px 50px; }
}

/* Mobil telefon */
@media (max-width: 560px) {
    body { font-size: 15px; }
    .container { padding: 0 16px; }
    .section { padding: 40px 0; }

    .hero { padding: 44px 0 40px; }
    .hero-title { font-size: 2rem; }
    .hero-sub { font-size: 1rem; }
    .hero-actions .btn { flex: 1; }

    .feature-grid { grid-template-columns: 1fr; }
    .listing-grid { grid-template-columns: 1fr; gap: 12px; }
    .stat-grid { grid-template-columns: repeat(2, 1fr); }

    /* --- Mobil: GetirYemek tarzi yatay ilan karti (solda kucuk gorsel, sagda bilgiler) --- */
    .listing-card { flex-direction: row; align-items: stretch; }
    .listing-card-media {
        width: 118px;
        min-width: 118px;
        aspect-ratio: auto;      /* dikey orandan cikar */
        align-self: stretch;     /* gorsel kart boyu kadar uzasin */
        min-height: 118px;
    }
    .listing-card-noimg { min-height: 118px; }
    .listing-card-body { padding: 11px 13px; gap: 5px; }
    /* Kompakt (ilk) boyut; fiyat ise belirgin kalir */
    .listing-card-title {
        font-size: .98rem; line-height: 1.3;
        display: -webkit-box;
        -webkit-line-clamp: 2;   /* baslik en fazla 2 satir, tasarsa ... */
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
    .listing-card-meta { gap: 8px 12px; font-size: .8rem; }
    .listing-badge { top: 7px; left: 7px; padding: 2px 8px; font-size: .68rem; }
    .listing-price { font-size: 1.06rem; }   /* belirginlik korunur */
    .listing-detay { font-size: .82rem; }
    .listing-card-footer { padding-top: 4px; }
    .listing-card-footer .btn { padding: 6px 11px; font-size: .78rem; }
    .form-grid { grid-template-columns: 1fr; }
    .filter-bar { grid-template-columns: 1fr; }

    .section-title { font-size: 1.5rem; }
    .detail-title { font-size: 1.5rem; }
    .tenant-hero-title { font-size: 1.9rem; }

    .footer-inner { flex-direction: column; }

    /* Tablolari mobilde kart gorunumune cevir */
    .data-table { min-width: 0; }
    .data-table thead { display: none; }
    .data-table, .data-table tbody, .data-table tr, .data-table td { display: block; width: 100%; }
    .data-table tr {
        border: 1px solid var(--line); border-radius: 12px; margin-bottom: 14px;
        padding: 6px 12px; background: #fff;
    }
    .data-table td { border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; gap: 12px; align-items: center; text-align: right; padding: 10px 0; }
    .data-table td:last-child { border-bottom: 0; }
    .data-table td::before {
        content: attr(data-label); font-weight: 700; color: var(--muted);
        font-size: .78rem; text-transform: uppercase; text-align: left;
    }
    .data-table td[data-label=""]::before { content: ""; }
    .cell-listing { justify-content: flex-end; text-align: right; }
    .row-actions { justify-content: flex-end; }

    .auth-card { padding: 22px; }
    .form-actions { flex-direction: column; }
    .form-actions .btn { width: 100%; }
    .sticky-actions { flex-direction: column-reverse; }
    .stat-value { font-size: 1.6rem; }
}

/* Cok kucuk ekran */
@media (max-width: 360px) {
    .stat-grid { grid-template-columns: 1fr; }
    .brand-text { font-size: 1rem; }
}
