/* Shared geometry for the native quantity control, including cart and checkout. */
.storm-quantity.c-amount.amount_change { display: grid; grid-template-columns: 36px minmax(0,1fr) 36px; align-items: stretch; width: 120px; height: 44px; margin: 0; padding: 0; box-sizing: border-box; border: 2px solid #edf1f5; border-radius: 8px; overflow: hidden; background: #fff; }
.storm-quantity.c-amount.amount_change > button,
.storm-quantity.c-amount.amount_change > input { display: block; width: 100%; min-width: 0; max-width: none; height: 100%; min-height: 0; margin: 0; padding: 0; box-sizing: border-box; border: 0; border-radius: 0 !important; box-shadow: none; text-align: center; font: inherit; font-size: 16px; line-height: normal; }
.storm-quantity.c-amount.amount_change > button { display: flex; align-items: center; justify-content: center; background: #f2f5f8; color: #526076; cursor: pointer; }
.storm-quantity.c-amount.amount_change > input { background: #fff; color: #182233; }
.storm-quantity.c-amount.amount_change > button:hover { background: #e7edf3; color: #182233; }
.storm-quantity.c-amount.amount_change > button:disabled { opacity: .5; cursor: wait; }
.storm-quantity.c-amount.amount_change > :focus-visible { outline: 2px solid var(--storm-red); outline-offset: -2px; }
.storm-quantity.c-amount.amount_change svg { width: 16px; height: 16px; }
