main {
    >*+* {
        margin-top: 1rem;
    }

    >header {
        display: flex;
        justify-content: space-between;
        border-bottom: 1px solid var(--border);
        padding-bottom: .5rem;
    }
}

#last-updated,
#sys-field-uptime,
#fetch-ttfb {
    font-variant-numeric: tabular-nums;
}

.system-info {
    flex-direction: row;
    gap: 1rem 4rem;
    flex-wrap: wrap;
}

mandala-utilization-charts {
    font-family: var(--sd-mono);
    font-weight: 450;
    font-feature-settings: "ss04"; /* WARN: specific IBM Plex Mono, remove if changing font family  */
    display: flex;
    flex-direction: column;
    row-gap: 0.75rem;
    overflow-x: auto;
    line-height: 1.25;
    padding: 1rem 0;
    border-top: 1px dashed var(--text-muted);
    border-bottom: 1px dashed var(--text-muted);

    >.row {
        display: grid;
        grid-template-columns: 4ch minmax(4ch, 1fr) 4ch 16ch;
        column-gap: 1rem;
    }

    .percent,
    .detail {
        text-align: right;
    }
}

mandala-utilization-chart {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;
    outline: 1px solid var(--text-strong);
    border: 3px solid var(--bg-raised);
    background: var(--bg-sunken);
}

mandala-utilization-chart-bar {
    display: flex;
    flex-direction: row;
    background: var(--text);
    width: var(--w);
    height: 100%;
}

.charts-container {
    overflow-x: scroll;
    padding-bottom: 1rem;
    border-bottom: 1px dashed var(--text-muted);

    h4 {
        margin-bottom: .125rem;
        margin-top: .5rem;
    }
}

mandala-cpu-chart,
mandala-net-chart {
    --chart-height: 8rem;
    --overlay-color: color-mix(in srgb, var(--sd-primary) 60%, transparent);
    --overlay-hovered-color: color-mix(in srgb, var(--sd-info) 70%, transparent);

    display: block;
    overflow-y: hidden;
    position: relative;
    min-width: 320px;

    .bars {
        display: flex;
        flex-direction: row;
        justify-content: flex-end;
        align-items: flex-end;
        height: var(--chart-height);
        margin: 1px;
        outline: 1px solid var(--text-strong);
        border: 3px solid var(--bg-raised);
        background: var(--bg-sunken);
        overflow: hidden;

        >div {
            flex: 0 0 4px;
            width: 4px;
            background: var(--text);
        }

        >div:hover {
            background: var(--sd-info);
        }
    }

    .chart-overlay {
        position: absolute;
        font-family: var(--sd-mono);
        font-feature-settings: "ss04"; /* WARN: specific IBM Plex Mono, remove if changing font family  */
        font-size: 0.875rem;
        font-weight: 600;
        text-align: right;
        padding: 0 .5rem;
        color: var(--text-invert);
        background: var(--overlay-color);
        pointer-events: none;

        &.top {
            top: 4px;
        }

        &.bottom {
            bottom: 4px;
        }

        &.left {
            left: 4px;
        }

        &.right {
            right: 4px;
        }

        .current,
        .total,
        .peak {
            display: inline-block;
            width: 10ch;
        }

        .peak {
            width: 11ch;
        }

        &.info {
            background: var(--overlay-hovered-color);
        }
    }
}