.fm-brand-marquee{margin:28px 0;background:#fff;border-radius:16px;box-shadow:0 4px 18px rgba(0,0,0,.06);padding:16px 16px 18px;overflow:hidden}
.fm-bm-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.fm-bm-brand{display:flex;align-items:center;gap:12px;min-width:0}
.fm-bm-logo{width:56px;height:56px;border-radius:12px;background:#f5f5f5;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}
.fm-bm-logo img{max-width:85%;max-height:85%;object-fit:contain}
.fm-bm-logo-fallback{font-weight:800;font-size:22px;color:#9e9e9e}
.fm-bm-title{margin:0;font-size:1.25rem;font-weight:800;color:#212121;line-height:1.2}
.fm-bm-sub{margin:4px 0 0;font-size:13px;color:#757575}
.fm-bm-all{font-weight:700;color:var(--fc-primary,#E91E63);text-decoration:none;white-space:nowrap}
.fm-bm-empty{margin:0;padding:12px;background:#f8f9fa;border-radius:10px;color:#666;font-size:14px}

.fm-bm-viewport{overflow:hidden;width:100%}
.fm-bm-track{display:flex;gap:var(--fm-bm-gap,16px);width:max-content;will-change:transform}
.fm-brand-marquee.is-paused .fm-bm-track{animation-play-state:paused!important}

.fm-bm-card{flex:0 0 var(--fm-bm-card,200px);width:var(--fm-bm-card,200px);background:#fafafa;border-radius:12px;overflow:hidden;box-shadow:0 1px 6px rgba(0,0,0,.05);display:flex;flex-direction:column}
.fm-bm-media{position:relative;display:block;width:var(--fm-bm-img-w,160px);height:var(--fm-bm-img-h,110px);max-width:100%;margin:10px auto 0;border-radius:var(--fm-bm-img-radius,10px);overflow:hidden;text-decoration:none}
.fm-bm-media img{width:100%;height:100%;object-fit:var(--fm-bm-img-fit,cover);display:block}
.fm-bm-emoji{display:flex;align-items:center;justify-content:center;height:100%;font-size:36px;opacity:.75}
.fm-bm-badge{position:absolute;top:6px;left:6px;background:#E91E63;color:#fff;font-size:10px;font-weight:700;padding:3px 6px;border-radius:999px}
.fm-bm-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:4px;flex:1}
.fm-bm-pbrand{font-size:10px;text-transform:uppercase;letter-spacing:.3px;color:#9e9e9e;font-weight:600}
.fm-bm-name{margin:0;font-size:13px;line-height:1.3;font-weight:700}
.fm-bm-name a{color:#212121;text-decoration:none}
.fm-bm-name a:hover{color:var(--fc-primary,#E91E63)}
.fm-bm-sku{font-size:11px;color:#9e9e9e}
.fm-bm-prices{display:flex;align-items:baseline;gap:6px;margin-top:2px}
.fm-bm-old{font-size:11px;color:#9e9e9e;text-decoration:line-through}
.fm-bm-price{font-size:16px;font-weight:800;color:var(--fc-primary,#E91E63)}
.fm-bm-stock{font-size:11px;font-weight:600}
.fm-bm-stock.ok{color:#2e7d32}
.fm-bm-stock.out{color:#c62828}
.fm-bm-form{margin-top:auto;padding-top:6px}
.fm-bm-add{width:100%;border:none;background:var(--fc-primary,#E91E63);color:#fff;font-weight:700;padding:8px 10px;border-radius:999px;cursor:pointer;font-size:12px}
.fm-bm-add:hover{filter:brightness(.95)}

@keyframes fm-bm-left {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
@keyframes fm-bm-right {
  0% { transform: translateX(-50%); }
  100% { transform: translateX(0); }
}
.fm-bm-track.anim-left{animation:fm-bm-left var(--fm-bm-speed,40s) linear infinite}
.fm-bm-track.anim-right{animation:fm-bm-right var(--fm-bm-speed,40s) linear infinite}
