:root {
    color-scheme: light dark;
    --cl1: light-dark(#F5F5F5, #333);
    --cl2: light-dark(#000, #DDD);
    --clComment: light-dark(#AA0, #FF0);
    --clError: light-dark(#C00, #F55);
    --clErrorBackground: light-dark(#FBB, #644);
    --clGreenHighlight: light-dark(#090, #4C4);
    --clBlueHighlight: light-dark(#07B, #8CF);
    --clYellowHighlight: light-dark(#880, #CC0);
    --clGrayed: light-dark(#EEE, #3A3A3A);
    --chart-grid: light-dark(#000, #fff);
    --chart-bg: light-dark(#fff, #333);
    --chart-0: light-dark(#070, #AFA);
    --chart-1: light-dark(#077, #AFF);
    --chart-2: light-dark(#007, #AAF);
    --chart-3: light-dark(#700, #FAA);
    --chart-4: light-dark(#740, #FFA);
    --chart-5: light-dark(#404, #FAF);
}

body {
    background: var(--cl1);
    color: var(--cl2);
    font-size: 12px;
    font-family: "JetBrains Mono", Inconsolata, monospace;
    margin-bottom: 200px;
}

a {
    color: light-dark(#00F, #99F);
    &:visited {
        color: light-dark(#60F, #B9F);
    }
}

.processing-on * {
    cursor: progress !important;
}

.page {
    margin-left: 150px;
}

nav {
    position: absolute;
    top: 5px;
    left: 5px;
    font-size: 14px;
    li {
        display: block;
        margin-top: 3px;
    }
    ul {
        padding: 0;
        margin: 0;
        list-style-type: none;
        ul {
            padding: 0 0 0 15px;
        }
    }
    a {
        text-decoration: none;
        &:hover {
            text-decoration: underline;
            cursor: pointer;
        }
    }
}

input[type=button],
input[type=submit],
button {
    border-radius: 7px;
    background: light-dark(hsl(from var(--cl1) h s 100%), hsl(from var(--cl1) h s calc(l + 3)));
    border: 1px light-dark(hsl(from var(--cl1) h s 100%), hsl(from var(--cl1) h s calc(l + 12))) solid;
    @media (prefers-color-scheme: light) {
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    }
    margin: 0 6px 2px 3px;
    &:enabled {
        &:hover {
            background: light-dark(hsl(from var(--cl1) h s 96%), hsl(from var(--cl1) h s calc(l + 10)));
            cursor: pointer;
        }
        &:active {
            background: light-dark(hsl(from var(--cl1) h s 90%), hsl(from var(--cl1) h s calc(l + 15)));
            /*transform: translate(1px, 1px);*/
        }
    }
}

input {
    border: 1px var(--cl1) solid;
    outline: none;
    margin: 0 3px;
    color: var(--cl2);
    &:invalid {
        border-color: var(--clError);
    }
    &[type=number] {
        text-align: right;
    }
}

select {
    color: var(--cl2);
    outline: none;
    margin: 0 3px;
}

.error-overlay {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--clErrorBackground);
    color: var(--clError);
    padding: 10px;
    border-radius: 10px;
    border: 1px solid hsl(from var(--clError) h s l / 20%);
    box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.1);
}

.error {
    color: var(--clError);
    background: var(--clErrorBackground);
}

.c {
    text-align: center;
}

.l {
    text-align: left;
}

.r {
    text-align: right;
}

.v {
    vertical-align: middle !important;
}

.subset {
    margin-left: 50px;
}

.list-item {
    margin: 5px 0;
}

table.content-table {
    border-collapse: collapse;
    thead > tr > th {
        padding: 0 2px;
    }
    tbody {
        > tr {
            &:hover > td {
                background: linear-gradient(light-dark(#F3F3F3, #474747), light-dark(#E8E8E8, #3B3B3B));
            }
            > td {
                background: linear-gradient(light-dark(#F3F3F3, #4A4A4A), light-dark(#E8E8E8, #404040));
                padding: 0 2px;
                border-left: 1px light-dark(#F3F3F3, #4A4A4A) solid;
                white-space: nowrap;
                vertical-align: top;
            }
        }
    }
}

.layout-table {
    border-collapse: collapse;
    > tbody > tr > td {
        padding: 0;
        margin: 0;
        vertical-align: top;
    }
    > thead > tr > th {
        padding: 0;
        margin: 0;
    }
}

.chart {
    font-size: 8px;
    text {

    }
}

.chart-grid-0 {
    stroke: var(--chart-grid);
    fill: var(--chart-bg);
    opacity: 0.05;
}

.chart-grid-1 {
    stroke: var(--chart-grid);
    fill: var(--chart-bg);
    opacity: 0.07;
}

.chart-grid-2 {
    stroke: var(--chart-grid);
    fill: var(--chart-bg);
    opacity: 0.3;
}

.chart-grid-3 {
    stroke: var(--chart-grid);
    fill: var(--chart-bg);
    opacity: 0.4;
}

.chart-label-0 {
    fill: var(--chart-grid);
    stroke: none;
    text-anchor: end;
    opacity: 0.2;
}

.chart-label-1 {
    fill: var(--chart-grid);
    stroke: none;
    text-anchor: end;
    opacity: 0.4;
}

.chart-label-2 {
    fill: var(--chart-grid);
    stroke: none;
    text-anchor: end;
    opacity: 0.6;
}

.chart-label-3 {
    fill: var(--chart-grid);
    stroke: none;
    text-anchor: end;
    opacity: 0.8;
}

.chart-label-4 {
    fill: var(--chart-grid);
    stroke: none;
    text-anchor: end;
    opacity: 1.0;
}

.chart-legend {
    cursor: pointer;
    opacity: 0.5;
}

.chart-0 {
    stroke: var(--chart-0);
    /*fill: var(--chart-0);*/
    opacity: 0.4;
}

.chart-1 {
    stroke: var(--chart-1);
    /*fill: var(--chart-1);*/
    opacity: 0.4;
}

.chart-2 {
    stroke: var(--chart-2);
    /*fill: var(--chart-2);*/
    opacity: 0.4;
}

.chart-3 {
    stroke: var(--chart-3);
    /*fill: var(--chart-3);*/
    opacity: 0.4;
}

.chart-4 {
    stroke: var(--chart-4);
    /*fill: var(--chart-3);*/
    opacity: 0.5;
}

.chart-5 {
    stroke: var(--chart-5);
    /*fill: var(--chart-3);*/
    opacity: 0.5;
}

.chart-focused {
    stroke-width: 2px;
    opacity: 0.7;
    font-weight: bold;
}

.chart-dis-focused {
    opacity: 0.1;
}


.userbox {
    font-size: 10px;
}