/* common sense boilerplate stuff */

@font-face {
    font-family: Determination Mono;
    src: url(images/dtmono.ttf);
}

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0px;
    padding: 0px;
}

img {
    display: block;
    max-width: 100%;
}

menu,
ol,
ul {
    padding-left: 0;
}

html {
    font-size: 62.5%; 
    margin: 0;
    padding: 0;
    font-family: 'Determination Mono', 'Courier New', Courier, monospace;
    background-color: black;
    color: #147CBD;
  }


/* root - defining some basic constants (ex. colors) */

:root{
    --green: #0F5C8C;
    --selected-green: #0F5C8C;
    --heart: "\2665  ";
    --heart-outline: "\2661  ";
}

/* .hide - belongs in its own category*/

.hide{
    display: none !important;
}

/* THE MAIN COURSE. */

body{
    background-color: black;
    display: flex;
    width: 100%;
    flex-direction: column;
    font-size: 1rem;
}

header{
    background-color: #333;
    font-size: 3rem;
    text-align: center;
    position: fixed;
    width: 100%;
}

header h1{
    margin: 0;
    width: 100%;
}

#song-button{
    float: right;
    position: fixed;
    top:0;
    right: 0;
    height: 72px;
    padding: 8px;
}


nav{
    width: 16.6%;
    background-color: #111;
    overflow-x: hidden;
    position: fixed;
    height: 100vh;
    top:72px;
    padding-top: 1rem;
}

nav a{
    margin-left: 2ch;
    display: block;
    font-size: 3rem;
    text-decoration: none;
    color: #818181;
    padding-bottom: 1rem;
}

nav a:hover{
    color: white
}

main{
    margin-left: 16.6%;
    width: 83.4%;
    padding-top: 2em;
    margin-top: 72px;


    background: url("images/crtregalia.webp");
    background-attachment: fixed;
    background-size: cover;
 
}

.container{
    background-color: black;
    font-size: 3em;
    width: 60%;
    margin-left: 20%;
    margin-right: 20%;
    margin-bottom: 2em;
    height: 5em;
    border: var(--green) 4px solid;
    color: var(--green);
    padding: 8px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.separator{
    height: 1px;
    color:transparent;
    transform: translateY(-78px);
}

.container:hover, .container.selected{
    border-color: var(--selected-green);
    color: var(--selected-green);
    background-color: #111;
}

.container:hover .title::before{
    content: var(--heart-outline);
    color: red;
}

.container.selected .title::before{
    content: var(--heart);
    color: red;
}

.top-row{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

#bottom-menu{
    display: flex;
    position: fixed;
    color: var(--green);
    width: 100%;
    bottom: 0;
    background-color: #151515;
    justify-content: space-evenly;
    font-size: 1.5rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

#bottom-menu p {
    font-size: 36px;
}

#bottom-menu p:hover{
    color:var(--selected-green);
}

#bottom-menu p:hover::before{
    content: var(--heart);
    font-size: 3rem;
    margin-top: 0.5rem;
    animation: the-gay 3s infinite linear;
    margin-right: 1ch;
    float: left;
}

/* @keyframes - really only just one*/

@keyframes the-gay {
    0% {
        color: red;
    }

    7.69% {
        color: orange;
    }

    15.38% {
        color: yellow;
    }

    23.07% {
        color: green;
    }

    30.76% {
        color: blue;
    }

    38.46% {
        color: blueviolet;
    }

    46.15% {
        color: saddlebrown;
    }

    53.84% {
        color: #222
    }

    61.53% {
        color: cyan
    }

    69.23% {
        color: hotpink
    }

    76.92% {
        color: white
    }

    84.61% {
        color: hotpink
    }

    92.30% {
        color: cyan
    }

    100% {
        color: red;
    }
}

/* @media - trying to avoid breaks on multiple resolutions again */


@media (max-width: 775px) {
    #song-button{
        filter:opacity(60%);
    }
}
@media (max-width: 900px) {
    nav{
        width: 100%;
        height: fit-content;
        display: flex;
        float: none;
        flex-direction: row;
        justify-content: space-evenly;
    }
    
    nav a{
        margin-left: 0ch;
    }

    main{
        margin-left: 0%;
        width: 100%;
    }

    #bottom-menu p {
        font-size: 3rem;
    }
    
    #bottom-menu p:hover::before{
        content: var(--heart);
        font-size: 3rem;
        margin-top: 0rem;
        animation: the-gay 3s infinite linear;
        margin-right: 1ch;
        float: left;
    }
    
}

@media (max-width: 671px) {
    nav{
        top:14em;
    }
}

@media (max-width: 540px) {
    .container{
        width: 80%;
        margin-left: 10%;
        margin-right: 10%;
    }
}

@media (max-width: 490px) {
    nav{
        display: block;
    }
    nav a:nth-child(odd){
        float: left;
    }
    nav a:nth-child(even){
        float: right;
    }
    nav a{
        width: 50%;
        text-align: center;
    }
}

@media (max-width: 400px) {
.container{
    width: 100%;
    margin-left: 0%;
    margin-right: 0%;
}
}

a:link { 
    text-decoration: none; 
  } 
  a:visited { 
    text-decoration: none; 
  } 
  a:hover { 
    text-decoration: none; 
  } 
  a:active { 
    text-decoration: none; 
  }