:root {
    color-scheme: dark light;
}

body {
    font-family: sans-serif;
}

nav {
    background: var(--um-darkblue);
    color: white;
    padding: 0.5rem;
    a, a:visited {
        color: inherit;
        text-decoration: none;
    }
    > ul {
        display: flex;
        list-style-type: none;
        padding: 0;
        margin: 0;
        gap: 0.5rem;
    }
}

p {
    line-height: 1.25;
}

div#items {
    margin: 1rem 0;
    > * {
        margin: 1rem 0;
    }
}

div.cell {
    display: flex;
    flex-direction: column;
    &.non-owner {
        > .expr > .viewer {
            opacity: 0.5;
        }
        > .result {
            display: none;
        }
    }
}

div.editor {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    > textarea {
        height: 5rem;
    }
    > div {
    }
}

div.viewer {
    border: solid var(--um-lightblue) 1px;
    display: flex;

    > * {
        padding: 0.25rem;
    }

    > .binding {
        color: white;
        background: var(--um-orange);
        width: fit-content;
    }

    > .source {
        font-family: monospace;
        white-space: pre;
    }
}

table {
    /* border-spacing: 0.5rem 0.25rem; */
    border-spacing: 0;
    td, th {
        padding: 0.1rem 0.5rem;
        vertical-align: top;
        text-align: left;
    }
}

table.relation {
    margin-left: 1rem;
    td, th {
        text-align: right;
        white-space: nowrap;
    }
}
div.result, div.source {
    width: 100%;
    max-height: 20em;
    overflow: auto;
    /* resize: both; */
}

.js-string { color: black; background: hsl(120 100 97); white-space: pre-line; }
.js-number, .js-bigint {
    color: black;
    background: hsl(60 100 97);
    &.js-non-zero { background: hsl(60 100 90); }
}
.js-boolean {
    color: black;
    background: hsl(220 100 97);
    &.js-true { background: hsl(220 100 90); }
}
.js-object { color: black; background: hsl(300 100 97); }
.js-symbol { color: black; background: hsl(17 87 97); }

.editor.lang-csv:before { content: "(CSV)"; }
