.otp-input {
    width: 3.25rem;
    height: 3.25rem;
    font-size: 1.5rem;
    padding: 0;
    text-align: center;
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: calc(var(--bs-border-radius) * 2);
    transition: border-color .12s, box-shadow .12s;
    margin-right: 5px;
}

.otp-input:focus {
    outline: none;
    border-color: #0d6efd;
    box-shadow: 0 0 0 .15rem rgba(13,110,253,.12);
}

.otp-row .col {
    padding-left: .25rem;
    padding-right: .25rem;
}

@@media (max-width: 420px) {
    .otp-input {
        width: 2.5rem;
        height: 2.5rem;
        font-size: 1.25rem;
    }
}

.visually-hidden-label {
    position: absolute !important;
    width: 1px; height: 1px;
    padding: 0; margin: -1px; overflow: hidden;
    clip: rect(0,0,0,0); border: 0;
}

form#otp-form {
    box-shadow: 0px 0px 26px -4px rgba(78,87,96,0.3);
    padding: calc(var(--padding) * 2);border-radius: 10px;
}