*{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#1E1E2E;--sidebar:#252538;--card:#2D2D44;
  --purple:#7C3AED;--pink:#EC4899;--amber:#F59E0B;--blue:#60A5FA;
  --white:#FFFFFF;--muted:#94A3B8;--border:#3A3A56;
}
html,body{height:100%;background:var(--bg);color:var(--white);font-family:'Inter',sans-serif;overflow:hidden}
.sidebar{position:fixed;top:0;left:0;width:280px;height:100%;background:var(--sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:100;transition:transform .28s ease;}
.sidebar-brand{padding:26px 24px 18px;border-bottom:1px solid var(--border);text-align:center}
.sidebar-brand h1{font-family:'Playfair Display',serif;font-size:21px;margin-bottom:3px}
.sidebar-brand p{color:var(--muted);font-size:13px}
.sidebar-photo-container{margin-bottom:12px;cursor:pointer;transition:transform .2s,box-shadow .2s;display:inline-flex;margin-left:auto;margin-right:auto;}
.sidebar-photo-container:hover{transform:scale(1.05);box-shadow:0 6px 16px rgba(139,92,246,.3);border-radius:50%;}
.sidebar-nav{flex:1;padding:14px 12px;display:flex;flex-direction:column;gap:4px}
.nav-btn{background:none;border:none;color:var(--muted);font-size:15px;padding:13px 16px;border-radius:10px;cursor:pointer;text-align:left;display:flex;align-items:center;gap:12px;font-family:'Inter',sans-serif;transition:background .15s,color .15s;width:100%;}
.nav-btn:hover{background:rgba(124,58,237,.1);color:var(--white)}
.nav-btn.active{background:rgba(124,58,237,.18);color:var(--purple);font-weight:600}
.nav-btn svg{width:20px;height:20px;flex-shrink:0}
.sidebar-footer{padding:18px 24px;border-top:1px solid var(--border);text-align:center}
.sidebar-footer .powered{color:var(--muted);font-size:11px;margin-bottom:3px}
.sidebar-footer .brand{color:var(--purple);font-family:'Playfair Display',serif;font-size:15px;font-weight:700}
.sidebar-footer .sub{color:var(--muted);font-size:11px}
.overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:90;}
.overlay.open{display:block}
.topbar{position:fixed;top:0;left:280px;right:0;height:68px;background:var(--sidebar);border-bottom:2px solid rgba(124,58,237,.35);display:flex;align-items:center;justify-content:space-between;padding:0 30px;z-index:80;}
.topbar-left{display:flex;align-items:center;gap:14px}
.hamburger{display:none;background:none;border:none;color:var(--white);cursor:pointer;padding:6px;line-height:0;}
.hamburger svg{width:24px;height:24px}
.topbar h2{font-family:'Playfair Display',serif;font-size:24px;font-weight:700}
.topbar-right{display:flex;align-items:center;gap:12px}
.header-clock{font-size:13px;color:var(--muted);font-weight:500;}
.header-photo-container{cursor:pointer;transition:transform .2s;}
.header-photo-container:hover{transform:scale(1.1);}
.last-updated{color:var(--muted);font-size:12px}
.btn-refresh{background:var(--purple);color:#fff;border:none;padding:10px 18px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;font-family:'Inter',sans-serif;display:flex;align-items:center;gap:8px;transition:opacity .15s;}
.btn-refresh:hover{opacity:.85}
.btn-refresh:disabled{opacity:.5;cursor:not-allowed}
.btn-refresh svg{width:15px;height:15px}
.main{margin-left:280px;margin-top:68px;height:calc(100vh - 68px);overflow-y:auto;padding:26px 30px;}
.page-intro{margin-bottom:22px}
.page-intro h2{font-family:'Playfair Display',serif;font-size:22px;margin-bottom:4px}
.page-intro p{color:var(--muted);font-size:14px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px}
.stat-card{background:var(--card);border-radius:12px;padding:22px;position:relative;overflow:hidden}
.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.stat-card.c-purple::before{background:var(--purple)}
.stat-card.c-pink::before{background:var(--pink)}
.stat-card.c-amber::before{background:var(--amber)}
.stat-card.c-blue::before{background:var(--blue)}
.stat-card .s-label{color:var(--muted);font-size:13px;font-weight:500;margin-bottom:8px}
.stat-card .s-value{font-size:34px;font-weight:700;margin-bottom:3px;line-height:1}
.stat-card .s-sub{color:var(--muted);font-size:12px}
.stat-card.c-pink .s-value{color:var(--pink)}
.stat-card.c-amber .s-value{color:var(--amber)}
.stat-card.c-blue .s-value{color:var(--blue)}
.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.section-header h3{font-family:'Playfair Display',serif;font-size:19px}
.count-badge{background:rgba(124,58,237,.15);color:var(--purple);font-size:12px;font-weight:600;padding:4px 12px;border-radius:20px}
.table-wrap{background:var(--card);border-radius:12px;overflow:hidden;margin-bottom:26px}
table{width:100%;border-collapse:collapse}
thead th{text-align:left;padding:13px 16px;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);background:rgba(0,0,0,.15);}
tbody td{padding:13px 16px;font-size:14px;border-bottom:1px solid var(--border)}
tbody tr:last-child td{border-bottom:none}
tbody tr:hover td{background:rgba(124,58,237,.04)}
.score-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;border-radius:20px;font-size:12px;font-weight:600}
.score-hot{background:rgba(236,72,153,.15);color:var(--pink)}
.score-warm{background:rgba(245,158,11,.15);color:var(--amber)}
.score-cold{background:rgba(96,165,250,.15);color:var(--blue)}
.score-none{background:rgba(148,163,184,.1);color:var(--muted)}
.clickable-lead{cursor:pointer;transition:background .15s;}
.clickable-lead:hover{background:rgba(124,58,237,.06);}
.source-badge{color:var(--muted);font-size:12px;background:rgba(148,163,184,.1);padding:3px 9px;border-radius:12px}
.lead-cards{display:none;flex-direction:column;gap:12px;margin-bottom:26px}
.lcard{background:var(--card);border-radius:12px;padding:16px;border-left:3px solid var(--purple)}
.lcard-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}
.lcard-name{font-weight:600;font-size:15px}
.lcard-meta{color:var(--muted);font-size:12px;margin-top:2px}
.lcard-row{display:flex;justify-content:space-between;align-items:center;margin-top:6px}
.lcard-label{color:var(--muted);font-size:12px}
.lcard-value{font-size:13px}
.lcard-actions{display:flex;gap:8px;margin-top:12px}
.lcard-actions a{flex:1;text-align:center;padding:11px 8px;border-radius:8px;font-size:13px;font-weight:600;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:6px;}
.btn-call{background:rgba(124,58,237,.15);color:var(--purple)}
.btn-sms{background:rgba(96,165,250,.15);color:var(--blue)}
.props-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:18px;margin-bottom:26px}
.prop-card{background:var(--card);border-radius:12px;padding:20px;border-top:3px solid var(--purple)}
.prop-addr{font-weight:600;font-size:15px;margin-bottom:3px}
.prop-nbhd{color:var(--muted);font-size:13px;margin-bottom:10px}
.prop-price{font-size:24px;font-weight:700;color:var(--purple);margin-bottom:10px}
.prop-details{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:10px}
.prop-detail{font-size:13px;color:var(--muted)}
.prop-detail strong{color:var(--white)}
.prop-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.prop-tag{font-size:11px;padding:3px 8px;border-radius:8px;background:rgba(124,58,237,.1);color:var(--purple)}
.status-active{font-size:11px;padding:3px 10px;border-radius:12px;background:rgba(52,211,153,.15);color:#34D399;font-weight:600}
.prop-desc{color:var(--muted);font-size:13px;line-height:1.5;margin-top:8px}
.loading-wrap{display:flex;align-items:center;justify-content:center;padding:60px;color:var(--muted);font-size:14px}
.spinner{width:22px;height:22px;border:3px solid var(--border);border-top-color:var(--purple);border-radius:50%;animation:spin .75s linear infinite;margin-right:12px;flex-shrink:0}
@keyframes spin{to{transform:rotate(360deg)}}
.empty{text-align:center;padding:56px 20px;color:var(--muted)}
.empty .big{font-size:44px;margin-bottom:14px}
.empty p{font-size:15px;max-width:380px;margin:0 auto;line-height:1.5}
.error-bar{background:rgba(236,72,153,.12);color:var(--pink);padding:14px 18px;border-radius:10px;margin-bottom:20px;font-size:13px;border-left:3px solid var(--pink)}
@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.props-grid{grid-template-columns:1fr}}
@media(max-width:768px){
  .sidebar{transform:translateX(-280px)}
  .sidebar.open{transform:translateX(0)}
  .topbar{left:0;padding:0 16px}
  .topbar h2{font-size:19px}
  .hamburger{display:block}
  .main{margin-left:0;padding:14px}
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .stat-card{padding:16px}
  .stat-card .s-value{font-size:28px}
  .table-wrap{display:none}
  .lead-cards{display:flex}
  .last-updated{display:none}
  .header-clock{display:none}
  .btn-refresh span{display:none}
  .btn-refresh{padding:10px}
}
@media(max-width:400px){
  .stats-grid{grid-template-columns:1fr}
  .stat-card .s-value{font-size:24px}
  .topbar h2{font-size:16px}
}
