:root {
    --background: #d7cfb8;
    --th-background: #bfb595;
    --header-background: #ece5d1;
    --text: #333;
    --th-text: #111;
    --link: #13507C;
    --faint: #978a63;
    --faint-bg: #bfb595;
    --color-accent: #716b0e;
    --logo-border: #8887;
    --shadow: 0px 0px 20px 0px #0001;
}
@media (prefers-color-scheme: dark) {
    :root {
        --background: #182429;
        --th-background: #2a3e46;
        --header-background: #263940;
        --text: #aaa;
        --th-text: #ddd;
        --link: #94BCD9;
        --faint: #849593;
        --faint-bg: #3b5159;
        --color-accent: #1dd9be;
        --logo-border: #aaa7;
        --shadow: none;
    }
}

html, body {
    overflow-x: hidden;
    background: var(--background);
    color: var(--text);
    font-family: sans-serif;
}

#header {
    background: var(--header-background);
    width: 100%;
    box-shadow: var(--shadow);
}

#footer {
    text-align: center;
    background: var(--header-background);
    width: 100%;
    margin-top: 35px;
    box-shadow: var(--shadow);
}

#main-table {
    width: 100%
}

.title {
    font-size: 2.5em;
}

.subtitle {
    font-size: 1.5em;
    font-style: italic;
    color: var(--faint);
    text-transform: lowercase;
}

thead {
    background: var(--th-background);
    color: var(--th-text);
    padding: 0px;
    border-spacing: 0px;
    margin: 0px;
}

table {
    border-spacing: 0px;
}

#table-wrap {
    overflow-x: auto;
}

.valuecolumn {
    width: 150px;
}

.valuecell {
    text-align: right;
}

.type-selector-wrap {
    white-space: nowrap;
}

th, td {
    padding: 2px;
    border-width: 0 0 1px 0;
    border-style: solid;
    border-color: var(--th-background);
}

tr {
    border-width: 0 1px 0 0;
    border-style: solid;
}

.subtext {
    font-size: 0.7em;
}

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

.content {
    padding: 0 15px 0 15px;
}

#header-content {
    position: relative;
    text-align: center;
    width: 90%;
}

.slogan-wrap {
    position: relative;
    padding: 15px 15px;
    text-align: right;
}

#logo {
    /* width: 120px; */
    border: 2px solid var(--logo-border);
    border-radius: 5px;
    width: 100%;
}

#header-inner-wrap {
    display: flex;
    align-content: center;
    margin: 27px 0 7px 0;
}

#header-content-wrap {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.sortbutton {
    background: none;
    border: none;
    color: var(--th-text);
    font-weight: bold;
}
