@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');

*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    line-height: 1.5;
}

:root {
    /*colors*/
    --schriftfarbe: #ffffff;
    --nav: #3b3f44;
    --nav-hover: #272b2e;
    --page-background: #282b30;
    --item-background: #1c1e22;

    /*special*/
    --stattrack: #f89406;
    --souvenir: #ffd700;

    /*rarities*/
    --Gray-Common-ConsumerGrade: #98a5b8;
    --Blue-Uncommon-IndustrialGrade: #5f82b8;
    --Darkblue-Rare-Mil-Spec: #5259d6;
    --Purple-Mythical-Restricted: #763bd6;
    --Pink-Legendary-Classified: #aa24c4;
    --Red-Ancient-Covert: #ba4648;
    --Yellow-Immortal-Contraband: #cc9536;

    /*layout*/
    --gap: 1.5rem;
    --border-radius: 0.5rem;
    --box-shadow: 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036;
    --nav-height: 75px;
    --stats-slider-width: 5px; /*Pixels*/

    /*css*/
    color: #ffffff;
    color: var(--schriftfarbe, #ffffff);
    font-size: 1.2rem;    
    font-family: 'Roboto', sans-serif;
}

body {
    overscroll-behavior: none;
    background-color: #282b30;
    background-color: var(--page-background, #282b30);
    margin: 1rem 10% 10% 10%;
}
body::-webkit-scrollbar {
    display: none; /*Hide Scrollbar in Chromium*/
}

aside {
    position: absolute;
    left: 0;
    width: 100%;
    height: 75px;
    height: var(--nav-height, 75px);
    opacity: 0;
}
aside > a {
    display: block;
    height: inherit;
}

/*NAV*/
nav {
    position: sticky;
    top: 1rem;
    z-index: 1;
    margin-bottom: 1rem;
    height: 75px;
    height: var(--nav-height, 75px);
}

    nav ul {
        list-style-type: none;        
    }

    nav ul#menuleiste {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 0.5rem;
        height: inherit;
    }

    #menuleiste > li {
        height: min-content;
    }

        nav ul#menuleiste > li {
            border: 1px solid #000000;
            box-shadow: 0px 0px 5px 0px #000000;
            background-color: #3b3f44;
            background-color: var(--nav, #3b3f44);
            overflow: hidden;
            border-radius: 0.5rem;
            border-radius: var(--border-radius, 0.5rem);
            transition: background-color 1s, box-shadow 1s, grid-template-rows 0.5s;      
        }

        nav ul#menuleiste a {
            color: inherit;
            display: block;
            text-align: center;
            text-decoration: none;
            line-height: 75px;
            line-height: var(--nav-height, 75px);
            white-space: nowrap;
        }
        nav ul#menuleiste a:hover {
            box-shadow: 0px 0px 0px 0px #000000, inset 0px 0px 5px 0px #000000;
            background-color: #272b2e;
            background-color: var(--nav-hover, #272b2e);
            transition: background-color .25s, box-shadow .25s;
        }
        
        ul#menuleiste .itemliste {
            display: grid;
            grid-template-rows: 0fr;
        }
        ul#menuleiste .itemliste:hover {
            grid-template-rows: 1fr;
        }
        ul#menuleiste .itemliste > ul {
            overflow: hidden;
            min-height: 73px;
            min-height: calc(var(--nav-height, 75px) - 2px);
        }
        ul#menuleiste .itemliste li:not(:first-child) {            
            border-top: 1px solid #000000;
        }

main {
    display: none;
    gap: 1.5rem;
    gap: var(--gap, 1.5rem);
    flex-wrap: wrap;
}

    main > *, .notFound {
        background-color: #1c1e22;
        background-color: var(--item-background, #1c1e22);
        border-radius: 0.5rem;
        border-radius: var(--border-radius, 0.5rem);
        padding: 0.5rem;
        padding: var(--border-radius, 0.5rem);
        box-shadow: 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036;
        box-shadow: var(--box-shadow, 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036);
        width: 100%;
    }

/*SHOWCASE*/
#showcase {
    position: relative;
}
#special {
    position: absolute;
    top: 0.5rem;
    top: var(--border-radius, 0.5rem);
    left: 0.5rem;
    left: var(--border-radius, 0.5rem);
    border-radius: 0 0 0.5rem 0;
    border-radius: 0 0 var(--border-radius, 0.5rem) 0;
    padding: 0.5rem;
    padding: var(--border-radius, 0.5rem);
    color: #000000;
}
#special.StatTrak {
    background-color: #f89406;
    background-color: var(--stattrack, #f89406);
}
#special.Souvenir {
    background-color: #ffd700;
    background-color: var(--souvenir, #ffd700);
}

