:root {
    color: white;
    font-family: "Maple Mono", monospace;
    color-scheme: dark;
}

body {
    min-height: 100vh;
    margin: 0px;
    padding: 0px;
    background: rgb(8, 10, 17);
}

body.colorful {
    background: url("../assets/background.svg") center / cover fixed;
}

main {
    padding: 1cm;
}

table {
    border-collapse: collapse;
}

th {
    padding: 0.5em;
    background: rgba(255, 255, 255, 0.086);
    border: 2px solid rgb(59, 59, 59);
}

td {
    padding: 0.5em;
    border: 2px solid rgb(59, 59, 59);
}

.flex {
    display: flex;
}

.flex.row {
    flex-direction: row;
}

.flex.column {
    flex-direction: column;
}

.flex.center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.gap-1em {
    gap: 1em;
}

.grow {
    flex-grow: 1;
}

.center-text {
    text-align: center;
}

.italic {
    font-style: italic;
}

.status-light {
    display: inline-block;
    width: 2mm;
    height: 2mm;
    border: 2px solid rgb(136, 132, 129);
    background: rgb(104, 103, 103);
    border-radius: 50%;
}

.status-light.red {
    border: 2px solid rgb(182, 0, 0);
    background: rgb(226, 51, 51);
}

.status-light.yellow {
    border: 2px solid rgb(182, 173, 0);
    background: rgb(242, 223, 96);
}

.status-light.green {
    border: 2px solid rgb(0, 162, 44);
    background: rgb(51, 226, 98);
}

@font-face {
    font-family: "Maple Mono";
    font-style: normal;
    font-display: swap;
    font-weight: 400;
    src: url(https://cdn.jsdelivr.net/fontsource/fonts/maple-mono@latest/latin-400-normal.woff2) format('woff2'),
         url(https://cdn.jsdelivr.net/fontsource/fonts/maple-mono@latest/latin-400-normal.woff) format('woff');
}
