code {
    background: var(--app-theme);
}

:root {
    --spacing: 8px;
    --hue: 400;
    --brand1: hsl(var(--app-theme) 80% 60%);
    --text1: hsl(0,0%,100%);
    --text2: hsl(0,0%,90%);
    --background1: hsl(214, 14%, 20%);
    --background2: hsl(214, 14%, 13%);
    --background3: hsl(214, 14%, 5%);
}



.number-code {
    overflow: auto;
}
.number-code div {
    display: flex;
}
.number-code div input:not(:last-child) {
    margin-right: calc(var(--spacing) * 2);
}


input.code-input {
    font-size: 1.5em;
    font-weight: bolder;
    width: 1em;
    text-align: center;
    flex: 1 0 1em;
    padding: var(--spacing);
    border-radius: calc(var(--spacing) / 2);
    color: var(--text1);
    background: var(--app-theme);
    border: 0;
    border: 4px solid transparent;
}
input.code-input:invalid {
    box-shadow: none;
}
input.code-input:focus {
    outline: none;
    border: 4px solid var(--brand1);
    background: var(--background3);
}
input.code-input.has-error {
    border: 4px solid red;
}