.Gray-Common-ConsumerGrade {
    box-shadow: 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036, inset 0 0 0px 0.5rem #98a5b8;
    box-shadow: var(--box-shadow, 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036), inset 0 0 0px var(--border-radius, 0.5rem) var(--Gray-Common-ConsumerGrade, #98a5b8);
}
.Blue-Uncommon-IndustrialGrade {
    box-shadow: 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036, inset 0 0 0px 0.5rem #5f82b8;
    box-shadow: var(--box-shadow, 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036), inset 0 0 0px var(--border-radius, 0.5rem) var(--Blue-Uncommon-IndustrialGrade, #5f82b8);
}
.Darkblue-Rare-MilSpec {
    box-shadow: 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036, inset 0 0 0px 0.5rem #5259d6;
    box-shadow: var(--box-shadow, 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036), inset 0 0 0px var(--border-radius, 0.5rem) var(--Darkblue-Rare-Mil-Spec, #5259d6);
}
.Purple-Mythical-Restricted {
    box-shadow: 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036, inset 0 0 0px 0.5rem #763bd6;
    box-shadow: var(--box-shadow, 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036), inset 0 0 0px var(--border-radius, 0.5rem) var(--Purple-Mythical-Restricted, #763bd6);
}
.Pink-Legendary-Classified {
    box-shadow: 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036, inset 0 0 0px 0.5rem #aa24c4;
    box-shadow: var(--box-shadow, 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036), inset 0 0 0px var(--border-radius, 0.5rem) var(--Pink-Legendary-Classified, #aa24c4);
}
.Red-Ancient-Covert {
    box-shadow: 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036, inset 0 0 0px 0.5rem #ba4648;
    box-shadow: var(--box-shadow, 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036), inset 0 0 0px var(--border-radius, 0.5rem) var(--Red-Ancient-Covert, #ba4648);
}
.Yellow-Immortal-Contraband {
    box-shadow: 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036, inset 0 0 0px 0.5rem #cc9536;
    box-shadow: var(--box-shadow, 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036), inset 0 0 0px var(--border-radius, 0.5rem) var(--Yellow-Immortal-Contraband, #cc9536);
}

/*STATS*/
#stats {
    position: absolute;
    top: 0.5rem;
    top: var(--border-radius, 0.5rem);
    right: 0.5rem;
    right: var(--border-radius, 0.5rem);
    bottom: 0.5rem;
    bottom: var(--border-radius, 0.5rem);
    background-color: #1c1e22;
    background-color: var(--item-background, #1c1e22);

    padding-left: 5px; /*border width*/
    padding-left: var(--stats-slider-width, 5px); /*border width*/

    width: 25%;
    max-width: calc(100% - 2*var(--border-radius));
    overflow-x: hidden;
    overflow-y: auto;
}
#stats::before {
    content: '';
    background-color: #ffffff80;
    position: absolute;
    left: 0;
    width: 5px; /*border width*/
    width: var(--stats-slider-width, 5px); /*border width*/
    height: 100%;
    cursor: ew-resize;
}

#group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    gap: var(--border-radius, 0.5rem);
}
#group > div {
    display: flex;
    justify-content: space-between;
    position: relative;
    gap: 0.25rem;
    gap: calc(var(--border-radius, 0.5rem) / 2);
    background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 50%, #222d2b 50%);
}
#group .bar0   { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 0%, #222d2b 0%); }
#group .bar10  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 10%, #222d2b 10%); }
#group .bar20  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 20%, #222d2b 20%); }
#group .bar25  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 25%, #222d2b 25%); }
#group .bar30  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 30%, #222d2b 30%); }
#group .bar40  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 40%, #222d2b 40%); }
#group .bar50  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 50%, #222d2b 50%); }
#group .bar60  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 60%, #222d2b 60%); }
#group .bar70  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 70%, #222d2b 70%); }
#group .bar75  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 75%, #222d2b 75%); }
#group .bar80  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 80%, #222d2b 80%); }
#group .bar90  { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 90%, #222d2b 90%); }
#group .bar100 { background-image: linear-gradient(to right, #222d2b 0%, #4d7d7c 100%, #222d2b 100%); }

#group span:first-child {
    padding-left: 0.25rem;
    padding-left: calc(var(--border-radius, 0.5rem) / 2);
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
#group span:last-child {
    padding-right: 0.25rem;
    padding-right: calc(var(--border-radius, 0.5rem) / 2);
}

#download {
    background-color: #ff0000;
    position: absolute;
    bottom: 0.5rem;
    bottom: var(--border-radius, 0.5rem);
    right: 0.5rem;
    right: var(--border-radius, 0.5rem);
    display: flex;
    gap: 0.25rem;
    gap: calc(var(--border-radius, 0.5rem) / 2);
    padding: 0.25rem;
    padding: calc(var(--border-radius, 0.5rem) / 2);
    border-top-left-radius: 0.5rem;
    border-top-left-radius: var(--border-radius, 0.5rem);
    overflow-x: hidden;
    max-width: 100%;
}
#download > * {
    display: inline-flex;
    cursor: pointer;
}

/*DAMAGE, SOUNDS*/
.grid-item {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-auto-rows: min-content;
    gap: 0.5rem;
    gap: var(--border-radius, 0.5rem);
}
    .grid-item > *:nth-child(2n+3) {
        text-align: end;
    }
    .grid-item > *:nth-child(2n+2) {
        display: flex;
        align-items: center;
    }
    .grid-item audio {
        max-width: 100%;
        max-height: 100%;
    }

/*FLOAT*/
#float > video {
    display: block;
    width: 100%;
    height: 100%;
}

