body {
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
}
header .container-fluid, header section > * {
    max-width: 1500px;
    margin: auto;
}
header section {
    padding: 1rem 0;
}
header section {
    background-color: #0060ad;
    background: linear-gradient(to bottom, #0060ad, #00497b);
    color: #ffffff;
}
header section > * {
    padding: 0 1.5rem;
}
header section > :not(:first-child) {
    margin-top: 0.3rem;
}
header .navbar-brand {
    padding: 0.5rem;
}
header nav img {
    max-width: 100px;
}
header nav i {
    font-size: 1.5rem;
}
header nav a {
    cursor: pointer;
}
header ul.dropdown-menu li.dropdown-item:hover {
    color: inherit;
    background: inherit;
}
h1 {
    font-size: 2rem;
}
main {
    flex: 1;
    margin: 2rem 0;
}
#listTabs {
    border-bottom: unset;
}
html.dark #listTabs.nav-tabs .nav-link.active {
    background-color: #1e1e1e;
    border-bottom: 1px solid #1e1e1e;
}
html.light #listTabs.nav-tabs .nav-link.active {
    background-color: #d4d5d9;
    border-bottom: 1px solid #d4d5d9;
}
main > .tab-content, main > p.tab-content-info {
    max-width: 2000px;
    width: 100%;
    margin: auto;
    padding: 2rem;
    border-radius: 1rem;
    border: 1px solid;
}
html.dark main > .tab-content, html.dark main > p.tab-content-info {
    background-color: #1e1e1e;
    border-color: #495057;
}
html.light main > .tab-content, html.light main > p.tab-content-info {
    background-color: #d4d5d9;
    border-color: #dee2e6;
}
html.light #dealerTable {
    background-color: #ffffff;
}
.dt-layout-row {
    margin-top: 0;
}
table.table {
    overflow-wrap: anywhere;
}
table.table th, table.table td {
    vertical-align: middle;
}
.form-check.form-switch {
    font-size: 1.8rem;
}
div.table-window h3 {
    position: sticky;
    left: 0;
}
#compareTables {
    padding: 0;
}
#compareTables h3 {
    padding: 1rem;
    padding-bottom: 0;
    font-size: 1.8rem;
}
#compareTables table td {
    height: 55px;
}
html.dark #compareTables .table-active {
    box-shadow: inset 0 0 0 9999px #cccccc;
    color: #000000;
}
html.light #compareTables .table-active {
    box-shadow: inset 0 0 0 9999px #343a40;
    color: #ffffff;
}
#compareTableStage tr > *:last-child {
    position: sticky;
    right: 0;
}
#dealerListContent .pending-update > td {
    color: #939393;
    box-shadow: inset 0 0 0 9999px rgb(255 255 255 / 15%);
}
.form-required {
    color: red;
}
footer {
    padding: 2rem;
}
html.dark footer {
    background-color: #2b3035;
}
html.light footer {
    background-color: #f8f9fa;
}