.bmp-qs-btn{position:absolute;right:10px;bottom:10px;z-index:4;width:40px;height:40px;border-radius:50%;background:#fff;color:#111;border:0;box-shadow:0 2px 8px rgba(0,0,0,.22);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:transform .15s}
.bmp-qs-btn:hover{transform:scale(1.08)}
.bmp-qs-btn svg{width:20px;height:20px}
.bmp-qs-host{position:relative}
.bmp-qs-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:2147483000;opacity:0;transition:opacity .2s}
.bmp-qs-overlay.is-open{opacity:1}
.bmp-qs-panel{position:fixed;z-index:2147483001;background:#fff;color:#111;display:flex;flex-direction:column;font-family:inherit;left:0;right:0;bottom:0;max-height:88dvh;border-radius:16px 16px 0 0;transform:translateY(100%);transition:transform .25s ease;box-shadow:0 -6px 24px rgba(0,0,0,.2)}
.bmp-qs-panel.is-open{transform:none}
@media (min-width:750px){.bmp-qs-panel{left:auto;top:0;bottom:0;width:420px;max-height:none;border-radius:0;transform:translateX(100%)}}
.bmp-qs-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eee}
.bmp-qs-head h2{margin:0;font-size:15px;letter-spacing:.12em;font-weight:700}
.bmp-qs-close{background:none;border:0;font-size:28px;line-height:1;cursor:pointer;color:#111;padding:4px}
.bmp-qs-body{overflow-y:auto;padding:16px 20px 24px}
.bmp-qs-prod{display:flex;gap:14px;align-items:center;margin-bottom:16px}
.bmp-qs-prod img{width:84px;height:84px;object-fit:cover;border-radius:8px;background:#f4f4f4;flex:none}
.bmp-qs-title{font-weight:600;font-size:15px;margin:0 0 4px}
.bmp-qs-colorname{font-size:13px;color:#555}
.bmp-qs-swatches{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.bmp-qs-sw{width:32px;height:32px;border-radius:50%;border:1px solid #ccc;cursor:pointer;padding:0;position:relative;outline-offset:3px}
.bmp-qs-sw[aria-pressed=true]{outline:2px solid #111}
.bmp-qs-sw:disabled{opacity:.35;cursor:not-allowed}
.bmp-qs-sw:disabled::after{content:"";position:absolute;left:50%;top:-2px;bottom:-2px;width:1.5px;background:#666;transform:rotate(45deg)}
.bmp-qs-sizes{list-style:none;margin:0;padding:0;border-top:1px solid #eee}
.bmp-qs-size{width:100%;display:flex;justify-content:space-between;align-items:center;padding:15px 4px;border:0;border-bottom:1px solid #eee;background:none;font:inherit;font-size:15px;color:#111;cursor:pointer;text-align:left}
.bmp-qs-size:hover:not(:disabled){background:#f7f7f7}
.bmp-qs-size:disabled{color:#aaa;cursor:not-allowed}
.bmp-qs-size s{color:#888;margin-left:6px;font-size:13px}
.bmp-qs-size.is-busy{opacity:.5}
.bmp-qs-link{display:block;margin-top:18px;text-align:center;font-size:14px;color:#111;text-decoration:underline}
.bmp-qs-msg{font-size:13px;color:#b00020;margin-top:10px;min-height:1em}
