.navbar {
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    height: 100px;
}

.navbar-brand {
    font-weight: 600;
    color: #2c3e50 !important;
}

.navbar .nav-link{
    transition: all 0.2s;
}

.navbar .nav-link:hover,
.navbar .nav-link.active{
    color: rgb(26, 97, 211);
    transform: translateY(-2px);
    box-shadow: 0 2px 0 rgb(26, 97, 211);
} 
main, .content-wrapper {
    flex: 1;
}
.navbar-brand span {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.5px;
    color: #333;
    margin-left: 12px;
    vertical-align: middle;
}
.navbar-brand {
    display: flex;
    align-items: center;
    height: auto;
    width: auto;
    text-decoration: none;
}


.navbar-logo {
    height: 50px !important;
    width: auto !important;
    margin-right: 10px;
    object-fit: contain;
}

/* Inventory and staff data views */
.purchase-order-status.status-in-progress {
    background-color: #fd7e14;
    color: #fff;
}

.purchase-order-status.status-received {
    background-color: #198754;
    color: #fff;
}

.purchase-order-status.status-closed {
    background-color: #dc3545;
    color: #fff;
}

.purchase-order-status.status-default {
    background-color: #0d6efd;
    color: #fff;
}
:root {
    --siyacare-blue: #2788ad;
    --siyacare-blue-dark: #1f708f;
    --siyacare-red: #c21845;
    --siyacare-red-dark: #9f1239;
}

.btn-ambulance {
    color: #fff;
    background-color: #6f42c1;
    border-color: #6f42c1;
}

.btn-ambulance:hover,
.btn-ambulance:focus-visible {
    color: #fff;
    background-color: #59359a;
    border-color: #59359a;
}

.stock-page,
.staff-page {
    max-width: 1320px;
}

.stock-card,
.staff-card {
    border: 1px solid #dfe3e8;
    border-radius: .65rem;
    overflow: hidden;
    box-shadow: 0 .18rem .55rem rgba(25, 39, 52, .08) !important;
}

.stock-card .card-header,
.staff-card .card-header {
    min-height: 3.2rem;
    padding: .75rem 1rem;
    background: #f8fafc;
    border-bottom: 1px solid #dfe3e8;
}

.stock-card .card-header h5,
.staff-card .card-header h5 {
    font-weight: 600;
    color: #1f2937;
}

.siyacare-blue-card {
    border-top: 3px solid var(--siyacare-blue);
}

.siyacare-red-card {
    border-top: 3px solid var(--siyacare-red);
}

.siyacare-blue-card > .card-header {
    color: var(--siyacare-blue-dark);
    background: #eef8fc;
}

.siyacare-blue-card > .card-header h5,
.siyacare-blue-card > .card-header strong {
    color: var(--siyacare-blue-dark);
}

.siyacare-red-card > .card-header {
    color: var(--siyacare-red-dark);
    background: #fff1f4;
}

.siyacare-red-card > .card-header h5,
.siyacare-red-card > .card-header strong {
    color: var(--siyacare-red-dark);
}

.siyacare-table thead th {
    color: #172033;
    background-color: #fff;
    border-bottom: 2px solid #d9dee5;
}

.siyacare-red-card .siyacare-table thead th {
    color: #172033;
    background-color: #fff;
    border-bottom-color: #d9dee5;
}

.siyacare-table tbody tr:hover > * {
    background-color: #eaf6fb;
}

.siyacare-red-card .siyacare-table tbody tr:hover > * {
    background-color: #fff0f3;
}

.stock-table,
.staff-table {
    table-layout: fixed;
}

.stock-table thead,
.staff-table thead {
    background: #fff;
    border-bottom: 2px solid #dfe3e8;
}

.stock-table th,
.staff-table th {
    padding: .8rem .75rem;
    color: #344054;
    font-size: .88rem;
    font-weight: 700;
    vertical-align: middle;
    white-space: nowrap;
}

.stock-table td,
.staff-table td {
    padding: .72rem .75rem;
    vertical-align: middle;
}

.stock-table tbody tr:last-child td,
.staff-table tbody tr:last-child td {
    border-bottom: 0;
}

.total-stock-table .col-name { width: 18%; }
.total-stock-table .col-description { width: 22%; }
.total-stock-table .col-expiry { width: 12%; }
.total-stock-table .col-units { width: 8%; }
.total-stock-table .col-price { width: 21%; }
.total-stock-table .col-actions { width: 19%; }

