.mcat-catalogue,.mcat-single-embed{--mcat-accent:#111827;--mcat-border:#e5e7eb;--mcat-text:#111827;--mcat-muted:#6b7280;--mcat-bg:#fff;--mcat-soft:#f8fafc;color:var(--mcat-text);font:inherit}
.mcat-catalogue *,.mcat-single-embed *{box-sizing:border-box}
.mcat-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}
.mcat-filter{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:1px solid var(--mcat-border);border-radius:999px;background:#fff;color:var(--mcat-text)!important;text-decoration:none!important;font-size:14px;font-weight:600;line-height:1;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease}
.mcat-filter:hover,.mcat-filter:focus-visible{transform:translateY(-1px);border-color:var(--mcat-accent)}
.mcat-filter.is-active{background:var(--mcat-accent);border-color:var(--mcat-accent);color:#fff!important}
.mcat-grid{display:grid;grid-template-columns:repeat(var(--mcat-columns,4),minmax(0,1fr));gap:22px}
.mcat-card{position:relative;display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--mcat-border);border-radius:18px;background:var(--mcat-bg);box-shadow:0 8px 30px rgba(15,23,42,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.mcat-card:hover{transform:translateY(-3px);border-color:#d1d5db;box-shadow:0 16px 38px rgba(15,23,42,.11)}
.mcat-image-wrap{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:var(--mcat-soft)}
.mcat-image{display:block;width:100%;height:100%;object-fit:contain;transition:transform .3s ease}
.mcat-card:hover .mcat-image{transform:scale(1.025)}
.mcat-placeholder{display:grid;width:100%;height:100%;place-items:center;color:#94a3b8}.mcat-placeholder svg{display:block}
.mcat-stock{position:absolute;top:12px;left:12px;z-index:2;padding:7px 10px;border-radius:999px;background:rgba(17,24,39,.9);color:#fff;font-size:11px;font-weight:700;line-height:1;backdrop-filter:blur(6px)}
.mcat-stock--outofstock,.mcat-stock--discontinued{background:rgba(153,27,27,.92)}
.mcat-stock--preorder,.mcat-stock--backorder{background:rgba(146,64,14,.92)}
.mcat-body{display:flex;flex:1;flex-direction:column;padding:18px}
.mcat-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.mcat-title{margin:0!important;padding:0!important;font-size:18px!important;line-height:1.3!important;font-weight:750!important}.mcat-title a{color:var(--mcat-text)!important;text-decoration:none!important}.mcat-title a:hover{text-decoration:underline!important;text-underline-offset:3px}
.mcat-price{white-space:nowrap;color:var(--mcat-accent);font-size:18px;font-weight:800;line-height:1.25}.mcat-price-symbol{margin-right:1px}.mcat-price--poa{font-size:13px;white-space:normal;text-align:right}
.mcat-sku{margin-top:7px;color:var(--mcat-muted);font-size:12px}.mcat-excerpt{margin:12px 0 0!important;color:#475569;font-size:14px;line-height:1.65}
.mcat-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}
.mcat-option{display:block;margin:0!important}.mcat-option>span{display:block;margin-bottom:6px;color:#475569;font-size:12px;font-weight:700}
.mcat-option select{width:100%;min-height:42px;margin:0!important;padding:8px 34px 8px 10px!important;border:1px solid var(--mcat-border)!important;border-radius:10px!important;background-color:#fff!important;color:var(--mcat-text)!important;font:inherit!important;font-size:13px!important;line-height:1.2!important;box-shadow:none!important}
.mcat-option select:focus{outline:2px solid color-mix(in srgb,var(--mcat-accent) 28%,transparent);outline-offset:2px;border-color:var(--mcat-accent)!important}
.mcat-view-button{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:auto;padding:10px 14px;border-radius:11px;background:var(--mcat-accent);color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:750;transition:transform .18s ease,filter .18s ease}.mcat-view-button:hover,.mcat-view-button:focus-visible{filter:brightness(1.08);transform:translateY(-1px)}
.mcat-empty{padding:30px;border:1px dashed var(--mcat-border);border-radius:14px;background:var(--mcat-soft);text-align:center;color:var(--mcat-muted)}
.mcat-pagination{margin-top:28px}.mcat-pagination ul{display:flex!important;flex-wrap:wrap;justify-content:center;gap:7px;margin:0!important;padding:0!important;list-style:none!important}.mcat-pagination li{margin:0!important}.mcat-pagination a,.mcat-pagination span{display:grid;min-width:40px;height:40px;padding:0 10px;place-items:center;border:1px solid var(--mcat-border);border-radius:9px;background:#fff;color:var(--mcat-text)!important;text-decoration:none!important}.mcat-pagination .current{border-color:var(--mcat-accent);background:var(--mcat-accent);color:#fff!important}
.mcat-single-embed .mcat-card--large{max-width:920px}.mcat-card--large{display:grid;grid-template-columns:minmax(260px,.95fr) minmax(0,1.05fr)}.mcat-card--large .mcat-image-wrap{height:100%;min-height:360px;aspect-ratio:auto}.mcat-card--large .mcat-body{padding:28px}.mcat-card--large .mcat-title{font-size:26px!important}.mcat-card--large .mcat-price{font-size:24px}
@media(max-width:1100px){.mcat-grid{grid-template-columns:repeat(min(var(--mcat-columns,4),3),minmax(0,1fr))}}
@media(max-width:820px){.mcat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mcat-card--large{grid-template-columns:1fr}.mcat-card--large .mcat-image-wrap{min-height:0;aspect-ratio:1/1}}
@media(max-width:560px){.mcat-grid{grid-template-columns:1fr}.mcat-options{grid-template-columns:1fr}.mcat-heading-row{align-items:flex-start}.mcat-filters{gap:6px}.mcat-filter{min-height:38px;padding:8px 12px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.mcat-card,.mcat-image,.mcat-filter,.mcat-view-button{transition:none!important}.mcat-card:hover,.mcat-card:hover .mcat-image,.mcat-filter:hover,.mcat-view-button:hover{transform:none!important}}
