* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100vh;
    background-color: #000;
    font-family: 'terminalFont';
    color: #00ff33;
}

section {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

h1 {
    text-align: center;
    margin: 3%;
    margin-bottom: 10px;
    font-size: clamp(1.4rem, 5vw, 2rem);
}

h2 {
    font-size: clamp(1rem, 5vw, 1.6rem);
}

#infos {
    margin-top: 30px;
}

.number-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 20%;
    margin: 10px 40px;
    padding: 10px;
    gap: 14px;
}

.number {
    font-size: clamp(1.6rem, 5vw, 2.5rem);
    color: #fff;
}

::-webkit-scrollbar {
    display: none;
}

#text-area-box {
    display: flex;
    justify-content: center;
    align-items: center;
}

#text-area {
    color: #00ff33;
    resize: none;
    margin: 30px;
    margin-bottom: 20px;
    background-color: #000;
    border: none;
    padding: 10px;
    font-family: monospace;
    font-size: clamp(1rem, 5vw, 1.5rem);
}

#text-area:focus {
    outline: none !important;
}

#comandos {
    display: flex;
    justify-content: center;
}

.btn-comandos {
    text-decoration: none;
    margin: 10px;
    font-size: clamp(1.2rem, 5vw, 1.8rem);
    padding: 10px;
    transition: 0.3s;
    display: inline-block;
}

.btn-comandos:hover {
    cursor: pointer;
    transform: scale(1.2);
    color: #fff;
}

.underscore-hidden {
    visibility: hidden;
}
 
@media (min-width: 40em) {

    #infos {
        margin-top: 50px;
    }

    #counter-boxes-area {
        display: flex;
        flex-direction: row;
        justify-content: center;
    }

    .number-box {
        padding: 20px;
        margin: 10px 40px;
    }

    #text-area {
        min-width: 80%;
        min-height: 45vh;
    }
}