:root{
    --rs-primary:#0f766e;
    --rs-primary-dark:#075e58;
    --rs-accent:#f59e0b;
    --rs-dark:#0f172a;
    --rs-soft:#f7faf9;
    --rs-border:rgba(15,23,42,.09);
}
body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f7faf9;color:#172033;}
.rent-nav{box-shadow:0 10px 30px rgba(15,23,42,.06);}
.navbar-brand{font-size:1.35rem;color:var(--rs-dark)!important;letter-spacing:-.03em;}
.brand-icon{width:42px;height:42px;border-radius:16px;background:linear-gradient(135deg,var(--rs-primary),#22c55e);color:#fff;display:grid;place-items:center;box-shadow:0 12px 24px rgba(15,118,110,.22);}
.brand-icon.light{background:rgba(255,255,255,.12);box-shadow:none;}
.hero-section{position:relative;overflow:hidden;background:radial-gradient(circle at top left,rgba(245,158,11,.26),transparent 30%),linear-gradient(135deg,#052e2b,#0f766e 52%,#0f172a);border-radius:0 0 34px 34px;color:#fff;}
.hero-pattern{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:42px 42px;opacity:.35;}
.hero-content{position:relative;z-index:1;padding:70px 0 54px;}
.hero-title{font-weight:900;letter-spacing:-.06em;font-size:clamp(2.35rem,6vw,4.8rem);line-height:.98;}
.hero-card{background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.5);border-radius:28px;box-shadow:0 30px 80px rgba(0,0,0,.22);color:#172033;}
.search-card,.soft-card{background:#fff;border:1px solid var(--rs-border);border-radius:24px;box-shadow:0 18px 45px rgba(15,23,42,.07);}
.btn-rs{background:linear-gradient(135deg,var(--rs-primary),#14b8a6);border:none;color:#fff!important;border-radius:16px;font-weight:800;box-shadow:0 16px 30px rgba(15,118,110,.18);}
.btn-rs:hover{filter:brightness(.96);}
.btn-gold{background:linear-gradient(135deg,#f59e0b,#f97316);border:none;color:#fff!important;border-radius:16px;font-weight:800;box-shadow:0 16px 30px rgba(245,158,11,.18);}
.form-control,.form-select{border-radius:14px;border:1px solid #dfe7e4;padding:.78rem .95rem;}
.form-control:focus,.form-select:focus{box-shadow:0 0 0 .22rem rgba(15,118,110,.13);border-color:#99d4cc;}
.listing-card{background:#fff;border:1px solid var(--rs-border);border-radius:26px;overflow:hidden;box-shadow:0 16px 40px rgba(15,23,42,.07);transition:.2s ease;position:relative;height:100%;}
.listing-card:hover{transform:translateY(-4px);box-shadow:0 22px 60px rgba(15,23,42,.12);}
.listing-img{height:215px;width:100%;object-fit:cover;background:#e7f5f2;}
.price-pill{background:#0f172a;color:#fff;border-radius:999px;padding:.5rem .75rem;font-weight:900;font-size:.95rem;}
.badge-soft{border-radius:999px;padding:.45rem .7rem;font-weight:800;font-size:.76rem;}
.badge-verified{background:#e8fff7;color:#047857;border:1px solid rgba(4,120,87,.18);}
.badge-boosted{background:#fff7e6;color:#b45309;border:1px solid rgba(180,83,9,.2);}
.badge-type{background:#eef2ff;color:#3730a3;border:1px solid rgba(55,48,163,.12);}
.meta-icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:#edf8f6;color:var(--rs-primary);}
.section-title{font-weight:900;letter-spacing:-.04em;color:#0f172a;}
.step-box{border-radius:24px;background:#fff;border:1px solid var(--rs-border);padding:24px;height:100%;box-shadow:0 14px 35px rgba(15,23,42,.06);}
.step-number{width:44px;height:44px;border-radius:15px;background:#e8fff7;color:#047857;display:grid;place-items:center;font-weight:900;margin-bottom:14px;}
.footer-section{background:#071917;border-radius:34px 34px 0 0;}
.amenity-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid #dce9e6;background:#fff;border-radius:999px;padding:.42rem .68rem;margin:.22rem;font-size:.84rem;color:#344054;}
.admin-shell{min-height:100vh;background:#f5f7f6;}
.admin-sidebar{background:#071917;color:#fff;border-radius:0 28px 28px 0;min-height:100vh;position:sticky;top:0;}
.admin-link{display:flex;gap:.65rem;align-items:center;text-decoration:none;color:rgba(255,255,255,.75);padding:.8rem 1rem;border-radius:16px;margin-bottom:.35rem;}
.admin-link:hover,.admin-link.active{background:rgba(255,255,255,.1);color:#fff;}
.table-card{background:#fff;border:1px solid var(--rs-border);border-radius:22px;box-shadow:0 16px 40px rgba(15,23,42,.06);overflow:hidden;}
.progress.rs-progress{height:4px;border-radius:999px;display:none;}
.progress.rs-progress .progress-bar{background:linear-gradient(135deg,var(--rs-primary),#22c55e);}
.photo-preview{width:92px;height:78px;border-radius:16px;object-fit:cover;border:1px solid var(--rs-border);}
.detail-hero-img{height:440px;object-fit:cover;border-radius:28px;width:100%;box-shadow:0 24px 65px rgba(15,23,42,.12);}
.thumb-img{height:94px;width:100%;object-fit:cover;border-radius:18px;cursor:pointer;border:2px solid transparent;}
.thumb-img:hover{border-color:var(--rs-primary);}
.empty-state{background:#fff;border:1px dashed #cfd9d6;border-radius:28px;padding:44px;text-align:center;color:#667085;}
@media(max-width:991px){.admin-sidebar{min-height:auto;border-radius:0 0 24px 24px;position:relative}.hero-content{padding:48px 0}.detail-hero-img{height:280px}.listing-img{height:220px}}
.fw-black{font-weight:900;letter-spacing:-.04em;}
.auth-page{background:radial-gradient(circle at top left,rgba(245,158,11,.18),transparent 24%),linear-gradient(135deg,#f7faf9,#effaf6);min-height:calc(100vh - 76px);}
.auth-card{border-radius:32px;box-shadow:0 28px 80px rgba(15,23,42,.12);border:1px solid var(--rs-border);}
.auth-side{background:radial-gradient(circle at top left,rgba(245,158,11,.28),transparent 34%),linear-gradient(135deg,#052e2b,#0f766e 55%,#0f172a);}
.mini-trust{display:flex;gap:.75rem;align-items:center;background:rgba(255,255,255,.10);padding:.85rem 1rem;border-radius:18px;margin-bottom:.75rem;color:#fff;}
.mini-trust i{color:#fde68a;}
.stat-card{background:#fff;border:1px solid var(--rs-border);border-radius:22px;padding:18px;box-shadow:0 14px 35px rgba(15,23,42,.06);height:100%;}
.stat-card small{display:block;color:#667085;font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;}
.stat-card h3{font-weight:900;margin:.2rem 0;color:#0f172a;}
.stat-card span{font-size:.8rem;color:#667085;}
.dashboard-hero{background:radial-gradient(circle at top right,rgba(20,184,166,.15),transparent 28%),#fff;}
.landlord-cta{background:radial-gradient(circle at top left,rgba(245,158,11,.24),transparent 28%),linear-gradient(135deg,#052e2b,#0f766e,#0f172a);border-radius:32px;padding:36px;color:#fff;box-shadow:0 24px 70px rgba(15,23,42,.16);}
.boost-plan{display:block;cursor:pointer;height:100%;}
.boost-plan input{position:absolute;opacity:0;pointer-events:none;}
.boost-plan-inner{display:flex;flex-direction:column;gap:.4rem;border:1px solid var(--rs-border);border-radius:24px;padding:22px;height:100%;background:#fff;transition:.18s ease;}
.boost-plan-inner strong{font-weight:900;color:#0f172a;}
.boost-plan-inner .amount{font-size:1.7rem;font-weight:900;color:var(--rs-primary);}
.boost-plan-inner small{font-weight:800;color:#b45309;}
.boost-plan-inner em{font-style:normal;color:#667085;font-size:.86rem;}
.boost-plan input:checked + .boost-plan-inner{border-color:var(--rs-primary);box-shadow:0 0 0 .24rem rgba(15,118,110,.13),0 16px 40px rgba(15,23,42,.08);transform:translateY(-2px);}
.dropdown-menu .dropdown-item{border-radius:12px;margin:2px 6px;width:auto;}
@media(max-width:767px){.landlord-cta{padding:26px}.auth-side{border-radius:0}.stat-card{padding:15px}.stat-card h3{font-size:1.45rem}}

.fresh-badge{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.42rem .7rem;font-weight:900;font-size:.75rem;border:1px solid transparent;}
.fresh-hot,.fresh-good{background:#ecfdf5;color:#047857;border-color:rgba(4,120,87,.16);}
.fresh-watch{background:#fffbeb;color:#92400e;border-color:rgba(146,64,14,.18);}
.fresh-stale{background:#fef2f2;color:#991b1b;border-color:rgba(153,27,27,.18);}
.save-listing-btn.saved{background:#fff1f2!important;border-color:#fecdd3!important;color:#be123c!important;}
.detail-gallery-wrap{position:relative;}
.detail-price-panel{background:linear-gradient(135deg,#052e2b,#0f766e);color:#fff;border-radius:26px;padding:22px;}
.detail-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.detail-meta-box{border:1px solid var(--rs-border);border-radius:18px;padding:14px;background:#fff;}
.detail-meta-box small{display:block;color:#667085;font-weight:800;text-transform:uppercase;font-size:.68rem;letter-spacing:.04em;}
.detail-meta-box strong{font-size:1.05rem;color:#0f172a;}
.admin-note-box{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;padding:12px;}
.preview-text{max-height:130px;overflow:auto;white-space:pre-line;}
.saved-grid-empty{border:1px dashed #cbd5e1;background:#fff;border-radius:28px;padding:44px;text-align:center;}
.seo-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .8rem;border-radius:999px;background:#fff;border:1px solid var(--rs-border);text-decoration:none;color:#0f172a;font-weight:800;margin:.25rem;}
.seo-chip:hover{border-color:var(--rs-primary);color:var(--rs-primary);}
@media(max-width:767px){.detail-meta-grid{grid-template-columns:1fr}.detail-hero-img{height:300px}.thumb-img{height:72px}}

/* v1.5 platform readiness polish */
.page-hero{position:relative;overflow:hidden;background:radial-gradient(circle at top left,rgba(245,158,11,.24),transparent 28%),linear-gradient(135deg,#052e2b,#0f766e 55%,#0f172a);color:#fff;border-radius:0 0 34px 34px;}
.profile-score-box{background:#f8fffd;border:1px solid rgba(4,120,87,.12);border-radius:22px;padding:18px;}
.safety-list{display:grid;gap:12px;}
.safety-list div{display:flex;gap:.75rem;align-items:flex-start;background:#f8fafc;border:1px solid var(--rs-border);border-radius:18px;padding:14px;color:#344054;font-weight:650;}
.safety-list i{color:#059669;margin-top:.12rem;}
.table .btn-group.flex-wrap{gap:4px;}
.table .btn-group.flex-wrap>.btn{border-radius:999px!important;margin:0;}

/* v1.6 Tenant requests and growth tools */
.compact-hero{background:radial-gradient(circle at 15% 15%,rgba(34,197,94,.22),transparent 34%),linear-gradient(135deg,#0f172a,#0f766e);color:#fff;position:relative;overflow:hidden;}
.request-cta-card{background:linear-gradient(135deg,#ecfdf5,#ffffff);border:1px solid rgba(15,118,110,.14);border-radius:26px;padding:24px;box-shadow:0 18px 50px rgba(15,23,42,.06);}
.timeline-mini{display:grid;gap:16px;}
.timeline-mini>div{position:relative;padding-left:28px;}
.timeline-mini>div:before{content:"";position:absolute;left:0;top:4px;width:14px;height:14px;border-radius:999px;background:linear-gradient(135deg,var(--rs-primary),#22c55e);box-shadow:0 0 0 6px rgba(15,118,110,.08);}
.timeline-mini strong{display:block;color:#111827;}
.timeline-mini span{display:block;color:#6b7280;font-size:.9rem;}
.share-panel{background:#fff;border:1px solid var(--rs-border);border-radius:24px;padding:20px;box-shadow:0 16px 45px rgba(15,23,42,.06);}
.share-btn{border-radius:999px!important;font-weight:700;}
.location-seo-card{background:linear-gradient(135deg,#ffffff,#f0fdfa);border:1px solid rgba(15,118,110,.12);border-radius:28px;padding:24px;box-shadow:0 18px 50px rgba(15,23,42,.05);}
.demand-chip{display:inline-flex;align-items:center;gap:8px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:999px;padding:8px 12px;font-size:.86rem;font-weight:700;}
@media(max-width:767px){.compact-hero .hero-title{font-size:2.1rem}.share-panel .btn{width:100%;}}

/* v1.6.1 Listing image popup */
.detail-hero-img.open-gallery-trigger{cursor:zoom-in;}
.gallery-view-btn{background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.75);color:#0f172a;font-weight:900;backdrop-filter:blur(10px);}
.gallery-view-btn:hover{background:#0f172a;color:#fff;}
.thumb-img.active{border-color:var(--rs-primary);box-shadow:0 0 0 .18rem rgba(15,118,110,.13);}
.rentsafi-gallery-modal .modal-content{box-shadow:0 30px 90px rgba(0,0,0,.35);}
.gallery-modal-header{background:linear-gradient(135deg,#071917,#0f172a);padding:18px 22px;}
.gallery-stage{position:relative;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(255,255,255,.06),transparent 48%),#020617;min-height:68vh;}
.gallery-modal-img{width:100%;max-height:72vh;object-fit:contain;display:block;user-select:none;}
.gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:999px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.9);color:#0f172a;display:grid;place-items:center;font-size:1.35rem;z-index:2;box-shadow:0 15px 35px rgba(0,0,0,.22);}
.gallery-nav:hover{background:#ffffff;}
.gallery-prev{left:18px;}
.gallery-next{right:18px;}
.gallery-modal-footer{background:#071917;padding:14px 18px;}
.gallery-modal-thumbs{display:flex;gap:8px;align-items:center;max-width:72%;overflow-x:auto;padding-bottom:2px;}
.gallery-modal-thumb{border:2px solid transparent;background:transparent;padding:0;border-radius:14px;overflow:hidden;flex:0 0 auto;opacity:.65;transition:.18s ease;}
.gallery-modal-thumb img{width:74px;height:54px;object-fit:cover;display:block;}
.gallery-modal-thumb.active,.gallery-modal-thumb:hover{border-color:#34d399;opacity:1;}
@media(max-width:767px){.gallery-stage{min-height:62vh}.gallery-nav{width:44px;height:44px}.gallery-prev{left:10px}.gallery-next{right:10px}.gallery-modal-thumbs{max-width:100%;width:100%;order:2}.gallery-modal-footer{align-items:flex-start!important;gap:10px}.gallery-modal-thumb img{width:62px;height:46px}.gallery-view-btn{font-size:.9rem}}
