/* v0.9.6 — catálogo responsive, sin cambios de backend */
*{box-sizing:border-box}
body{overflow-x:hidden}
main{width:min(1100px,100%);margin:24px auto;padding:clamp(14px,3vw,28px)}
#filters{background:#f7f9fd;border:1px solid #d9e3f2;border-radius:18px;padding:clamp(14px,2.5vw,24px);box-shadow:0 8px 24px #122c5510}
#filters label{display:block;font-weight:650;color:#243650;min-width:0}
#filters input,#filters select{width:100%;min-width:0;margin:8px 0 0;background:white;border:1px solid #aebdd2;border-radius:10px;min-height:46px;font:inherit;color:#15243c}
#filters button{margin:0;min-height:46px;border-radius:10px;font-weight:700}
#filters button[type=submit]{background:#0c3c96;color:white}
#message{font-weight:650;color:#334d6b;margin:20px 0}
#results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px;align-items:stretch}
#results .cmp-ad-card{min-width:0;margin:0;padding:18px;border:1px solid #dce4f0;border-radius:18px;background:white;box-shadow:0 8px 25px #162b4a12;overflow:hidden;display:flex;flex-direction:column;gap:8px}
.cmp-ad-card h3{font-size:1.15rem;line-height:1.35;margin:4px 0;overflow-wrap:anywhere;color:#132f5d}
.cmp-ad-card .cmp-ad-price{font-size:1.35rem;font-weight:800;color:#073e8e;margin:3px 0}
.cmp-ad-card p{margin:3px 0;line-height:1.5;overflow-wrap:anywhere}
.cmp-ad-card .cmp-ad-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-clamp:3}
.cmp-ad-card .cmp-ad-meta{font-size:.89rem;color:#4e617a}
.cmp-ad-card .cmp-seller{margin-top:auto;display:flex;gap:10px;align-items:center;padding-top:10px;min-width:0}
.cmp-ad-card .cmp-seller-avatar{flex:none}
.cmp-ad-card .cmp-ad-actions{margin-top:10px}
.cmp-ad-card img{max-width:100%}
#pagination{margin:28px 0}
#pagination button{border-radius:10px}
@media(min-width:700px){#filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}#filters button{align-self:end}}
@media(max-width:699px){main{margin:0 auto}#filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#filters label:first-child{grid-column:1/-1}#filters button{grid-column:1/-1}#results{grid-template-columns:1fr}#pagination{gap:8px}#pagination button{min-width:0;flex:1}}
@media(max-width:370px){#filters{grid-template-columns:1fr}#filters label:first-child{grid-column:auto}}
