/*
    Copyright (c) 2007-2027 Slooce Technology, Inc.
*/

/*
   Elements
*/
body {
    background: rgba(38, 140, 152, 1);
    color: white;
}
div.body {
    padding-bottom: 40px;
}

/*
   Filepond
*/
.filepond {
    margin-bottom: 0 !important; /* Remove the extra space after disabling credits */
}
.filepond--note {
    margin-top: .4em;
    font-size: .6em !important;
    color: var(--bs-secondary-color)
}
.filepond--drop-label {
    align-items: self-start !important;
    overflow: auto;
}

/*
   Bootstrap Overrides
*/
.navbar .nav-link {
    font-size: 13px;
    --bs-nav-link-font-weight: 600;
    --bs-nav-link-hover-color: var(--bs-link-hover-color);
    --bs-navbar-nav-link-padding-x: 40px;
}
.navbar .nav-link.active {
    --bs-nav-link-font-weight: bold;
}
.navbar .nav-link.active:hover {
    color: var(--bs-link-hover-color);
}
.navbar .nav-link .btn-sm {
    text-transform: uppercase;
    --bs-btn-border-radius: 0rem;
    --bs-btn-padding-y: 0rem;
    --bs-btn-padding-x: 0.75rem;
    --bs-btn-font-size: 0.75rem;
    --bs-btn-font-weight: bold;
}
.input-group ::placeholder /* Chrome, Firefox, Opera, Safari 10.1+ */
{
    color: var(--bs-gray-400);
}
.input-group :-ms-input-placeholder /* Internet Explorer 10-11 */
{
    color: var(--bs-gray-400);
}
.input-group ::-ms-input-placeholder /* Microsoft Edge */
{
    color: var(--bs-gray-400);
}

/*
   Bootstrap Extensions
*/
.dropdown-item {
    --bs-dropdown-link-hover-bg: var(--bs-secondary-bg);
    cursor: default;
}
.border-bottom-blue-2px {
    border-bottom: 2px solid #377EF7;
}
.border-gray-2px {
    border: 2px solid #CCCCCC;
}
.list-style-none {
    list-style: none;
}
.mh-max-content {
    max-height: max-content !important;
}
.resize-none {
    resize: none;
}
.modal-content {
    color: #000;
}
.text-pre-wrap {
    white-space: pre-wrap;
}
.vh-fit-tab-footer {
    height: calc(100vh - 68px - 32px) !important;
    /* 68px for the tab and 32px for the footer */
}
.vh-fit-title-footer {
    height: calc(100vh - 54px - 32px) !important;
    /* 54px for the title and 32px for the footer */
}
.max-vh-fit-title-footer {
    max-height: calc(100vh - 54px - 32px) !important;
    /* 54px for the title and 32px for the footer */
}
.fs-1em {
    font-size: 1em !important;
}
.h-200px {
    height: 200px !important;
}
.h-230px {
    height: 230px !important;
}
.h-400px {
    height: 400px !important;
}
.h-100 {
    height: 100%;
}
.min-w-150px {
    min-width: 150px !important;
}
.min-w-250px {
    min-width: 250px !important;
}
.w-150px {
    width: 150px !important;
}
.w-200px {
    width: 200px !important;
}
.w-250px {
    width: 250px !important;
}
.w-90 {
    width: 90%;
}
.on-top {
    z-index: 1062 !important;
    background-color: rgba(var(--bs-body-color-rgb), 0.15) !important
}
.overflow-scroll.scrollbar::-webkit-scrollbar {
    width: 7px;
    height: 7px;
}
.overflow-scroll.scrollbar::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(0, 0, 0, .5);
}
@media (min-width: 768px) {
    .vh-md-fit-nav-title-footer {
        height: calc(100vh - 105px - 54px - 32px) !important;
        /* 105px for the navbar, 54px for the title, and 32px for the footer */
    }
    .vh-md-fit-nav-table-tab-filters-footer {
        height: calc(100vh - 105px - 68px - 32px - 32px - 48px - 13px) !important;
        /* 105px for the navbar, 68px for the tab, and 32px for the footer */
        /* Also, 32px for the table title, 48px for the table filters, and 13px for the table footer */
    }
    .vh-md-fit-nav-table-title-filters-footer {
        height: calc(100vh - 105px - 54px - 32px - 32px - 48px - 13px) !important;
        /* 105px for the navbar, 54px for the title, and 32px for the footer */
        /* Also, 32px for the table title, 48px for the table filters, and 13px for the table footer */
    }
    .vh-md-fit-nav-title-status-footer {
        height: calc(100vh - 105px - 54px - 32px - 24px) !important;
        /* 105px for the navbar, 54px for the title, and 32px for the footer */
        /* Also, 24px for the status msg */
    }
    .vh-md-fit-nav-table-title-footer {
        height: calc(100vh - 105px - 54px - 32px - 32px - 14px) !important;
        /* 105px for the navbar, 54px for the title, and 32px for the footer */
        /* Also, 32px for the table title, and 14px for the table footer */
    }
    .vh-md-fit-nav-table-title-status-footer {
        height: calc(100vh - 105px - 54px - 32px - 24px - 32px - 14px) !important;
        /* 105px for the navbar, 54px for the title, and 32px for the footer */
        /* Also, 24px for the status msg */
        /* Also, 32px for the table title, and 14px for the table footer */
    }
    .vh-md-fit-nav-table-tabs-status-footer {
        height: calc(100vh - 105px - 68px - 32px - 24px - 32px - 14px) !important;
        /* 105px for the navbar, 68px for the tabs, and 32px for the footer */
        /* Also, 24px for the status msg */
        /* Also, 32px for the table title, and 14px for the table footer */
    }
    .vh-md-fit-nav-table-title-status-footer-half {
        height: calc(100vh/2 - 105px/2 - 54px/2 - 32px/2 - 24px/2 - 32px - 14px) !important;
        /* 105px for the navbar, 54px for the title, and 32px for the footer */
        /* Also, 24px for the status msg */
        /* Also, 32px for the table title, and 14px for the table footer */
    }
    .vh-md-fit-modal-title-footer-refresh {
        height: calc(100vh - 62px - 69px - 56px - 48px - 52px) !important;
        /* 62px for the modal title, 69px for the modal footer, 56px for the modal y margins, 48px modal body padding */
        /* Also, 52px for the refresh row */
    }
    .max-vh-md-fit-modal-title-footer {
        max-height: calc(100vh - 62px - 69px - 56px - 4px) !important;
        /* 62px for the modal title, 69px for the modal footer, 56px for the modal y margins, 4px to avoid scrolling the modal */
    }
    .w-md-50 {
        width: 50% !important;
    }
    .w-md-auto {
        width: auto !important;
    }
    .w-md-220px {
        width: 220px !important;
    }
}

/*
    Animations
*/
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

.fade-in-5s {
    animation: fadeIn 5s forwards;
    opacity: 0;
}

/*
    Components
 */
.groups-scroll-container {
    max-height: 400px;
    overflow-y: auto;
}
