/* ════════════════════════════════════
   2BHK PROPERTY — FULL RESPONSIVE CSS
   ════════════════════════════════════ */
:root {
  --primary:#e53935; --primary-dark:#b71c1c; --primary-light:#ffebee;
  --secondary:#ff8f00; --dark:#1a1a2e; --light:#f5f5f5;
  --white:#ffffff; --gray:#757575; --light-gray:#eeeeee;
  --border:#e0e0e0; --text:#212121; --text-light:#616161;
  --success:#43a047; --warning:#fb8c00; --info:#1e88e5;
  --shadow:0 2px 12px rgba(0,0,0,.08);
  --shadow-md:0 6px 24px rgba(0,0,0,.12);
  --shadow-hover:0 10px 32px rgba(0,0,0,.16);
  --radius:10px; --radius-sm:7px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Poppins',sans-serif;color:var(--text);background:var(--light);min-height:100vh;-webkit-text-size-adjust:100%}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font-family:'Poppins',sans-serif}
.container{max-width:1180px;margin:0 auto;padding:0 16px}

/* ── NAV ─────────────────────────────── */
.navbar{background:var(--white);box-shadow:var(--shadow);position:sticky;top:0;z-index:999}
.nav-top{background:var(--dark);padding:5px 0;font-size:12px;color:#ccc}
.nav-top-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px}
.nav-top a{color:#ccc;margin-left:12px;transition:color .2s}
.nav-top a:hover{color:var(--white)}
.nav-main{display:flex;align-items:center;height:58px;gap:12px;position:relative}
.logo{font-size:22px;font-weight:800;color:var(--primary);letter-spacing:-1px;flex-shrink:0;white-space:nowrap}
.logo span{color:var(--dark)}
.nav-links{display:flex;gap:2px;flex:1}
.nav-links a{font-size:13px;font-weight:500;padding:7px 10px;border-radius:6px;transition:all .2s;white-space:nowrap}
.nav-links a:hover{background:var(--light-gray);color:var(--primary)}
.nav-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}

/* Hamburger */
.nav-hamburger{display:none;background:none;border:none;cursor:pointer;padding:7px;flex-direction:column;gap:5px;margin-left:auto}
.nav-hamburger span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:all .3s}
.nav-hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.nav-hamburger.open span:nth-child(2){opacity:0;transform:translateX(-6px)}
.nav-hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

/* Mobile menu overlay */
.mobile-menu{display:none;position:fixed;top:58px;left:0;right:0;bottom:0;background:var(--white);z-index:998;overflow-y:auto;flex-direction:column;padding:12px 16px 80px}
.mobile-menu.open{display:flex}
.mobile-menu a{padding:13px 14px;border-radius:8px;font-size:14px;font-weight:500;border-bottom:1px solid var(--border);transition:background .2s}
.mobile-menu a:last-child{border-bottom:none}
.mobile-menu a:hover{background:var(--light)}
.mobile-menu .mm-section{font-size:11px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.5px;padding:14px 14px 4px;margin-top:8px}
.mobile-menu .mm-highlight{background:var(--primary);color:var(--white)!important;text-align:center;margin-top:10px;font-weight:700;border-radius:8px}
.mobile-menu .mm-highlight:hover{background:var(--primary-dark)!important}

