@font-face {
    font-family: "Minecraft";
    src: url("../font/MinecraftRegular.otf");
}

body {
    overflow: hidden;
}

.lang {
    display: block;
    position: absolute;
    width: 8vh;
    left: calc(100% - 9vh);
    top: 1vh;
    height: calc(8vh * 0.73);
    background: url("../images/hotbar.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8vh;
    cursor: pointer;
    z-index: 1;
    & > div.flag {
        display: block;
        position: absolute;
        width: 8vh;
        height: calc(8vh * 0.73);
        background: url("../flags/flag_eng.png");
        background-repeat: no-repeat;
        background-size: calc(6vh * 0.73);
        background-position: center;
    }
    & > input.lang-c {
        width: 100%;
        height: 100%;
        margin: 0;
        opacity: 0;
        cursor: pointer;
    }
    & > div.lang-dropdown {
        display: grid;
        position: absolute;
        top: calc(8vh * 0.73);
        left: calc(100% - 8vh);
        width: 8vh;
        height: 0vh;
        cursor: default;
        transition: 0.5s;
        grid-template-rows: 1fr 1fr 1fr 1fr;
        & > div {
            cursor: pointer;
        }
        & > div.eng {
            background: url("../images/hotbar.png");
            background-repeat: no-repeat;
            background-size: 8vh;
            background-position: center;
            & > div {
                background: url("../flags/flag_eng.png");
                background-repeat: no-repeat;
                background-size: calc(6vh * 0.73);
                background-position: center;
                width: 100%;
                height: 100%;
            }
        }
        & > div.sk {
            background: url("../images/hotbar.png");
            background-repeat: no-repeat;
            background-size: 8vh;
            background-position: center;
            & > div {
                background: url("../flags/flag_sk.png");
                background-repeat: no-repeat;
                background-size: calc(6vh * 0.73);
                background-position: center;
                width: 100%;
                height: 100%;
            }
        }
        & > div.cz {
            background: url("../images/hotbar.png");
            background-repeat: no-repeat;
            background-size: 8vh;
            background-position: center;
            & > div {
                background: url("../flags/flag_cz.png");
                background-repeat: no-repeat;
                background-size: calc(6vh * 0.73);
                background-position: center;
                width: 100%;
                height: 100%;
            }
        }
        & > div.ussr {
            background: url("../images/hotbar.png");
            background-repeat: no-repeat;
            background-size: 8vh;
            background-position: center;
            & > div {
                background: url("../flags/flag_ussr.png");
                background-repeat: no-repeat;
                background-size: calc(6vh * 0.73);
                background-position: center;
                width: 100%;
                height: 100%;
            }
        }
    }
}


.lang:hover {
    background: url("../images/hotbar_selection.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 8vh;
}

.lang-c:checked {
    & + .lang-dropdown {
        height: calc(8vh * 0.73 * 4);
    }
}

.main {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    div.background {
        display: grid;
        position: relative;
        width: 100vw;
        height: 100vh;
        margin: 0 auto;
        /* background: url("../images/dirt.png");
        background-size: calc(100vw / 16);
        background-repeat: repeat; */
        grid-template-rows: 1fr 1fr 1fr;

    }
    div.title {
        display: block;
        margin: 0 auto;
        background: url("../images/title.png");
        background-repeat: no-repeat;
        background-size: 80vh;
        background-position: center;
        max-width: 100vw;
        width: 100%;
        z-index: 1;
    }
    div.buttons {
        display: grid;
        grid-template-rows: 1fr 1fr 1fr;
        margin: 0 auto;
        width: 60vh;
        max-width: 1000px;
        height: 18vh;
        row-gap: 2vh;
        z-index: 1;
        & > div {
            background: url("../images/button.png");
            background-repeat: no-repeat;
            background-size: 60vh;
            height: 6vh;
            background-position: center;
            text-align: center;
            cursor: pointer;
            font-family: "Minecraft";
            font-size: 3vh;
            color: white;
            & > span {
                display: block;
                padding-top: 1.2vh;
            }
        }
        & > div:hover {
            background: url("../images/button_highlighted.png");
            background-repeat: no-repeat;
            background-size: 60vh;
            background-position: center;
        }
    }
}

.server {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    div.background {
        display: block;
        position: absolute;
        width: 100vw;
        height: 100vh;
        margin: 0 auto;
        background: url("../images/dirt.png");
        background-size: calc(100vw / 16);
        background-repeat: repeat;
    }
    div.title-bar {
        display: block;
        position: absolute;
        width: 100vw;
        height: 10vh;
        text-align: center;
        align-content: center;
        & > span {
            font-family: "Minecraft";
            color: white;
            font-size: 3vh;
        }
    }
    div.left-right {
        display: grid;
        position: absolute;
        top: 10vh;
        width: 100vw;
        height: 70vh;
        max-height: 70vh;
        background-color: rgba(0, 0, 0, 0.5);
        border-top: 1vh solid rgba(0, 0, 0, 0.5);
        border-bottom: 1vh solid rgba(0, 0, 0, 0.5);
        box-sizing: border-box;
        grid-template-columns: 1fr min-content 1fr;
        column-gap: 1vh;
        & > div.left {
            display: grid;
            background-color: rgba(0, 0, 0, 0.2);
            margin: 2vh;
            grid-template-columns: min-content 1fr;
            grid-template-rows: min-content 1fr;
            grid-template-areas: 
                'favicon title'
                'details details';
            & > img.image {
                margin-top: 5vh;
                margin-left: 5vh;
                height: 17vh;
            }
            & > div.title {
                font-family: "Minecraft";
                color: white;
                margin-top: 5vh;
                margin-right: 5vh;
                margin-left: 2vh;
                height: 17vh;
                & > span.server-title {
                    font-size: 4vh;
                }
                & > span.server-desc {
                    font-size: 2.5vh;
                    opacity: 0.9;
                }
            }
            & > div.footer {
                grid-area: 'footer';
                grid-column: span 2;
                display: block;
                position: relative;
                margin: 5vh;
                font-family: "Minecraft";
                font-size: 2.5vh;
                color: white;
            }
        }
        & > div.divider {
            width: 1vh;
            height: 60vh;
            margin-top: 4vh;
            background-color: rgba(0, 0, 0, 0.8);
        }
        & > div.right {
            margin: 2vh;
            background-color: rgba(0, 0, 0, 0.2);
            font-family: "Minecraft";
            color: white;
            overflow-y: hidden;
            max-height: 70vh;
            box-sizing: border-box;
            border: 10px 10px 10px;
            & > div.title {
                font-size: 4vh;
                margin-top: 5vh;
                margin-left: 5vh;
            }
            & > ul.player-list {
                font-size: 2.5vh;
                margin-left: 2.5vh;
                margin-bottom: 7vh;
                & > li {
                    display: grid;
                    grid-template-columns: min-content 1fr;
                    padding: 1vh;
                    margin: 1vh;
                    border-radius: 3px;
                    background-color: rgba(100, 100, 100, 0.8);
                    max-width: 40vh;
                }
                & > li > img {
                    width: 5vh;
                }
                & > li > span {
                    margin-left: 3vh;
                    margin-top: 1vh;
                }
            }
        }
    }
    div.footer-bar {
        display: block;
        position: absolute;
        width: 100vw;
        height: 20vh;
        top: 80vh;
        align-content: center;
        & > div.button {
            display: block;
            margin: 0 auto;
            font-family: "Minecraft";
            color: white;
            background: url("../images/button.png");
            background-repeat: no-repeat;
            background-size: 60vh;
            height: 6vh;
            width: 60vh;
            padding-top: 1.2vh;
            text-align: center;
            cursor: pointer;
            & > span {
                font-size: 3vh;
            }
        }
        & > div.button:hover {
            background: url("../images/button_highlighted.png");
            background-repeat: no-repeat;
            background-size: 60vh;
            height: 6vh;
            width: 60vh;
        }
    }
}

.dynmap {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    div.background {
        display: block;
        position: absolute;
        width: 100vw;
        height: 100vh;
        margin: 0 auto;
        background: url("../images/dirt.png");
        background-size: calc(100vw / 16);
        background-repeat: repeat;
    }
    div.title-bar {
        display: block;
        position: absolute;
        width: 100vw;
        height: 8vh;
        text-align: center;
        align-content: center;
        & > span {
            font-family: "Minecraft";
            color: white;
            font-size: 3vh;
        }
    }
    div.frame {
        display: block;
        position: absolute;
        width: 100vw;
        height: 75vh;
        top: 8vh;
        background-color: rgba(0, 0, 0, 0.5);
        & > iframe {
            margin: 2.5vh;
            width: calc(100% - 7vh);
            height: calc(100% - 7vh);
            border: 1vh solid rgba(0, 0, 0, 0.5);
        }
        & > iframe:fullscreen {
            margin: 0;
            width: 100vw;
            height: 100vh;
        }
        & > div.fullscreen {
            position: absolute;
            width: 5vh;
            height: 5vh;
            top: 3.5vh;
            left: calc(100% - 8vh);
        }
    }
    div.footer-bar {
        display: grid;
        position: absolute;
        width: 100vh;
        height: 15vh;
        top: 84vh;
        left: calc(50vw - 50vh);
        align-content: center;
        grid-template-columns: 1fr 1fr 1fr;
        color: white;
        font-family: "Minecraft";
        text-align: center;
        column-gap: 2vh;
        font-size: 3vh;
        & > div {
            align-content: center;
            background: url("../images/button-small.png");
            background-repeat: no-repeat;
            background-size: 100%;
            height: 6vh;
            cursor: pointer;
        }
        & > div:hover {
            background: url("../images/button_highlighted-small.png");
            background-repeat: no-repeat;
            background-size: 100%;
        }
    }
}

.mods {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    div.background {
        display: block;
        position: absolute;
        width: 100vw;
        height: 100vh;
        margin: 0 auto;
        background: url("../images/dirt.png");
        background-size: calc(100vw / 16);
        background-repeat: repeat;
    }
    div.title-bar {
        display: block;
        position: absolute;
        width: 100vw;
        height: 10vh;
        text-align: center;
        align-content: center;
        & > span {
            font-family: "Minecraft";
            color: white;
            font-size: 3vh;
        }
    }
    div.mod-menu {
        display: grid;
        position: absolute;
        width: 100vw;
        height: 75vh;
        top: 10vh;
        grid-template-columns: min-content 1fr;
        background-color: rgba(0, 0, 0, 0.5);
        & > div.left-scroll {
            height: 100%;
            width: 20vw;
            background-color: rgba(0, 0, 0, 0.2);
            max-height: calc(75vh - 10px);
            overflow-y: hidden;
            box-sizing: border-box;
            border: 10px 10px 10px;
            & > div.search {
                height: 8vh;
                margin: 10px;
                background-color: #50505080;
                border: 0.8vh solid #70707080;
            }
            & > ul {
                margin: 0;
                padding: 0;
                overflow: hidden;
                overflow-y: scroll;
                max-height: calc(65vh - 20px);
                & > li {
                    display: grid;
                    height: 12vh;
                    background-color: #30303080;
                    border: 0.8vh solid #50505080;
                    margin: 10px;
                    cursor: pointer;
                    grid-template-columns: min-content 1fr;
                    align-content: center;
                    column-gap: 15px;
                    & > div.mod-icon {
                        background: url("../favicon.svg");
                        background-repeat: no-repeat;
                        background-position: center;
                        background-size: 100%;
                        height: 5vw;
                        width: 5vw;
                        margin-left: 1vh;
                    }
                    & > div.mod-name {
                        display: table;
                        height: 10vh;
                        width: calc(12vw - 1vh - 15px);
                        max-width: calc(12vw - 1vh - 15px);
                        & > span {
                            display: table-cell;
                            vertical-align: middle;
                            color: white;
                            font-family: "Minecraft";
                            font-size: 2.5vh;
                            font-weight: 600;
                            white-space: pre-line;
                            line-break: anywhere;
                            max-width: calc(12vw - 1vh - 15px);
                        }
                    }
                }
                & > li:hover {
                    background-color: #50505080;
                    border: 0.8vh solid #70707080;
                }
            }
        }
        & > div.right-desc {
            display: block;
            width: 80vw;
            height: 100%;
            font-family: "Minecraft";
            color: #fff;
            & > div.inner {
                display: none;
                margin: 2vw;
                grid-template-columns: min-content 1fr;
                grid-template-rows: 1fr 2fr;
                & > div.mod-icon {
                    background: url("../favicon.svg");
                    background-position: center;
                    background-repeat: no-repeat;
                    background-size: 100%;
                    width: 7vw;
                    height: 7vw;
                }
                & > span.mod-title {
                    font-size: 3vw;
                    margin-left: 2vw;
                    margin-top: 1.8vw;
                }
                & > div.mod-other {
                    width: 100%;
                    height: 100%;
                    grid-column: span 2;
                    word-wrap: break-word;
                    line-break: anywhere;
                    font-size: 1.5vw;
                    padding-left: 1vw;
                }
            }
        }
    }
    div.footer-bar {
        display: grid;
        position: absolute;
        width: 66vh;
        height: 15vh;
        top: 84vh;
        left: calc(50vw - 33vh);
        align-content: center;
        grid-template-columns: 1fr 1fr;
        color: white;
        font-family: "Minecraft";
        text-align: center;
        column-gap: 2vh;
        font-size: 3vh;
        & > div {
            align-content: center;
            background: url("../images/button-small.png");
            background-repeat: no-repeat;
            background-size: 100%;
            height: 6vh;
            width: 32vh;
            cursor: pointer;
        }
        & > div:hover {
            background: url("../images/button_highlighted-small.png");
            background-repeat: no-repeat;
            background-size: 100%;
        }
    }
}