main {
    min-height: 85.9vH;
}

/* Let the shell fill the viewport so sidebar + main can share height on flex layouts */
.main-layout .main-with-sidebar {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}


.main-layout .main-with-sidebar > main {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}

.main-layout .main-with-sidebar main > .container-fluid {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.main-layout__content {
    flex: 1 1 auto;
    min-height: 0;
}

.maincontent {
    height: 100% !important;
    overflow: auto;
}
.prof_pic {    
    color: #fff;
    background-color: #212529;
    border-color: #212529;
}

:root {
    --bs-secondary-rgb: 108, 117, 125 !important;
}

@font-face {
    font-family: 'texgyreadventor-regular-webfont';
    src: url('_content/MainLayoutNuget/css/tex-gyre-adventor/texgyreadventor-regular-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'texgyreadventor-italic-webfont';
    src: url('_content/MainLayoutNuget/css/tex-gyre-adventor/texgyreadventor-italic-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'texgyreadventor-bolditalic-webfont';
    src: url('_content/MainLayoutNuget/css/tex-gyre-adventor/texgyreadventor-bolditalic-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'texgyreadventor-bold-webfont';
    src: url('_content/MainLayoutNuget/css/tex-gyre-adventor/texgyreadventor-bold-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

html, body {
    /*font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;*/
    font-family: "Tex Gyre Adventor", sans-serif;
}
.dropdown-toggle::after {
    content:none !important;
}
    .btn-primary.disabled, .btn-primary:disabled {
    color: #fff;
    background-color: #895b2f;
    border-color: #895b2f;
}

.btn-check:active + .btn-primary, .btn-check:checked + .btn-primary, .btn-primary.active, .btn-primary:active, .show > .btn-primary.dropdown-toggle {
    color: #fff !important;
}

header {
    background-color: #007bff;
    color: white;
    padding: 10px;
}

/* Project nav at start of top bar: same height as logo */
.project-nav-header {
    height: 2.5rem;
    min-height: 2.5rem;
    display: inline-flex;
    align-items: center;
}

    .project-nav-header .dropdown-toggle {
        padding: 0.25rem 0.5rem;
        height: 100%;
        display: flex;
        align-items: center;
        color:#fff;
    }


/* Project nav dropdown (when host provides NavMenuContent): fit width to items, dark theme */
.project-nav-dropdown-menu {
    width: max-content;
    min-width: auto;
    /* Keep on screen: align from start of trigger so menu extends right; override Popper if needed */
    left: 0 !important;
    right: auto !important;
}

    /* Content inside dropdown: compact height, centered items, dark-theme links */
    .project-nav-dropdown-menu .project-nav-dropdown,
    .project-nav-dropdown-menu .nav-scrollable {
        padding: 0.25rem 0;
        height: auto !important;
        max-height: 80vh;
        overflow-y: auto;
    }

    .project-nav-dropdown-menu .nav-item {
        font-size: 0.9rem;
        padding-bottom: 0.25rem;
    }

    .project-nav-dropdown-menu .nav-item:first-of-type {
        padding-top: 0;
    }

    .project-nav-dropdown-menu .nav-item:last-of-type {
        padding-bottom: 0;
    }

    .project-nav-dropdown-menu .nav-item a {
        color: rgba(255, 255, 255, 0.9);
        padding: 0.35rem 1rem;
        height: auto;
        line-height: 1.5;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        border-radius: 4px;
        text-decoration: none;
    }

    .project-nav-dropdown-menu .nav-item a:hover {
        background-color: rgba(255, 255, 255, 0.1);
        color: #fff;
    }

    .project-nav-dropdown-menu .nav-item a.active {
        background-color: rgba(255, 255, 255, 0.15);
        color: #fff;
    }

.user-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3rem;
    height: 3rem;
    background-color: #c9c9c9;
    color: white;
    border-radius: 50%;
    font-size: 27px;
    padding-bottom: 1px;
}

.nav-link {
    cursor: pointer;
    font-size: 1rem;
    color: #fff;
}

.navbar-brand {
    cursor: pointer;
}

.main-layout {
    background-image: url('/_content/MainLayoutNuget/images/background.jpg');
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    /*font-family: Arial, sans-serif;*/
    background-color: #f8f9fa;
}


footer {
    color: white;
    margin-top: 10px;
    text-align: center;
    height: 5vh;
}

/* Site title in nav: flow layout on small screens; flex center on large (see MainLayout.razor) */
.web_heading.web_heading--responsive {
    position: static;
    left: auto !important;
    top: auto !important;
    transform: none;
    color: rgb(207, 209, 210);
    line-height: 1.25;
    word-break: break-word;
}

@media (min-width: 992px) {
    .web_heading.web_heading--responsive {
        font-size: clamp(1rem, 1.5vw, 1.35rem);
    }
}

@media (min-width: 992px) {
    .navbar-brand {
        max-width: min(20rem, 28vw);
    }
}

@media (min-width: 1200px) {
    .navbar-brand {
        max-width: min(22rem, 26vw);
    }
}

/* Logo scales down on phones */
.main-layout__brand-img {
    max-height: 2rem;
    width: auto;
}

@media (min-width: 576px) {
    .main-layout__brand-img {
        max-height: 2.35rem;
    }
}

@media (min-width: 992px) {
    .main-layout__brand-img {
        max-height: 2.75rem;
    }
}

/* Collapsed mobile nav: scroll if toolbar is tall */
@media (max-width: 991.98px) {
    .main-layout__nav-collapse {
        max-height: calc(100dvh - 4.25rem);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .main-layout__toolbar .nav-link {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
}

/* Header department field: full width in stacked nav; fixed cap on large screens */
.header-dept-field {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

@media (min-width: 992px) {
    .header-dept-field {
        max-width: 14rem;
        min-width: 12rem;
        width: auto;
    }
}
