/* Root container for styling adjustments */
:root {
    --qty-input-height: 40px; /* Adjustable height */
    --qty-border-size: 1px;
    --qty-border-color: #111111;
  }
  
  /* Remove default spinner arrows for Webkit browsers */
  input[type=number]::-webkit-outer-spin-button,
  input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }
  
  /* Remove spinner arrows for Firefox */
  input[type=number] {
    -moz-appearance: textfield;
  }
  
  /* Main container */
  .quantity-input {
    display: flex;
    align-items: center;
    font-family: "Yekan Bakh FaNum", sans-serif;
  }
  
  /* Label spacing */
  .quantity-input label {
    margin-right: 10px;
  }
  
  /* Input container with adjustable height */
  .input-container {
    direction: ltr;
    position: relative;
    display: flex;
    align-items: center;
    overflow: hidden;
    height: var(--qty-input-height);
    border: var(--qty-border-size) solid var(--qty-border-color);
  }
  
  /* The actual input field (hidden text but visible caret) */
  .digit-input {
    width: 80px;
    height: 100%;
    padding: 0px;
    text-align: center;
    font-family: inherit;
    font-size: 16px;
    background: transparent;
    position: relative;
    z-index: 1;
    color: transparent;  /* Hide text */
    caret-color: black;  /* Keep caret visible */
    border: 0;
  }

  .digit-input:focus + .digit-overlay {
    z-index: 0;
  }
  
  /* Overlay container for animated digits */
  .digit-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 80px;
    height: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    z-index: 2;
  }
  
  /* Animated digit styles */
  .digit {
    position: absolute;
    width: 100%;
    height: 100%;
    line-height: var(--qty-input-height);
    text-align: center;
    font-size: 16px;
    transition: transform 0.3s ease;
    color: black;
  }
  
  /* Custom spinner buttons */
  .spinner {
    display: flex;
    flex-direction: column;
    height: var(--qty-input-height);
    justify-content: space-between;
  }
  
  .spinner button {
    flex: 1;
    padding: 0;
    cursor: pointer;
    border: 0;
    border-left: var(--qty-border-size) solid var(--qty-border-color);
    background: #ffffff;
    font-size: calc(16px * 0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    border-radius: 0;
  }
  
  .spinner button:hover {
    background: #f6f6f6;
  }
  
  .spinner-button-spacer{
    height: var(--qty-border-size);
    background-color: var(--qty-border-color);
  }