/**
 * Bundle builder product page (from fyool-product_bundle.html).
 */

.fy-product-main--bundle{align-items:start}

.fy-flavor-mix-section{margin-bottom:24px}
.fy-flavor-mix-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:12px}
.fy-sel-label--inline{margin-bottom:0}
.fy-flavor-mix-counter{font-size:13px;font-weight:700;padding:4px 12px;border-radius:20px;transition:all .2s;white-space:nowrap}
.fy-flavor-mix-counter.incomplete{background:#FEF2F2;color:#EF4444;border:1px solid #FECACA}
.fy-flavor-mix-counter.complete{background:#F0FDF4;color:#15803D;border:1px solid #BBF7D0}
.fy-flavor-mix-rows{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}
.fy-fmr{display:flex;align-items:center;gap:14px;background:var(--surface);border:1.5px solid var(--border);border-radius:12px;padding:12px 16px;transition:border-color .2s,background .2s}
.fy-fmr.has-count{border-color:var(--blue);background:var(--blue-soft,#EFF6FF)}
.fy-fmr-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}
.fy-fmr-name{font-size:14px;font-weight:600;color:var(--text);flex:1}
.fy-fmr-count-display{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:22px;color:var(--blue);min-width:28px;text-align:center;line-height:1}
.fy-fmr-count-display.zero{color:var(--muted)}
/* QTY input field — visually matches the previous count display while accepting direct typing */
.fy-fmr-count-input{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:22px;color:var(--blue);width:44px;min-width:44px;text-align:center;line-height:1;background:transparent;border:1.5px solid var(--border);border-radius:8px;padding:4px 0;margin:0;-moz-appearance:textfield;appearance:textfield;transition:border-color .15s,background .15s}
.fy-fmr-count-input::-webkit-outer-spin-button,
.fy-fmr-count-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.fy-fmr-count-input:focus{outline:none;border-color:var(--blue);background:#fff}
.fy-fmr-count-input.zero{color:var(--muted)}
.fy-fmr.has-count .fy-fmr-count-input{border-color:var(--blue);background:#fff}
.fy-fmr-stepper{display:flex;align-items:center;gap:6px}
.fy-fmr-btn{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--border);background:#fff;font-size:18px;font-weight:300;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;line-height:1;flex-shrink:0;padding:0}
.fy-fmr-btn:hover:not(:disabled){border-color:var(--blue);color:var(--blue);background:var(--blue-soft,#EFF6FF)}
.fy-fmr-btn:disabled{opacity:.35;cursor:not-allowed}
.fy-fmr-btn.plus:not(:disabled){border-color:var(--blue);background:var(--blue);color:#fff}
.fy-flavor-mix-hint{font-size:12px;color:var(--muted);text-align:center;line-height:1.5;margin:0}
.fy-flavor-mix-hint span{color:var(--blue);font-weight:600}

.fy-flavor-opts--bundle .fy-flavor-opt{text-decoration:none;border:none;font:inherit;cursor:pointer}
.fy-bundle-single-flavor[hidden]{display:none!important}
.fy-flavor-mix-section[hidden]{display:none!important}

.fy-atc-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}

@media(max-width:900px){
  .fy-flavor-mix-header{flex-wrap:wrap}
}
