html {
    margin: 0;
    height: 100%;
}

body {
    padding: 1rem 1rem 2rem 1rem;
    margin: 0;
    min-height: 100%;
    background-color: #0e0e0e;
}

@media screen and (max-width: 600px) {
    body {
        padding: 0;
        height: inherit;
    }
    #terminal_container {
        min-height: 100%;
    }
}

#terminal_container {
    position: relative;
    z-index: 10;
    background: var(--main_color);
    color: #fff;
    font-family: Monaco, Consolas, monospace;
    line-height: 1.4;
    pointer-events: auto;
    font-size: 18px;
    text-shadow: 0rem 0.3rem 1rem var(--shadow_color);
    border: solid #03031e 2px;
    box-shadow: 0px 0px 0.9rem 0.5rem rgba(0, 0, 0, 1);
}

a,
a:visited {
    border-bottom: 0.2rem solid var(--focus_color);
    color: var(--focus_color);
    text-decoration: none;
}
a:active,
a:focus,
a:hover {
    background: var(--focus_color);
    color: var(--main_color);
    cursor: pointer;
}

::selection {
    background: var(--focus_color);
    color: var(--main_color);
}

#scanlines {
    position: absolute;
    z-index: initial;
    height: 100%;
    width: 100%;
    background: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0),
        rgba(255, 255, 255, 0) 50%,
        rgba(0, 0, 0, 0.2) 70%,
        rgba(0, 0, 0, 0.6)
    );
    background-size: 100% 0.3rem;
    pointer-events: none;
}

#terminal_output_container,
#terminal_input_container {
    position: relative;
    z-index: -1;
}

/* Terminal Output */
#terminal_output_container {
    width: inherit;
    padding: 2rem;
    padding-bottom: 0.5rem;

    h3 {
        font-size: 24px;
        margin-top: 0;
        margin-bottom: 0;
    }

    .hush {
        margin-bottom: 24px;
    }
}

/* Terminal Input */
#terminal_input_container {
    margin-inline: 2rem;
    padding-bottom: 4rem;

    &::before {
        content: ">";
        color: var(--focus_color);
        font-size: 18px;
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 16px;
        height: 24px;
    }

    #terminal_input {
        font-family: Monaco, Consolas, monospace;
        font-size: 18px;
        color: var(--focus_color);
        display: block;
        outline: none;
        border: none;
        background: transparent;
        line-height: 20px;
        margin-left: 20px;
        width: 95%;
        height: 24px;
    }
}