.location-stock-table col:nth-child(1) { width: 14%; }
.location-stock-table col:nth-child(2) { width: 16%; }
.location-stock-table col:nth-child(3) { width: 22%; }
.location-stock-table col:nth-child(4) { width: 18%; }
.location-stock-table col:nth-child(5) { width: 18%; }
.location-stock-table col:nth-child(6) { width: 12%; }

.online-staff-table th:nth-child(1) { width: 8%; }
.online-staff-table th:nth-child(2) { width: 11%; }
.online-staff-table th:nth-child(3) { width: 16%; }
.online-staff-table th:nth-child(4) { width: 18%; }
.online-staff-table th:nth-child(5) { width: 22%; }
.online-staff-table th:nth-child(6) { width: 12%; }
.online-staff-table th:nth-child(7) { width: 13%; }

.access-log-table th:nth-child(1) { width: 11%; }
.access-log-table th:nth-child(2) { width: 14%; }
.access-log-table th:nth-child(3) { width: 17%; }
.access-log-table th:nth-child(4) { width: 26%; }
.access-log-table th:nth-child(5) { width: 18%; }
.access-log-table th:nth-child(6) { width: 14%; }

.online-staff-table td:last-child,
.access-log-table td:first-child {
    white-space: nowrap;
}

.price-input-group {
    width: 100%;
    min-width: 205px;
    max-width: 230px;
    flex-wrap: nowrap;
}

.total-stock-table {
    min-width: 1400px;
}

.total-stock-table .price-column {
    min-width: 220px;
    width: 220px;
}

.price-input-group .price-value-input {
    min-width: 90px;
    width: 90px;
    flex: 1 1 90px;
}

.total-stock-table td:last-child .d-flex {
    flex-wrap: nowrap;
}

.stock-table .badge,
.staff-table .badge {
    min-width: 1.7rem;
    padding: .38em .65em;
}

.base-stock-card {
    border-top: 3px solid var(--siyacare-blue);
}

.ambulance-stock-card {
    border-top: 3px solid var(--siyacare-red);
}

.base-stock-card .card-header h5 {
    color: var(--siyacare-blue-dark);
}

.ambulance-stock-card .card-header h5 {
    color: var(--siyacare-red-dark);
}

.brand-base-badge {
    color: #fff;
    background-color: var(--siyacare-blue);
}

