html {
  position: relative;
  min-height: 100%;
}

body > main {
  padding-top: 60px;
  padding-bottom: 60px;
}

body > main.headerless {
  padding-top: 15px;
}

body > main.footerless {
  padding-bottom: 15px;
}

.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 40px;
  line-height: 40px;
  background-color: var(--bs-tertiary-bg);
}

table.table thead th.sorting
{
    position: relative;
    padding-left:1em;
}

table.table thead th.sorting a
{
    text-decoration: none;
    color: var(--bs-emphasis-color);
}

table.table thead th.sorting span
{
    position: absolute;
    left: 0;
    font-size: 75%;
    color: var(--bs-secondary-color);
}

table.table thead th.sorting span.fa-angle-up
{
    top: 0.5em;
}

table.table thead th.sorting span.fa-angle-down
{
    top: 1em;
}

table.table thead th.sorting_asc span.fa-angle-up,
table.table thead th.sorting_desc span.fa-angle-down
{
    color: var(--bs-emphasis-color);
}

div.tab-sub-actions {
    position: absolute;
    top: 0;
    right: 0;
    margin: 1.0rem;
    padding: 0.3rem;
}

div.tab-sub-actions a {
    background-color: var(--bs-body-bg);
}

ul.checkbox-tree, ul.checkbox-tree ul {
    list-style: none;
}

ul.checkbox-tree ul.useless-node {
    opacity: 0.4;
}

/* Navbar content contrast, independent of the global color mode (dropdowns keep the global theme) */
.navbar.spipu-navbar-on-dark {
    --bs-navbar-color: rgba(var(--bs-white-rgb), 0.55);
    --bs-navbar-hover-color: rgba(var(--bs-white-rgb), 0.75);
    --bs-navbar-disabled-color: rgba(var(--bs-white-rgb), 0.25);
    --bs-navbar-active-color: var(--bs-white);
    --bs-navbar-brand-color: var(--bs-white);
    --bs-navbar-brand-hover-color: var(--bs-white);
    --bs-navbar-toggler-border-color: rgba(var(--bs-white-rgb), 0.1);
}

.navbar.spipu-navbar-on-light {
    --bs-navbar-color: rgba(var(--bs-black-rgb), 0.65);
    --bs-navbar-hover-color: rgba(var(--bs-black-rgb), 0.8);
    --bs-navbar-disabled-color: rgba(var(--bs-black-rgb), 0.3);
    --bs-navbar-active-color: var(--bs-black);
    --bs-navbar-brand-color: var(--bs-black);
    --bs-navbar-brand-hover-color: var(--bs-black);
    --bs-navbar-toggler-border-color: rgba(var(--bs-black-rgb), 0.15);
}

.bg-menu-app{background-color:#0e5881}.slim-select{border:none;padding:0;margin:0}div.tab-sub-actions{position:absolute;top:0;right:0;margin:1.25rem;padding:.3rem}div.tab-sub-actions a{background-color:#fff}#menu-navbar>.navbar-nav{flex-grow:1}#menu-navbar .nav-item:has(>.menu-end) .dropdown-menu{right:0;left:auto}@media(min-width: 768px){#menu-navbar .nav-item:has(>.menu-end){margin-left:auto}#menu-navbar .nav-item:has(>.menu-end)~.nav-item:has(>.menu-end){margin-left:0}}@media(max-width: 767.98px){#menu-navbar .nav-item:has(>.menu-end){margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(var(--bs-white-rgb), 0.25)}#menu-navbar .nav-item:has(>.menu-end)~.nav-item:has(>.menu-end){margin-top:0;padding-top:0;border-top:0}}
