:root {
    --background: rgb(14, 14, 14);
    --main-color: rgb(217, 255, 0);
    --main-background: rgba(217, 255, 0, 0.322);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    width: 100vw;
    height: 100vh;

    font-size: 100%;
    font-family: sans-serif;
}

body {
    width: 100%;
    height: 100%;

    background-color: var(--background);
}

button {
    outline: none;
    border: none;
    background-color: transparent;
    cursor: pointer;

    font-size: 1.3em;
}

#main {
    width: 100%;
    height: 100%;

    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;

    gap: 50px
}

.keycode-container {
    width: max-content;
    min-height: max-content;
    height: max-content;
    padding: 3em 2em;
    
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    gap: 3em;

    color: var(--main-color)
}

.keycode-input-container{
    width: 60%;
    height: fit-content;

    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    gap: 1em;
}

.keycode-clear{
    width: 7em;
    height: max-content;
    padding: .5em 0.7em;
    border: 2px solid; 
    border-radius: 5px;

    align-self: flex-start;
    

    background-color: var(--main-background);
    color: var(--main-color);
}

.keycode-input{
    width: 100%;
    min-height: 1em;
    max-height: fit-content;
    border-bottom: 3px solid;
    overflow: hidden;
    
    font-size: 3em;
    text-wrap: balance;
    text-align: center;
    
    color: var(--main-color);
    background-color: transparent;
}

.keycode-box{
    min-width: 6em;
    width: max-content;
    height: 6em;
    padding: 2.5em 2em;
    border: 3px solid;
    border-radius: 5px;
    
    position: relative;
    
    text-align: center;
    font-size: 1.7em;

    background-color: var(--main-background);

    animation-name: blink;
    animation-duration: 300ms;
    animation-timing-function: ease-in-out;
}

.keycode-box::after{
    width: fit-content;
    height: fit-content;
    
    position: absolute;
    font-size: 0.8em;
    left: 0.1em;
    bottom: -1.5em;
}

.keycode-key::after{
    content: 'event.key';
    color: var(--main-color);
}

.keycode-code::after{
    content: 'event.code';
    color: var(--main-color);
}

.keycode-title{
    position: absolute;
}

@keyframes blink{
    from{
        background: rgba(217, 255, 0, 0.877);
        color: var(--background);
    }
    to{
        background: var(--main-background);
        color: var(--main-color);
    }
}