.stock-summary-link {
    display: block;
    padding: 0.5rem;
    color: inherit;
    text-decoration: none;
    border-radius: 0.5rem;
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.stock-summary-link:hover,
.stock-summary-link:focus-visible {
    color: #0d6efd;
    background-color: #eef5ff;
    transform: translateY(-2px);
    outline: none;
}

.stock-summary-link small {
    color: #0d6efd;
}

.siyacare-summary-grid > div > * {
    min-height: 7.5rem;
    padding: 1rem;
    border: 1px solid #e1e6ec;
    border-radius: 0.55rem;
}

.summary-base {
    background-color: #eef8fc;
    border-top: 3px solid var(--siyacare-blue) !important;
}

.summary-ambulance {
    background-color: #fff1f4;
    border-top: 3px solid var(--siyacare-red) !important;
}

.summary-ambulance:hover,
.summary-ambulance:focus-visible {
    color: var(--siyacare-red-dark);
    background-color: #ffe5eb;
}

.summary-ambulance small {
    color: var(--siyacare-red-dark);
}

.stock-summary-total {
    background: linear-gradient(135deg, #eef8fc 0 50%, #fff1f4 50% 100%);
    border-top: 3px solid var(--siyacare-blue) !important;
}

.stock-jump-target {
    scroll-margin-top: 1rem;
}

.brand-ambulance-badge {
    color: #fff;
    background-color: var(--siyacare-red);
}

/* Manager dashboard */
.dashboard-page {
    max-width: 1320px;
}

.dashboard-page .row.g-3 {
    --bs-gutter-x: 1.25rem;
    --bs-gutter-y: 1.25rem;
}

.dashboard-inventory-accordion .accordion-button {
    padding: 0.8rem 0.5rem;
    color: #172033;
    background-color: #fff;
    box-shadow: none;
}

.dashboard-inventory-accordion .accordion-button:not(.collapsed) {
    color: var(--siyacare-blue-dark);
    background-color: #eef8fc;
}

.dashboard-inventory-accordion .accordion-button::after {
    flex: 0 0 auto;
    margin-left: 1rem;
}

.dashboard-stock-total {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    font-variant-numeric: tabular-nums;
}

.dashboard-inventory-accordion .accordion-item {
    border-color: #d9dee5;
}

.dashboard-inventory-accordion .accordion-body {
    background-color: #fbfcfd;
}

.dashboard-card {
    border: 1px solid #dfe3e8;
    border-radius: .65rem;
    overflow: hidden;
    box-shadow: 0 .18rem .55rem rgba(25, 39, 52, .08) !important;
}

.dashboard-blue-card {
    border-top: 3px solid var(--siyacare-blue);
}

.dashboard-red-card {
    border-top: 3px solid var(--siyacare-red);
}

.dashboard-card .card-header {
    display: flex;
    align-items: center;
    min-height: 3.15rem;
    padding: .72rem 1rem;
    background: #f8fafc;
    border-bottom: 1px solid #dfe3e8;
}

.dashboard-card .card-header h5 {
    margin: 0;
    color: #1f2937;
    font-weight: 600;
}

.dashboard-blue-card > .card-header h5 {
    color: var(--siyacare-blue-dark);
}

.dashboard-red-card > .card-header h5 {
    color: var(--siyacare-red-dark);
}

.dashboard-card .card-body {
    padding: 1rem;
}

.dashboard-table {
    vertical-align: middle;
}

.dashboard-table thead {
    border-bottom: 2px solid #dfe3e8;
}

.dashboard-table th {
    padding: .68rem .4rem;
    color: #344054;
    font-size: .86rem;
    font-weight: 700;
    white-space: nowrap;
}

.dashboard-table td {
    padding: .62rem .4rem;
}

.dashboard-table tbody tr:last-child td {
    border-bottom: 0;
}

.dashboard-page .stock-page {
    max-width: none;
}

@media (max-width: 767.98px) {
    .dashboard-card .card-body {
        padding: .8rem;
    }

    .dashboard-table {
        min-width: 560px;
    }
}

/* Shared SiyaCare treatment for non-leave data tables */
.branded-tables .table-responsive {
    border-radius: .55rem;
}

.branded-tables table.table {
    margin-bottom: 0;
    vertical-align: middle;
    border-color: #dfe3e8;
}

.branded-tables table.table thead {
    background: #fff;
    border-top: 3px solid var(--siyacare-blue);
    border-bottom: 2px solid var(--siyacare-red);
}

.branded-tables table.table th {
    padding: .78rem .7rem;
    color: #344054;
    font-size: .88rem;
    font-weight: 700;
    vertical-align: middle;
    white-space: nowrap;
}

.branded-tables table.table td {
    padding: .7rem;
    vertical-align: middle;
}

.branded-tables table.table-striped > tbody > tr:nth-of-type(odd) > * {
    --bs-table-accent-bg: rgba(39, 136, 173, .045);
}

.branded-tables table.table-hover > tbody > tr:hover > * {
    --bs-table-accent-bg: rgba(194, 24, 69, .055);
}

.branded-tables .card:has(table.table) {
    border: 1px solid #dfe3e8;
    border-radius: .65rem;
    overflow: hidden;
    box-shadow: 0 .18rem .55rem rgba(25, 39, 52, .08) !important;
}

.branded-tables .card:has(table.table) > .card-header {
    min-height: 3.1rem;
    padding: .72rem 1rem;
    background: #f8fafc;
    border-bottom: 1px solid #dfe3e8;
}

.branded-tables .card:has(table.table) > .card-header h5 {
    margin-bottom: 0;
    color: var(--siyacare-blue-dark);
    font-weight: 600;
}

.branded-tables .archived-employees-header,
.branded-tables .card:has(table.table) > .archived-employees-header {
    background-color: #747d86;
}

.branded-tables .archived-employees-header h5,
.branded-tables .card:has(table.table) > .archived-employees-header h5 {
    color: #fff !important;
}

/* Staff */
.staff-online-card {
    border-top: 3px solid var(--siyacare-blue);
}

.staff-log-card {
    border-top: 3px solid var(--siyacare-red);
}

.staff-online-card .card-header h5 {
    color: var(--siyacare-blue-dark);
}

.staff-log-card .card-header h5 {
    color: var(--siyacare-red-dark);
}

.staff-online-badge,
.staff-login-badge {
    color: #fff;
    background-color: var(--siyacare-blue);
}

.staff-logout-badge {
    color: #fff;
    background-color: var(--siyacare-red);
}

.online-staff-table td:nth-child(6),
.access-log-table td:nth-child(5) {
    white-space: nowrap;
    font-size: .86rem;
}

/* Documents */
.documents-container {
    max-width: 1320px;
}

.documents-container > .row:first-child {
    margin-bottom: 1.1rem !important;
}

.documents-container > .row:first-child h3 {
    margin: 0;
    color: #1f2937;
    font-weight: 600;
}

.document-card {
    border: 1px solid #dfe3e8;
    border-radius: .65rem;
    overflow: hidden;
    box-shadow: 0 .18rem .55rem rgba(25, 39, 52, .08);
}

.document-blue-card {
    border-top: 3px solid var(--siyacare-blue);
}

.document-red-card {
    border-top: 3px solid var(--siyacare-red);
}

.document-card > .card-header {
    min-height: 3.25rem;
    padding: .72rem 1rem;
    background: #f8fafc;
    border-bottom: 1px solid #dfe3e8;
    font-weight: 600;
}

.document-blue-card > .card-header {
    color: var(--siyacare-blue-dark);
}

.document-red-card > .card-header {
    color: var(--siyacare-red-dark);
}

.document-card .card-body {
    padding: 1rem;
}

.document-empty-state {
    padding: 1rem;
    color: #52606d;
    background: rgba(39, 136, 173, .08);
    border: 1px solid rgba(39, 136, 173, .2);
    border-radius: .45rem;
}

.document-red-card .document-empty-state {
    background: rgba(194, 24, 69, .06);
    border-color: rgba(194, 24, 69, .18);
}

.documents-page .btn-primary {
    background-color: var(--siyacare-blue);
    border-color: var(--siyacare-blue);
}

.documents-page .btn-primary:hover {
    background-color: var(--siyacare-blue-dark);
    border-color: var(--siyacare-blue-dark);
}

.employee-compliance-message {
    padding: 1rem;
    color: var(--siyacare-blue-dark);
    background: rgba(39, 136, 173, .09);
    border: 1px solid rgba(39, 136, 173, .24);
    border-left: 4px solid var(--siyacare-blue);
    border-radius: .5rem;
}

/* Employee dashboard */
.employee-dashboard-page {
    max-width: 1320px;
}

.employee-dashboard-card {
    height: 100%;
    border: 1px solid #dfe3e8;
    border-radius: .65rem;
    overflow: hidden;
    box-shadow: 0 .18rem .55rem rgba(25, 39, 52, .08) !important;
}

.employee-dashboard-blue,
.leave-balance-card {
    border-top: 3px solid var(--siyacare-blue);
}

.employee-dashboard-red {
    border-top: 3px solid var(--siyacare-red);
}

.employee-dashboard-card > .card-header {
    display: flex;
    align-items: center;
    min-height: 3.15rem;
    padding: .72rem 1rem;
    background: #f8fafc;
    border-bottom: 1px solid #dfe3e8;
}

.employee-dashboard-card > .card-header h5 {
    margin: 0;
    color: #1f2937;
    font-weight: 600;
}

.employee-dashboard-blue > .card-header h5,
.leave-balance-card > .card-header h5 {
    color: var(--siyacare-blue-dark);
}

.employee-dashboard-red > .card-header h5 {
    color: var(--siyacare-red-dark);
}

.leave-balance-card .card-body {
    display: flex;
    align-items: center;
    min-height: 5.5rem;
    padding: 1rem;
}

.leave-balance-card .card-body > .row {
    width: 100%;
    margin: 0;
}

.leave-balance-card .col-4 + .col-4 {
    border-left: 1px solid #e2e7ec;
}

.leave-balance-card .fs-4 {
    color: var(--siyacare-blue-dark);
}

/* Facial verification pilot */
.biometric-page {
    max-width: 1320px;
}

.biometric-card {
    overflow: hidden;
    border: 1px solid #dfe3e8;
    border-top: 3px solid var(--siyacare-blue);
    border-radius: .7rem;
}

.biometric-card > .card-header {
    padding: .8rem 1rem;
    color: var(--siyacare-blue-dark);
    background: #f8fafc;
}

.camera-frame {
    overflow: hidden;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #111827;
    border: 3px solid var(--siyacare-blue);
    border-radius: .65rem;
}

.camera-frame video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scaleX(-1);
}

@media (max-width: 767.98px) {
    .branded-tables .table-responsive table.table {
        min-width: 720px;
    }
}

@media (max-width: 991.98px) {
    .stock-table,
    .staff-table {
        table-layout: auto;
        min-width: 900px;
    }

    .stock-card .card-header,
    .staff-card .card-header {
        gap: .75rem;
        flex-wrap: wrap;
    }
}
.footer-link {
    transition: all 0.2s ease-in-out;
}

.footer-link:hover {
    color: #ffffff !important;
    padding-left: 5px;
    text-shadow: 0 0 5px rgba(255,255,255,0.2);
}
.footer-logo {
    height: 37px;
    width: auto;
    display: inline-block;
    vertical-align: middle;
    object-fit: contain;
}
.full-width-footer {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-top: 2vh !important;
    margin-left: -50vw;
}
body {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    overflow-x: hidden;
}
ul.robbon-nav{
    gap: 0 !important;
    padding-left: 20px;
}
.navbar{
    height: 80px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    background-color: transparent !important;
    z-index: 1000;
}
ul.ribbon-nav .nav-item{
    transform: skewX(-20deg);
    background-color: rgb(0, 94, 255);
    border-right: 5px solid rgb(0, 38, 255);
    border-top: none;
    border-bottom: none;
    margin-left: -4px;
    transition: all 0.2s ease;
    overflow: hidden;
    box-shadow: 0 4px 2px -2px rgba(0,0,0,0.2);
}

/* Dropdown menu itself should never be skewed */
ul.ribbon-nav .nav-item.dropdown .dropdown-menu{
    transform: none !important;
}

ul.ribbon-nav .nav-link{
    color: #333 !important;
    padding: 10px 20px !important;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.9rem;
    color: white !important;
}

ul.ribbon-nav .nav-link span{
    display: block;
    transform: skewX(20deg);
}

ul.ribbon-nav .nav-item:hover{
    background-color: rgb(0, 38, 255);
   
}

ul.ribbon-nav .nav-item:has(.nav-link.active){
    background-color: #e60000;
    z-index: 5;
    border: none;

}

ul.ribbon-nav .nav-link.active{
    background-color: transparent !important;
    color: white !important;
}

ul.ribbon-active .logout-btn{
    background: transparent;
    border: none;
    width: 100%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

ul.ribbon-nav .logout-item{
    background-color: #e60000;
    border-color: #b02a37;
    border: none;
}

ul.ribbon-nav .logout-item .nav-link{
    color: white !important;
}

ul.ribbon-nav .logout-item:hover{
    background-color: #b02a37;
}

.btn-outline-danger:hover {
    background-color: #dc3545;
    border-color: #dc3545;
}

.pdf-viewer {
    width: 100%;
    height: 100%;
    min-height: 800px;
}


@media (max-width: 725px) {
    ul.ribbon-nav{
        display: flex;
        flex-direction: column;
        gap: 0;
        padding-left: 0;
    }

    ul.ribbon-nav .nav-item{
        transform: none !important;
        margin-left: 0 !important;
        border-right: none !important;
        border-bottom: 1px solid rgba(0,0,0,0.06);
    }

    ul.ribbon-nav .nav-link{
        text-transform: none !important;
        padding: .5rem 1rem !important;
        font-weight: 500 !important;
        color: #333 !important;
    }

    ul.ribbon-nav .nav-link span{
        transform: none !important;
        display: inline !important;
    }


    .navbar-collapse .dropdown-menu{
        position: static !important;
        float: none !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        display: block !important;
        padding: 0 !important;
    }

    .navbar-collapse .dropdown-item{
        padding-left: 2rem !important;
        color: #333 !important;
        background: transparent !important;
    }

    ul.ribbon-nav .logout-item .logout-btn{
        width: 100% !important;
        text-align: left !important;
        padding-left: 1rem !important;
    }


    .navbar-brand{
        white-space: nowrap;
        font-size: 1.05rem;
        margin-right: .5rem;
    }

    .navbar-toggler{
        margin-left: auto;
    }
}
.sig-canvas {
    touch-action: none; /* Prevents the page from scrolling while signing on mobile */
    max-width: 100%;    /* Ensures it doesn't break layout on small screens */
}

@media (max-width: 991.98px) {
    .navbar-collapse{
        padding-top: .5rem;
        padding-bottom: .5rem;
    }

    .navbar-collapse .nav-item{
        background: #f8f9fa; 
        margin: .25rem 0;
        border-radius: .35rem;
        padding: 0;
    }

    .navbar-collapse .nav-link{
        padding: .65rem 1rem !important;
        color: #212529 !important;
    }

    .navbar{
        align-items: center;
    }

    .navbar-brand{
        display: inline-flex;
        align-items: center;
        flex: 0 0 auto;
    }

    .navbar-toggler{
        flex: 0 0 auto;
        margin-left: .5rem;
    }
}

ul.ribbon-nav .nav-item.dropdown{
    overflow: visible;
}

ul.ribbon-nav .nav-item .dropdown-menu{
    z-index: 1200; 
}

/* Navbar logo sizing */
.navbar-logo {
    width: 28px;
    height: 28px;
    object-fit: contain;
    margin-right: .5rem;
    vertical-align: middle;
}

/* Keep the role label and growing menu readable without wrapping button text. */
.portal-navbar {
    height: auto;
    min-height: 80px;
    padding: 12px 0;
    background: #fff !important;
}
.portal-navbar > .container-fluid {
    gap: 12px 24px;
}
.portal-navbar .navbar-brand {
    flex-shrink: 0;
    margin-right: 0;
}
.portal-navbar ul.ribbon-nav {
    align-items: stretch;
    padding: 0 10px;
    gap: 0;
}
.portal-navbar ul.ribbon-nav > .nav-item {
    flex: 0 0 auto;
}
.portal-navbar ul.ribbon-nav .nav-link {
    white-space: nowrap;
    padding: 12px 14px !important;
    font-size: .85rem;
    line-height: 1.5;
}
.portal-navbar ul.ribbon-nav .logout-btn {
    background: transparent;
    border: 0;
    width: 100%;
    font-family: inherit;
}
.portal-navbar ul.ribbon-nav .nav-link:hover,
.portal-navbar ul.ribbon-nav .nav-link.active {
    transform: none;
    box-shadow: none;
}
@media (min-width: 1400px) and (max-width: 1599.98px) {
    .portal-navbar > .container-fluid {
        gap: 12px;
        flex-wrap: nowrap;
    }
    .portal-navbar .navbar-brand span {
        font-size: 1rem;
        margin-left: 4px;
    }
    .portal-navbar .navbar-logo {
        height: 40px !important;
        margin-right: 4px;
    }
    .portal-navbar ul.ribbon-nav .nav-link {
        padding: 12px 10px !important;
        font-size: .8rem;
    }
}
@media (max-width: 1399.98px) {
    .portal-navbar {
        min-height: 72px;
    }
    .portal-navbar .navbar-brand {
        flex: 1 1 0;
        min-width: 0;
        white-space: normal;
    }
    .portal-navbar .navbar-brand span {
        font-size: 1rem;
        margin-left: 4px;
    }
    .portal-navbar .navbar-logo {
        height: 36px !important;
        max-width: 130px !important;
        margin-right: 4px;
    }
    .portal-navbar ul.ribbon-nav {
        padding: 0;
    }
    .portal-navbar ul.ribbon-nav > .nav-item {
        transform: none;
        margin: 2px 0;
        border: 0;
        box-shadow: none;
        background: #f1f5fb;
    }
    .portal-navbar ul.ribbon-nav .nav-link span {
        transform: none;
    }
    .portal-navbar ul.ribbon-nav .nav-link {
        color: #17324d !important;
    }
    .portal-navbar ul.ribbon-nav > .nav-item:has(.nav-link.active),
    .portal-navbar ul.ribbon-nav > .logout-item {
        background: #e60000;
    }
    .portal-navbar ul.ribbon-nav .nav-link.active,
    .portal-navbar ul.ribbon-nav .logout-btn {
        color: #fff !important;
    }
    .portal-navbar .navbar-collapse .dropdown-menu {
        display: none !important;
        position: static !important;
        background: #fff !important;
    }
    .portal-navbar .navbar-collapse .dropdown-menu.show {
        display: block !important;
    }
}

