/* STYLESHEET FOR "SIMPLE ANATOMY OF A WEBSITE"

By Joonatan Koponen
--------------------------------------------------
      ...                 ...                ...        
   xH88"`~ .x8X       .x888888hx    :    .x888888hx    :
 :8888   .f"8888Hf   d88888888888hxx    d88888888888hxx 
:8888>  X8L  ^""`   8" ... `"*8888%`   8" ... `"*8888%` 
X8888  X888h       !  "   ` .xnxx.    !  "   ` .xnxx.   
88888  !88888.     X X   .H8888888%:  X X   .H8888888%: 
88888   %88888     X 'hn8888888*"   > X 'hn8888888*"   >
88888 '> `8888>    X: `*88888%`     ! X: `*88888%`     !
`8888L %  ?888   ! '8h.. ``     ..x8> '8h.. ``     ..x8>
 `8888  `-*""   /   `88888888888888f   `88888888888888f 
   "888.      :"     '%8888888888*"     '%8888888888*"  
     `""***~"`          ^"****""`          ^"****""`    
-------------------------------------------------- */

/* -------------------------------------------------- */
/* VARIABLES AMD CONSTANTS AND STUFF */
/* -------------------------------------------------- */

/* Visual identity */

:root {
    /* Colors */
    --screen-amber: #fcbf00;
    --burned-amber: #2a1d07;
    --black: #000000;
    --white: #ffffff;
    --ligth-beige: #ece4d5;
    --dark-beige: #aea99d;
}

/* Typefaces */

@font-face {
    font-family: "Eurotype Bold";
    src: url("./fonts/QTEurotype-Bold.otf");
}

@font-face {
    font-family: "Eurotype";
    src: url("./fonts/QTEurotype.otf");
}

@font-face {
    font-family: "Print Char";
    src: url("./fonts/PrintChar21.ttf");
}

/* -------------------------------------------------- */
/* ELEMENT STYLING */
/* -------------------------------------------------- */

html {
    background-color: var(--ligth-beige);
    padding: 10px;
}

body {
    color: var(--black);
    background-color: var(--white);
    font-family: "Eurotype";
    max-width: 500px;
    font-size: 20px;
    padding: 50px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
    margin-bottom: 0;
    image-rendering: pixelated;
    image-rendering: crisp-edges;
    image-rendering: -moz-crisp-edges;
}

@media (max-width: 550px) {
    body {
        padding: 25px;
        padding-top: 50px;
    }
}

h1 {
    margin-top: 0;
    margin-bottom: 35px;
    font-family: "Eurotype Bold";
    font-size: 35px;
}


h2 {
    font-family: "Eurotype Bold";
    font-size: 25px;
    margin-top: 0;
    margin-bottom: 25px;
}

code {
    font-family: "Print Char";
    font-size: 12px;
    background-color: var(--black);
    color: var(--screen-amber);
    padding: 5px;
}

a {
    color: var(--burned-amber);
}

a:hover {
    color: var(--black);
    background-color: var(--ligth-beige);
}

button {
    border-style: solid;
    font-family: "Eurotype";
    font-size: 20px;
    color: var(--black);
    border-width: 1px;
    background-color: var(--ligth-beige);
    margin: 10px;
    padding: 5px;
}

button:hover {
    color: var(--black);
    background-color: var(--dark-beige);
}

nav {
    margin: 10px;
    display: flex;
    justify-content: space-around;
    padding-left: 50px;
    padding-right: 50px;
}

@media (max-width: 550px) {
    nav {
        margin: 10px;
        display: flex;
        justify-content: space-around;
        padding-left: 0;
        padding-right: 0;
    }
}

nav a {
    border: solid;
    text-decoration: none;
    border-width: 1px;
    border-color: var(--black);
    margin: 10px;
    padding: 5px;
    color: var(--black);
    background-color: var(--ligth-beige);
}

nav a:hover {
    background-color: var(--dark-beige);
}

ul li::marker {
    content: "> ";
}

img {
    width: 100%;
}

object {
    image-rendering: pixelated;
    margin-bottom: 50px;
    margin-top: 50px;
}

.bodyBlock object:last-child {
    image-rendering: pixelated;
    margin-bottom: 0;
}

footer {
    margin-top: 25px;
    margin-bottom: 0;
}

/* -------------------------------------------------- */
/* GENERAL CLASSES */
/* -------------------------------------------------- */

.bookTitle {
    font-size: 50px;
    margin-bottom: 50px;
}

.bodyBlock {
    margin-bottom: 75px;
}

.hiddenSecret {
    display: none;
}

.hidden {
    display: none;
}

.doubleImages {
    margin-top: 50px;
    margin-bottom: 50px;
    display: flex;
    justify-content: space-around;
}

.doubleImages img {
    width: 35%;
}

.pixelPlane {
    margin-left: auto;
    margin-right: auto;
    padding-top: 25px;
    width: 18%;
}

.pixelPlaneCollection {
    margin-left: auto;
    margin-right: auto;
    height: 100px;
    margin-top: 50px;
    margin-bottom: 50px;
}

@media (max-width: 470px) {
    .pixelPlane {
        width: 25%;
    }

    .pixelPlaneCollection {
        height: 75px;
    }
}

.pixelPlaneCollection object {
    margin-bottom: 0;
    margin-top: 0;
    height: 100%;
}

.doubleColumn {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 50px;
}

/* -------------------------------------------------- */
/* JAVASCRIPT EXAMPLE */
/* -------------------------------------------------- */

#game {
    font-family: "Print Char";
    font-size: 18px;
    background-color: var(--black);
    color: var(--screen-amber);
    padding: 50px;
    margin-bottom: 50px;
}

#grid {
    text-align: center;
    margin-bottom: 50px;
}

#grid p {
    margin: 0;
}

#grid #score {
    margin-bottom: 25px;
}

#gameInfo p:last-child {
    margin-bottom: 0;
}

#gameInfo p:first-child {
    margin-top: 0;
}

.gameTile {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 5px;
}

@media (max-width: 550px) {
    #game {
        font-size: 14px;
        padding: 25px;
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .gameTile {
        width: 12px;
        height: 12px;
    }
}

/* -------------------------------------------------- */
/* INDIVIDUAL IMAGE STYLING */
/* -------------------------------------------------- */

.doubleColumn .pixelPlane {
    --pixelPlane-width: 75px;
    max-width: var(--pixelPlane-width);
    min-width: var(--pixelPlane-width);
    margin-left: 0;
    margin-right: 25px;
    padding-top: 5px;
}

#browserNServer {
    margin-left: auto;
    margin-right: auto;
    width: 75%;
}

#browserNServer object{
margin-bottom: 50px;
}

@media (max-width: 550px) {
    #browserNServer {
        width: 100%;
    }

    .doubleColumn .pixelPlane {
        --pixelPlane-width: 60px;
        max-width: var(--pixelPlane-width);
        min-width: var(--pixelPlane-width);
        margin-left: 0;
        margin-right: 25px;
        padding-top: 5px;
    }
}

#reactMac {
    margin-left: auto;
    margin-right: auto;
    width: 50%;
    margin-top: 50px;
    margin-bottom: 50px;
}