:root{--blue:#0C7FBE;--gold:#C7A369;--dark:#0D1B2A;--muted:#f4f6f8}
*{box-sizing:border-box} body{margin:0;font-family:system-ui,Segoe UI,Roboto,Arial,sans-serif;color:var(--dark)}
header{position:sticky;top:0;background:#fff;border-bottom:4px solid var(--blue);z-index:10}
.main-nav a:hover { background:#e5f3fb; }
.wrap{max-width:1200px;margin:auto;padding:16px}
.brand{display:flex;gap:12px;align-items:center}
.brand img{height:42px}
a{color:var(--blue);text-decoration:none}
.btn{background:var(--blue);color:#fff;border:none;padding:10px 14px;border-radius:10px;cursor:pointer}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.card{border:1px solid #e5e7eb;border-radius:14px;overflow:hidden;background:#fff}
.card img{width:100%;aspect-ratio:1.2/1;object-fit:contain;background:#fff}
.price{font-weight:700}
.badge{background:var(--gold);color:#000;padding:2px 8px;border-radius:12px;font-size:12px}
footer{margin-top:40px;border-top:4px solid var(--blue);background:#fff}
input,select{padding:8px;border:1px solid #cbd5e1;border-radius:8px}
table{border-collapse:collapse;width:100%} td,th{padding:8px;border:1px solid #e5e7eb}
.cm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.cm-card{display:flex;flex-direction:column;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.cm-card:hover{transform:translateY(-1px);box-shadow:0 4px 10px rgba(0,0,0,.08)}
.cm-card-img{position:relative;aspect-ratio:4/3;background:#fff;padding:8px;display:flex;align-items:center;justify-content:center}
.cm-card-img img{width:100%;height:100%;object-fit:contain;display:block}
.cm-card-img-placeholder{width:100%;height:100%}
.cm-badge{position:absolute;top:10px;left:10px;font-size:12px;padding:4px 8px;border-radius:999px;background:#eee}
.cm-badge.in{background:#e8f7ee}
.cm-badge.out{background:#fbe9e9}
.cm-card-body{padding:12px}
.cm-card-title{font-size:14px;line-height:1.25;min-height:36px;color:#0f172a}
.cm-card-price{margin-top:6px;font-weight:700}
.cm-card-sku{margin-top:4px;font-size:12px;color:#666}
.cm-product-meta{margin-top:14px;padding:12px;border:1px solid #eee;border-radius:10px;background:#fff}
.cm-specs{width:100%;border-collapse:collapse}
.cm-specs th,.cm-specs td{padding:8px 10px;border-bottom:1px solid #eee;text-align:left;font-size:14px;vertical-align:top}
.cm-specs th{width:140px;color:#444}
.cm-bullets{margin:8px 0 0 18px}
.cm-h2{margin-top:18px}
