/* ==========================================================
   THE FUTURE IS NOW
   Version 0.1

   The future is under construction.

   There are no spectators.
   Only builders.
========================================================== */

/* -------------------- */
/* RESET */
/* -------------------- */

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

html{
    scroll-behavior:smooth;
}

body{

    background:#050505;
    color:#8CFF7A;

    font-family:Consolas,
                "Courier New",
                monospace;

    font-size:18px;
    line-height:1.8;

    overflow-x:hidden;

}

/* -------------------- */
/* MATRIX BACKGROUND */
/* -------------------- */

#matrix{

    position:fixed;

    top:0;
    left:0;

    width:100%;
    height:100%;

    z-index:-1;

    opacity:.08;

}

/* -------------------- */
/* TERMINAL */
/* -------------------- */

#terminal{

    width:100%;
    max-width:900px;

    margin:auto;

    padding:80px 30px 120px;

    position:relative;

    z-index:5;

}

/* -------------------- */
/* HEADER */
/* -------------------- */

.terminal-header{

    margin-bottom:120px;

}

.prompt{

    font-size:1.15rem;
    margin-bottom:25px;

}

.green{

    color:#6AFF6A;

    font-weight:bold;

}

.command{

    color:#E8FFE4;

}

.status{

    color:#8fb98f;

    font-size:.95rem;

}

.status p{

    margin-bottom:8px;

}

/* -------------------- */
/* BOOT */
/* -------------------- */

#boot{

    margin-bottom:160px;

}

#boot p{

    margin:12px 0;

}

.boot-line{

    opacity:0;

}

.hidden{

    display:none;

}

/* -------------------- */
/* ENTER */
/* -------------------- */

#enterPrompt{

    margin-top:50px;

    color:white;

}

.key{

    color:#050505;

    background:#8CFF7A;

    padding:3px 10px;

    border-radius:4px;

    font-weight:bold;

}

/* -------------------- */
/* CURSOR */
/* -------------------- */

.cursor{

    display:inline-block;

    width:12px;
    height:22px;

    background:#8CFF7A;

    margin-left:8px;

    animation:blink .8s infinite;

}

@keyframes blink{

    50%{

        opacity:0;

    }

}

/* -------------------- */
/* MANIFESTO */
/* -------------------- */

#manifesto{

    margin-top:120px;

}

pre{

    white-space:pre-wrap;

    margin-bottom:80px;

    color:#D6FFD0;

    font-family:inherit;

    font-size:1rem;

}

/* -------------------- */
/* ENDING */
/* -------------------- */

#ending{

    margin-top:160px;
    margin-bottom:100px;

}

#ending pre{

    color:white;

    font-size:1.1rem;

}

/* -------------------- */
/* LINKS */
/* -------------------- */

a{

    color:#9BFF97;
    text-decoration:none;

}

a:hover{

    color:white;

}

/* -------------------- */
/* SELECTION */
/* -------------------- */

::selection{

    background:#8CFF7A;
    color:black;

}

/* -------------------- */
/* SCROLLBAR */
/* -------------------- */

::-webkit-scrollbar{

    width:8px;

}

::-webkit-scrollbar-track{

    background:#050505;

}

::-webkit-scrollbar-thumb{

    background:#2d652d;

}

::-webkit-scrollbar-thumb:hover{

    background:#58c558;

}

/* -------------------- */
/* MOBILE */
/* -------------------- */

@media(max-width:768px){

    body{

        font-size:16px;

    }

    #terminal{

        padding:40px 20px 80px;

    }

    pre{

        font-size:.92rem;

    }

}