:root{--rd-primary:#0f5cff;--rd-dark:#0b1736;--rd-muted:#667085;--rd-border:#e8edf5;--rd-bg:#f6f9ff;--rd-radius:22px;--rd-shadow:0 18px 45px rgba(15,92,255,.10)}
.rd-search{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--rd-border);border-radius:28px;padding:14px;box-shadow:var(--rd-shadow);flex-wrap:wrap}
.rd-search select,.rd-search input{min-height:48px;border:1px solid var(--rd-border);border-radius:16px;padding:0 14px;background:#fff;color:var(--rd-dark);flex:1;min-width:155px}
.rd-search button,.rd-button{min-height:48px;border:0;border-radius:16px;padding:0 24px;background:var(--rd-primary);color:#fff;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.rd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.rd-cols-1{grid-template-columns:1fr}.rd-cols-2{grid-template-columns:repeat(2,1fr)}.rd-cols-3{grid-template-columns:repeat(3,1fr)}.rd-cols-4{grid-template-columns:repeat(4,1fr)}
.rd-card{background:#fff;border:1px solid var(--rd-border);border-radius:var(--rd-radius);overflow:hidden;box-shadow:var(--rd-shadow);transition:.2s}.rd-card:hover{transform:translateY(-3px)}
.rd-card a{color:inherit;text-decoration:none}.rd-thumb{height:245px;background:var(--rd-bg);position:relative;overflow:hidden}.rd-thumb img{width:100%;height:100%;object-fit:cover;display:block}.rd-no-image{height:100%;display:flex;align-items:center;justify-content:center;color:var(--rd-muted)}
.rd-badge{position:absolute;z-index:2;left:16px;top:16px;background:#fff;color:var(--rd-primary);border-radius:999px;padding:7px 12px;font-size:13px;font-weight:800;box-shadow:0 8px 20px rgba(0,0,0,.1)}
.rd-card-body{padding:20px}.rd-card-body h3{margin:0 0 10px;font-size:21px;color:var(--rd-dark)}.rd-price,.rd-detail-price{display:block;color:var(--rd-primary);font-size:22px;margin-bottom:8px}.rd-location{color:var(--rd-muted);margin:0 0 16px}.rd-meta{display:flex;gap:8px;flex-wrap:wrap}.rd-meta span{background:var(--rd-bg);border-radius:999px;padding:7px 10px;color:var(--rd-dark);font-size:13px}
.rd-detail-gallery-widget{display:grid;gap:14px}.rd-main-photo{border-radius:28px;overflow:hidden;background:var(--rd-bg)}.rd-main-photo img{width:100%;max-height:590px;object-fit:cover;display:block}.rd-gallery-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.rd-gallery-strip img{width:100%;height:145px;object-fit:cover;border-radius:18px}
.rd-property-detail{background:#fff;border:1px solid var(--rd-border);border-radius:28px;padding:30px;box-shadow:var(--rd-shadow)}.rd-detail-head h1{margin:0 0 12px;color:var(--rd-dark)}.rd-param-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.rd-param-grid div{background:var(--rd-bg);border-radius:18px;padding:16px}.rd-param-grid span{display:block;color:var(--rd-muted);font-size:13px}.rd-param-grid strong{color:var(--rd-dark)}.rd-description{color:#263248;line-height:1.75}
.rd-agent-box{background:#fff;border:1px solid var(--rd-border);border-radius:28px;padding:26px;box-shadow:var(--rd-shadow)}.rd-agent-box h3{margin:0 0 18px;color:var(--rd-dark)}.rd-agent-row{display:flex;gap:14px;align-items:center;margin-bottom:18px}.rd-agent-photo{width:74px;height:74px;border-radius:50%;object-fit:cover}.rd-agent-row a{display:block;color:var(--rd-primary);text-decoration:none;margin-top:4px}.rd-empty{padding:25px;background:#fff;border-radius:18px;border:1px solid var(--rd-border)}
@media(max-width:1024px){.rd-grid,.rd-cols-3,.rd-cols-4{grid-template-columns:repeat(2,1fr)}.rd-param-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.rd-search{border-radius:20px}.rd-search select,.rd-search input,.rd-search button{width:100%;flex-basis:100%}.rd-grid,.rd-cols-2,.rd-cols-3,.rd-cols-4{grid-template-columns:1fr}.rd-gallery-strip{grid-template-columns:repeat(2,1fr)}.rd-param-grid{grid-template-columns:1fr}.rd-property-detail{padding:20px}}
.rd-thumb-cols-2 .rd-gallery-strip{grid-template-columns:repeat(2,1fr)}
.rd-thumb-cols-3 .rd-gallery-strip{grid-template-columns:repeat(3,1fr)}
.rd-thumb-cols-4 .rd-gallery-strip{grid-template-columns:repeat(4,1fr)}
.rd-thumb-cols-5 .rd-gallery-strip{grid-template-columns:repeat(5,1fr)}
.rd-thumb-cols-6 .rd-gallery-strip{grid-template-columns:repeat(6,1fr)}
