:root {
    --clr-dark-0: #000;
    --clr-dark-1: #111;
    --clr-dark-2: #222;
    --clr-dark-3: #333;
    --clr-dark-4: #444;
    --clr-dark-5: #555;
    --clr-dark-6: #666;
    --clr-dark-7: #777;
    --clr-dark-8: #888;
    --clr-dark-9: #999;

    --clr-light-1: #fff;
    --clr-light-2: #eee;
    --clr-light-3: #ddd;
    --clr-light-4: #ccc;
    --clr-light-5: #bbb;
    --clr-light-6: #aaa;

    --clr-error: #b22;
    --clr-error-2: #b224;
    --clr-error-3: #d44;

    --clr-warning: #fb0;
    --clr-warning-2: #fb04;
    --clr-warning-3: #fd2;

    --clr-info: #09d;
    --clr-info-2: #09d4;
    --clr-info-3: #4df;

    --clr-important: #60a;
    --clr-important-2: #60a4;
    --clr-important-3: #a4d;
    
    --clr-accent: #0fa6ff;
    --clr-accent-2: #0fa6ff88;

    scrollbar-color: var(--clr-dark-2) var(--clr-dark-1);
}

/* #region *//* Main */

body {
    color: var(--clr-light-3);
    font-family: sans-serif;

    accent-color: var(--clr-accent);
}
html {
    background-color: var(--clr-dark-0)
}
/* .logo {
    image-rendering: pixelated;
} */

.panel {
    background-color: var(--clr-dark-2);
    border-top: 1px var(--clr-dark-3) solid;
}

span#lastChanged {
    display: inline-block;
    margin-top: 8px;
    margin-bottom: 8px;
}

nav .tab {
    color: var(--clr-light-1);
}
nav .tab:hover {
    border-bottom: 1px var(--clr-accent-2) solid;
}
nav .tab.active {
    border-bottom: 1px var(--clr-accent) solid;
}

a, page-link {
    color: var(--clr-accent);
}

hr {
    border-top-color: var(--clr-dark-1);
    border-bottom-color: var(--clr-dark-3);
    border-style: solid;
    border-width: 1px;
    border-left: none;
    border-right: none;
}

*::selection {
    background-color: var(--clr-accent);
    color: black;
}

input {
    border-radius: 0px;
    border: var(--clr-dark-4) 1px solid;
    background-color: var(--clr-dark-3);
    font-family: sans-serif;
    padding: 4px;
    color: var(--clr-light-1);
}
input:focus {
    border-color: var(--clr-dark-6);
    outline: none;
}
button {
    border-radius: 0px;
    border: var(--clr-dark-4) 1px solid;
    background-color: var(--clr-dark-3);
    font-family: sans-serif;
    padding: 4px;
    color: var(--clr-dark-9);
    font-weight: bold;
    cursor: pointer;
}
button:hover {
    color: var(--clr-light-1);
}
#search {
    display: flex;
}
#search input {
    z-index: 20;
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
}
#search button {
    margin-left: -1px;
    z-index: 15;
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
}

footer {
    padding: 16px;
    border-top: 1px var(--clr-dark-3) solid !important;
    background-color: var(--clr-dark-2);
    outline: 1px var(--clr-dark-0) solid;
    border-radius: 2px;
}
.version {
    color: var(--clr-dark-6);
}

#mobileNav > #burger {
    filter: brightness(2.0);
}

/* #region *//* Markdown */

blockquote {
    border: 1px var(--clr-dark-3) solid;
    border-left: 4px var(--clr-dark-3) solid;
    border-top: 1px var(--clr-dark-4) solid;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 8px;
    margin-left: 0px;
    background-color: var(--clr-dark-2);
    color: var(--clr-text-e);
    outline: 1px var(--clr-dark-0) solid;
    border-radius: 2px;
}
blockquote.error {
    border-color: var(--clr-error);
    border-top-color: var(--clr-error-3);
    background-color: var(--clr-error-2);
    color: var(--clr-text-f)
}
blockquote.error *::selection {
    background-color: var(--clr-error);
}
blockquote.warning {
    border-color: var(--clr-warning);
    background-color: var(--clr-warning-2);
    border-top-color: var(--clr-warning-3);
    color: var(--clr-text-f)
}
blockquote.warning *::selection {
    background-color: var(--clr-warning);
}
blockquote.info {
    border-color: var(--clr-info);
    background-color: var(--clr-info-2);
    border-top-color: var(--clr-info-3);
}
blockquote.info *::selection {
    background-color: var(--clr-info);
}
blockquote.important {
    border-color: var(--clr-important);
    border-top-color: var(--clr-important-3);
    background-color: var(--clr-important-2);
}
blockquote.important *::selection {
    background-color: var(--clr-important);
}

table th {
    border: 1px var(--clr-dark-3) solid;
    padding: 8px;
    background-color: var(--clr-dark-2);
}
table td {
    border: 1px var(--clr-dark-2) solid;
    padding: 8px;
}
table {
    border-collapse: collapse;
    margin: 16px;
    outline: 1px var(--clr-dark-0) solid;
}

code {
    background-color: var(--clr-dark-0);
    border-radius: 2px;
    padding: 2px 4px;
}
pre:has(code) {
    background-color: var(--clr-dark-0);
    padding: 8px;
    border-radius: 2px;
    outline: 1px var(--clr-dark-0) solid;
}
pre:has(code) code {
    padding: 0px;
    border-radius: 0px;
}

pre {
    white-space: normal;
}

/* #region */ /* Mobile */

@media only screen and (max-width: 800px) {
    #sidebar {
        border-right: 1px var(--clr-dark-0) solid;
    }
    #search:not(:has(input:placeholder-shown)) {
        position: fixed;
        top: 0px;
        left: 0px;
        padding: 32px;
        background-color: var(--clr-dark-2);
        width: calc(100% - 64px);
        border-bottom: 1px var(--clr-dark-0) solid;
    }
    #search:not(:has(input:placeholder-shown)) > input {
        border-radius: 0px;
        border-top-left-radius: 2px;
        border-top-right-radius: 2px;
    }
    #search:not(:has(input:placeholder-shown)) > button {
        margin: 0px;
        margin-top: -1px;
        height: 48px;
        border-radius: 0px;
        border-bottom-left-radius: 2px;
        border-bottom-right-radius: 2px;
    }
}

/* #region */ /* Custom */

main, nav {
    background-color: var(--clr-dark-1) !important;
    border-top-color: var(--clr-dark-2) !important;
}
main hr, nav hr {
    border-top-color: var(--clr-dark-0);
    border-bottom-color: var(--clr-dark-2);
}