.mc-catalog { max-width: 1200px; margin: auto; padding: 20px; }
.mc-catalog-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; }
.mc-search { display:flex; gap:10px; }
.mc-search input { padding:10px; border-radius:10px; border:1px solid #ddd; }
.mc-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; }
@media(max-width:900px){ .mc-grid{grid-template-columns:repeat(2,1fr);} }
@media(max-width:600px){ .mc-grid{grid-template-columns:1fr;} }

.mc-card { border:1px solid #eee; border-radius:16px; overflow:hidden; background:white; box-shadow:0 8px 24px rgba(0,0,0,0.06); display:flex; flex-direction:column; }
.mc-card-media { height:180px; background:#f4f4f4; display:flex; align-items:center; justify-content:center; }
.mc-card-media img { width:100%; height:100%; object-fit:cover; }
.mc-card-body { padding:15px; display:flex; flex-direction:column; gap:10px; }
.mc-desc { font-size:13px; opacity:0.8; }
.mc-pill { font-size:12px; padding:5px 10px; background:#f1f1f1; border-radius:999px; }
.mc-info-row { display:flex; gap:8px; flex-wrap:wrap; }
.mc-price { font-size:18px; font-weight:bold; }
.mc-price-locked { font-size:13px; background:#f4f4f4; padding:8px; border-radius:10px; }
.mc-btn { padding:10px; border-radius:10px; border:none; cursor:pointer; font-weight:600; }
.mc-btn-primary { background:#0b5; color:white; }
.mc-placeholder { opacity:0.6; }
