/*html {
    font-size: 14px;
}


@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
}

aside {
    width: 250px;
    max-width: 250px;
    min-width: 125px;
    background-color: black;
    text-transform: uppercase;
}

footer {
    background: #202020;
    height: 40px;
    text-align: center;
}

    footer * {
        padding: 5px;
    }

body {
    background-color: #303030;
    color: white
}

header {
    height: 80px;
    background: #303030;
    box-shadow: 0px 1px 10px black;
    position: sticky;
    width: 100%;
}


    header .user-controls {
        align-self: center;
    }

body:has(.progress-screen) > *:not(.progress-screen) {
    filter: blur(5px) contrast(50%) brightness(50%);
    transition: filter .4s;
}

.progress-screen:not(.visible) {
    display: none;
    transition: display .4s;
}

body:has(.progress-screen:not(.visible)) > *:not(.progress-screen) {
    filter: none;
    transition: filter .4s;
}

.nav-section .list-group-item {
    min-height: 35px;
}

.nav-section .list-group-item {
    background-color: black;
    margin: 0px 0px 0px 0px
}


.nav-section .list-group-item:hover {
    background-color: white;
    color: black;
    cursor: pointer;
}

.nav-section .list-group-item:hover * {
    color: black;
    transition: color .4s;
}

.nav-section .title {
    margin: 10px 0px 0px 0px;
    padding: 10px 15px;
}

.nav-section .list-group-item:first-child {
    border-top: 1px solid white;
}

.nav-section .list-group-item:last-child {
    border-bottom: 1px solid #495057 !important;
}

.nav-section .list-group-item .username {
    padding: 5px 5px 5px 15px;
}

.nav-section .list-group-item.selected {
    background-color: white;
    color: black
}

main {
    align-items: center;
}

main > * {
    width: 100%
}

#confirmdialog {
    background: white;
    border: 0px;
}

dialog::backdrop {
    backdrop-filter: blur(5px) brightness(.3);
}

header a {
    color: white;
    text-decoration: none;
}

header a:hover {
    opacity: .5;

}

a.disabled {
    color: #696969 !important;
    pointer-events: none;
}*/



header * {
    position: sticky;
}


html {
    height: 100%;
}

.base-container {
    display: grid;
    grid-template-columns: 1fr minmax(300px, 1480px) 1fr;
    grid-template-rows: 80px 1fr 40px;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    max-width: 100%;
    max-width: 100%;
}

.base-item-header-layout {
    background: #303030;
    grid-row: 1;
    grid-column-start: 1;
    grid-column-end: 4;
    position: sticky;
    box-shadow: 0px 1px 10px black;
}

.base-item-layout {
    background: #303030;
    grid-row: 2;
    grid-column-start: 1;
    grid-column-end: 4;
}

.base-item-main {
    grid-row: 2;
    grid-column-start: 2;
    grid-column-end: 3;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    max-width: 100%;
    max-width: 100%;
}

.base-item-footer-layout {
    background: #202020;
    grid-row: 3;
    grid-column-start: 1;
    grid-column-end: 4;
}

.base-item-main {
    display: grid;
    grid-template-columns: minmax(200px, 250px) 1fr;
}

.main-sidebar {
    grid-column-start: 1;
    grid-column-end: 2;
    background: black;
    overflow: auto;
}

.main-viewport {
    grid-column-start: 2;
    grid-column-end: 3;
    background: #303030;
    overflow: auto;
}

.main-viewport > * {

    padding: 15px;
}

.base-item-header {
    grid-row: 1;
    grid-column-start: 2;
    grid-column-end: 3;
}

.base-item-footer {
    grid-row: 3;
    grid-column-start: 2;
    grid-column-end: 3;
    margin: 0px 10px;
    line-height: 40px;
}


.nav-section .list-group-item {
    min-height: 35px;

}

.nav-section .list-group-item {
    background-color: black;
    margin: 0px 0px 0px 0px
}


    .nav-section .list-group-item:hover {
        background-color: white;
        color: black;
        cursor: pointer;
    }

        .nav-section .list-group-item:hover * {
            color: black;
            transition: color .4s;
        }

.nav-section .title {
    margin: 10px 0px 0px 0px;
    padding: 10px 15px;
}

.nav-section .list-group-item:first-child {
    border-top: 1px solid white;
}

.nav-section .list-group-item:last-child {
    border-bottom: 1px solid #495057 !important;
}

.nav-section .list-group-item .username {
    padding: 5px 5px 5px 15px;
}

.nav-section .list-group-item.selected {
    background-color: white;
    color: black
}

aside {
    position: sticky;
    height: 100% !important;
}

    aside * {
        text-transform: uppercase;
    }

header a {
    color: white;
    text-decoration: none;
}

    header a:hover {
        opacity: .5;
    }

a.disabled {
    color: #696969 !important;
    pointer-events: none;
}

#confirmdialog {
    background: white;
    border: 0px;
}

dialog::backdrop {
    backdrop-filter: blur(5px) brightness(.3);
}

.accordion-item {
    min-width: fit-content;
}