tr.row-disabled > td > a,
tr.row-disabled > td > span,
tr.row-disabled > td > div,
tr.row-disabled > td > i.bi,
tr.row-disabled > td span.badge {
    pointer-events: none;
    cursor: default;
    opacity: 0.3;
    user-select: none;
}

tr td:first-child {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

tr td:last-child {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

td.key {
    width: 1px;
    white-space: nowrap;
}

/*
.table-borderless thead tr:last-child {
    border-bottom-width: 1px;
}
*/

.highlighting .comment {
    color: #5ad35a;
}

.card-header,
.navbar,
.breadcrumb {
    user-select: none;
}

[data-bs-theme="dark"] body {
    background-color: #212529;
}

.field-validation-error {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
    font-size: 0.9em;
}

.validation-group span.field-validation-error {
    display: block;
}

.flex-grow-2 {
    flex-grow: 2 !important;
}

.flex-grow-3 {
    flex-grow: 3 !important;
}

.fs-7 {
    font-size: 0.875em !important;
}

.table-stats td:first-child {
    width: 1px;
    white-space: nowrap;
    padding-right: 1rem;
}

.form-text {
    font-style: italic;
}

.modal-scrollable .modal-content {
    max-height: 75vh;
}

.modal-scrollable .modal-body {
    overflow-y: auto;
}

.cm-editor-wrapper {
    min-height: 45vh;
}

.validation-summary-errors ul {
    padding-left: 1rem;
    margin-bottom: 0;
}

.form-signin {
    max-width: 450px;
    padding: 1rem;
}

.form-signin input.username {
    margin-bottom: -1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.form-signin input.password {
    margin-bottom: 10px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.flex-1 {
    flex: 1 1 0 !important;
}

#log {
    font-size: 0.9em;
}

#log > div {
    display: flex;
    gap: 0.5rem;
}

#log > div .msg {
    white-space: pre-wrap;
    overflow-wrap: break-word;
    flex-shrink: 1;
    min-width: 0;
}