:root {
    --white: #ffffff;
    --light-blue-300: #E9ECF8;
    --dark-blue-300: #0A3871;
    --gray-400: #495057;
    --sm: 14px;
    --md: 16px;
    --lg: 18px;
}

body {
    background-color: var(--light-blue-300);
    font-family: "Quicksand", sans-serif;
}

.container {
    top: 0;
    width: 100%;
    height: 94vh;
    display: flex;
    align-items: center;
}

.icon {
    min-width: 130px;
    height: 90%;
    display: flex;
    justify-content: center;
    padding-top: 60px;
}

.icon img {
    width: 100%;
    height: 48px;
}

.encryptor {
    display: flex;
    flex-direction: column;
    width: 65%;
    height: 70%;
}

.input-container {
    padding: 10px;
    height: 80%;
    box-sizing: border-box;
}

.input-container label {
    font-size: xx-large;
    font-weight: bold;
    color: var(--dark-blue-300);
}

.input-container textarea {
    width: 90%;
    height: 100%;
    background-color: transparent;
    border: none;
    padding: 30px;
    font-size: large;
    resize: none;
    border: none;
}

.input-container textarea:focus {
    outline: 1px solid var(--dark-blue-300);
}

.buttons-container {
    display: flex;
    flex-direction: column;
    height: 20%;
    width: 900px;
    justify-content: center;
    align-items: center;
}

.alert-message-container {
    display: flex;
    gap: 10px;
    align-items: center;
    width: 680px;
}

.alert-message-container img {
    width: 24px;
    height: 24px;
    margin-bottom: 8px;
}

.buttons {
    display: flex;
    gap: 20px;
    justify-content: center;
}

.active-button {
    width: 320px;
    height: 60px;
    border-radius: 20px;
    font-size: medium;
    font-weight: bold;
    border: 1px solid var(--dark-blue-300);
    background-color: var(--dark-blue-300);
    color: var(--white);
}

.inactive-button {
    width: 320px;
    height: 60px;
    border-radius: 20px;
    background-color: transparent;
    font-size: medium;
    font-weight: bold;
    color: var(--dark-blue-300);
    border: 1px solid var(--dark-blue-300);
}

.resultado-container {
    background-color: var(--white);
    height: 90%;
    width: 20%;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 30px;
    text-align: center;
}

.resultado-container h2 {
    font-weight: bolder;
    font-size: x-large;
    margin-bottom: 24px;
}

.resultado-container p {
    font-size: large;
}

.texto-encriptado-container {
    background-color: var(--white);
    height: 90%;
    width: 20%;
    border-radius: 20px;
    display: none;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 30px;
    text-align: center;
}

.texto-encriptado {
    width: 90%;
    height: 90%;
    margin-bottom: 20px;
    background-color: transparent;
    border: none;
    padding: 30px;
    font-size: xx-large;
    resize: none;
    border: none;
}

.texto-encriptado:focus {
    outline: 1px solid var(--dark-blue-300);
}

.red-alert {
    color: #dc143c;
    font-weight: bold;
    font-size: large;
}

.footer {
    width: 100%;
    height: 6vh;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.footer a img {
    width: 24px;
    height: 24px;
}

@media (width < 1280px) {
    .container {
        flex-direction: column;
        height: 90%;
    }

    .icon {
        height: 5vh;
        padding: 30px;
        align-self: flex-start;
    }

    .encryptor {
        margin: 0;
        width: 100%;
        height: 70vh;
        padding: 10px;
        box-sizing: border-box;
    } 

    .input-container {
        width: 100%;
    }

    .input-container label {
        width: 100%;
        padding-left: 30px;
        height: 10%;
    }

    .input-container textarea {
        width: 100%;
        height: 90%;
        box-sizing: border-box;
    }

    .alert-message-container {
        width: 100%;
    }

    .buttons-container {
        width: 100%;
        height: 20%;
        margin-top: 12px;
    }

    .buttons {
        width: 100%;
    }

    .active-button {
        width: 40%;
    }

    .inactive-button {
        height: 100%;;
        width: 40%;
    }

    .resultado-container {
        box-sizing: border-box;
        width: 90%;
        height: 20vh;
    }

    .resultado-container img {
        display: none;
    }

    .texto-encriptado-container {
        box-sizing: border-box;
        display: none;
        width: 90%;
        height: 500px
    }

    .texto-encriptado {
        font-size: large;
    }

    #copy-button {
        width: 50%;
        height: 65px;
    }

    .footer {
        height: 10%;
        margin-top: 12px;
    }

}