
:root{--omc-btn-bg:#2563eb;--omc-btn-text:#fff;--omc-font-base:14px;--omc-font-title:18px}
.omcfs-list{display:grid;gap:20px}
.omcfs-layout-grid-2{grid-template-columns:repeat(2,1fr)}
.omcfs-layout-grid-3{grid-template-columns:repeat(3,1fr)}
@media(max-width:1024px){.omcfs-layout-grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.omcfs-layout-grid-2,.omcfs-layout-grid-3{grid-template-columns:1fr}}

.omcfs-card-front{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:16px;box-shadow:0 4px 12px rgba(0,0,0,.04);font-size:var(--omc-font-base)}
.omcfs-title{font-size:var(--omc-font-title);margin:0 0 4px;font-weight:800}
.omcfs-top{display:flex;justify-content:space-between;align-items:center}
.omcfs-status{font-size:12px;padding:6px 10px;border-radius:999px;border:1px solid #d1fae5;background:#ecfdf5;color:#065f46}
.omcfs-status.sold{border-color:#fde68a;background:#fffbeb;color:#92400e}
.omcfs-loc{color:#64748b;margin:.2rem 0 .6rem}
.omcfs-price-m2{font-size:calc(var(--omc-font-title) + 2px);font-weight:800;margin:.2rem 0}
.omcfs-price-total{color:#64748b;margin:0 0 .8rem}
.omcfs-actions{display:flex;gap:10px}
.omcfs-btn{display:inline-block;padding:10px 14px;border-radius:10px;border:1px solid #e5e7eb;text-decoration:none;color:#111827;background:#fff}
.omcfs-btn.primary{background:var(--omc-btn-bg);color:var(--omc-btn-text);border-color:var(--omc-btn-bg)}
.omcfs-legal{font-size:12px;color:#94a3b8;margin-top:8px}

/* List layout (rows) */
.omcfs-layout-list{grid-template-columns:1fr}
.omcfs-card-row{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:14px;box-shadow:0 4px 12px rgba(0,0,0,.04);font-size:var(--omc-font-base)}
.omcfs-card-row .omcfs-title{font-size:var(--omc-font-title);margin:0 0 2px}
.omcfs-card-row .omcfs-sub{color:#64748b}
.omcfs-card-row .col-price{text-align:right}
.omcfs-card-row .m2{font-weight:700}
.omcfs-card-row .col-actions{display:flex;gap:10px;justify-content:flex-end}
@media(max-width:800px){.omcfs-card-row{grid-template-columns:1fr;gap:8px}.omcfs-card-row .col-actions{justify-content:flex-start}}
