--- layout: stylesheet --- * {}

:root {
    --background-colour: #111111;
    --standard-colour: #121212;
    /* basic block elements */
    --standard-highlight-colour: #161616;
    /* block elements inside */

    --standard-text-colour: white;
    --highlight-text-colour: #823;

    --nav-bar-background: rgb(13, 13, 13);

    --max-width: 850px;
    --tablet-width: 595px;

    /* Posts Vars */
    --code-block-background: #121212;
    --sub-title-colour: #823;
    --post-link-colour: rgb(18, 108, 243);
}

/*
START 
    FORMATTING

*/
html {
    position: relative;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.1em;
    font-weight: 400;
    font-style: normal;

    letter-spacing: -0.02em;

    height: 100%;
    width: 100%;
    margin: 0;

    background: var(--background-colour);

    color: var(--standard-text-colour);
    overflow-x: hidden;

    scroll-behavior: smooth;
    scroll-padding-top: 2em;

    line-height: 1.5;
}

body {
    position: relative;
    min-height: 100vh;
    width: 100%;
    margin: 0;
}

body::after {
    content: '';
    display: block;
    height: 50px;
    /* Set same as footer's height */
}

a {
    text-decoration: none;
    color: var(--standard-text-colour);
}


a:hover {
    text-decoration: none;
    color: var(--standard-text-colour);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
}

/*
END
    FORMATTING

*/

/*
START 
    SCROLLBAR

*/
/* width */

::-webkit-scrollbar {
    width: 5px;
    height: 0px;
}

/* Track */

::-webkit-scrollbar-track {
    background: rgba(25, 25, 25, 1);
}

/* Handle */

::-webkit-scrollbar-thumb {
    background: rgba(100, 100, 100, 0.5);
    border-radius: 5px;
}

/*
END
    SCROLLBAR

*/

#copyright {
    position: absolute;
    float: left;
    z-index: 10;
    top: 10px;
    left: 10px;
}

/*
START
    NAV

*/
div.web-nav {
    padding: 16px;
    width: 300px;
    position: fixed;
    top: 0;
    z-index: 10;

}

div.web-nav .title {
    font-size: 1.5em;
}

div.web-nav .socials {
    position: relative;
    display: flex;
    flex-direction: row;

    gap: 5px;
    height: 32px;
    padding-bottom: 4px;
}


div.web-nav .socials span {
    position: relative;
    display: block;
    height: 32px;
    width: 32px;
    background-position: center;
    background-size: cover;
}

div.web-nav .socials span#github {
    background-image: url("/images/icons/Github-Logo.svg");
}

div.web-nav .socials span#mastadon {
    background-image: url("/images/icons/Mastadon-Icon.svg");
}

div.web-nav .socials span#email {
    background-image: url("/images/icons/Email-Icon.png");
}

div.web-nav .socials span#publickey {
    background-image: url("/images/icons/GPG-Icon.png");
}

div.web-nav .nav-buttons {
    width: fit-content;
    display: flex;
    flex-direction: column;
    text-decoration: underline;
}

/* for some reason the first child element doesn't get underlined????? */
div.web-nav .nav-buttons::before {
    content: '';
    position: relative;
}

@media(max-width:1200px) {

    html {
        scroll-padding-top:  calc(2em + 50px);
    }

    div.web-nav {
        z-index: 10;
        padding: 0;

        background-color: var(--nav-bar-background);
        width: 100%;
        overflow-y: hidden;
        transition: height 0.5s cubic-bezier(0.16, 1, 0.3, 1);
        height: 46px;
        user-select: none;
    }

    div.web-nav:active, div.web-nav:hover.nojs, div.web-nav.shown-short {
        height: 195px;
    }
    div.web-nav.shown-tall {
        height: 244px;
    }



    div.web-nav::after {
        background-color: white;
        height: 2px;
        width: 25%;
        position: absolute;
        content: '';
        bottom: 3px;
        left: 50%;
        transform: translateX(-50%);
    }

    div.web-nav .title {
        padding-top: 8px;
        padding-bottom: 8px;
        text-align: center;
    }

    div.web-nav .socials {
        align-items: center;
        justify-content: center;
    }

    div.web-nav .nav-buttons {
        width: 100%;
        gap: 2px;
        text-decoration: underline;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    div.web-nav .nav-buttons * {
        background-color: var(--background-colour);
        width: 100%;
        display: flex;
        height: 50px;
        align-items: center;
        justify-content: center;
        /*border-bottom: 1px white solid;*/
    }
}

/*
END
    NAV

*/

@keyframes animateBg {
    0% {
        background-position: 0% 0%;
    }

    100% {
        background-position: 100% 0%;
    }
}

div#website-creator {
    font-size: 1em;
    text-align: center;
    position: absolute;
    bottom: 15px;
    left: 0;
    right: 0;
    margin: auto;
    width: 250px;
    height: 50px;
}

div#website-creator a {
    position: relative;
    padding: 10px;
    width: 100%;
    height: 100%;
    color: rgba(100, 100, 100, 0.3);
    text-decoration: none;
    z-index: 2;
    margin: auto;
    top: calc(50% - 0.75em);


    transition: color 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}

div#website-creator:hover a {
    color: white;
    transition: color 0.5s cubic-bezier(0.5, 0, 0.75, 0);
}

div#website-creator::before,
div#website-creator::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    clip-path: polygon(50% 0%, 50% 0%, 50% 100%, 50% 100%);
    left: 0;
    bottom: 0;
    transition: clip-path 0.5s cubic-bezier(0.5, 0, 0.75, 0);

}

div#website-creator:hover::before,
div#website-creator:hover::after {

    clip-path: polygon(10px 0, 100% 0, calc(100% - 10px) 100%, 0px 100%);
    transition: clip-path 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}


div#website-creator::before {
    background-color: #9e0b35;
    animation: animateBg 12s linear infinite;
    background-image: linear-gradient(140deg,
            #9e0b35 0%,
            #9e0b35 49%,
            #84bdff 50%,
            #9e0b35 51%,
            #9e0b35 100%);
    background-size: 1200% 100%;
    left: -2px;
    bottom: -2px;
}

div#website-creator::after {
    background-color: #151515;
    z-index: 1;
}
