.qty-stepper{background-color:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-pill);align-items:center;gap:0;padding:2px;transition:border-color .14s;display:inline-flex}.qty-stepper-md{height:34px}.qty-stepper-sm{height:32px;padding:2px}.qty-stepper:focus-within,.qty-stepper:hover{border-color:var(--ink-4)}.qty-btn{color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;padding:0;font-weight:600;transition:background-color .14s,color .14s;display:grid}.qty-stepper-md .qty-btn{width:26px;height:26px;font-size:16px}.qty-stepper-sm .qty-btn{width:24px;height:24px;font-size:14px}.qty-btn:hover:not(:disabled){background-color:var(--accent);color:var(--accent-on)}.qty-btn:disabled{color:var(--ink-4);cursor:not-allowed;opacity:.5}.qty-input{text-align:center;font-family:var(--font-mono);color:var(--ink);font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:none;font-weight:700}.qty-stepper-md .qty-input{width:48px;font-size:14px}.qty-stepper-sm .qty-input{width:42px;font-size:13px}.qty-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qty-input:focus{background-color:var(--accent-soft);border-radius:var(--r-xs);outline:none}.qty-input:disabled{color:var(--ink-4);cursor:not-allowed}