/* ── BUTTONS ─────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;border:none;text-align:center;white-space:nowrap}
.btn-primary{background:var(--primary);color:var(--white)}
.btn-primary:hover{background:var(--primary-dark);box-shadow:0 4px 12px rgba(229,57,53,.3);transform:translateY(-1px)}
.btn-outline{border:2px solid var(--primary);color:var(--primary);background:transparent}
.btn-outline:hover{background:var(--primary);color:var(--white)}
.btn-success{background:var(--success);color:var(--white)}
.btn-info{background:var(--info);color:var(--white)}
.btn-gray{background:var(--light-gray);color:var(--text);border:1px solid var(--border)}
.btn-lg{padding:13px 26px;font-size:15px}
.btn-sm{padding:6px 12px;font-size:12px}
.btn-block{display:flex;width:100%}

/* ── FLASH ───────────────────────────── */
.flash{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;font-weight:500}
.flash button{background:none;border:none;cursor:pointer;font-size:16px;opacity:.7;padding:2px 6px}
.flash-success{background:#e8f5e9;color:#2e7d32;border-left:4px solid var(--success)}
.flash-error{background:var(--primary-light);color:#c62828;border-left:4px solid var(--primary)}
.flash-info{background:#e3f2fd;color:#1565c0;border-left:4px solid var(--info)}

/* ── HERO ────────────────────────────── */
.hero{background:linear-gradient(135deg,#1a1a2e 0%,#0f3460 60%,#16213e 100%);padding:48px 16px 64px;text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-30%;left:-10%;width:400px;height:400px;background:radial-gradient(circle,rgba(229,57,53,.15) 0%,transparent 70%);pointer-events:none}
.hero-badge{display:inline-block;background:rgba(229,57,53,.2);border:1px solid rgba(229,57,53,.4);color:#ff8a80;padding:5px 14px;border-radius:50px;font-size:12px;font-weight:500;margin-bottom:14px}
.hero h1{font-size:clamp(22px,4.5vw,46px);color:var(--white);font-weight:800;line-height:1.2;margin-bottom:8px}
.hero h1 span{color:var(--secondary)}
.hero p{color:rgba(255,255,255,.7);font-size:14px;margin-bottom:28px}

/* ── SEARCH BOX ──────────────────────── */
.search-box{background:var(--white);border-radius:14px;max-width:860px;margin:0 auto;box-shadow:0 20px 60px rgba(0,0,0,.3);overflow:hidden;position:relative;z-index:2}
.search-tabs{display:flex;background:var(--light);border-bottom:1px solid var(--border);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.search-tabs::-webkit-scrollbar{display:none}
.search-tab{flex:1;min-width:64px;padding:11px 6px;text-align:center;font-size:12px;font-weight:600;cursor:pointer;color:var(--gray);border:none;background:transparent;border-bottom:3px solid transparent;white-space:nowrap;transition:all .2s}
.search-tab.active,.search-tab:hover{color:var(--primary);background:var(--white);border-bottom-color:var(--primary)}
.search-form{padding:14px;display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}
.sf-group{flex:1;min-width:120px}
.sf-group label{display:block;font-size:11px;font-weight:600;color:var(--gray);text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}
.sf-group input,.sf-group select{width:100%;padding:10px 11px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-family:'Poppins',sans-serif;outline:none;transition:border-color .2s}
.sf-group input:focus,.sf-group select:focus{border-color:var(--primary)}

/* ── STATS BAR ───────────────────────── */
.stats-bar{background:var(--white);padding:20px;border-bottom:1px solid var(--border)}
.stats-inner{display:flex;justify-content:space-around;flex-wrap:wrap;gap:14px}
.stat-item{text-align:center;min-width:80px}
.stat-num{font-size:24px;font-weight:800;color:var(--primary);display:block}
.stat-label{font-size:11px;color:var(--gray);font-weight:500}

/* ── SECTIONS ────────────────────────── */
.section{padding:36px 16px}
.section-alt{background:var(--white)}
.section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px;flex-wrap:wrap;gap:8px}
.section-title{font-size:20px;font-weight:700}
.section-title span{color:var(--primary)}
.section-sub{font-size:13px;color:var(--gray);margin-top:2px}
.view-all{color:var(--primary);font-size:13px;font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:3px}
.view-all:hover{text-decoration:underline}

/* ── PROPERTY CARDS ──────────────────── */
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.prop-card{background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:all .3s;position:relative;display:flex;flex-direction:column}
.prop-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}
.card-img{position:relative;height:190px;overflow:hidden;background:linear-gradient(135deg,#37474f,#546e7a);flex-shrink:0}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.prop-card:hover .card-img img{transform:scale(1.06)}
.card-img-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:50px;opacity:.25}
.card-badge{position:absolute;top:10px;left:10px;padding:3px 9px;border-radius:6px;font-size:10px;font-weight:700;text-transform:uppercase;color:var(--white)}
.badge-sale{background:var(--primary)}
.badge-rent{background:var(--info)}
.badge-pg{background:var(--warning)}
.badge-featured{background:var(--secondary)}
.card-wish{position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:50%;background:var(--white);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;box-shadow:0 2px 8px rgba(0,0,0,.2);border:none;transition:transform .2s}
.card-wish:hover{transform:scale(1.2)}
.card-body{padding:13px;flex:1;display:flex;flex-direction:column}
.card-price{font-size:18px;font-weight:800;color:var(--primary);line-height:1}
.card-price-sub{font-size:11px;color:var(--gray);margin-top:1px}
.card-title{font-size:13px;font-weight:600;color:var(--text);margin:7px 0 3px;line-height:1.3}
.card-loc{font-size:12px;color:var(--gray);margin-bottom:10px;flex:1}
.card-feats{display:flex;gap:4px;padding-top:9px;border-top:1px solid var(--border)}
.card-feat{flex:1;text-align:center}
.feat-val{font-size:12px;font-weight:700;display:block}
.feat-key{font-size:10px;color:var(--gray)}
.card-footer{display:flex;justify-content:space-between;align-items:center;padding:8px 13px;border-top:1px solid var(--border);background:var(--light);font-size:11px;color:var(--gray);flex-shrink:0}
.card-footer strong{color:var(--text);font-weight:600}

/* ── CITY CARDS ──────────────────────── */
.cities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}
.city-card{background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transition:all .3s;text-decoration:none;display:block}
.city-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}
.city-img{height:105px;position:relative;display:flex;align-items:center;justify-content:center;font-size:38px;overflow:hidden}
.city-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.55),transparent)}
.city-img-label{position:absolute;bottom:7px;left:10px;color:var(--white);font-size:13px;font-weight:700;z-index:1;text-shadow:0 1px 3px rgba(0,0,0,.5)}
.city-body{padding:10px 12px}
.city-name{font-size:14px;font-weight:700;margin-bottom:1px}
.city-count{font-size:11px;color:var(--gray)}
.city-price{font-size:11px;color:var(--primary);font-weight:600;margin-top:2px}

/* City gradient backgrounds */
.city-bg-mumbai{background:linear-gradient(135deg,#1a237e,#283593)}
.city-bg-delhi{background:linear-gradient(135deg,#b71c1c,#c62828)}
.city-bg-bangalore{background:linear-gradient(135deg,#1b5e20,#2e7d32)}
.city-bg-hyderabad{background:linear-gradient(135deg,#e65100,#ef6c00)}
.city-bg-chennai{background:linear-gradient(135deg,#006064,#00838f)}
.city-bg-pune{background:linear-gradient(135deg,#4a148c,#6a1b9a)}
.city-bg-kolkata{background:linear-gradient(135deg,#33691e,#558b2f)}
.city-bg-ahmedabad{background:linear-gradient(135deg,#880e4f,#ad1457)}
.city-bg-default{background:linear-gradient(135deg,#37474f,#546e7a)}

/* ── CITY PAGE ───────────────────────── */
.city-hero{background:linear-gradient(135deg,var(--dark) 0%,#0f3460 100%);padding:36px 16px;color:var(--white)}
.city-breadcrumb{font-size:12px;color:rgba(255,255,255,.6);margin-bottom:10px}
.city-breadcrumb a{color:rgba(255,255,255,.8)}
.city-breadcrumb a:hover{color:var(--white)}
.city-hero h1{font-size:clamp(20px,4vw,36px);font-weight:800;margin-bottom:6px}
.city-hero p{font-size:13px;color:rgba(255,255,255,.7);margin-bottom:16px}
.city-hero-stats{display:flex;gap:12px;flex-wrap:wrap}
.city-hs{background:rgba(255,255,255,.1);border-radius:8px;padding:10px 16px;text-align:center;min-width:80px}
.city-hs-num{font-size:20px;font-weight:800;color:var(--secondary);display:block}
.city-hs-label{font-size:11px;color:rgba(255,255,255,.7)}
.locality-chips{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}
.locality-chip{padding:6px 14px;background:var(--white);border-radius:20px;font-size:12px;font-weight:600;border:1.5px solid var(--border);cursor:pointer;transition:all .2s;text-decoration:none;color:var(--text);display:inline-block}
.locality-chip:hover,.locality-chip.active{background:var(--primary);color:var(--white);border-color:var(--primary)}
.price-insights{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin:16px 0}
.pi-card{background:var(--white);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow);border-left:4px solid var(--primary)}
.pi-label{font-size:11px;color:var(--gray);margin-bottom:3px;font-weight:500}
.pi-value{font-size:18px;font-weight:800;color:var(--primary)}
.pi-sub{font-size:11px;color:var(--gray);margin-top:2px}
.city-type-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.city-type-tab{padding:7px 14px;border-radius:20px;font-size:12px;font-weight:600;border:1.5px solid var(--border);cursor:pointer;background:var(--white);transition:all .2s;text-decoration:none;color:var(--text)}
.city-type-tab:hover,.city-type-tab.active{background:var(--primary);color:var(--white);border-color:var(--primary)}

/* ── SEARCH PAGE ─────────────────────── */
.search-page-wrap{display:grid;grid-template-columns:254px 1fr;gap:18px;align-items:start}
.filter-sidebar{background:var(--white);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);position:sticky;top:68px}
.filter-sidebar h3{font-size:14px;font-weight:700;margin-bottom:12px;padding-bottom:9px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}
.filter-group{margin-bottom:14px}
.filter-group label{display:block;font-size:11px;font-weight:600;color:var(--gray);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}
.filter-group input,.filter-group select{width:100%;padding:8px 10px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-family:'Poppins',sans-serif;outline:none;transition:border-color .2s}
.filter-group input:focus,.filter-group select:focus{border-color:var(--primary)}
.price-row{display:flex;gap:6px}
.price-row input{flex:1}
.checkbox-group{display:flex;flex-direction:column;gap:6px}
.checkbox-group label{display:flex;align-items:center;gap:7px;font-size:12px;cursor:pointer;font-weight:400;color:var(--text)}
.checkbox-group input[type=checkbox]{width:14px;height:14px;accent-color:var(--primary);flex-shrink:0}
.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}
.result-count{font-size:14px;font-weight:600}
.result-count span{color:var(--primary)}
.sort-select{padding:7px 10px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-family:'Poppins',sans-serif;outline:none}
.no-results{text-align:center;padding:50px 20px;background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow)}

/* Mobile filter toggle */
.filter-toggle-btn{display:none;width:100%;padding:11px 14px;background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;font-family:'Poppins',sans-serif;margin-bottom:12px;justify-content:space-between;align-items:center}
.filter-body{display:block}

/* ── PROPERTY DETAIL ─────────────────── */
.detail-wrap{display:grid;grid-template-columns:1fr 310px;gap:18px;align-items:start}
.detail-main{background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.gallery-main{height:320px;overflow:hidden;background:var(--dark);position:relative}
.gallery-main img{width:100%;height:100%;object-fit:cover}
.gallery-main .img-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:70px;opacity:.2}
.gallery-thumbs{display:flex;gap:5px;padding:6px;background:#111;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.gallery-thumbs img{width:68px;height:50px;object-fit:cover;border-radius:4px;cursor:pointer;opacity:.65;transition:opacity .2s;border:2px solid transparent;flex-shrink:0}
.gallery-thumbs img.active,.gallery-thumbs img:hover{opacity:1;border-color:var(--primary)}
.detail-body{padding:18px}
.detail-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.det-badge{padding:3px 9px;border-radius:6px;font-size:10px;font-weight:700;text-transform:uppercase}
.det-badge-sale{background:var(--primary-light);color:var(--primary)}
.det-badge-rent{background:#e3f2fd;color:var(--info)}
.det-badge-pg{background:#fff8e1;color:var(--warning)}
.det-badge-featured{background:#fff8e1;color:var(--secondary)}
.det-badge-verified{background:#e8f5e9;color:var(--success)}
.detail-price{font-size:26px;font-weight:800;color:var(--primary);margin-bottom:3px}
.detail-ppsf{font-size:12px;color:var(--gray);margin-bottom:8px}
.detail-title{font-size:18px;font-weight:700;margin-bottom:4px;line-height:1.3}
.detail-loc{font-size:13px;color:var(--gray);margin-bottom:16px}
.detail-feats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:14px;background:var(--light);border-radius:var(--radius);margin-bottom:16px}
.det-feat{text-align:center}
.det-feat-icon{font-size:18px;margin-bottom:2px}
.det-feat-val{font-size:13px;font-weight:700;display:block}
.det-feat-key{font-size:10px;color:var(--gray)}
.detail-section{margin-bottom:18px}
.detail-section h3{font-size:14px;font-weight:700;margin-bottom:9px;padding-bottom:7px;border-bottom:1px solid var(--border)}
.amenities-grid{display:flex;flex-wrap:wrap;gap:7px}
.amenity-tag{display:flex;align-items:center;gap:5px;padding:5px 10px;background:var(--light);border-radius:6px;font-size:12px;border:1px solid var(--border)}
.detail-table{width:100%;border-collapse:collapse;font-size:13px}
.detail-table tr{border-bottom:1px solid var(--border)}
.detail-table tr:last-child{border-bottom:none}
.detail-table td{padding:8px 4px}
.detail-table td:first-child{color:var(--gray);width:42%}
.detail-table td:last-child{font-weight:600}
.emi-calc{background:linear-gradient(135deg,var(--dark),#0f3460);color:var(--white);border-radius:var(--radius);padding:16px}
.emi-calc h4{margin-bottom:12px;font-size:14px}
.emi-result{font-size:22px;font-weight:800;color:var(--secondary);margin-top:10px}

/* Sticky sidebar */
.detail-sidebar{position:sticky;top:68px}
.sidebar-card{background:var(--white);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);margin-bottom:12px}
.sidebar-card h3{font-size:14px;font-weight:700;margin-bottom:10px}
.agent-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.agent-avatar{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));display:flex;align-items:center;justify-content:center;color:var(--white);font-size:16px;font-weight:700;flex-shrink:0}
.agent-name{font-size:13px;font-weight:700}
.agent-role{font-size:11px;color:var(--gray)}
.contact-form{display:flex;flex-direction:column;gap:8px}
.contact-form input,.contact-form textarea{padding:9px 11px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-family:'Poppins',sans-serif;outline:none;resize:vertical;transition:border-color .2s}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--primary)}
.contact-form textarea{min-height:70px}

/* ── AUTH ────────────────────────────── */
.auth-page{min-height:calc(100vh - 120px);display:flex;align-items:center;justify-content:center;padding:24px 16px}
.auth-box{background:var(--white);border-radius:14px;padding:28px;max-width:420px;width:100%;box-shadow:0 10px 40px rgba(0,0,0,.1)}
.auth-box .logo{display:block;margin-bottom:4px}
.auth-box h2{font-size:19px;font-weight:700;margin-bottom:3px}
.auth-sub{color:var(--gray);font-size:13px;margin-bottom:18px}
.form-group{margin-bottom:13px}
.form-group label{display:block;font-size:12px;font-weight:600;margin-bottom:4px;color:var(--text-light)}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:2px solid var(--border);border-radius:8px;font-size:14px;font-family:'Poppins',sans-serif;outline:none;transition:border-color .2s}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary)}
.form-group textarea{resize:vertical;min-height:80px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.form-error{font-size:12px;color:var(--primary);margin-top:4px;display:block}
.auth-divider{text-align:center;color:var(--gray);font-size:12px;margin:12px 0;position:relative}
.auth-divider::before,.auth-divider::after{content:'';position:absolute;top:50%;width:44%;height:1px;background:var(--border)}
.auth-divider::before{left:0}.auth-divider::after{right:0}
.auth-link{text-align:center;font-size:13px;color:var(--gray);margin-top:12px}
.auth-link a{color:var(--primary);font-weight:600}

/* ── DASHBOARD ───────────────────────── */
.dash-layout{display:grid;grid-template-columns:210px 1fr;gap:18px;align-items:start}
.dash-sidebar{background:var(--white);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow);position:sticky;top:68px}
.dash-user{text-align:center;padding:12px 0;border-bottom:1px solid var(--border);margin-bottom:8px}
.dash-avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));display:flex;align-items:center;justify-content:center;color:var(--white);font-size:18px;font-weight:700;margin:0 auto 6px}
.dash-name{font-weight:700;font-size:13px}
.dash-email{font-size:11px;color:var(--gray)}
.dash-menu a{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:7px;font-size:13px;font-weight:500;margin-bottom:1px;transition:all .2s}
.dash-menu a:hover,.dash-menu a.active{background:rgba(229,57,53,.08);color:var(--primary)}
.dash-card{background:var(--white);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);margin-bottom:16px}
.dash-card h3{font-size:14px;font-weight:700;margin-bottom:12px;padding-bottom:9px;border-bottom:1px solid var(--border)}
.stats-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-bottom:16px}
.stat-box{background:var(--light);border-radius:var(--radius-sm);padding:13px;text-align:center;border-left:3px solid var(--primary)}
.stat-box .big-num{font-size:24px;font-weight:800;color:var(--primary)}
.stat-box .big-label{font-size:11px;color:var(--gray)}

/* ── POST PROPERTY ───────────────────── */
.post-wrap{max-width:740px;margin:0 auto}
.amenity-cb{display:flex;flex-wrap:wrap;gap:7px}
.amenity-cb label{display:flex;align-items:center;gap:6px;padding:6px 11px;border:1.5px solid var(--border);border-radius:6px;cursor:pointer;font-size:12px;transition:all .2s}
.amenity-cb label:hover{border-color:var(--primary);background:var(--primary-light)}
.img-upload-area{border:2px dashed var(--border);border-radius:var(--radius);padding:22px;text-align:center;cursor:pointer;transition:border-color .2s}
.img-upload-area:hover{border-color:var(--primary)}
.img-upload-area input[type=file]{display:none}
.img-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:7px;margin-top:10px}
.img-preview-item{position:relative;border-radius:6px;overflow:hidden}
.img-preview-item img{width:100%;height:70px;object-fit:cover}

/* ── TABLE ───────────────────────────── */
.data-table{width:100%;border-collapse:collapse;font-size:13px}
.data-table th{background:var(--light);padding:9px 11px;text-align:left;font-weight:600;color:var(--gray);border-bottom:2px solid var(--border)}
.data-table td{padding:9px 11px;border-bottom:1px solid var(--border);vertical-align:middle}
.data-table tr:hover{background:rgba(0,0,0,.015)}
.status-badge{padding:3px 9px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase}
.status-active{background:#e8f5e9;color:var(--success)}
.status-pending{background:#fff8e1;color:var(--warning)}
.status-sold{background:#e3f2fd;color:var(--info)}
.status-inactive{background:var(--light-gray);color:var(--gray)}

/* ── PAGINATION ──────────────────────── */
.pagination{display:flex;gap:5px;justify-content:center;margin-top:22px;flex-wrap:wrap}
.page-btn{padding:7px 13px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;background:var(--white);transition:all .2s;text-decoration:none;display:inline-flex;align-items:center}
.page-btn:hover,.page-btn.active{background:var(--primary);color:var(--white);border-color:var(--primary)}

/* ── FOOTER ──────────────────────────── */
footer{background:var(--dark);color:#ccc;padding:40px 20px 16px;margin-top:48px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px;margin-bottom:28px}
.footer-brand .logo{color:var(--primary);display:block;margin-bottom:8px}
.footer-brand p{font-size:13px;line-height:1.7;color:#aaa}
.footer-col h4{color:var(--white);font-size:13px;font-weight:700;margin-bottom:11px}
.footer-col ul{list-style:none}
.footer-col ul li{margin-bottom:6px}
.footer-col ul li a{color:#999;font-size:12px;transition:color .2s}
.footer-col ul li a:hover{color:var(--primary)}
.footer-bottom{padding-top:14px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;font-size:12px;color:#555;flex-wrap:wrap;gap:6px}
.footer-cities{margin-top:6px}
.footer-cities a{color:#666;font-size:11px;margin-right:10px;transition:color .2s}
.footer-cities a:hover{color:var(--primary)}

/* ── BOTTOM NAV (mobile) ─────────────── */
.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--white);border-top:1px solid var(--border);z-index:997;padding:5px 0 env(safe-area-inset-bottom,6px);box-shadow:0 -3px 12px rgba(0,0,0,.08)}
.bottom-nav-inner{display:flex;justify-content:space-around;align-items:center}
.bn-item{display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 10px;font-size:10px;font-weight:600;color:var(--gray);text-decoration:none;border-radius:8px;transition:color .2s;min-width:50px;text-align:center}
.bn-item.active,.bn-item:hover{color:var(--primary)}
.bn-icon{font-size:20px;line-height:1}
.bn-post{background:var(--primary);color:var(--white)!important;border-radius:10px;padding:6px 12px;margin:-6px 0}
.bn-post .bn-icon{font-size:18px}
.bn-spacer{height:62px}

/* ════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════ */
@media(max-width:960px){
  .search-page-wrap{grid-template-columns:1fr}
  .filter-sidebar{position:static}
  .detail-wrap{grid-template-columns:1fr}
  .detail-sidebar{position:static}
  .dash-layout{grid-template-columns:1fr}
  .dash-sidebar{position:static}
  .footer-grid{grid-template-columns:1fr 1fr}
  .detail-feats{grid-template-columns:repeat(2,1fr)}
  .nav-top{display:none}
}

@media(max-width:768px){
  /* Nav */
  .nav-links,.nav-actions .btn-outline{display:none}
  .nav-hamburger{display:flex}
  .nav-actions .btn-primary{font-size:12px;padding:7px 11px}

  /* Filter */
  .filter-toggle-btn{display:flex}
  .filter-body{display:none}
  .filter-body.open{display:block}

  /* Hero */
  .hero{padding:32px 14px 52px}
  .hero p{font-size:13px}
  .search-form .sf-group:nth-child(3),.search-form .sf-group:nth-child(4){display:none}

  /* Cards */
  .cards-grid{grid-template-columns:1fr 1fr;gap:10px}
  .card-img{height:150px}
  .card-body{padding:10px}
  .card-price{font-size:15px}
  .card-title{font-size:12px}
  .card-footer{font-size:10px;padding:6px 10px}

  /* Cities */
  .cities-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}

  /* Detail */
  .gallery-main{height:230px}
  .detail-price{font-size:22px}
  .detail-feats{grid-template-columns:repeat(2,1fr)}

  /* Footer */
  .footer-grid{grid-template-columns:1fr 1fr;gap:18px}

  /* Forms */
  .form-row{grid-template-columns:1fr}

  /* Dashboard */
  .stats-row{grid-template-columns:1fr 1fr}

  /* Bottom nav */
  .bottom-nav{display:block}
  .bn-spacer{display:block}

  /* Sections */
  .section{padding:24px 12px}
  .section-title{font-size:17px}
}

@media(max-width:480px){
  .cards-grid{grid-template-columns:1fr}
  .card-img{height:180px}
  .cities-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr}
  .hero h1{font-size:20px}
  .search-tab{font-size:11px;padding:10px 5px}
  .auth-box{padding:20px 14px}
  .price-insights{grid-template-columns:1fr 1fr}
  .city-hero-stats{gap:8px}
  .city-hs{padding:8px 12px}
  .detail-feats{grid-template-columns:repeat(2,1fr);gap:7px}
  .stats-inner .stat-item{min-width:60px}
  .stat-num{font-size:20px}
  .gallery-main{height:200px}
  .section-header{flex-direction:column;align-items:flex-start}
}
