*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#0f1117;--bg-secondary:#1a1d27;--bg-card:#222533;--bg-hover:#2a2e3f;--text-primary:#e4e6eb;--text-secondary:#9ca3af;--text-muted:#6b7280;--accent:#6366f1;--accent-hover:#818cf8;--green:#22c55e;--green-bg:#22c55e1a;--yellow:#eab308;--yellow-bg:#eab3081a;--red:#ef4444;--red-bg:#ef44441a;--border:#2d3148;--radius:8px;--sidebar-width:220px}body{background:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}.app{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border);flex-direction:column;padding:1.5rem 0;display:flex;position:fixed;top:0;bottom:0;left:0}.logo{border-bottom:1px solid var(--border);padding:0 1.25rem 1.5rem}.logo h1{background:linear-gradient(135deg,#6366f1,#a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.25rem;font-weight:700}.tagline{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.7rem}.nav-links{flex-direction:column;gap:.25rem;padding:1rem .75rem;display:flex}.nav-links a{color:var(--text-secondary);border-radius:var(--radius);align-items:center;gap:.5rem;padding:.6rem .75rem;font-size:.875rem;text-decoration:none;transition:all .15s;display:flex}.nav-links a:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-links a.active{background:var(--accent);color:#fff}.content{margin-left:var(--sidebar-width);flex:1;max-width:1400px;padding:2rem}.page-header{margin-bottom:1.5rem}.page-header h2{font-size:1.5rem;font-weight:600}.page-header p{color:var(--text-secondary);margin-top:.25rem;font-size:.875rem}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.stats-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem}.stat-card .label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem}.stat-card .value{margin-top:.25rem;font-size:1.5rem;font-weight:700}.listings-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem;display:grid}.listing-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,transform .15s;overflow:hidden}.listing-card:hover{border-color:var(--accent);transform:translateY(-2px)}.listing-card .image-container{background:var(--bg-primary);width:100%;height:180px;overflow:hidden}.listing-card .image-container img{object-fit:cover;width:100%;height:100%}.listing-card .info{padding:1rem}.listing-card .title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:-webkit-box;overflow:hidden}.listing-card .prices{justify-content:space-between;align-items:center;margin-top:.5rem;display:flex}.listing-card .price{font-weight:600}.listing-card .est-value{color:var(--green);font-weight:600}.deal-badge{border-radius:4px;align-items:center;padding:.2rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.deal-badge.great{background:var(--green-bg);color:var(--green)}.deal-badge.good{background:var(--yellow-bg);color:var(--yellow)}.deal-badge.low{background:var(--red-bg);color:var(--red)}.btn{border-radius:var(--radius);cursor:pointer;border:none;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-hover);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--accent)}.btn-success{background:var(--green);color:#fff}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-secondary);margin-bottom:.3rem;font-size:.8rem;display:block}.form-group input,.form-group select{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text-primary);padding:.6rem .8rem;font-size:.875rem}.form-group input:focus,.form-group select:focus{border-color:var(--accent);outline:none}.progress-bar{background:var(--bg-primary);border-radius:3px;width:100%;height:6px;overflow:hidden}.progress-bar .fill{background:var(--accent);border-radius:3px;height:100%;transition:width .3s}.table-container{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.75rem 1rem;font-size:.875rem}th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:600}tr:hover td{background:var(--bg-hover)}.text-green{color:var(--green)}.text-yellow{color:var(--yellow)}.text-red{color:var(--red)}.text-muted{color:var(--text-muted)}.text-sm{font-size:.8rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mb-2{margin-bottom:1rem}.flex{display:flex}.gap-1{gap:.5rem}.gap-2{gap:1rem}.items-center{align-items:center}.justify-between{justify-content:space-between}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=1024px){:root{--sidebar-width:60px}.sidebar .logo img{width:40px!important;height:40px!important}.nav-links a{justify-content:center;padding:.7rem;font-size:0}.nav-links a svg{font-size:initial}.content{padding:1.5rem 1rem}.listings-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (width<=768px){.app{flex-direction:column}.sidebar{border-right:none;border-top:1px solid var(--border);z-index:100;background:var(--bg-secondary);flex-direction:row;width:100%;height:auto;padding:0;position:fixed;inset:auto 0 0}.sidebar .logo{display:none}.nav-links{flex-direction:row;justify-content:space-around;gap:0;width:100%;padding:.25rem;overflow-x:auto}.nav-links a{flex-direction:column;flex-shrink:0;gap:.15rem;min-width:0;padding:.4rem .5rem;font-size:.6rem}.nav-links a svg{width:18px;height:18px}.content{max-width:100%;margin-left:0;padding:1rem .75rem 5rem}.stats-row{grid-template-columns:repeat(2,1fr);gap:.5rem}.stat-card{padding:.75rem}.stat-card .value{font-size:1.2rem}.listings-grid{grid-template-columns:1fr}.listing-card .image-container{height:140px}.page-header h2{font-size:1.25rem}.page-header{margin-bottom:1rem}table{font-size:.8rem}th,td{padding:.5rem}}
