/* One input border, two adjoining arrow buttons. Compound spacing is always zero. */
html body :is(.vnd-app,.vnd-admin-wrap,.wrap,dialog) .vnd-number-field{position:relative;display:inline-block;box-sizing:border-box;vertical-align:middle;width:100%;min-width:0;max-width:100%;margin:0;column-gap:0!important}
html body :is(.vnd-app,.vnd-admin-wrap,.wrap,dialog) .vnd-number-field>input{display:block;box-sizing:border-box;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding-right:60px!important;text-align:left;appearance:textfield;-moz-appearance:textfield}
.vnd-number-field>input::-webkit-inner-spin-button,.vnd-number-field>input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
html body :is(.vnd-app,.vnd-admin-wrap,.wrap,dialog) .vnd-number-field>.vnd-number-steps{position:absolute;display:flex;flex-direction:row!important;right:1px;top:1px;bottom:1px;width:56px!important;height:auto!important;min-height:0;gap:0!important;overflow:hidden;border-radius:0 5px 5px 0}
html body :is(.vnd-app,.vnd-admin-wrap,.wrap,dialog) .vnd-number-field.vnd-number-field.vnd-number-field.vnd-number-field>.vnd-number-steps>button{display:flex!important;align-items:center;justify-content:center;box-sizing:border-box;flex:0 0 28px!important;width:28px!important;min-width:28px!important;max-width:28px!important;height:100%!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-left:1px solid var(--vnd-border,#ced9e4)!important;border-radius:0!important;background:var(--vnd-number-button-bg,#e8eef4)!important;color:var(--vnd-text,#24364b)!important;box-shadow:none!important}
html body :is(.vnd-app,.vnd-admin-wrap,.wrap,dialog) .vnd-number-field.vnd-number-field.vnd-number-field.vnd-number-field>.vnd-number-steps>button:hover:not(:disabled){background:var(--vnd-number-button-hover,#d9e4ef)!important}
.vnd-number-steps svg{width:16px!important;height:16px!important;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.vnd-number-field.is-disabled .vnd-number-steps{opacity:.45}
/* Retain the existing compact order-row footprint (input + old stepper + gap). */
html body :is(.vnd-app,.vnd-admin-wrap,.wrap,dialog) :is(.vnd-order-product-controls,.vnd-order-value-controls)>.vnd-number-field{flex:0 0 116px;width:116px;max-width:116px}
html body :is(.vnd-app,.vnd-admin-wrap,.wrap,dialog) .vnd-number-order>input{height:var(--vnd-modal-control-height,var(--vnd-control-height,34px))!important;min-height:var(--vnd-modal-control-height,var(--vnd-control-height,34px))!important}
/* Dialogs may live outside the themed workspace; their separators use the same dark palette. */
html[data-vnd-theme=dark] .vnd-number-field{--vnd-border:#465a70;--vnd-soft:#26364a;--vnd-number-button-bg:#2b4058;--vnd-number-button-hover:#37536f}
/* Compact numeric columns retain their footprint instead of becoming full-width text fields. */
html body :is(.vnd-app,.vnd-admin-wrap,.wrap) .vnd-vat-add>.vnd-number-field{flex:0 0 110px;width:110px;max-width:110px}
html body :is(.vnd-app,.vnd-admin-wrap,.wrap) .vnd-promotion-product-row>.vnd-number-field{flex:0 0 116px;width:116px;min-width:0;max-width:116px}
html body :is(.vnd-app,.vnd-admin-wrap,.wrap) .vnd-promotion-product-list td>.vnd-number-field{max-width:140px}
html body :is(.vnd-app,.vnd-admin-wrap,.wrap) .vnd-manual-policy-column .vnd-number-field{max-width:180px}
