/* hp-udms.css */
.hpudms-filters { display:flex; gap:8px; margin:10px 0 16px; flex-wrap:wrap; }
.hpudms-select, .hpudms-input { padding:8px; min-width:220px; background:#fff; border:1px solid #ddd; border-radius:8px; }
.hpudms-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap:14px; }
.hpudms-card { display:block; text-decoration:none; color:inherit; border:1px solid #eee; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.05); transition:transform .15s ease, box-shadow .15s ease; }
.hpudms-card:hover { transform: translateY(-2px); box-shadow:0 6px 18px rgba(0,0,0,.08); }
.hpudms-thumb { padding-top:56%; background-size:cover; background-position:center; }
.hpudms-body { padding:10px 12px; }
.hpudms-badges { display:flex; gap:6px; margin-bottom:6px; }
.hpudms-badge { display:inline-block; font-size:.75rem; background:#111; color:#fff; padding:2px 8px; border-radius:999px; }
.hpudms-title { margin:.2em 0 .4em; font-size:1.05rem; line-height:1.3; font-weight:600; }
.hpudms-meta { color:#666; font-size:.9rem; margin-bottom:.35rem; }
.hpudms-price { font-weight:700; margin:.35rem 0; color:#0a0; }
.hpudms-strap { color:#333; font-size:.92rem; }
.hpudms-detail .hpudms-gallery { display:grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap:10px; margin:10px 0; }
.hpudms-columns { display:grid; grid-template-columns: 1.2fr .8fr; gap:24px; margin-top:12px; }
.hpudms-aside { border:1px solid #eee; padding:12px; border-radius:8px; background:#fafafa; }
.hpudms-loader { text-align:center; padding:10px; color:#555; }
#hpudms-loadmore { margin:16px auto; display:block; padding:10px 16px; border:1px solid #ddd; background:#fff; border-radius:8px; }
.hpudms-empty { grid-column: 1 / -1; text-align:center; color:#666; padding:20px 0; }
@media (max-width: 900px){ .hpudms-columns { grid-template-columns: 1fr; } }