/*PATTERN*/
#pattern #img_scale {
    width: 100%;
}

/*NOTFOUND*/
.notFound {
    border-radius: 0.5rem;
    border-radius: var(--border-radius, 0.5rem);
    padding: 2.5rem;
    padding: calc(var(--border-radius, 0.5rem) * 5);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 80%;
    overflow: hidden;
}
    .notFound > div {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 2.5rem;
        gap: calc(var(--border-radius, 0.5rem) * 5);
    }
    .notFound > div > div {
        background-color: #ff0000;
        padding: 0.5rem;
        padding: var(--border-radius, 0.5rem);
        border-radius: 0.5rem;
        border-radius: var(--border-radius, 0.5rem);
        text-align: center;
    }
    .notFound img {
        width: 100%;
        height: auto;
    }


/*RESPONSIVE*/
.col-50 {
    width: calc(50% - 1.5rem / 2);
    width: calc(50% - var(--gap, 1.5rem) / 2);
}

canvas {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 2 / 1;
}

.displayNone { display: none; }
.displayFlex { display: flex; }


@media only screen and (max-width: 799px) {
    :root {
        /*custom propertys*/
        --gap: 0.5rem;
    }

    /*Spalten*/
    [class*="col-"] {
        width: 100%;
    }

    body {
        margin: 1rem;
    }

    nav {
        border-radius: 0.5rem;
        border-radius: var(--border-radius, 0.5rem);
        box-shadow: 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036; 
        box-shadow: var(--box-shadow, 10px 10px 20px #0b0c0e, -10px -10px 20px #2d3036); 
    }
    nav ul#menuleiste {
        gap: 0;
    }
        nav ul#menuleiste > li {
            border-radius: 0;
            box-shadow: none;
        }
        nav ul#menuleiste > li:first-child {
            border-top-left-radius: 0.5rem;
            border-top-left-radius: var(--border-radius, 0.5rem);
            border-bottom-left-radius: 0.5rem;
            border-bottom-left-radius: var(--border-radius, 0.5rem);
        }
        nav ul#menuleiste > li:last-child {
            border-top-right-radius: 0.5rem;
            border-top-right-radius: var(--border-radius, 0.5rem);
            border-bottom-right-radius: 0.5rem;
            border-bottom-right-radius: var(--border-radius, 0.5rem);
        }
        nav ul#menuleiste > li:hover {
            border-bottom-left-radius: 0.5rem;
            border-bottom-left-radius: var(--border-radius, 0.5rem);
            border-bottom-right-radius: 0.5rem;
            border-bottom-right-radius: var(--border-radius, 0.5rem);
            transition: background-color 1s, box-shadow 1s, grid-template-rows 0.5s, border-radius 0.1s;
            transition-delay: 0s, 0s, 0s, 0.1s;
        }


    /*NOTFOUND*/
    .notFound {
        padding: 1rem;
        padding: calc(var(--border-radius, 0.5rem) * 2);
    }
        .notFound > div {
            gap: 1rem;
            gap: calc(var(--border-radius, 0.5rem) * 2);
        }
}