:root{--primary:#007ACC;--text:#212529;--muted:#6d7885;--bg:#f8fafc}
*{box-sizing:border-box} body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:var(--bg)}
.container{max-width:1180px;margin:0 auto;padding:0 16px}
.site-header{background:#fff;border-bottom:1px solid #e6ebf0}
.site-header .container{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{color:var(--primary);text-decoration:none;font-weight:800}
.site-footer{background:#fff;border-top:1px solid #e6ebf0;padding:20px 0;margin-top:40px}
.hero{padding:36px 0 8px} .hero h1{margin:0 0 12px;font-size:30px}
.searchbar{display:grid;grid-template-columns:1fr 200px auto auto;gap:10px;align-items:center}
.searchbar input,.searchbar select{height:48px;border:1px solid #e6ebf0;border-radius:10px;padding:0 12px}
.searchbar button{height:48px;background:var(--primary);color:#fff;border:0;border-radius:10px;padding:0 16px;cursor:pointer}
.searchbar .cta{height:48px;display:flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid var(--primary);color:var(--primary);border-radius:10px}
.map{width:100%;height:420px;border:1px solid #e6ebf0;border-radius:12px;background:#eef2f7}
.listings-grid{padding:20px 0 40px}
.filters-quick{display:flex;gap:10px;margin:10px 0}
.filters-quick input,.filters-quick select{height:42px;border:1px solid #e6ebf0;border-radius:10px;padding:0 10px}
.filters-quick button{height:42px;background:var(--primary);color:#fff;border:0;border-radius:10px;padding:0 14px;cursor:pointer}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card{background:#fff;border:1px solid #e6ebf0;border-radius:12px;overflow:hidden}
.card .thumb{width:100%;height:160px;background:#dde6f0}
.card h3{font-size:18px;margin:10px 12px}
.meta-line{display:flex;justify-content:space-between;align-items:center;margin:0 12px 12px}
.price{color:var(--primary)} .rating{color:#f59e0b}
.archive-header{padding:24px 0;border-bottom:1px solid #e6ebf0;background:#fff}
.filters{display:flex;gap:10px;margin-top:8px}
.filters input,.filters select{height:42px;border:1px solid #e6ebf0;border-radius:10px;padding:0 10px}
.filters button{height:42px;background:var(--primary);color:#fff;border:0;border-radius:10px;padding:0 14px;cursor:pointer}
.detail-grid{display:grid;grid-template-columns:1fr 340px;gap:20px;padding:20px 0}
.detail-grid .gallery img{width:100%;height:auto;border-radius:12px;border:1px solid #e6ebf0}
.sidebar .box{background:#fff;border:1px solid #e6ebf0;border-radius:12px;padding:16px;margin-bottom:16px}
.pill{display:inline-block;background:#eef6ff;color:#084d86;border-radius:999px;padding:6px 10px;margin-right:8px;font-size:14px}
.notice.success{background:#e6ffed;color:#057a3b;border:1px solid #b2f5bd;border-radius:12px;padding:12px;margin:12px 0}
@media(max-width:1024px){.grid{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}.searchbar{grid-template-columns:1fr 160px auto}}
@media(max-width:640px){.grid{grid-template-columns:1fr}.searchbar{grid-template-columns:1fr}.searchbar .cta{order:3}}