﻿.navbar-left {
    color: #0094ff !important;
}
.summary {
    height: 30px!important;
}
.navbar-center {
    color: #0094ff !important;
    font-weight: bold;
}

.navbar-right {
    color: #fe6a00 !important;
}
.wrapword {
    word-wrap: break-word; /* For older browsers and IE */
    word-break: break-all; /* For modern browsers and handling long strings without spaces */
}
#login a:hover {
    color: #fe6a00 !important;
    text-decoration: underline;
}

#login a {
    color: #fe6a00 !important;
    font-weight: bold;
}
.sign
.button {
    padding-top: 10px;
}
.img-thumbnail {
    padding: .25rem;
    background-color: #fff;
    border: none!important;
    /*border-radius: .25rem;*/
    max-width: 60%!important;
    height: auto;
    margin-left: auto;
    margin-right: auto;
}
.login {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    max-width: 512px;
    width: calc(100% - 40px);
    padding: 0px;
    border-radius: 10px;
    margin-bottom: 28px;
    margin-top: 5%;
    background-color: #fff;
    -webkit-box-shadow: 0 -12px 24px rgb(0 0 0 / 44%);
    -moz-box-shadow: 0 -12px 24px rgb(0 0 0 / 44%);
    box-shadow: 0 -12px 24px rgb(0 0 0 / 44%);
    min-width: 320px;
    min-height: 338px;
    overflow: initial;
}
.Pager span {
    color: #333;
    background-color: #F7F7F7;
    font-weight: bold;
    text-align: center;
    display: inline-block;
    width: 20px;
    margin-right: 3px;
    line-height: 150%;
    border: 1px solid #ccc;
}

.Pager a {
    text-align: center;
    display: inline-block;
    width: 20px;
    border: 1px solid #ccc;
    color: #fff;
    color: #333;
    margin-right: 3px;
    line-height: 150%;
    text-decoration: none;
}

.highlight {
    background-color: #FFFFAF;
}

.navbar-dark .navbar-nav .show > .nav-link, .navbar-dark .navbar-nav .active > .nav-link, .navbar-dark .navbar-nav .nav-link.show, .navbar-dark .navbar-nav .nav-link.active {
    color: #006db6 !important;
}

.navbar-dark .navbar-nav .nav-link {
    color: #006db6 !important;
}

.navbar .container {
    /*letter-spacing:2px;*/
    font-weight: bold;
    /*text-transform:uppercase;*/
    font-size: 14px;
}

    .navbar .container a {
        /*color: #FFFFFF !important;*/
        color: #006db6 !important;
    }

        .navbar .container a:hover {
            color: #F06600 !important;
            text-decoration: underline;
        }

    .navbar .container .active a:hover {
        color: #fe6a00 !important;
        text-decoration: underline;
    }

body {
    font-family: "Sans Serif", Aptos,Arial, Sans-Serif !important;
    /*background-color: #f3f3f3!important;*/
    background-color: #cdc4c433 !important;
    /*background-color: #04223b !important;*/
    font-size: 13px !important;
}

/*.ajax__tab_xp .ajax__tab_header {
    font-family: "Sans Serif", Aptos,Arial, Sans-Serif !important;
    font-size: 13px;
}*/
/*.nav-item {
    letter-spacing:2px;
}*/
.dropdown-menu {
    background-color: #0167A5 !important;
    opacity: 0.9;
    border-bottom: 1px dotted #fff !important;
    color: #fff !important;
}

.navbar .container .dropdown-menu .dropdown-item {
    color: #fff !important;
}

    .navbar .container .dropdown-menu .dropdown-item a:hover {
        color: #fe6a00 !important;
    }

.dropdown-item:hover, .dropdown-item:focus {
    background-color: transparent !important;
    color: #fe6a00 !important;
}

.btn-primary {
    background-color: #006db6 !important;
    color: #FFF;
}

.btn-outline-success:hover {
    color: #fff !important;
    background-color: #0167A5 !important;
    border-color: #0167A5 !important;
}
.carousel-item h5 {
    color: #011d89;
    font-size: 21px;
    font-style: normal;
    font-family:'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
}
.carousel-item p {
    color: #fe6a00;
    font-size: 21px;
    font-style: italic;
    font-family:'Times New Roman', Times, serif;
}
.btn-outline-success {
    color: #fff !important;
    background-color: #0167A5 !important;
    border-color: #006db6 !important;
}
.featured .content-wrapper {
    /* min-height: 360px; */
    box-shadow: 0 10px 30px rgb(0 0 0 / 10%);
    border-bottom: 1px solid #d9dbdd;
    border-radius: 0px 0px 10px 10px;
    background: #fff;
    color: #747a7f !important;
    background: linear-gradient(#fff,#6e737459) !important;
}
    .featured .content-wrapper h6 {
        color: #d4691d;
        font-size: 16px;
        font-style: normal;
        font-weight: 800;
        font-family: cursive;
    }

    .navbar-toggler {
        padding: 0.25rem 0.75rem;
        font-size: 1.25rem;
        line-height: 1;
        background-color: #fe6a00 !important;
        border: 1px solid transparent !important;
        border-radius: 0.25rem !important;
    }

.col-lg-12 {
    font-size: 12px !important;
}

.form-row label {
    font-weight: bold !important;
}

.form-group label {
    font-weight: bold !important;
}

footer {
    background-color: #f3f3f3 !important;
}

.featured {
    background-color: #f3f3f3 !important;
}

    .featured + .main-content {
        background-color: #ffffff !important;
        padding-right: 20px;
        padding-left: 20px;
        margin-top: 15px;
        margin-bottom: 20px;
    }

.closebar {
    float: right;
}
/*.ajax__tab_xp .ajax__tab_header{
    background-color:burlywood!important;
}*/

.componenthead {
    background-color: #08c;
    color: #FFF;
    height: 35px;
    padding-top: 8px;
    padding-left: 20px;
    text-transform: capitalize;
    font-size: 14px;
    font-weight: bold;
}
#systemIdentity {
    margin: 0;
    padding: 10px 42px;
    display: Block;
    text-align: right;
    top: 35px;
    left: 0;
    box-shadow: 0 0 2px rgba(255,255,255,.5);
    background: linear-gradient(#e3e3e3, #e3e3e3) !important;
    background-image: linear-gradient(to right, #a1999930,#a1999930);
    color: #040a23;
    font-family: cursive;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    font-size: 20px;
}
.navbar.bg-dark {
    background-color: #0069aa !important;
    padding: 0px !important;
}
.navbar .container a {
    color: #FFFFFF !important;
}
#menuBar ul a {
    font-size: 14px !important;
}
    
    #menuBar ul {
    z-index: 1 !important;
    border-radius: 0px!important;
    background: linear-gradient(#12275a,#12275a) !important;
}
#MainContent_updatePanel2 {
    background-color: #F0F8FF !important;
    /*height: 80%;*/
    width: 80%;
    border-radius: 10px;
    border: #cdcdcd 1px solid;
    position: absolute !important;
    z-index: 10002 !important;
    /*left: 20% !important;*/
    top: 20% !important;
    padding: 20px;
    margin: 20px;
}

.modalBackground {
    height: 100%;
    background-color: #808080;
    opacity: 0.9;
}

.panelAddAMOComponent {
    border: 2px solid #747a7f !important;
    margin: 10px;
    padding: 10px;
    border-radius: 3px;
}

.mb-3, .my-3 {
    margin-bottom: 1rem !important;
    top: auto !important;
    left: auto !important;
}

.chkDocChklst {
    margin: 3px !important;
    
}
 .chkDocChklst input[type="radio"], input[type="checkbox"] {
        margin: 3px !important;
        vertical-align:top;
    }
    .chkDocChklst label {
        font-weight: bold !important;
        width:90%;
    }
/* Modal popup*/


.modalBackground {
    background-color: Black;
    filter: alpha(opacity=60);
    opacity: 0.6;
}

.modalPopup {
    background-color: #FFFFFF;
    width: 80%;
    height:90%;
    border: 3px solid #0DA9D0;
    padding: 0;
    /*//scroll-behavior: auto;*/
    scroll-behavior: smooth;
    border-radius:10px;
}

    .modalPopup .header {
        background-color: #2FBDF1;
        height: 40px;
        color: White;
        line-height: 40px;
        text-align: center;
        font-weight: bold;
        z-index: 99999;
    }

    .modalPopup .body {
        min-height: 50px;
        line-height: 30px;
        text-align: center;
        font-weight: bold;
        margin: 10px;
        overflow-y: auto;
        display: block;
        max-height: 91%;
        width:97%;
    }
    .modalPopup button {
        float:right;
    }
 /*Handling Paging*/
/*.pagination {
    line-height: 26px;
}

    .pagination span {
        padding: 5px;
        border: solid 1px #477B0E;
        text-decoration: none;
        white-space: nowrap;
        background: #547B2A;
    }

    .pagination a,
    .pagination a:visited {
        text-decoration: none;
        padding: 6px;
        white-space: nowrap;
    }

        .pagination a:hover,
        .pagination a:active {
            padding: 5px;
            border: solid 1px #9ECDE7;
            text-decoration: none;
            white-space: nowrap;
            background: #486694;
        }
       
    .pagination td {
        border: 1px solid transparent !important;
    }

    .pagination span, .pagination a {
        display: flex !important;
        justify-content: center;
        align-items: center;
        height: 30px;
        width: 30px;
        padding: 10px;
        font-size: 12px;
        border-radius: 50px;
        text-decoration: none !important;
    }

    .pagination span {
        background: #C44569;
    }

    .pagination a,
    .pagination a:visited {
        color: #000;
    }

        .pagination a:hover,
        .pagination a:active {
            background-color: #C44569;
        } */

/*gridview*/
/*
.table table tbody tr td a,
.table table tbody tr td span {
    position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    color: #337ab7;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #ddd;
}

.table table > tbody > tr > td > span {
    z-index: 3;
    color: #fff;
    cursor: default;
    background-color: #337ab7;
    border-color: #337ab7;
}

.table table > tbody > tr > td:first-child > a,
.table table > tbody > tr > td:first-child > span {
    margin-left: 0;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}

.table table > tbody > tr > td:last-child > a,
.table table > tbody > tr > td:last-child > span {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

.table table > tbody > tr > td > a:hover,
.table table > tbody > tr > td > span:hover,
.table table > tbody > tr > td > a:focus,
.table table > tbody > tr > td > span:focus {
    z-index: 2;
    color: #23527c;
    background-color: #eee;
    border-color: #ddd;
}*/
/*end gridview */

.carousel-caption.d-none.d-md-block {
    background: linear-gradient(#fff,#000000) !important;
    border-radius:10px;
}
.col-md-2.mb-3 {
    vertical-align: bottom !important;
    padding-top: 33px;
}
tr.bg-success {
    background-color: #39a72842 !important;
}
.bg-secondary {
    background-color: #FFF !important;
    padding: 0px !important;
}
@media (min-width: 576px) {
    .container {
        max-width: 540px !important;
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 720px !important;
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 960px !important;
    }
}

@media (min-width: 1080px) {
    .container {
        max-width: 1920px !important;
    }
}
#menuBar ul ul {
    top: 0;
    left: 200px;
    background: linear-gradient(#ffffff,#c4d9f5) !important;
    background: linear-gradient(#12275a,#12275a) !important;
}

.navbar .container a:hover{
    color:#fe6a00!important;
}

@media (min-width: 1600px) {
    .container {
        max-width: 1920px !important;
    }
}

.navbar > .container, .navbar > .container-fluid {
    display: -ms-flexbox;
  /*  display: inline-block!important;*/
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

/*modal popup Extender*/
.modalBackground {
    background-color: Black;
    filter: alpha(opacity=90);
    opacity: 0.8;
}

.modalPopup {
    background-color: #FFFFFF;
    border-width: 3px;
    border-style: solid;
    border-color: black;
    padding-top: 10px;
    padding-left: 10px;
    width: 500px;
    height: 300px;
}

.card-header {
    padding: 0.75rem 1.25rem;
    margin-bottom: 0;
    background-color: #343a40!important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
    color:#FFF;
    font-weight:300;
}
.card {
    border-color: #343a40 !important;
}
a:link, a:visited, a:active, a:hover {
    /*color: #0a0553!important;*/
}
html {
    /*background-color: #FFF!important; */
     background-color: #cdc4c433 !important;
    margin: 0;
    padding: 0;
    height: auto !important;
}
.navbar .container {
    /*letter-spacing:2px;*/
    font-weight: bold;
    /*text-transform:uppercase;*/
    font-size: 14px;
    display: block !important;
}

    .navbar .container a {
        color: #FFFFFF !important;
    }

        .navbar .container a:hover {
            color: #fe6a00 !important;
            text-decoration: underline;
        }

    .navbar .container .active a:hover {
        color: #fe6a00 !important;
        text-decoration: underline;
    }

#systemFooterIdentity {
    margin: 0;
    padding: 10px 42px;
    display: Block;
    text-align: center;
    top: 35px;
    left: 0;
    box-shadow: 0 0 2px rgba(255,255,255,.5);
    background: linear-gradient(#e3e3e3, #e3e3e3) !important;
    background-image: linear-gradient(to right, #a1999930,#a1999930);
    font-style: normal;
    color: #040a23;
    font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    font-size: 20px;
}

/* ICAAS Bootstrap 5.3 theme conformance */
:root,
[data-bs-theme="light"] {
    --icaas-page-bg: #eef3f8;
    --icaas-surface-bg: #ffffff;
    --icaas-surface-alt: #f6f9fc;
    --icaas-border: #cbd6e2;
    --icaas-text: #172033;
    --icaas-muted: #5f6d7e;
    --icaas-primary: #006db6;
    --icaas-primary-strong: #004f86;
    --icaas-accent: #f06600;
    --icaas-topbar-bg: #ffffff;
    --icaas-topbar-text: #10223d;
    --icaas-menubar-bg: #075d94;
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #ffffff;
    --icaas-submenu-text: #172033;
    --icaas-submenu-muted: #5f6d7e;
    --icaas-submenu-border: #b9c9d9;
    --icaas-submenu-hover-bg: #e8f2fa;
    --icaas-submenu-hover-text: #004f86;
    --icaas-submenu-active-bg: #dbeaf6;
    --icaas-footer-bg: #e8eef5;
    --icaas-footer-text: #10223d;
    --icaas-shadow: 0 0.75rem 1.75rem rgba(18, 38, 63, 0.08);
}

[data-icaas-theme="auto"] {
    --icaas-page-bg: #eef3f8;
    --icaas-surface-bg: #ffffff;
    --icaas-surface-alt: #f6f9fc;
    --icaas-border: #cbd6e2;
    --icaas-text: #172033;
    --icaas-muted: #5f6d7e;
    --icaas-primary: #006db6;
    --icaas-primary-strong: #004f86;
    --icaas-accent: #f06600;
    --icaas-topbar-bg: #ffffff;
    --icaas-topbar-text: #10223d;
    --icaas-menubar-bg: #075d94;
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #ffffff;
    --icaas-submenu-text: #172033;
    --icaas-submenu-muted: #5f6d7e;
    --icaas-submenu-border: #b9c9d9;
    --icaas-submenu-hover-bg: #e8f2fa;
    --icaas-submenu-hover-text: #004f86;
    --icaas-submenu-active-bg: #dbeaf6;
    --icaas-footer-bg: #e8eef5;
    --icaas-footer-text: #10223d;
    --icaas-shadow: 0 0.75rem 1.75rem rgba(18, 38, 63, 0.08);
}

[data-icaas-theme="kcaa"] {
    --icaas-page-bg: #f3f6f9;
    --icaas-page-gradient: linear-gradient(135deg, #f8fafc 0%, #edf3f8 58%, #e5edf4 100%);
    --icaas-surface-bg: #ffffff;
    --icaas-surface-alt: #f5f8fb;
    --icaas-border: #c5d2de;
    --icaas-text: #162b3c;
    --icaas-muted: #5b6f80;
    --icaas-primary: #055cab;
    --icaas-primary-strong: #03477f;
    --icaas-accent: #e77d34;
    --icaas-topbar-bg: #ffffff;
    --icaas-topbar-text: #162b3c;
    --icaas-menubar-bg: #055cab;
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #ffffff;
    --icaas-submenu-text: #162b3c;
    --icaas-submenu-muted: #5b6f80;
    --icaas-submenu-border: #b9c9d7;
    --icaas-submenu-hover-bg: #eaf2f9;
    --icaas-submenu-hover-text: #03477f;
    --icaas-submenu-active-bg: #fff0e6;
    --icaas-footer-bg: #033f73;
    --icaas-footer-text: #ffffff;
    --icaas-shadow: 0 0.45rem 1.1rem rgba(5, 92, 171, 0.1);
}

[data-icaas-theme="superior"] {
    --icaas-page-bg: #f3f3f0;
    --icaas-page-gradient: linear-gradient(145deg, #fafaf8 0%, #f1f1ed 56%, #e9ece8 100%);
    --icaas-surface-bg: #ffffff;
    --icaas-surface-alt: #f6f6f3;
    --icaas-border: #d7d7d1;
    --icaas-text: #202123;
    --icaas-muted: #686868;
    --icaas-primary: #10a37f;
    --icaas-primary-strong: #087f63;
    --icaas-accent: #7a5af8;
    --icaas-topbar-bg: #ffffff;
    --icaas-topbar-text: #202123;
    --icaas-menubar-bg: #202123;
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #ffffff;
    --icaas-submenu-text: #202123;
    --icaas-submenu-muted: #686868;
    --icaas-submenu-border: #d7d7d1;
    --icaas-submenu-hover-bg: #e8f6f2;
    --icaas-submenu-hover-text: #087f63;
    --icaas-submenu-active-bg: #d8f0e9;
    --icaas-footer-bg: #202123;
    --icaas-footer-text: #f7f7f5;
    --icaas-shadow: 0 0.75rem 2rem rgba(32, 33, 35, 0.09);
}

[data-icaas-theme="ocean"] {
    --icaas-page-bg: #e8f5fb;
    --icaas-page-gradient: linear-gradient(135deg, #e8f5fb 0%, #d9eef8 48%, #cce6f4 100%);
    --icaas-surface-bg: #ffffff;
    --icaas-surface-alt: #edf8fc;
    --icaas-border: #b7d9e8;
    --icaas-text: #113143;
    --icaas-muted: #517181;
    --icaas-primary: #0277a6;
    --icaas-primary-strong: #005f86;
    --icaas-accent: #e9781d;
    --icaas-topbar-bg: #f8fdff;
    --icaas-topbar-text: #0b2f44;
    --icaas-menubar-bg: #005f86;
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #f8fdff;
    --icaas-submenu-text: #113143;
    --icaas-submenu-muted: #517181;
    --icaas-submenu-border: #9bcddd;
    --icaas-submenu-hover-bg: #dff3fa;
    --icaas-submenu-hover-text: #005f86;
    --icaas-submenu-active-bg: #ccebf5;
    --icaas-footer-bg: #d6edf7;
    --icaas-footer-text: #0b2f44;
    --icaas-shadow: 0 0.75rem 1.75rem rgba(2, 119, 166, 0.12);
}

[data-icaas-theme="forest"] {
    --icaas-page-bg: #edf7f1;
    --icaas-page-gradient: linear-gradient(135deg, #edf7f1 0%, #dcefe4 52%, #cfe7d9 100%);
    --icaas-surface-bg: #ffffff;
    --icaas-surface-alt: #f2faf5;
    --icaas-border: #b8d8c3;
    --icaas-text: #183225;
    --icaas-muted: #5c735f;
    --icaas-primary: #25744a;
    --icaas-primary-strong: #185836;
    --icaas-accent: #c96f20;
    --icaas-topbar-bg: #fbfffc;
    --icaas-topbar-text: #183225;
    --icaas-menubar-bg: #185836;
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #fbfffc;
    --icaas-submenu-text: #183225;
    --icaas-submenu-muted: #5c735f;
    --icaas-submenu-border: #a8cfb5;
    --icaas-submenu-hover-bg: #e2f3e8;
    --icaas-submenu-hover-text: #185836;
    --icaas-submenu-active-bg: #d2eadb;
    --icaas-footer-bg: #dcefe4;
    --icaas-footer-text: #183225;
    --icaas-shadow: 0 0.75rem 1.75rem rgba(37, 116, 74, 0.12);
}

[data-icaas-theme="royal"] {
    --icaas-page-bg: #f2f0fb;
    --icaas-page-gradient: linear-gradient(135deg, #f7f5ff 0%, #eae6fb 48%, #ded8f6 100%);
    --icaas-surface-bg: #ffffff;
    --icaas-surface-alt: #f7f4ff;
    --icaas-border: #cfc6ec;
    --icaas-text: #261f45;
    --icaas-muted: #6b6284;
    --icaas-primary: #5b45b1;
    --icaas-primary-strong: #443187;
    --icaas-accent: #c57a1c;
    --icaas-topbar-bg: #fffaff;
    --icaas-topbar-text: #261f45;
    --icaas-menubar-bg: #443187;
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #fffaff;
    --icaas-submenu-text: #261f45;
    --icaas-submenu-muted: #6b6284;
    --icaas-submenu-border: #bfb3e4;
    --icaas-submenu-hover-bg: #eee9fb;
    --icaas-submenu-hover-text: #443187;
    --icaas-submenu-active-bg: #e2daf7;
    --icaas-footer-bg: #e8e1f7;
    --icaas-footer-text: #261f45;
    --icaas-shadow: 0 0.75rem 1.75rem rgba(91, 69, 177, 0.13);
}

[data-icaas-theme="skyline"] {
    --icaas-page-bg: #eaf5fb;
    --icaas-page-gradient: linear-gradient(135deg, #f8fcff 0%, #e6f4fb 46%, #d7edf8 100%);
    --icaas-surface-bg: #ffffff;
    --icaas-surface-alt: #eef8fd;
    --icaas-border: #b7d7e8;
    --icaas-text: #10263a;
    --icaas-muted: #5a7080;
    --icaas-primary: #0077b6;
    --icaas-primary-strong: #004f86;
    --icaas-accent: #f47a1f;
    --icaas-topbar-bg: #ffffff;
    --icaas-topbar-text: #0c3d66;
    --icaas-menubar-bg: linear-gradient(90deg, #004f86 0%, #0077b6 60%, #0a8fc8 100%);
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #ffffff;
    --icaas-submenu-text: #10263a;
    --icaas-submenu-muted: #5a7080;
    --icaas-submenu-border: #a8ccde;
    --icaas-submenu-hover-bg: #e2f2fb;
    --icaas-submenu-hover-text: #004f86;
    --icaas-submenu-active-bg: #fff1e6;
    --icaas-footer-bg: #004f86;
    --icaas-footer-text: #ffffff;
    --icaas-shadow: 0 0.8rem 2rem rgba(0, 119, 182, 0.16);
}

[data-icaas-theme="executive"] {
    --icaas-page-bg: #f4f1ec;
    --icaas-page-gradient: linear-gradient(135deg, #fffdf8 0%, #f3eee4 52%, #e7dccb 100%);
    --icaas-surface-bg: #fffdfa;
    --icaas-surface-alt: #f8f2e8;
    --icaas-border: #d8c4a4;
    --icaas-text: #1c2535;
    --icaas-muted: #6f665b;
    --icaas-primary: #005b96;
    --icaas-primary-strong: #003d66;
    --icaas-accent: #d48822;
    --icaas-topbar-bg: #fffdfa;
    --icaas-topbar-text: #172033;
    --icaas-menubar-bg: linear-gradient(90deg, #003d66 0%, #005b96 70%, #d48822 100%);
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #fffdfa;
    --icaas-submenu-text: #1c2535;
    --icaas-submenu-muted: #6f665b;
    --icaas-submenu-border: #d8c4a4;
    --icaas-submenu-hover-bg: #f5ead8;
    --icaas-submenu-hover-text: #003d66;
    --icaas-submenu-active-bg: #e8f2fa;
    --icaas-footer-bg: #10263a;
    --icaas-footer-text: #fffdfa;
    --icaas-shadow: 0 0.9rem 2.25rem rgba(28, 37, 53, 0.14);
}

[data-icaas-theme="sunrise"] {
    --icaas-page-bg: #fff5ec;
    --icaas-page-gradient: linear-gradient(135deg, #fffaf4 0%, #ffe7d2 50%, #dff4f8 100%);
    --icaas-surface-bg: #ffffff;
    --icaas-surface-alt: #fff7ef;
    --icaas-border: #f0caa9;
    --icaas-text: #243044;
    --icaas-muted: #6e7480;
    --icaas-primary: #006db6;
    --icaas-primary-strong: #00518a;
    --icaas-accent: #f36f21;
    --icaas-topbar-bg: #ffffff;
    --icaas-topbar-text: #243044;
    --icaas-menubar-bg: linear-gradient(90deg, #00518a 0%, #006db6 55%, #f36f21 100%);
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #ffffff;
    --icaas-submenu-text: #243044;
    --icaas-submenu-muted: #6e7480;
    --icaas-submenu-border: #f0caa9;
    --icaas-submenu-hover-bg: #fff0e5;
    --icaas-submenu-hover-text: #b94c00;
    --icaas-submenu-active-bg: #e7f4fb;
    --icaas-footer-bg: #00518a;
    --icaas-footer-text: #ffffff;
    --icaas-shadow: 0 0.85rem 2rem rgba(243, 111, 33, 0.15);
}

[data-icaas-theme="midnight"] {
    --icaas-page-bg: #121820;
    --icaas-page-gradient: linear-gradient(135deg, #0d1117 0%, #18202b 52%, #232f3d 100%);
    --icaas-surface-bg: #18202b;
    --icaas-surface-alt: #202b38;
    --icaas-border: #3a4b5e;
    --icaas-text: #eef6ff;
    --icaas-muted: #b8c7d8;
    --icaas-primary: #67b7ff;
    --icaas-primary-strong: #2f8ed8;
    --icaas-accent: #ff9b45;
    --icaas-topbar-bg: #151c25;
    --icaas-topbar-text: #f5fbff;
    --icaas-menubar-bg: linear-gradient(90deg, #0b365b 0%, #105d8f 65%, #1f2937 100%);
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #18202b;
    --icaas-submenu-text: #eef6ff;
    --icaas-submenu-muted: #b8c7d8;
    --icaas-submenu-border: #3a4b5e;
    --icaas-submenu-hover-bg: #26364a;
    --icaas-submenu-hover-text: #ffffff;
    --icaas-submenu-active-bg: #2b425a;
    --icaas-footer-bg: #0d1117;
    --icaas-footer-text: #f5fbff;
    --icaas-shadow: 0 0.85rem 2rem rgba(0, 0, 0, 0.34);
}

[data-icaas-theme="contrast"] {
    --icaas-page-bg: #050505;
    --icaas-page-gradient: linear-gradient(135deg, #000000 0%, #111111 55%, #1c1c1c 100%);
    --icaas-surface-bg: #080808;
    --icaas-surface-alt: #161616;
    --icaas-border: #f5c542;
    --icaas-text: #ffffff;
    --icaas-muted: #f4e9b9;
    --icaas-primary: #f5c542;
    --icaas-primary-strong: #d99f00;
    --icaas-accent: #7dd3fc;
    --icaas-topbar-bg: #080808;
    --icaas-topbar-text: #ffffff;
    --icaas-menubar-bg: #000000;
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #080808;
    --icaas-submenu-text: #ffffff;
    --icaas-submenu-muted: #f4e9b9;
    --icaas-submenu-border: #f5c542;
    --icaas-submenu-hover-bg: #f5c542;
    --icaas-submenu-hover-text: #000000;
    --icaas-submenu-active-bg: #332b10;
    --icaas-footer-bg: #080808;
    --icaas-footer-text: #ffffff;
    --icaas-shadow: 0 0.75rem 1.75rem rgba(245, 197, 66, 0.18);
}

[data-bs-theme="dark"] {
    --icaas-page-bg: #171717;
    --icaas-page-gradient: linear-gradient(135deg, #101010 0%, #242424 48%, #303030 100%);
    --icaas-surface-bg: #202020;
    --icaas-surface-alt: #2b2b2b;
    --icaas-border: #454545;
    --icaas-text: #f1f5f9;
    --icaas-muted: #c7cbd1;
    --icaas-primary: #6bb6ff;
    --icaas-primary-strong: #3d83bd;
    --icaas-accent: #ffb15c;
    --icaas-topbar-bg: #1b1b1b;
    --icaas-topbar-text: #e5edf7;
    --icaas-menubar-bg: #181818;
    --icaas-menubar-text: #ffffff;
    --icaas-submenu-bg: #252525;
    --icaas-submenu-text: #f1f5f9;
    --icaas-submenu-muted: #c7cbd1;
    --icaas-submenu-border: #505050;
    --icaas-submenu-hover-bg: #363636;
    --icaas-submenu-hover-text: #8bc5ff;
    --icaas-submenu-active-bg: #303b45;
    --icaas-footer-bg: #181818;
    --icaas-footer-text: #d8e2ef;
    --icaas-shadow: 0 0.75rem 1.75rem rgba(0, 0, 0, 0.32);
}

html,
body {
    background: var(--icaas-page-gradient, var(--icaas-page-bg)) !important;
    background-attachment: fixed !important;
    color: var(--icaas-text) !important;
}

h1, h2, h3, h4, h5, h6,
label,
.form-group label,
.form-row label {
    color: var(--icaas-text) !important;
}

a,
a:link,
a:visited,
a:active {
    color: var(--icaas-primary) !important;
}

a:hover,
a:focus {
    color: var(--icaas-accent) !important;
}

.icaas-topbar,
.navbar.icaas-topbar {
    background: var(--icaas-topbar-bg) !important;
    border-bottom: 1px solid var(--icaas-border);
    box-shadow: var(--icaas-shadow);
    color: var(--icaas-topbar-text) !important;
    padding: 0 !important;
}

.icaas-topbar > .container,
.icaas-menubar > .container {
    align-items: center !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px;
    justify-content: space-between !important;
}

.navbar-left,
.navbar-center,
#login,
#login a,
.icaas-topbar .username {
    color: var(--icaas-topbar-text) !important;
}

#login a:hover {
    color: var(--icaas-accent) !important;
}

.img-thumbnail {
    background-color: color-mix(in srgb, var(--icaas-surface-bg) 88%, transparent) !important;
}

#systemIdentity {
    background: linear-gradient(135deg, var(--icaas-surface-alt), var(--icaas-surface-bg)) !important;
    border: 1px solid var(--icaas-border);
    box-shadow: none;
    color: var(--icaas-topbar-text) !important;
}

.theme-switcher .btn {
    min-width: 52px;
}

.theme-switcher .btn.active,
.theme-switcher .btn:hover,
.theme-switcher .btn:focus {
    background-color: var(--icaas-primary) !important;
    border-color: var(--icaas-primary) !important;
    color: #fff !important;
}

/* ICAAS control spacing polish for Bootstrap 5 + legacy Web Forms markup */
.form-group,
.form-row,
.mb-form {
    margin-bottom: 1rem !important;
}

.form-group > label,
.form-row label,
.form-label,
label[for] {
    display: inline-block;
    font-size: 0.88rem;
    font-weight: 700 !important;
    margin-bottom: 0.38rem;
}

.form-control,
.form-select,
select.form-control,
textarea.form-control,
input.form-control {
    min-height: 2.35rem;
    padding: 0.45rem 0.75rem !important;
}

textarea.form-control {
    min-height: 5.5rem;
}

.form-control-file,
input[type="file"] {
    display: block;
    margin-top: 0.25rem;
    width: 100%;
}

.card,
.modal-content {
    overflow: hidden;
}

.card-header {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    min-height: 3rem;
    padding: 0.85rem 1rem !important;
}

.card-body {
    padding: 1.15rem !important;
}

.modal-body {
    padding: 1.25rem !important;
}

.modal-footer {
    gap: 0.5rem;
    padding: 0.9rem 1.25rem !important;
}

.card-body > .btn,
.card-body > input.btn,
.card-body > a.btn,
.modal-footer > .btn,
.modal-footer > input.btn,
.modal-footer > a.btn {
    margin-bottom: 0.35rem;
    margin-right: 0.45rem;
}

.card-body > .btn:last-child,
.card-body > input.btn:last-child,
.card-body > a.btn:last-child,
.modal-footer > .btn:last-child,
.modal-footer > input.btn:last-child,
.modal-footer > a.btn:last-child {
    margin-right: 0;
}

.table {
    margin-bottom: 0 !important;
    vertical-align: middle;
}

.table > :not(caption) > * > * {
    padding: 0.65rem 0.75rem !important;
    vertical-align: middle;
}

.table-sm > :not(caption) > * > * {
    padding: 0.45rem 0.55rem !important;
}

.table .btn,
td .btn {
    margin: 0.12rem 0.16rem 0.12rem 0;
}

.table .btn:last-child,
td .btn:last-child {
    margin-right: 0;
}

.row {
    --bs-gutter-x: 1.25rem;
    --bs-gutter-y: 0.75rem;
}

.alert,
.pm-message {
    border-radius: 0.5rem;
    padding: 0.75rem 1rem !important;
}

@media (max-width: 768px) {
    .card-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .card-body,
    .modal-body {
        padding: 1rem !important;
    }

    .card-body > .btn,
    .card-body > input.btn,
    .card-body > a.btn {
        margin-right: 0.25rem;
        margin-top: 0.25rem;
    }

    .table-responsive,
    .card-body {
        overflow-x: auto;
    }
}

.theme-switcher-control {
    align-items: center;
    background: color-mix(in srgb, var(--icaas-surface-alt) 82%, transparent);
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 28%, var(--icaas-border));
    border-radius: 999px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22), 0 0.35rem 1rem rgba(15, 23, 42, 0.08);
    display: inline-flex;
    flex-wrap: wrap;
    gap: 3px;
    padding: 4px;
}

.theme-switcher-control .btn,
.theme-switcher-control .btn:link,
.theme-switcher-control .btn:visited,
.theme-switcher-control .btn:active {
    background: transparent !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: var(--icaas-muted) !important;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0;
    min-height: 30px;
    min-width: 58px;
    padding: 0.35rem 0.65rem !important;
    transition: background-color 160ms ease, color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.theme-switcher-control .btn:hover,
.theme-switcher-control .btn:focus {
    background: color-mix(in srgb, var(--icaas-primary) 12%, transparent) !important;
    color: var(--icaas-primary) !important;
    transform: translateY(-1px);
}

.theme-switcher-control .btn.active {
    background: linear-gradient(135deg, var(--icaas-primary-strong), var(--icaas-primary)) !important;
    box-shadow: 0 0.35rem 0.9rem color-mix(in srgb, var(--icaas-primary) 34%, transparent);
    color: #fff !important;
}

.icaas-menubar,
.navbar.icaas-menubar,
.navbar.bg-dark {
    background: linear-gradient(90deg, var(--icaas-menubar-bg), var(--icaas-primary-strong)) !important;
    border-bottom: 1px solid color-mix(in srgb, var(--icaas-menubar-text) 18%, transparent);
    box-shadow: 0 0.45rem 1rem color-mix(in srgb, var(--icaas-menubar-bg) 24%, transparent);
    color: var(--icaas-menubar-text) !important;
    padding: 0 !important;
    position: relative;
    z-index: 1030;
}

.icaas-menubar > .container {
    min-height: 3.35rem;
}

.icaas-menu-mobile-header {
    align-items: center;
    color: var(--icaas-menubar-text);
    display: none;
    justify-content: space-between;
    min-height: 3.35rem;
    width: 100%;
}

.icaas-menu-mobile-title {
    font-size: 0.95rem;
    font-weight: 700;
}

.icaas-menu-toggler,
.navbar .icaas-menu-toggler {
    align-items: center;
    background: color-mix(in srgb, var(--icaas-menubar-text) 12%, transparent) !important;
    border: 1px solid color-mix(in srgb, var(--icaas-menubar-text) 38%, transparent) !important;
    border-radius: 0.4rem !important;
    box-shadow: none !important;
    display: inline-flex;
    height: 2.45rem !important;
    justify-content: center;
    padding: 0.45rem 0.6rem !important;
    width: 2.75rem !important;
}

.icaas-menu-toggler:hover,
.icaas-menu-toggler:focus {
    background: color-mix(in srgb, var(--icaas-menubar-text) 22%, transparent) !important;
    border-color: var(--icaas-menubar-text) !important;
}

.icaas-menu-toggler:focus-visible {
    outline: 3px solid var(--icaas-accent);
    outline-offset: 2px;
}

.icaas-menu-toggler-icon {
    display: grid;
    gap: 4px;
    width: 1.25rem;
}

.icaas-menu-toggler-icon span {
    background: var(--icaas-menubar-text);
    border-radius: 2px;
    display: block;
    height: 2px;
    transition: opacity 160ms ease, transform 160ms ease;
    width: 100%;
}

.icaas-menu-toggler:not(.collapsed) .icaas-menu-toggler-icon span:first-child {
    transform: translateY(6px) rotate(45deg);
}

.icaas-menu-toggler:not(.collapsed) .icaas-menu-toggler-icon span:nth-child(2) {
    opacity: 0;
}

.icaas-menu-toggler:not(.collapsed) .icaas-menu-toggler-icon span:last-child {
    transform: translateY(-6px) rotate(-45deg);
}

.icaas-navigation-collapse,
.icaas-navigation,
.icaas-navigation-menu,
#menuBar {
    width: 100%;
}

.icaas-navigation-collapse {
    align-items: stretch;
}

.icaas-menubar .container a,
.navbar .container #menuBar a,
#menuBar a {
    color: var(--icaas-menubar-text) !important;
    text-decoration: none !important;
}

.icaas-menubar .container a:hover,
#menuBar a:hover,
#menuBar li:hover > a,
.navbar .container a.selected {
    color: var(--icaas-menubar-text) !important;
}

#menuBar > ul,
#menuBar > table,
#menuBar > div > ul,
#menuBar > div > table {
    align-items: stretch;
    background: transparent !important;
    border: 0;
    box-shadow: none;
    display: flex;
    margin: 0;
    padding: 0;
    width: 100%;
}

#menuBar > table > tbody,
#menuBar > table > tbody > tr,
#menuBar > div > table > tbody,
#menuBar > div > table > tbody > tr {
    display: flex;
    width: 100%;
}

#menuBar > ul > li,
#menuBar > table > tbody > tr > td,
#menuBar > div > ul > li,
#menuBar > div > table > tbody > tr > td {
    border: 0;
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
}

#menuBar > ul > li > a,
#menuBar > table > tbody > tr > td > a,
#menuBar > div > ul > li > a,
#menuBar > div > table > tbody > tr > td > a {
    align-items: center;
    border-bottom: 3px solid transparent;
    color: var(--icaas-menubar-text) !important;
    display: flex;
    font-weight: 700;
    min-height: 3.35rem;
    padding: 0.75rem 0.95rem !important;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
    white-space: nowrap;
}

#menuBar > ul > li > a:hover,
#menuBar > ul > li > a:focus,
#menuBar > table > tbody > tr > td > a:hover,
#menuBar > table > tbody > tr > td > a:focus,
#menuBar > div > ul > li > a:hover,
#menuBar > div > ul > li > a:focus,
#menuBar > div > table > tbody > tr > td > a:hover,
#menuBar > div > table > tbody > tr > td > a:focus,
#menuBar a.selected {
    background: color-mix(in srgb, var(--icaas-menubar-text) 14%, transparent) !important;
    border-bottom-color: var(--icaas-accent);
    color: var(--icaas-menubar-text) !important;
    outline: 0;
}

#menuBar ul ul,
#menuBar ul.level2.dynamic,
#menuBar ul.level3.dynamic,
#menuBar ul.level4.dynamic,
#menuBar div[id*="Items"],
[id*="menuBar"][id$="Items"],
[id*="menuBar"][id$="Items"] table,
.icaas-navigation-menu ul.level2.dynamic,
.icaas-navigation-menu ul.level3.dynamic,
.icaas-navigation-menu ul.level4.dynamic,
.dropdown-menu {
    background: var(--icaas-submenu-bg) !important;
    border: 1px solid var(--icaas-submenu-border) !important;
    box-shadow: 0 0.9rem 2rem color-mix(in srgb, var(--icaas-menubar-bg) 24%, transparent);
    color: var(--icaas-submenu-text) !important;
}

#menuBar ul ul a,
#menuBar ul.level2.dynamic a.dynamic,
#menuBar ul.level3.dynamic a.dynamic,
#menuBar ul.level4.dynamic a.dynamic,
#menuBar div[id*="Items"] a,
[id*="menuBar"][id$="Items"] a,
.icaas-navigation-menu ul.level2.dynamic a.dynamic,
.icaas-navigation-menu ul.level3.dynamic a.dynamic,
.icaas-navigation-menu ul.level4.dynamic a.dynamic,
.dropdown-item,
.navbar .container .dropdown-menu .dropdown-item {
    align-items: center;
    border-left: 3px solid transparent;
    color: var(--icaas-submenu-text) !important;
    display: flex;
    font-weight: 600;
    gap: 0.65rem;
    justify-content: space-between;
    line-height: 1.35;
    padding: 0.7rem 0.9rem !important;
    transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease, padding-left 140ms ease;
    white-space: normal;
}

#menuBar ul ul a:hover,
#menuBar ul ul a:focus,
#menuBar ul.level2.dynamic a.dynamic:hover,
#menuBar ul.level2.dynamic a.dynamic:focus,
#menuBar ul.level3.dynamic a.dynamic:hover,
#menuBar ul.level3.dynamic a.dynamic:focus,
#menuBar ul.level4.dynamic a.dynamic:hover,
#menuBar ul.level4.dynamic a.dynamic:focus,
#menuBar div[id*="Items"] a:hover,
#menuBar div[id*="Items"] a:focus,
[id*="menuBar"][id$="Items"] a:hover,
[id*="menuBar"][id$="Items"] a:focus,
.icaas-navigation-menu ul.level2.dynamic a.dynamic:hover,
.icaas-navigation-menu ul.level2.dynamic a.dynamic:focus,
.icaas-navigation-menu ul.level3.dynamic a.dynamic:hover,
.icaas-navigation-menu ul.level3.dynamic a.dynamic:focus,
.icaas-navigation-menu ul.level4.dynamic a.dynamic:hover,
.icaas-navigation-menu ul.level4.dynamic a.dynamic:focus,
.dropdown-item:hover,
.dropdown-item:focus {
    background-color: var(--icaas-submenu-hover-bg) !important;
    border-left-color: var(--icaas-accent);
    color: var(--icaas-submenu-hover-text) !important;
    padding-left: 1rem !important;
    text-decoration: none !important;
}

#menuBar ul ul,
#menuBar ul.level2.dynamic,
#menuBar ul.level3.dynamic,
#menuBar ul.level4.dynamic,
#menuBar div[id*="Items"],
[id*="menuBar"][id$="Items"],
.icaas-navigation-menu ul.level2.dynamic,
.icaas-navigation-menu ul.level3.dynamic,
.icaas-navigation-menu ul.level4.dynamic {
    border-radius: 0.45rem;
    min-width: 15rem;
    overflow: visible;
    padding: 0.35rem !important;
    z-index: 1080 !important;
}

#menuBar ul.level2.dynamic {
    margin-top: 0.15rem !important;
}

#menuBar ul.level3.dynamic,
#menuBar ul.level4.dynamic {
    margin-left: 0.25rem !important;
}

#menuBar > ul,
#menuBar > div > ul {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0;
    box-shadow: none;
    min-width: 0;
    padding: 0 !important;
}

#menuBar ul li {
    list-style: none;
    margin: 0;
}

#menuBar ul ul li + li,
#menuBar ul.level2.dynamic > li + li,
#menuBar ul.level3.dynamic > li + li,
#menuBar ul.level4.dynamic > li + li,
#menuBar div[id*="Items"] td + td,
[id*="menuBar"][id$="Items"] tr + tr td,
.icaas-navigation-menu ul.level2.dynamic > li + li,
.icaas-navigation-menu ul.level3.dynamic > li + li,
.icaas-navigation-menu ul.level4.dynamic > li + li {
    border-top: 1px solid color-mix(in srgb, var(--icaas-submenu-border) 58%, transparent);
}

#menuBar ul ul a.selected,
#menuBar ul.dynamic a.selected,
#menuBar div[id*="Items"] a.selected,
[id*="menuBar"][id$="Items"] a.selected,
.icaas-navigation-menu ul.dynamic a.selected {
    background: var(--icaas-submenu-active-bg) !important;
    border-left-color: var(--icaas-accent);
    color: var(--icaas-submenu-hover-text) !important;
    font-weight: 700;
}

#menuBar img {
    margin-left: 0.35rem;
    max-height: 0.75rem;
    opacity: 0.72;
    width: auto;
}

/* ICAAS application sidebar */
.icaas-mobile-nav-bar {
    background: linear-gradient(90deg, var(--icaas-menubar-bg), var(--icaas-primary-strong));
    border-bottom: 1px solid color-mix(in srgb, var(--icaas-menubar-text) 20%, transparent);
    color: var(--icaas-menubar-text);
    display: none;
}

.icaas-mobile-nav-bar > .container {
    align-items: center;
    display: flex;
    justify-content: space-between;
    min-height: 3.25rem;
}

.icaas-sidebar-toggle {
    align-items: center;
    background: transparent;
    border: 0;
    color: var(--icaas-menubar-text);
    display: inline-flex;
    font-weight: 700;
    gap: 0.7rem;
    min-height: 2.75rem;
    padding: 0.45rem 0;
}

.icaas-mobile-current {
    font-size: 0.82rem;
    font-weight: 600;
    opacity: 0.82;
}

.icaas-app-shell {
    align-items: stretch;
    display: flex;
    min-height: calc(100vh - 8rem);
    width: 100%;
}

.icaas-sidebar {
    background: var(--icaas-surface-bg);
    border-right: 1px solid var(--icaas-border);
    color: var(--icaas-text);
    flex: 0 0 18rem;
    max-height: 100vh;
    overflow-y: auto;
    position: sticky;
    scrollbar-color: var(--icaas-border) transparent;
    scrollbar-width: thin;
    top: 0;
    z-index: 1020;
}

.icaas-sidebar-header {
    align-items: center;
    background: linear-gradient(135deg, var(--icaas-primary-strong), var(--icaas-primary));
    color: #fff;
    display: flex;
    justify-content: space-between;
    min-height: 4.5rem;
    padding: 0.9rem 1rem;
}

.icaas-sidebar-header strong,
.icaas-sidebar-kicker {
    color: #fff !important;
    display: block;
}

.icaas-sidebar-header strong {
    font-size: 1rem;
}

.icaas-sidebar-kicker {
    font-size: 0.68rem;
    font-weight: 800;
    margin-bottom: 0.15rem;
    opacity: 0.78;
}

.icaas-sidebar-header-actions {
    align-items: center;
    display: flex;
    gap: 0.35rem;
}

.icaas-sidebar-rail-toggle {
    align-items: center;
    background: var(--icaas-primary);
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 70%, #000);
    border-radius: 0 0.4rem 0.4rem 0;
    color: #fff;
    display: none;
    font-size: 1.4rem;
    height: 2.5rem;
    justify-content: center;
    position: absolute;
    right: -2.05rem;
    top: 0.8rem;
    width: 2.05rem;
    z-index: 1090;
}

.icaas-sidebar-collapse,
.icaas-sidebar-close {
    align-items: center;
    background: color-mix(in srgb, #fff 12%, transparent);
    border: 1px solid color-mix(in srgb, #fff 35%, transparent);
    border-radius: 0.35rem;
    color: #fff;
    display: none;
    font-size: 1.4rem;
    height: 2.25rem;
    justify-content: center;
    line-height: 1;
    width: 2.25rem;
}

.icaas-sidebar-collapse {
    display: inline-flex;
    font-size: 1.55rem;
}

.icaas-sidebar-search {
    border-bottom: 1px solid var(--icaas-border);
    padding: 0.85rem 0.9rem;
}

.icaas-sidebar-search label {
    color: var(--icaas-muted) !important;
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    margin-bottom: 0.35rem;
}

.icaas-sidebar-search input {
    background: var(--icaas-surface-alt);
    border: 1px solid var(--icaas-border);
    border-radius: 0.4rem;
    color: var(--icaas-text);
    min-height: 2.35rem;
    padding: 0.45rem 0.65rem;
    width: 100%;
}

.icaas-sidebar-search input:focus {
    border-color: var(--icaas-primary);
    box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--icaas-primary) 18%, transparent);
    outline: 0;
}

.icaas-sidebar-nav {
    padding: 0.65rem;
}

.icaas-sidebar-menu,
.icaas-sidebar-menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.icaas-sidebar-item {
    margin: 0.12rem 0;
}

.icaas-sidebar-item.is-filtered-out {
    display: none;
}

.icaas-sidebar-link,
.icaas-sidebar-group > summary {
    align-items: center;
    border-left: 3px solid transparent;
    border-radius: 0.35rem;
    color: var(--icaas-text) !important;
    cursor: pointer;
    display: flex;
    font-weight: 650;
    gap: 0.65rem;
    line-height: 1.25;
    min-height: 2.65rem;
    padding: 0.55rem 0.65rem;
    text-decoration: none !important;
    transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease;
}

.icaas-sidebar-group > summary {
    list-style: none;
}

.icaas-sidebar-group > summary::-webkit-details-marker {
    display: none;
}

.icaas-sidebar-link:hover,
.icaas-sidebar-link:focus,
.icaas-sidebar-group > summary:hover,
.icaas-sidebar-group > summary:focus {
    background: var(--icaas-submenu-hover-bg);
    border-left-color: var(--icaas-accent);
    color: var(--icaas-submenu-hover-text) !important;
    outline: 0;
}

.icaas-sidebar-item.is-selected > .icaas-sidebar-link,
.icaas-sidebar-item.is-selected > .icaas-sidebar-group > summary {
    background: var(--icaas-submenu-active-bg);
    border-left-color: var(--icaas-primary);
    color: var(--icaas-submenu-hover-text) !important;
    font-weight: 750;
}

.icaas-sidebar-icon {
    align-items: center;
    background: var(--icaas-surface-alt);
    border: 1px solid var(--icaas-border);
    border-radius: 0.3rem;
    color: var(--icaas-primary);
    display: inline-flex;
    flex: 0 0 1.75rem;
    font-size: 0.7rem;
    font-weight: 800;
    height: 1.75rem;
    justify-content: center;
}

.icaas-sidebar-icon .icaas-menu-svg {
    display: block;
    height: 1rem;
    width: 1rem;
}

.icaas-sidebar-label {
    min-width: 0;
    overflow-wrap: anywhere;
}

.icaas-sidebar-chevron {
    border-bottom: 2px solid currentColor;
    border-right: 2px solid currentColor;
    flex: 0 0 0.42rem;
    height: 0.42rem;
    margin-left: auto;
    transform: rotate(45deg) translateY(-0.12rem);
    transition: transform 140ms ease;
    width: 0.42rem;
}

.icaas-sidebar-group[open] > summary .icaas-sidebar-chevron {
    transform: rotate(225deg) translateY(-0.12rem);
}

.icaas-sidebar-group > ul {
    border-left: 1px solid var(--icaas-border);
    margin: 0.2rem 0 0.35rem 1.5rem;
    padding-left: 0.35rem;
}

.icaas-sidebar-item.depth-1 .icaas-sidebar-link,
.icaas-sidebar-item.depth-1 .icaas-sidebar-group > summary {
    font-size: 0.84rem;
}

.icaas-sidebar-item.depth-2 .icaas-sidebar-link,
.icaas-sidebar-item.depth-2 .icaas-sidebar-group > summary,
.icaas-sidebar-item.depth-3 .icaas-sidebar-link,
.icaas-sidebar-item.depth-3 .icaas-sidebar-group > summary {
    font-size: 0.8rem;
    min-height: 2.35rem;
}

.icaas-sidebar-item.depth-1 .icaas-sidebar-icon,
.icaas-sidebar-item.depth-2 .icaas-sidebar-icon,
.icaas-sidebar-item.depth-3 .icaas-sidebar-icon {
    background: transparent;
    border-color: transparent;
    flex-basis: 1.25rem;
    height: 1.25rem;
}

.icaas-menu-empty {
    color: var(--icaas-muted);
    font-size: 0.82rem;
    margin: 1rem;
    text-align: center;
}

.icaas-content-column {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}

.icaas-content-column > .icaas-page-shell {
    flex: 1 1 auto;
    width: 100%;
}

.icaas-sidebar-backdrop {
    display: none;
}

.navigation-mode-switcher {
    align-items: center;
    color: var(--icaas-topbar-text);
    display: flex;
    flex-direction: column;
    font-size: 0.68rem;
    font-weight: 700;
    gap: 0.2rem;
}

.navigation-mode-control {
    background: var(--icaas-surface-alt);
    border: 1px solid var(--icaas-border);
    border-radius: 0.45rem;
    display: inline-flex;
    padding: 0.18rem;
}

.navigation-mode-control button {
    background: transparent;
    border: 0;
    border-radius: 0.3rem;
    color: var(--icaas-muted);
    font-size: 0.72rem;
    font-weight: 700;
    min-height: 1.8rem;
    padding: 0.25rem 0.5rem;
}

.navigation-mode-control button:hover,
.navigation-mode-control button:focus {
    color: var(--icaas-primary);
    outline: 0;
}

.navigation-mode-control button.active {
    background: var(--icaas-primary);
    color: #fff;
}

.icaas-dropdown-nav {
    display: none !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
    display: flex !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav > .container {
    align-items: stretch !important;
    display: flex !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav .icaas-navigation-collapse {
    display: flex !important;
}

[data-icaas-navigation="dropdown"] .icaas-sidebar,
[data-icaas-navigation="dropdown"] .icaas-sidebar-backdrop,
[data-icaas-navigation="dropdown"] .icaas-mobile-nav-bar {
    display: none !important;
}

[data-icaas-navigation="dropdown"] .icaas-content-column {
    width: 100%;
}

.icaas-dropdown-nav #menuBar,
.icaas-dropdown-nav #menuBar > ul {
    width: 100%;
}

.icaas-dropdown-nav #menuBar li {
    position: relative;
}

.icaas-dropdown-nav #menuBar ul.dynamic {
    display: none;
    position: absolute;
}

.icaas-dropdown-nav #menuBar > ul > li > ul.dynamic {
    left: 0;
    top: 100%;
}

.icaas-dropdown-nav #menuBar ul.dynamic ul.dynamic {
    left: 100%;
    top: 0;
}

.icaas-dropdown-nav #menuBar li:hover > ul.dynamic,
.icaas-dropdown-nav #menuBar li:focus-within > ul.dynamic {
    display: block;
}

@media (min-width: 992px) {
    [data-icaas-navigation="sidebar"][data-icaas-sidebar="collapsed"] .icaas-sidebar {
        flex-basis: 4.5rem;
        overflow: visible;
        width: 4.5rem;
    }

    [data-icaas-navigation="sidebar"][data-icaas-sidebar="collapsed"] .icaas-sidebar-rail-toggle {
        display: inline-flex;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-header {
        justify-content: center;
        padding-left: 0.45rem;
        padding-right: 0.45rem;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-header > div,
    [data-icaas-sidebar="collapsed"] .icaas-sidebar-search,
    [data-icaas-sidebar="collapsed"] .icaas-sidebar-label,
    [data-icaas-sidebar="collapsed"] .icaas-sidebar-chevron {
        display: none;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-nav {
        padding: 0.45rem;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-item {
        position: relative;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-link,
    [data-icaas-sidebar="collapsed"] .icaas-sidebar-group > summary {
        justify-content: center;
        padding-left: 0.35rem;
        padding-right: 0.35rem;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-icon {
        flex-basis: 2rem;
        height: 2rem;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-group > ul {
        background: var(--icaas-surface-bg);
        border: 1px solid var(--icaas-border);
        border-radius: 0.45rem;
        box-shadow: var(--icaas-shadow);
        display: none;
        left: calc(100% + 0.35rem);
        margin: 0;
        min-width: 16rem;
        padding: 0.45rem;
        position: absolute;
        top: 0;
        z-index: 1080;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-group[open] > ul,
    [data-icaas-sidebar="collapsed"] .icaas-sidebar-item:hover > .icaas-sidebar-group > ul,
    [data-icaas-sidebar="collapsed"] .icaas-sidebar-item:focus-within > .icaas-sidebar-group > ul {
        display: block;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-group > ul .icaas-sidebar-label,
    [data-icaas-sidebar="collapsed"] .icaas-sidebar-group > ul .icaas-sidebar-chevron {
        display: inline;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-group > ul .icaas-sidebar-link,
    [data-icaas-sidebar="collapsed"] .icaas-sidebar-group > ul .icaas-sidebar-group > summary {
        justify-content: flex-start;
    }

    [data-icaas-sidebar="collapsed"] .icaas-sidebar-group > ul .icaas-sidebar-icon {
        flex-basis: 1.35rem;
        height: 1.35rem;
    }
}

@media (max-width: 991.98px) {
    .icaas-mobile-nav-bar {
        display: block;
        position: sticky;
        top: 0;
        z-index: 1035;
    }

    .icaas-app-shell {
        display: block;
        min-height: 0;
    }

    .icaas-sidebar {
        bottom: 0;
        box-shadow: 1rem 0 2.5rem rgba(15, 23, 42, 0.3);
        left: 0;
        max-height: none;
        max-width: min(88vw, 20rem);
        position: fixed;
        top: 0;
        transform: translateX(-105%);
        transition: transform 180ms ease;
        width: 100%;
        z-index: 1050;
    }

    .icaas-sidebar-open {
        overflow: hidden;
    }

    .icaas-sidebar-open .icaas-sidebar {
        transform: translateX(0);
    }

    .icaas-sidebar-close {
        display: inline-flex;
    }

    .icaas-sidebar-collapse {
        display: none;
    }

    .icaas-sidebar-rail-toggle {
        display: none !important;
    }

    .icaas-sidebar-backdrop {
        background: rgba(15, 23, 42, 0.56);
        bottom: 0;
        left: 0;
        opacity: 0;
        position: fixed;
        right: 0;
        top: 0;
        transition: opacity 180ms ease;
        visibility: hidden;
        z-index: 1040;
    }

    .icaas-sidebar-open .icaas-sidebar-backdrop {
        display: block;
        opacity: 1;
        visibility: visible;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
        display: none !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-mobile-nav-bar {
        display: block !important;
        position: sticky;
        top: 0;
        z-index: 1035;
    }

    [data-icaas-navigation="dropdown"] .icaas-sidebar {
        display: block !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-sidebar-backdrop {
        display: block;
    }

    [data-icaas-navigation="dropdown"] .icaas-content-column {
        width: 100%;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav > .container {
        display: none !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav .icaas-menu-toggler {
        display: inline-flex;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav .icaas-navigation-collapse:not(.show) {
        display: none !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav .icaas-navigation-collapse.show {
        display: block !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.dynamic {
        display: block;
        position: static;
    }

    .navigation-mode-switcher {
        align-self: center;
        margin-bottom: 0.6rem;
    }
}

/* Clear affordances for menu items that contain child menus */
#menuBar li.has-popup > a,
#menuBar li[aria-haspopup] > a {
    align-items: center;
    display: flex !important;
    gap: 0.55rem;
    justify-content: space-between;
}

#menuBar li.has-popup > a::after,
#menuBar li[aria-haspopup] > a::after {
    border-bottom: 2px solid currentColor;
    border-right: 2px solid currentColor;
    content: "";
    display: inline-block;
    flex: 0 0 0.45rem;
    height: 0.45rem;
    margin-left: auto;
    opacity: 0.8;
    transform: rotate(45deg) translateY(-0.12rem);
    transition: opacity 150ms ease, transform 150ms ease;
    width: 0.45rem;
}

#menuBar li.has-popup > a img,
#menuBar li[aria-haspopup] > a img {
    display: none !important;
}

#menuBar li.has-popup:focus-within > ul.dynamic,
#menuBar li[aria-haspopup]:focus-within > ul.dynamic {
    display: block !important;
}

#menuBar ul.dynamic li.has-popup > a::after,
#menuBar ul.dynamic li[aria-haspopup] > a::after {
    transform: rotate(-45deg);
}

#menuBar li.has-popup:hover > a::after,
#menuBar li.has-popup:focus-within > a::after,
#menuBar li[aria-haspopup]:hover > a::after,
#menuBar li[aria-haspopup]:focus-within > a::after {
    opacity: 1;
}

#menuBar > ul > li.has-popup:hover > a,
#menuBar > ul > li.has-popup:focus-within > a,
#menuBar > ul > li[aria-haspopup]:hover > a,
#menuBar > ul > li[aria-haspopup]:focus-within > a {
    background: color-mix(in srgb, var(--icaas-menubar-text) 16%, transparent) !important;
    border-bottom-color: var(--icaas-accent);
}

#menuBar ul.dynamic li.has-popup > a,
#menuBar ul.dynamic li[aria-haspopup] > a {
    font-weight: 700;
}

#menuBar ul.dynamic li.has-popup:hover > a,
#menuBar ul.dynamic li.has-popup:focus-within > a,
#menuBar ul.dynamic li[aria-haspopup]:hover > a,
#menuBar ul.dynamic li[aria-haspopup]:focus-within > a {
    background: var(--icaas-submenu-hover-bg) !important;
    border-left-color: var(--icaas-accent);
    color: var(--icaas-submenu-hover-text) !important;
}

@media (max-width: 991.98px) {
    .icaas-menubar > .container {
        align-items: stretch !important;
        display: block !important;
        min-height: auto;
    }

    .icaas-menu-mobile-header {
        display: flex;
    }

    .icaas-navigation-collapse {
        border-top: 1px solid color-mix(in srgb, var(--icaas-menubar-text) 22%, transparent);
        max-height: min(70vh, 34rem);
        overflow-x: hidden;
        overflow-y: auto;
        padding: 0.45rem 0 0.75rem;
        scrollbar-color: color-mix(in srgb, var(--icaas-menubar-text) 45%, transparent) transparent;
        scrollbar-width: thin;
    }

    #menuBar > ul,
    #menuBar > table,
    #menuBar > div > ul,
    #menuBar > div > table,
    #menuBar > table > tbody,
    #menuBar > table > tbody > tr,
    #menuBar > div > table > tbody,
    #menuBar > div > table > tbody > tr {
        align-items: stretch;
        display: block;
        width: 100%;
    }

    #menuBar > ul > li,
    #menuBar > table > tbody > tr > td,
    #menuBar > div > ul > li,
    #menuBar > div > table > tbody > tr > td {
        width: 100%;
    }

    #menuBar > ul > li > a,
    #menuBar > table > tbody > tr > td > a,
    #menuBar > div > ul > li > a,
    #menuBar > div > table > tbody > tr > td > a {
        border-bottom: 0;
        border-left: 3px solid transparent;
        justify-content: space-between;
        min-height: 2.9rem;
        padding: 0.7rem 0.8rem !important;
        white-space: normal;
    }

    #menuBar > ul > li > a:hover,
    #menuBar > ul > li > a:focus,
    #menuBar > table > tbody > tr > td > a:hover,
    #menuBar > table > tbody > tr > td > a:focus,
    #menuBar > div > ul > li > a:hover,
    #menuBar > div > ul > li > a:focus,
    #menuBar > div > table > tbody > tr > td > a:hover,
    #menuBar > div > table > tbody > tr > td > a:focus,
    #menuBar a.selected {
        border-bottom-color: transparent;
        border-left-color: var(--icaas-accent);
    }

    #menuBar ul ul,
    #menuBar ul.level2.dynamic,
    #menuBar ul.level3.dynamic,
    #menuBar ul.level4.dynamic,
    #menuBar div[id*="Items"],
    [id*="menuBar"][id$="Items"] {
        background: var(--icaas-submenu-bg) !important;
        border: 1px solid var(--icaas-submenu-border) !important;
        border-left: 3px solid var(--icaas-accent) !important;
        border-radius: 0.4rem !important;
        box-shadow: none;
        margin: 0.15rem 0 0.55rem 0.7rem !important;
        max-width: calc(100% - 0.7rem);
        min-width: 0;
        overflow: visible;
        position: static !important;
        width: auto !important;
    }

    #menuBar ul ul,
    #menuBar ul ul ul {
        background: var(--icaas-submenu-bg) !important;
    }

    #menuBar ul ul a,
    #menuBar ul.level2.dynamic a.dynamic,
    #menuBar ul.level3.dynamic a.dynamic,
    #menuBar ul.level4.dynamic a.dynamic,
    #menuBar div[id*="Items"] a,
    [id*="menuBar"][id$="Items"] a {
        color: var(--icaas-submenu-text) !important;
        padding: 0.65rem 0.8rem !important;
    }

    #menuBar ul ul a:hover,
    #menuBar ul ul a:focus,
    #menuBar ul.level2.dynamic a.dynamic:hover,
    #menuBar ul.level2.dynamic a.dynamic:focus,
    #menuBar ul.level3.dynamic a.dynamic:hover,
    #menuBar ul.level3.dynamic a.dynamic:focus,
    #menuBar ul.level4.dynamic a.dynamic:hover,
    #menuBar ul.level4.dynamic a.dynamic:focus,
    #menuBar div[id*="Items"] a:hover,
    #menuBar div[id*="Items"] a:focus,
    [id*="menuBar"][id$="Items"] a:hover,
    [id*="menuBar"][id$="Items"] a:focus {
        background: var(--icaas-submenu-hover-bg) !important;
        color: var(--icaas-submenu-hover-text) !important;
    }

    #menuBar li.has-popup > a,
    #menuBar li[aria-haspopup] > a {
        min-height: 3rem;
        padding-right: 1rem !important;
    }

    #menuBar li.has-popup > a::after,
    #menuBar li[aria-haspopup] > a::after,
    #menuBar ul.dynamic li.has-popup > a::after,
    #menuBar ul.dynamic li[aria-haspopup] > a::after {
        transform: rotate(45deg) translateY(-0.12rem);
    }

    #menuBar li.has-popup:hover > a::after,
    #menuBar li.has-popup:focus-within > a::after,
    #menuBar li[aria-haspopup]:hover > a::after,
    #menuBar li[aria-haspopup]:focus-within > a::after {
        transform: rotate(225deg) translateY(-0.12rem);
    }
}

/* Permission-driven ICAAS mega menu */
.icaas-mega-menu {
    align-items: stretch;
    display: flex;
    gap: 0.15rem;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

.icaas-mega-item {
    align-items: stretch;
    display: flex;
    position: static;
}

.icaas-mega-disclosure {
    display: flex;
    position: static;
}

.icaas-mega-disclosure > summary {
    list-style: none;
}

.icaas-mega-disclosure > summary::-webkit-details-marker {
    display: none;
}

.icaas-mega-link,
.icaas-mega-trigger {
    align-items: center;
    background: transparent;
    border: 0;
    border-bottom: 3px solid transparent;
    color: var(--icaas-menubar-text) !important;
    display: inline-flex;
    font-family: inherit;
    font-size: 0.92rem;
    font-weight: 700;
    gap: 0.45rem;
    min-height: 3.35rem;
    padding: 0.75rem 1rem;
    text-decoration: none !important;
    transition: background-color 150ms ease, border-color 150ms ease;
    white-space: nowrap;
}

.icaas-mega-link:hover,
.icaas-mega-link:focus,
.icaas-mega-trigger:hover,
.icaas-mega-trigger:focus,
.icaas-mega-disclosure[open] > .icaas-mega-trigger,
.icaas-mega-item.is-selected > .icaas-mega-link,
.icaas-mega-item.is-selected .icaas-mega-trigger {
    background: color-mix(in srgb, var(--icaas-menubar-text) 14%, transparent);
    border-bottom-color: var(--icaas-accent);
    color: var(--icaas-menubar-text) !important;
    outline: 0;
}

.icaas-mega-trigger:focus-visible,
.icaas-mega-link:focus-visible {
    outline: 3px solid var(--icaas-accent);
    outline-offset: -3px;
}

.icaas-mega-chevron {
    border-bottom: 2px solid currentColor;
    border-right: 2px solid currentColor;
    display: inline-block;
    height: 0.45rem;
    margin-top: -0.2rem;
    transform: rotate(45deg);
    transition: transform 150ms ease;
    width: 0.45rem;
}

.icaas-mega-disclosure[open] .icaas-mega-chevron {
    margin-top: 0.2rem;
    transform: rotate(225deg);
}

.icaas-mega-panel {
    background: var(--icaas-submenu-bg);
    border: 1px solid var(--icaas-submenu-border);
    box-shadow: 0 1.25rem 2.75rem color-mix(in srgb, var(--icaas-menubar-bg) 28%, transparent);
    color: var(--icaas-submenu-text);
    display: none;
    left: 0;
    max-height: min(72vh, 42rem);
    overflow-y: auto;
    position: absolute;
    right: 0;
    top: 100%;
    z-index: 1080;
}

.icaas-mega-disclosure[open] > .icaas-mega-panel {
    display: block;
}

@media (min-width: 992px) {
    .icaas-mega-item.has-mega-menu:hover .icaas-mega-panel,
    .icaas-mega-disclosure:focus-within > .icaas-mega-panel {
        display: block;
    }
}

.icaas-mega-panel-inner {
    margin: 0 auto;
    max-width: 1440px;
    padding: 1.35rem clamp(1rem, 3vw, 2.5rem) 1.6rem;
}

.icaas-menubar .container .icaas-mega-panel,
.icaas-menubar .container .icaas-mega-panel p,
.icaas-menubar .container .icaas-mega-panel span,
.icaas-menubar .container .icaas-mega-panel strong,
.icaas-menubar .container .icaas-mega-panel small {
    color: var(--icaas-submenu-text) !important;
}

.icaas-menubar .container .icaas-mega-panel a,
.icaas-menubar .container .icaas-mega-panel a:link,
.icaas-menubar .container .icaas-mega-panel a:visited,
.icaas-menubar .container .icaas-mega-panel a:active {
    color: var(--icaas-submenu-text) !important;
}

.icaas-menubar .container .icaas-mega-panel a:hover,
.icaas-menubar .container .icaas-mega-panel a:focus,
.icaas-menubar .container .icaas-mega-panel li.is-selected > a,
.icaas-menubar .container .icaas-mega-panel .is-selected > a {
    color: var(--icaas-submenu-hover-text) !important;
}

.icaas-mega-overview {
    border-bottom: 1px solid var(--icaas-submenu-border);
    margin-bottom: 1rem;
    padding-bottom: 0.9rem;
}

.icaas-mega-overview a {
    align-items: center;
    color: var(--icaas-submenu-text) !important;
    display: inline-flex;
    gap: 0.65rem;
    text-decoration: none !important;
}

.icaas-mega-overview strong {
    color: var(--icaas-submenu-hover-text) !important;
    font-size: 1rem;
}

.icaas-mega-overview span {
    color: var(--icaas-submenu-muted) !important;
    font-size: 0.82rem;
}

.icaas-mega-grid {
    display: grid;
    gap: 1rem 1.25rem;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.icaas-mega-group {
    min-width: 0;
}

.icaas-mega-group-title {
    border-bottom: 1px solid var(--icaas-submenu-border);
    color: var(--icaas-submenu-text) !important;
    display: block;
    font-size: 0.78rem;
    font-weight: 800;
    margin-bottom: 0.45rem;
    padding: 0.35rem 0.25rem 0.6rem;
    text-decoration: none !important;
    text-transform: uppercase;
}

a.icaas-mega-group-title:hover,
a.icaas-mega-group-title:focus {
    color: var(--icaas-submenu-hover-text) !important;
}

.icaas-mega-links,
.icaas-mega-links ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.icaas-mega-links li {
    margin: 0.15rem 0;
}

.icaas-mega-links a {
    align-items: center;
    border-left: 3px solid transparent;
    border-radius: 0.35rem;
    color: var(--icaas-submenu-text) !important;
    display: flex;
    font-weight: 600;
    gap: 0.5rem;
    justify-content: space-between;
    line-height: 1.3;
    padding: 0.55rem 0.65rem;
    text-decoration: none !important;
    transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease;
}

.icaas-mega-links a:hover,
.icaas-mega-links a:focus,
.icaas-mega-links li.is-selected > a {
    background: var(--icaas-submenu-hover-bg);
    border-left-color: var(--icaas-accent);
    color: var(--icaas-submenu-hover-text) !important;
    outline: 0;
}

.icaas-mega-links ul {
    border-left: 1px solid var(--icaas-submenu-border);
    margin: 0.15rem 0 0.25rem 0.8rem;
    padding-left: 0.45rem;
}

.icaas-mega-links ul a {
    color: var(--icaas-submenu-muted) !important;
    font-size: 0.82rem;
    padding-bottom: 0.45rem;
    padding-top: 0.45rem;
}

.icaas-mega-link-arrow {
    color: var(--icaas-submenu-muted) !important;
    font-size: 1rem;
}

.icaas-mega-feature {
    align-items: flex-start;
    border: 1px solid transparent;
    border-radius: 0.45rem;
    color: var(--icaas-submenu-text) !important;
    display: flex;
    gap: 0.75rem;
    min-height: 5.5rem;
    padding: 0.85rem;
    text-decoration: none !important;
    transition: background-color 140ms ease, border-color 140ms ease, transform 140ms ease;
}

.icaas-mega-feature:hover,
.icaas-mega-feature:focus,
.icaas-mega-group.is-selected .icaas-mega-feature {
    background: var(--icaas-submenu-hover-bg);
    border-color: var(--icaas-submenu-border);
    color: var(--icaas-submenu-hover-text) !important;
    outline: 0;
    transform: translateY(-1px);
}

.icaas-mega-feature-icon {
    align-items: center;
    background: var(--icaas-submenu-active-bg);
    border: 1px solid var(--icaas-submenu-border);
    border-radius: 0.4rem;
    color: var(--icaas-submenu-hover-text) !important;
    display: inline-flex;
    flex: 0 0 2rem;
    font-size: 0.82rem;
    font-weight: 800;
    height: 2rem;
    justify-content: center;
}

.icaas-mega-feature strong,
.icaas-mega-feature small {
    display: block;
}

.icaas-mega-feature strong {
    color: var(--icaas-submenu-text) !important;
    font-size: 0.92rem;
    margin-bottom: 0.25rem;
}

.icaas-mega-feature small {
    color: var(--icaas-submenu-muted) !important;
    font-size: 0.78rem;
}

@media (max-width: 991.98px) {
    .icaas-mega-menu,
    .icaas-mega-item,
    .icaas-mega-disclosure {
        display: block;
        width: 100%;
    }

    .icaas-mega-link,
    .icaas-mega-trigger {
        border-bottom: 0;
        border-left: 3px solid transparent;
        justify-content: space-between;
        min-height: 2.9rem;
        padding: 0.7rem 0.8rem;
        width: 100%;
    }

    .icaas-mega-disclosure[open] > .icaas-mega-trigger,
    .icaas-mega-item.is-selected > .icaas-mega-link,
    .icaas-mega-item.is-selected .icaas-mega-trigger {
        border-left-color: var(--icaas-accent);
    }

    .icaas-mega-panel {
        border-radius: 0.4rem;
        box-shadow: none;
        left: auto;
        margin: 0.15rem 0 0.65rem 0.65rem;
        max-height: none;
        overflow: visible;
        position: static;
        right: auto;
        top: auto;
        width: calc(100% - 0.65rem);
    }

    .icaas-mega-panel-inner {
        padding: 0.85rem;
    }

    .icaas-mega-overview {
        margin-bottom: 0.7rem;
        padding-bottom: 0.65rem;
    }

    .icaas-mega-overview a {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.15rem;
    }

    .icaas-mega-grid {
        display: block;
    }

    .icaas-mega-group + .icaas-mega-group {
        border-top: 1px solid var(--icaas-submenu-border);
        margin-top: 0.7rem;
        padding-top: 0.7rem;
    }

    .icaas-mega-feature {
        min-height: 0;
    }
}

.icaas-page-shell .main-content,
.main-content,
.featured + .main-content {
    background: var(--icaas-surface-bg) !important;
    border: 1px solid var(--icaas-border) !important;
    box-shadow: var(--icaas-shadow);
    color: var(--icaas-text) !important;
}

.featured,
.featured .content-wrapper {
    background: var(--icaas-surface-alt) !important;
    color: var(--icaas-text) !important;
}

.card,
.modal-content,
.modalPopup,
.login,
.summary .componentheadSummary,
.panelAddAMOComponent {
    background-color: var(--icaas-surface-bg) !important;
    border-color: var(--icaas-border) !important;
    color: var(--icaas-text) !important;
}

.card-header,
.componenthead,
.modalPopup .header {
    background: linear-gradient(90deg, var(--icaas-primary-strong), var(--icaas-primary)) !important;
    border-color: var(--icaas-primary-strong) !important;
    color: #fff !important;
}

.card-header h1,
.card-header h2,
.card-header h3,
.card-header h4,
.card-header h5,
.card-header h6,
.componenthead h1,
.componenthead h2,
.componenthead h3,
.componenthead h4,
.componenthead h5,
.componenthead h6 {
    color: #fff !important;
}

.card-body,
.modal-body,
.modalPopup .body {
    background-color: var(--icaas-surface-bg) !important;
    color: var(--icaas-text) !important;
}

.bg-primary,
.btn-primary {
    background-color: var(--icaas-primary) !important;
    border-color: var(--icaas-primary) !important;
    color: #fff !important;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--icaas-primary-strong) !important;
    border-color: var(--icaas-primary-strong) !important;
    color: #fff !important;
}

.btn-secondary,
.btn-light {
    background-color: var(--icaas-surface-alt) !important;
    border-color: var(--icaas-border) !important;
    color: var(--icaas-text) !important;
}

.btn-secondary:hover,
.btn-light:hover,
.btn-secondary:focus,
.btn-light:focus {
    background-color: var(--icaas-border) !important;
    border-color: var(--icaas-border) !important;
    color: var(--icaas-text) !important;
}

.btn,
a.btn,
a.btn:link,
a.btn:visited,
a.btn:active,
a.btn:hover,
a.btn:focus,
input.btn,
button.btn {
    align-items: center;
    border-radius: var(--bs-btn-border-radius, 0.375rem) !important;
    display: inline-flex;
    font-weight: 600;
    height: auto !important;
    justify-content: center;
    line-height: 1.5;
    margin-top: 0;
    padding: var(--bs-btn-padding-y, 0.375rem) var(--bs-btn-padding-x, 0.75rem) !important;
    text-decoration: none !important;
    width: auto !important;
}

input.btn {
    display: inline-block;
}

.btn-sm {
    border-radius: var(--bs-btn-border-radius-sm, 0.25rem) !important;
    padding: var(--bs-btn-padding-y, 0.25rem) var(--bs-btn-padding-x, 0.5rem) !important;
}

.btn-block {
    display: block !important;
    width: 100% !important;
}

.btn-primary,
a.btn-primary,
a.btn-primary:link,
a.btn-primary:visited,
a.btn-primary:active {
    background-color: var(--icaas-primary) !important;
    border-color: var(--icaas-primary) !important;
    color: #fff !important;
}

.btn-primary:hover,
.btn-primary:focus,
a.btn-primary:hover,
a.btn-primary:focus {
    background-color: var(--icaas-primary-strong) !important;
    border-color: var(--icaas-primary-strong) !important;
    color: #fff !important;
}

.btn-secondary,
a.btn-secondary,
a.btn-secondary:link,
a.btn-secondary:visited,
a.btn-secondary:active,
.btn-default,
a.btn-default,
a.btn-default:link,
a.btn-default:visited,
a.btn-default:active,
.btn-light,
a.btn-light,
a.btn-light:link,
a.btn-light:visited,
a.btn-light:active {
    background-color: var(--icaas-surface-alt) !important;
    border-color: var(--icaas-border) !important;
    color: var(--icaas-text) !important;
}

.btn-secondary:hover,
.btn-secondary:focus,
a.btn-secondary:hover,
a.btn-secondary:focus,
.btn-default:hover,
.btn-default:focus,
a.btn-default:hover,
a.btn-default:focus,
.btn-light:hover,
.btn-light:focus,
a.btn-light:hover,
a.btn-light:focus {
    background-color: var(--icaas-border) !important;
    border-color: var(--icaas-border) !important;
    color: var(--icaas-text) !important;
}

.btn-success,
a.btn-success,
a.btn-success:link,
a.btn-success:visited,
a.btn-success:active {
    background-color: #198754 !important;
    border-color: #198754 !important;
    color: #fff !important;
}

.btn-success:hover,
.btn-success:focus,
a.btn-success:hover,
a.btn-success:focus {
    background-color: #146c43 !important;
    border-color: #146c43 !important;
    color: #fff !important;
}

.btn-danger,
a.btn-danger,
a.btn-danger:link,
a.btn-danger:visited,
a.btn-danger:active {
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    color: #fff !important;
}

.btn-danger:hover,
.btn-danger:focus,
a.btn-danger:hover,
a.btn-danger:focus {
    background-color: #bb2d3b !important;
    border-color: #bb2d3b !important;
    color: #fff !important;
}

.btn-info,
a.btn-info,
a.btn-info:link,
a.btn-info:visited,
a.btn-info:active {
    background-color: #0dcaf0 !important;
    border-color: #0dcaf0 !important;
    color: #052c33 !important;
}

.btn-info:hover,
.btn-info:focus,
a.btn-info:hover,
a.btn-info:focus {
    background-color: #31d2f2 !important;
    border-color: #25cff2 !important;
    color: #052c33 !important;
}

.btn-outline-primary,
a.btn-outline-primary,
a.btn-outline-primary:link,
a.btn-outline-primary:visited,
a.btn-outline-primary:active {
    background-color: transparent !important;
    border-color: var(--icaas-primary) !important;
    color: var(--icaas-primary) !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
a.btn-outline-primary:hover,
a.btn-outline-primary:focus {
    background-color: var(--icaas-primary) !important;
    border-color: var(--icaas-primary) !important;
    color: #fff !important;
}

.btn-outline-danger,
a.btn-outline-danger,
a.btn-outline-danger:link,
a.btn-outline-danger:visited,
a.btn-outline-danger:active {
    background-color: transparent !important;
    border-color: #dc3545 !important;
    color: #dc3545 !important;
}

.btn-outline-danger:hover,
.btn-outline-danger:focus,
a.btn-outline-danger:hover,
a.btn-outline-danger:focus {
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    color: #fff !important;
}

.btn-outline-success,
a.btn-outline-success,
a.btn-outline-success:link,
a.btn-outline-success:visited,
a.btn-outline-success:active {
    background-color: transparent !important;
    border-color: #198754 !important;
    color: #198754 !important;
}

.btn-outline-success:hover,
.btn-outline-success:focus,
a.btn-outline-success:hover,
a.btn-outline-success:focus {
    background-color: #198754 !important;
    border-color: #198754 !important;
    color: #fff !important;
}

.btn-outline-light,
a.btn-outline-light,
a.btn-outline-light:link,
a.btn-outline-light:visited,
a.btn-outline-light:active {
    background-color: transparent !important;
    border-color: var(--icaas-border) !important;
    color: var(--icaas-text) !important;
}

.btn-outline-light:hover,
.btn-outline-light:focus,
a.btn-outline-light:hover,
a.btn-outline-light:focus {
    background-color: var(--icaas-surface-alt) !important;
    border-color: var(--icaas-border) !important;
    color: var(--icaas-text) !important;
}

.theme-switcher > .btn,
.theme-switcher > .btn:link,
.theme-switcher > .btn:visited,
.theme-switcher > .btn:active {
    background-color: transparent !important;
    border-color: color-mix(in srgb, var(--icaas-primary) 55%, var(--icaas-border)) !important;
    color: var(--icaas-primary) !important;
}

.theme-switcher > .btn.active,
.theme-switcher > .btn:hover,
.theme-switcher > .btn:focus {
    background-color: var(--icaas-primary) !important;
    border-color: var(--icaas-primary) !important;
    color: #fff !important;
}

.table,
table {
    --bs-table-bg: var(--icaas-surface-bg);
    --bs-table-color: var(--icaas-text);
    --bs-table-border-color: var(--icaas-border);
    color: var(--icaas-text) !important;
}

.table th,
.table td,
th,
td {
    border-color: var(--icaas-border) !important;
    color: var(--icaas-text) !important;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
    --bs-table-bg-type: var(--icaas-surface-alt);
}

.form-control,
.form-select,
select,
textarea,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
input[type="date"] {
    background-color: var(--icaas-surface-bg) !important;
    border-color: var(--icaas-border) !important;
    color: var(--icaas-text) !important;
}

.form-control:focus,
.form-select:focus,
select:focus,
textarea:focus,
input:focus {
    border-color: var(--icaas-primary) !important;
    box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--icaas-primary) 25%, transparent) !important;
}

.text-muted,
.form-text,
small {
    color: var(--icaas-muted) !important;
}

footer,
.icaas-footer,
#systemFooterIdentity {
    background: var(--icaas-footer-gradient, var(--icaas-footer-bg)) !important;
    background-color: var(--icaas-footer-bg) !important;
    background-image: none !important;
    color: var(--icaas-footer-text) !important;
}

.icaas-footer .content-wrapper,
.icaas-footer #systemFooterIdentity {
    background: var(--icaas-footer-gradient, var(--icaas-footer-bg)) !important;
    background-color: var(--icaas-footer-bg) !important;
    background-image: none !important;
    color: var(--icaas-footer-text) !important;
}

[data-bs-theme="light"] .icaas-footer,
[data-bs-theme="light"] .icaas-footer .content-wrapper,
[data-bs-theme="light"] .icaas-footer #systemFooterIdentity {
    background: #e8eef5 !important;
    background-color: #e8eef5 !important;
    background-image: none !important;
    color: #10223d !important;
}

[data-icaas-theme="auto"] .icaas-footer,
[data-icaas-theme="auto"] .icaas-footer .content-wrapper,
[data-icaas-theme="auto"] .icaas-footer #systemFooterIdentity {
    background: #e8eef5 !important;
    background-color: #e8eef5 !important;
    background-image: none !important;
    color: #10223d !important;
}

[data-icaas-theme="ocean"] .icaas-footer,
[data-icaas-theme="ocean"] .icaas-footer .content-wrapper,
[data-icaas-theme="ocean"] .icaas-footer #systemFooterIdentity,
[data-icaas-theme="forest"] .icaas-footer,
[data-icaas-theme="forest"] .icaas-footer .content-wrapper,
[data-icaas-theme="forest"] .icaas-footer #systemFooterIdentity,
[data-icaas-theme="royal"] .icaas-footer,
[data-icaas-theme="royal"] .icaas-footer .content-wrapper,
[data-icaas-theme="royal"] .icaas-footer #systemFooterIdentity,
[data-icaas-theme="contrast"] .icaas-footer,
[data-icaas-theme="contrast"] .icaas-footer .content-wrapper,
[data-icaas-theme="contrast"] .icaas-footer #systemFooterIdentity,
[data-icaas-theme="kcaa"] .icaas-footer,
[data-icaas-theme="kcaa"] .icaas-footer .content-wrapper,
[data-icaas-theme="kcaa"] .icaas-footer #systemFooterIdentity {
    background: var(--icaas-footer-bg) !important;
    background-color: var(--icaas-footer-bg) !important;
    background-image: none !important;
    color: var(--icaas-footer-text) !important;
}

[data-bs-theme="dark"] .icaas-footer,
[data-bs-theme="dark"] .icaas-footer .content-wrapper,
[data-bs-theme="dark"] .icaas-footer #systemFooterIdentity {
    background: linear-gradient(135deg, #111111 0%, #202020 50%, #2c2c2c 100%) !important;
    background-color: #181818 !important;
    background-image: none !important;
    color: #d8e2ef !important;
}

#systemFooterIdentity {
    border: 1px solid var(--icaas-border);
    box-shadow: var(--icaas-shadow);
}

@media (max-width: 768px) {
    .icaas-topbar > .container,
    .icaas-menubar > .container {
        align-items: stretch !important;
        flex-direction: column;
    }

    #systemIdentity {
        font-size: 16px;
        padding: 10px 16px;
        text-align: center;
        width: 100%;
    }

    .theme-switcher {
        align-self: center;
        margin-bottom: 10px;
    }

    .theme-switcher-control {
        border-radius: 16px;
        justify-content: center;
        max-width: 100%;
    }

    .theme-switcher-control .btn {
        flex: 1 1 72px;
    }
}

/* Mobile navigation refinements for sidebar and horizontal modes */
.icaas-horizontal-child-toggle {
    display: none;
}

@media (max-width: 991.98px) {
    .icaas-topbar > .container {
        align-items: center !important;
        display: grid !important;
        gap: 0.65rem;
        grid-template-columns: minmax(0, 1fr) auto;
        padding-bottom: 0.75rem;
        padding-top: 0.75rem;
    }

    .icaas-topbar .navbar-center,
    #systemIdentity {
        grid-column: 1 / -1;
        min-width: 0;
    }

    #systemIdentity {
        padding: 0.35rem 0.5rem;
    }

    .theme-switcher {
        align-self: stretch;
        grid-column: 1 / -1;
        margin: 0;
        max-width: 100%;
        overflow-x: auto;
        padding-bottom: 0.15rem;
        scrollbar-width: thin;
    }

    .theme-switcher-control {
        flex-wrap: nowrap;
        justify-content: flex-start;
        min-width: max-content;
    }

    .theme-switcher-control .btn {
        flex: 0 0 auto;
        min-height: 2.75rem;
    }

    .navigation-mode-switcher {
        align-items: stretch;
        grid-column: 1 / -1;
        margin: 0;
        width: 100%;
    }

    .navigation-mode-control {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .navigation-mode-control button {
        min-height: 2.75rem;
    }

    .icaas-mobile-nav-bar > .container {
        gap: 0.75rem;
        min-height: 3.5rem;
        padding-bottom: max(0.35rem, env(safe-area-inset-bottom));
        padding-top: 0.35rem;
    }

    .icaas-sidebar-toggle {
        min-height: 2.75rem;
        padding: 0.35rem 0;
    }

    .icaas-mobile-current {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .icaas-sidebar {
        display: flex;
        flex-direction: column;
        height: 100dvh;
        max-width: min(90vw, 22rem);
        overflow: hidden;
        padding-bottom: env(safe-area-inset-bottom);
    }

    .icaas-sidebar-header {
        flex: 0 0 auto;
        min-height: 4rem;
        padding-top: max(0.75rem, env(safe-area-inset-top));
    }

    .icaas-sidebar-close {
        height: 2.75rem;
        width: 2.75rem;
    }

    .icaas-sidebar-search {
        background: var(--icaas-surface-bg);
        flex: 0 0 auto;
        padding: 0.75rem;
    }

    .icaas-sidebar-search input {
        min-height: 2.75rem;
    }

    .icaas-sidebar-nav {
        flex: 1 1 auto;
        overscroll-behavior: contain;
        overflow-x: hidden;
        overflow-y: auto;
        padding: 0.6rem 0.7rem 1.25rem;
    }

    .icaas-sidebar-link,
    .icaas-sidebar-group > summary {
        min-height: 2.9rem;
        padding: 0.6rem 0.7rem;
    }

    .icaas-sidebar-item.depth-2 .icaas-sidebar-link,
    .icaas-sidebar-item.depth-2 .icaas-sidebar-group > summary,
    .icaas-sidebar-item.depth-3 .icaas-sidebar-link,
    .icaas-sidebar-item.depth-3 .icaas-sidebar-group > summary {
        min-height: 2.75rem;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
        position: sticky;
        top: 0;
        z-index: 1035;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav > .container {
        padding-bottom: max(0.35rem, env(safe-area-inset-bottom));
        padding-top: max(0.35rem, env(safe-area-inset-top));
    }

    .icaas-menu-mobile-header {
        align-items: center;
        min-height: 3rem;
    }

    .icaas-menu-toggler {
        height: 2.75rem;
        min-width: 2.75rem;
    }

    .icaas-navigation-collapse {
        max-height: calc(100dvh - 4rem);
        overscroll-behavior: contain;
        padding-bottom: max(1rem, env(safe-area-inset-bottom));
    }

    #menuBar li.has-popup,
    #menuBar li[aria-haspopup] {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 3rem;
    }

    #menuBar li.has-popup > a,
    #menuBar li[aria-haspopup] > a {
        grid-column: 1;
        min-width: 0;
        padding-right: 0.5rem !important;
    }

    #menuBar li.has-popup > a::after,
    #menuBar li[aria-haspopup] > a::after {
        display: none;
    }

    .icaas-horizontal-child-toggle {
        align-items: center;
        align-self: stretch;
        background: transparent;
        border: 0;
        border-left: 1px solid color-mix(in srgb, currentColor 18%, transparent);
        color: var(--icaas-menubar-text);
        display: flex;
        grid-column: 2;
        justify-content: center;
        min-height: 3rem;
        padding: 0;
    }

    .icaas-horizontal-child-toggle:focus-visible {
        box-shadow: inset 0 0 0 2px var(--icaas-accent);
        outline: 0;
    }

    .icaas-horizontal-child-toggle > span {
        border-bottom: 2px solid currentColor;
        border-right: 2px solid currentColor;
        height: 0.55rem;
        transform: rotate(45deg) translate(-0.1rem, -0.1rem);
        transition: transform 150ms ease;
        width: 0.55rem;
    }

    #menuBar li.is-submenu-open > .icaas-horizontal-child-toggle > span {
        transform: rotate(225deg) translate(-0.05rem, -0.05rem);
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.dynamic {
        display: none !important;
        grid-column: 1 / -1;
        position: static !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar li.is-submenu-open > ul.dynamic {
        display: block !important;
    }

    #menuBar ul.dynamic {
        margin-bottom: 0.45rem !important;
        margin-left: 0.55rem !important;
        max-width: calc(100% - 0.55rem);
    }

    #menuBar ul.dynamic li {
        width: 100%;
    }

    #menuBar ul.dynamic a {
        min-height: 2.75rem;
        overflow-wrap: anywhere;
    }

    #menuBar ul.dynamic .icaas-horizontal-child-toggle {
        color: var(--icaas-submenu-text);
    }
}

@media (max-width: 420px) {
    .icaas-topbar > .container {
        padding-left: 0.65rem;
        padding-right: 0.65rem;
    }

    .icaas-mobile-current {
        font-size: 0.82rem;
    }

    .icaas-sidebar {
        max-width: 94vw;
    }
}

/* Shared topbar preference switchers */
.preference-switcher {
    align-items: center;
    color: var(--icaas-topbar-text);
    display: flex;
    flex-direction: column;
    font-size: 0.68rem;
    font-weight: 700;
    gap: 0.25rem;
    margin-bottom: 0;
}

.preference-switcher-label {
    color: var(--icaas-muted);
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
}

.preference-switcher-control {
    align-items: center;
    background: color-mix(in srgb, var(--icaas-surface-alt) 84%, transparent);
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 28%, var(--icaas-border));
    border-radius: 999px;
    box-shadow: inset 0 1px 0 color-mix(in srgb, #fff 24%, transparent),
        0 0.3rem 0.9rem color-mix(in srgb, #0f172a 9%, transparent);
    display: inline-flex;
    flex-wrap: nowrap;
    gap: 3px;
    padding: 4px;
}

.preference-switcher-control button,
.preference-switcher-control .btn {
    background: transparent !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: var(--icaas-muted) !important;
    font-size: 0.72rem;
    font-weight: 750;
    letter-spacing: 0;
    min-height: 2rem;
    min-width: 3.65rem;
    overflow: hidden;
    padding: 0.35rem 0.68rem !important;
    position: relative;
    transform: translateY(0) scale(1);
    transition: background-color 170ms ease, box-shadow 170ms ease, color 170ms ease,
        transform 130ms ease;
}

.preference-switcher-control button::after,
.preference-switcher-control .btn::after {
    background: color-mix(in srgb, var(--icaas-primary) 24%, transparent);
    border-radius: inherit;
    content: "";
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    transform: scale(0.55);
    z-index: 0;
}

.preference-switcher-control button:hover,
.preference-switcher-control button:focus-visible,
.preference-switcher-control .btn:hover,
.preference-switcher-control .btn:focus-visible {
    background: color-mix(in srgb, var(--icaas-primary) 12%, transparent) !important;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--icaas-primary) 22%, transparent);
    color: var(--icaas-primary) !important;
    outline: 0;
    transform: translateY(-1px);
}

.preference-switcher-control button:active,
.preference-switcher-control .btn:active {
    transform: translateY(0) scale(0.95);
}

.preference-switcher-control button.active,
.preference-switcher-control .btn.active {
    background: linear-gradient(135deg, var(--icaas-primary-strong), var(--icaas-primary)) !important;
    box-shadow: 0 0.32rem 0.85rem color-mix(in srgb, var(--icaas-primary) 34%, transparent);
    color: #fff !important;
}

.preference-switcher-control button.is-activating::after,
.preference-switcher-control .btn.is-activating::after {
    animation: icaas-switcher-pulse 420ms ease-out;
}

@keyframes icaas-switcher-pulse {
    0% {
        opacity: 0.7;
        transform: scale(0.45);
    }

    100% {
        opacity: 0;
        transform: scale(1.35);
    }
}

@media (prefers-reduced-motion: reduce) {
    .preference-switcher-control button,
    .preference-switcher-control .btn {
        transition: none;
    }

    .preference-switcher-control button.is-activating::after,
    .preference-switcher-control .btn.is-activating::after {
        animation: none;
    }
}

@media (max-width: 991.98px) {
    .preference-switcher {
        align-items: stretch;
        width: 100%;
    }

    .preference-switcher-label {
        padding-left: 0.35rem;
    }

    .preference-switcher-control {
        display: grid;
        width: max-content;
    }

    .theme-switcher .preference-switcher-control {
        grid-template-columns: repeat(7, minmax(4.25rem, 1fr));
    }

    .navigation-mode-switcher .preference-switcher-control {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .preference-switcher-control button,
    .preference-switcher-control .btn {
        min-height: 2.75rem;
    }
}

/* Compact preference links with slide-in option panels */
.icaas-topbar,
.icaas-topbar > .container {
    overflow: visible;
}

.preference-switcher {
    align-items: flex-end;
    display: block;
    position: relative;
}

.preference-switcher-trigger {
    align-items: center;
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--icaas-topbar-text);
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 800;
    gap: 0.4rem;
    min-height: 2.5rem;
    padding: 0.35rem 0.25rem;
    transition: border-color 160ms ease, color 160ms ease, transform 130ms ease;
}

.preference-switcher-trigger:hover,
.preference-switcher-trigger:focus-visible,
.preference-switcher.is-open .preference-switcher-trigger {
    border-bottom-color: var(--icaas-accent);
    color: var(--icaas-primary);
    outline: 0;
}

.preference-switcher-trigger:active {
    transform: scale(0.96);
}

.preference-switcher-current {
    color: var(--icaas-muted);
    font-size: 0.68rem;
    font-weight: 700;
}

.preference-switcher-chevron {
    border-bottom: 2px solid currentColor;
    border-right: 2px solid currentColor;
    height: 0.42rem;
    transform: rotate(45deg) translateY(-0.12rem);
    transition: transform 180ms ease;
    width: 0.42rem;
}

.preference-switcher.is-open .preference-switcher-chevron {
    transform: rotate(225deg) translate(-0.05rem, -0.05rem);
}

.preference-switcher .preference-switcher-control {
    background: var(--icaas-surface-bg);
    border-color: var(--icaas-border);
    border-radius: 0.5rem;
    box-shadow: 0 0.85rem 2rem color-mix(in srgb, #0f172a 22%, transparent);
    display: grid;
    gap: 0.3rem;
    opacity: 0;
    padding: 0.45rem;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: calc(100% + 0.3rem);
    transform: translateY(-0.65rem) scale(0.98);
    transform-origin: top right;
    transition: opacity 170ms ease, transform 200ms ease, visibility 200ms;
    visibility: hidden;
    z-index: 1100;
}

.preference-switcher.is-open .preference-switcher-control {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
    visibility: visible;
}

.theme-switcher .preference-switcher-control {
    grid-template-columns: repeat(4, minmax(4.5rem, 1fr));
    width: min(24rem, 88vw);
}

.navigation-mode-switcher .preference-switcher-control {
    grid-template-columns: repeat(2, minmax(6.5rem, 1fr));
    width: 15rem;
}

.font-switcher .preference-switcher-control {
    grid-template-columns: repeat(2, minmax(5.5rem, 1fr));
    width: 14rem;
}

.font-size-switcher .preference-switcher-control {
    grid-template-columns: repeat(3, minmax(4.75rem, 1fr));
    width: 16rem;
}

.preference-switcher .preference-switcher-control button,
.preference-switcher .preference-switcher-control .btn {
    min-height: 2.4rem;
    white-space: nowrap;
}

@media (min-width: 992px) {
    [data-icaas-navigation="sidebar"][data-icaas-sidebar="collapsed"]
    .icaas-sidebar-group[open] > ul {
        display: none;
    }

    [data-icaas-navigation="sidebar"][data-icaas-sidebar="collapsed"]
    .icaas-sidebar-item:hover > .icaas-sidebar-group > ul,
    [data-icaas-navigation="sidebar"][data-icaas-sidebar="collapsed"]
    .icaas-sidebar-item:focus-within > .icaas-sidebar-group > ul {
        display: block;
    }
}

@media (max-width: 991.98px) {
    .icaas-topbar > .container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .theme-switcher,
    .navigation-mode-switcher {
        align-items: stretch;
        grid-column: auto;
        margin: 0 !important;
        min-width: 0;
        width: 100%;
    }

    .preference-switcher-trigger {
        justify-content: center;
        width: 100%;
    }

    .preference-switcher .preference-switcher-control {
        bottom: auto;
        left: var(--preference-panel-left, 0);
        max-height: calc(100dvh - var(--preference-panel-top, 5rem) - 0.75rem);
        max-width: calc(100vw - 1.5rem);
        overflow-x: hidden;
        overflow-y: auto;
        position: fixed;
        right: auto;
        top: var(--preference-panel-top, 5rem);
        transform-origin: top center;
        width: var(--preference-panel-width, calc(100vw - 1.5rem));
        z-index: 1200;
    }

    .theme-switcher .preference-switcher-control {
        grid-template-columns: repeat(2, minmax(5rem, 1fr));
        width: var(--preference-panel-width, calc(100vw - 1.5rem));
    }

    .navigation-mode-switcher .preference-switcher-control {
        left: var(--preference-panel-left, 0);
        right: auto;
        transform-origin: top center;
        width: var(--preference-panel-width, calc(100vw - 1.5rem));
    }

    .font-switcher .preference-switcher-control {
        grid-template-columns: repeat(2, minmax(5rem, 1fr));
        width: var(--preference-panel-width, calc(100vw - 1.5rem));
    }

    .font-size-switcher .preference-switcher-control {
        grid-template-columns: repeat(3, minmax(4.5rem, 1fr));
        width: var(--preference-panel-width, calc(100vw - 1.5rem));
    }
}

@media (prefers-reduced-motion: reduce) {
    .preference-switcher-trigger,
    .preference-switcher-chevron,
    .preference-switcher .preference-switcher-control {
        transition: none;
    }
}

/* Mobile horizontal navigation uses the same solid surface as the sidebar */
@media (max-width: 991.98px) {
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav > .container,
    [data-icaas-navigation="dropdown"] .icaas-menu-mobile-header,
    [data-icaas-navigation="dropdown"] .icaas-navigation-collapse,
    [data-icaas-navigation="dropdown"] .icaas-navigation,
    [data-icaas-navigation="dropdown"] .icaas-navigation-menu,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul {
        background: var(--icaas-surface-bg) !important;
        background-color: var(--icaas-surface-bg) !important;
        background-image: none !important;
        color: var(--icaas-text) !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
        border-bottom: 1px solid var(--icaas-border);
        box-shadow: var(--icaas-shadow);
    }

    [data-icaas-navigation="dropdown"] .icaas-menu-mobile-header {
        border-bottom: 1px solid transparent;
        padding: 0.25rem 0;
    }

    [data-icaas-navigation="dropdown"] .icaas-menu-mobile-title,
    [data-icaas-navigation="dropdown"] .icaas-menu-toggler,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > a,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > a:link,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > a:visited,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav
    #menuBar > ul > li > .icaas-horizontal-child-toggle {
        color: var(--icaas-text) !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-menu-toggler {
        background: var(--icaas-surface-alt) !important;
        border: 1px solid var(--icaas-border) !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-menu-toggler-icon span {
        background: var(--icaas-text) !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-navigation-collapse {
        border-top-color: var(--icaas-border);
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li {
        background: var(--icaas-surface-bg) !important;
        border-bottom: 1px solid color-mix(in srgb, var(--icaas-border) 72%, transparent);
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > a:hover,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > a:focus,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > a.selected {
        background: var(--icaas-submenu-hover-bg) !important;
        color: var(--icaas-submenu-hover-text) !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav
    #menuBar li.has-popup:not(.is-submenu-open) > ul.dynamic,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav
    #menuBar li[aria-haspopup]:not(.is-submenu-open) > ul.dynamic {
        display: none !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav
    #menuBar li.is-submenu-open > ul.dynamic {
        display: block !important;
    }
}

/* Keep preference controls above desktop horizontal flyouts */
.icaas-topbar {
    position: relative;
    z-index: 1120;
}

@media (min-width: 992px) {
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
        background: linear-gradient(90deg, var(--icaas-menubar-bg), var(--icaas-primary-strong)) !important;
        box-shadow:
            0 0.6rem 1.35rem color-mix(in srgb, #0f172a 18%, transparent),
            0 1px 0 color-mix(in srgb, var(--icaas-menubar-text) 18%, transparent);
        isolation: isolate;
        position: sticky;
        top: 0;
        z-index: 1100;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav::after {
        background: var(--icaas-accent);
        bottom: -1px;
        content: "";
        height: 2px;
        left: 0;
        opacity: 0.85;
        pointer-events: none;
        position: absolute;
        right: 0;
    }

    [data-icaas-navigation="sidebar"] .icaas-dropdown-nav {
        display: none !important;
        height: 0;
        overflow: hidden;
        visibility: hidden;
    }

    [data-icaas-navigation="sidebar"] .icaas-app-shell {
        display: flex;
    }

    [data-icaas-navigation="sidebar"] .icaas-sidebar {
        display: block;
    }

    #icaasNavigationOptions {
        bottom: auto;
        box-sizing: border-box;
        grid-template-columns: repeat(2, minmax(8.5rem, 1fr));
        left: var(--preference-panel-left, auto);
        max-width: calc(100vw - 1.5rem);
        overflow: visible;
        position: fixed;
        right: auto;
        top: var(--preference-panel-top, 4rem);
        transform-origin: top center;
        width: var(--preference-panel-width, 19rem);
        z-index: 1250;
    }

    #icaasNavigationOptions > button {
        align-items: center;
        display: inline-flex !important;
        justify-content: center;
        min-width: 0;
        opacity: 1 !important;
        overflow: visible;
        visibility: visible !important;
        width: 100%;
    }
}

/* Corporate ICAAS header */
.navbar.icaas-topbar {
    background: var(--icaas-topbar-bg) !important;
    border-bottom: 1px solid var(--icaas-border);
    box-shadow: 0 0.35rem 1.25rem color-mix(in srgb, #0f172a 10%, transparent);
    min-height: 5.5rem;
    padding: 0 !important;
}

.icaas-topbar::before {
    background: linear-gradient(90deg, var(--icaas-primary-strong), var(--icaas-primary) 72%, var(--icaas-accent));
    content: "";
    height: 4px;
    inset: 0 0 auto;
    position: absolute;
}

.icaas-topbar > .icaas-header-shell {
    align-items: center !important;
    display: grid !important;
    flex-wrap: nowrap !important;
    gap: clamp(1rem, 2.5vw, 2.25rem);
    grid-template-columns: minmax(20rem, 1fr) auto;
    justify-content: stretch !important;
    min-height: 5.5rem;
    padding-bottom: 0.7rem;
    padding-top: 0.85rem;
}

.icaas-brand {
    align-items: center;
    color: var(--icaas-topbar-text) !important;
    display: inline-flex;
    gap: 1rem;
    min-width: 0;
    text-decoration: none !important;
}

.icaas-brand:hover,
.icaas-brand:focus {
    color: var(--icaas-topbar-text) !important;
}

.icaas-brand-logo {
    background: #fff;
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 18%, var(--icaas-border));
    border-radius: 0.4rem;
    flex: 0 0 auto;
    height: 3.65rem;
    object-fit: contain;
    padding: 0.25rem 0.4rem;
    width: 8.2rem;
}

.icaas-brand-copy {
    background: linear-gradient(90deg,
        color-mix(in srgb, var(--icaas-primary) 8%, transparent),
        transparent);
    border-left: 3px solid var(--icaas-accent);
    border-radius: 0 0.35rem 0.35rem 0;
    display: grid;
    line-height: 1.1;
    min-width: 0;
    padding: 0.48rem 0.75rem 0.48rem 0.9rem;
}

.icaas-brand-authority {
    align-items: center;
    color: var(--icaas-primary-strong);
    display: flex;
    font-size: 0.78rem;
    font-weight: 900;
    line-height: 1.2;
    margin-bottom: 0.28rem;
    overflow: hidden;
    text-overflow: ellipsis;
    text-shadow: 0 1px 0 color-mix(in srgb, var(--icaas-surface-bg) 70%, transparent);
    text-transform: uppercase;
    white-space: nowrap;
}

.icaas-brand-authority::after {
    background: var(--icaas-accent);
    content: "";
    flex: 1 1 auto;
    height: 2px;
    margin-left: 0.65rem;
    max-width: 3.5rem;
    min-width: 1.25rem;
    opacity: 0.9;
}

#systemIdentity {
    background: transparent !important;
    border: 0;
    color: var(--icaas-primary-strong) !important;
    display: flex;
    flex-wrap: wrap;
    font-size: clamp(1rem, 1.35vw, 1.32rem);
    font-weight: 850;
    gap: 0.15rem 0.45rem;
    line-height: 1.15;
    margin: 0;
    max-width: 34rem;
    padding: 0;
    text-align: left;
    text-shadow: 0 1px 0 color-mix(in srgb, #fff 45%, transparent);
}

.icaas-brand-description {
    color: var(--icaas-primary-strong) !important;
    letter-spacing: 0;
}

.icaas-brand-acronym {
    color: var(--icaas-accent);
    font-weight: 900;
    white-space: nowrap;
}

.icaas-header-actions {
    align-items: center;
    display: flex;
    gap: 1rem;
    justify-content: flex-end;
    min-width: 0;
    position: relative;
}

.icaas-site-settings-toggle {
    align-items: center;
    background: var(--icaas-primary);
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 78%, #000);
    border-radius: 0.4rem;
    color: #fff;
    display: inline-flex;
    flex: 0 0 auto;
    font-family: inherit;
    font-size: 0.74rem;
    font-weight: 800;
    gap: 0.45rem;
    justify-content: center;
    min-height: 2.65rem;
    padding: 0.5rem 0.7rem;
    transition: background-color 160ms ease, box-shadow 160ms ease, transform 130ms ease;
}

.icaas-site-settings-toggle:hover,
.icaas-site-settings-toggle:focus-visible,
.icaas-site-settings-toggle.is-active {
    background: var(--icaas-primary-strong);
    box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--icaas-primary) 22%, transparent);
    color: #fff;
    outline: 0;
}

.icaas-site-settings-toggle:active {
    transform: scale(0.96);
}

.icaas-site-settings-toggle .glyphicon {
    font-size: 1rem;
    transition: transform 220ms ease;
}

.icaas-site-settings-toggle.is-active .glyphicon {
    transform: rotate(70deg);
}

.icaas-site-settings-panel {
    align-items: center;
    display: flex;
    gap: 0.65rem;
    max-width: 80rem;
    opacity: 1;
    transform: translateX(0);
    transition: max-width 240ms ease, opacity 160ms ease, transform 220ms ease,
        visibility 220ms;
    visibility: visible;
}

[data-icaas-site-settings="closed"] .icaas-site-settings-panel {
    max-width: 0;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    transform: translateX(0.75rem);
    visibility: hidden;
}

.icaas-account {
    border-right: 1px solid var(--icaas-border);
    color: var(--icaas-topbar-text);
    margin: 0;
    padding-right: 1rem;
}

.icaas-account-user,
.icaas-account-anonymous {
    align-items: center;
    display: flex;
    gap: 0.65rem;
}

.icaas-account-avatar {
    background: linear-gradient(135deg, var(--icaas-primary-strong), var(--icaas-primary));
    border: 2px solid color-mix(in srgb, var(--icaas-primary) 20%, #fff);
    border-radius: 50%;
    box-shadow: 0 0.2rem 0.55rem color-mix(in srgb, var(--icaas-primary) 24%, transparent);
    flex: 0 0 2.25rem;
    height: 2.25rem;
    position: relative;
    width: 2.25rem;
}

.icaas-account-avatar::before {
    background: #fff;
    border-radius: 50%;
    content: "";
    height: 0.55rem;
    left: 50%;
    position: absolute;
    top: 0.45rem;
    transform: translateX(-50%);
    width: 0.55rem;
}

.icaas-account-avatar::after {
    background: #fff;
    border-radius: 0.65rem 0.65rem 0.35rem 0.35rem;
    bottom: 0.38rem;
    content: "";
    height: 0.65rem;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 1.05rem;
}

.icaas-account-copy {
    display: grid;
    line-height: 1.1;
    max-width: 12rem;
}

.icaas-account-label {
    color: var(--icaas-muted);
    font-size: 0.66rem;
    font-weight: 700;
}

#login .username,
#login .icaas-account-name {
    color: var(--icaas-topbar-text) !important;
    font-size: 0.8rem;
    font-weight: 800;
    overflow: hidden;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#login .icaas-signout,
#login .icaas-account-link {
    border: 1px solid var(--icaas-border);
    border-radius: 0.35rem;
    color: var(--icaas-primary) !important;
    font-size: 0.72rem;
    font-weight: 800;
    min-height: 2rem;
    padding: 0.38rem 0.6rem;
    text-decoration: none !important;
    white-space: nowrap;
}

#login .icaas-signout:hover,
#login .icaas-signout:focus,
#login .icaas-account-link:hover,
#login .icaas-account-link:focus {
    background: var(--icaas-surface-alt);
    border-color: var(--icaas-primary);
    color: var(--icaas-primary) !important;
}

#login .icaas-account-link.secondary {
    background: var(--icaas-primary);
    border-color: var(--icaas-primary);
    color: #fff !important;
}

.icaas-header-preferences {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    justify-content: flex-end;
}

@media (min-width: 992px) {
    [data-icaas-site-settings="open"] .icaas-site-settings-panel {
        max-width: min(74vw, 80rem);
        overflow: visible;
    }
}

.icaas-header-preferences .preference-switcher-trigger {
    border: 1px solid transparent;
    border-radius: 0.35rem;
    min-height: 2.4rem;
    padding: 0.4rem 0.55rem;
}

.icaas-header-preferences .preference-switcher-trigger:hover,
.icaas-header-preferences .preference-switcher-trigger:focus-visible,
.icaas-header-preferences .preference-switcher.is-open .preference-switcher-trigger {
    background: var(--icaas-surface-alt);
    border-color: var(--icaas-border);
}

@media (max-width: 1199.98px) {
    .icaas-topbar > .icaas-header-shell {
        grid-template-columns: minmax(17rem, 1fr) auto;
    }

    .icaas-brand-authority,
    .icaas-account-label {
        display: none;
    }

    .icaas-brand-logo {
        height: 3.25rem;
        width: 7.25rem;
    }
}

@media (max-width: 991.98px) {
    .navbar.icaas-topbar {
        min-height: 0;
    }

    .icaas-topbar > .icaas-header-shell {
        display: grid !important;
        gap: 0.75rem;
        grid-template-columns: minmax(0, 1fr);
        padding: 0.85rem 0.75rem 0.75rem;
    }

    .icaas-brand {
        gap: 0.75rem;
    }

    .icaas-brand-logo {
        height: 3rem;
        width: 6.5rem;
    }

    .icaas-brand-copy {
        padding-left: 0.75rem;
    }

    #systemIdentity {
        font-size: clamp(1rem, 2vw, 1.2rem);
        padding: 0;
        width: auto;
    }

    .icaas-header-actions {
        border-top: 1px solid var(--icaas-border);
        display: grid;
        gap: 0.65rem;
        grid-template-columns: minmax(0, 1fr) auto;
        padding-top: 0.65rem;
    }

    .icaas-account {
        border-right: 0;
        min-width: 0;
        padding-right: 0;
    }

    .icaas-account-user {
        min-width: 0;
    }

    .icaas-account-copy {
        max-width: min(36vw, 11rem);
    }

    .icaas-header-preferences {
        gap: 0.25rem;
        justify-content: flex-end;
    }

    .theme-switcher,
    .navigation-mode-switcher {
        width: auto;
    }

    .preference-switcher-trigger {
        justify-content: center;
        width: auto;
    }
}

@media (max-width: 575.98px) {
    .icaas-brand-logo {
        height: 2.7rem;
        width: 5.8rem;
    }

    .icaas-brand-authority {
        display: none;
    }

    .icaas-brand-copy {
        min-height: 2.25rem;
        place-content: center;
    }

    .icaas-header-actions {
        align-items: center;
    }

    .icaas-account-avatar {
        flex-basis: 2rem;
        height: 2rem;
        width: 2rem;
    }

    .icaas-account-copy {
        max-width: 8rem;
    }

    .icaas-account-user {
        gap: 0.45rem;
    }

    #login .icaas-signout {
        padding-left: 0.45rem;
        padding-right: 0.45rem;
    }

    .preference-switcher-current {
        display: none;
    }

    .icaas-header-preferences .preference-switcher-trigger {
        gap: 0.3rem;
        padding-left: 0.45rem;
        padding-right: 0.45rem;
    }
}

/* Navigation controls own their appearance and must never inherit action-button layout. */
@media (min-width: 992px) {
    .icaas-dropdown-nav .icaas-horizontal-child-toggle,
    .icaas-dropdown-nav .icaas-horizontal-child-toggle.btn {
        display: none !important;
    }
}

/* Compact floating display preferences */
.navbar.icaas-topbar,
.icaas-topbar > .icaas-header-shell {
    min-height: 4.75rem;
}

.icaas-topbar > .icaas-header-shell {
    padding-bottom: 0.45rem;
    padding-top: 0.45rem;
}

.icaas-workspace-shortcut {
    align-items: center;
    background: var(--icaas-primary);
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 76%, #000);
    color: #fff !important;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.76rem;
    font-weight: 800;
    gap: 0.45rem;
    min-height: 2.75rem;
    padding: 0.55rem 0.8rem;
    text-decoration: none !important;
    transition: box-shadow 160ms ease, transform 160ms ease;
}

.icaas-workspace-shortcut:hover,
.icaas-workspace-shortcut:focus-visible {
    box-shadow: 0 0.55rem 1.2rem color-mix(in srgb, var(--icaas-primary) 28%, transparent);
    color: #fff !important;
    transform: translateY(-0.12rem);
}

.icaas-workspace-shortcut .glyphicon {
    font-size: 1rem;
}

.icaas-mobile-current {
    align-items: center;
    color: inherit;
    display: inline-flex;
    gap: 0.42rem;
    text-decoration: none;
}

.icaas-mobile-current:hover,
.icaas-mobile-current:focus {
    color: inherit;
    text-decoration: none;
}

.icaas-header-actions {
    overflow: visible;
    position: relative;
    z-index: 1120;
}

[data-icaas-navigation="dropdown"] body.icaas-ribbon-floating .icaas-floating-ribbon {
    display: none !important;
}

.icaas-floating-ribbon {
    transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease,
        padding 180ms ease, transform 180ms ease;
}

.icaas-ribbon-context {
    display: none;
}

@media (min-width: 992px) {
    body.icaas-ribbon-floating .icaas-floating-ribbon {
        background:
            linear-gradient(135deg,
                color-mix(in srgb, var(--icaas-surface-bg) 94%, transparent),
                color-mix(in srgb, var(--icaas-surface-alt) 88%, transparent));
        align-items: center;
        border: 1px solid var(--icaas-border);
        border-radius: 0.75rem;
        box-shadow: 0 1rem 2.5rem color-mix(in srgb, #0f172a 20%, transparent);
        display: inline-flex;
        flex-wrap: nowrap;
        gap: 0.5rem;
        grid-template-columns: none;
        justify-content: flex-end;
        max-width: calc(100vw - 2rem);
        min-width: 0;
        padding: 0.45rem;
        position: fixed;
        right: clamp(1rem, 2vw, 2rem);
        top: 0.65rem;
        transform: translateY(0);
        z-index: 1900;
    }

    body.icaas-ribbon-floating .icaas-ribbon-context {
        align-items: stretch;
        display: inline-flex;
        flex: 0 1 auto;
        gap: 0.45rem;
        min-width: 0;
    }

    body.icaas-ribbon-floating .icaas-ribbon-chip {
        align-items: center;
        border: 1px solid color-mix(in srgb, var(--icaas-primary) 22%, var(--icaas-border));
        border-radius: 0.7rem;
        box-shadow: inset 0 1px 0 color-mix(in srgb, #fff 45%, transparent);
        color: var(--icaas-text);
        display: inline-flex;
        gap: 0.5rem;
        line-height: 1.05;
        min-height: 2.3rem;
        min-width: 0;
        padding: 0.38rem 0.58rem;
        white-space: nowrap;
    }

    body.icaas-ribbon-floating .icaas-ribbon-greeting {
        background:
            linear-gradient(135deg,
                color-mix(in srgb, var(--icaas-primary) 11%, var(--icaas-surface-bg)),
                color-mix(in srgb, var(--icaas-surface-alt) 92%, var(--icaas-primary)));
        max-width: clamp(9.5rem, 13vw, 15rem);
    }

    body.icaas-ribbon-floating .icaas-ribbon-profile {
        background:
            linear-gradient(135deg,
                color-mix(in srgb, var(--icaas-success) 16%, var(--icaas-surface-bg)),
                color-mix(in srgb, var(--icaas-primary) 10%, var(--icaas-surface-alt)));
        border-color: color-mix(in srgb, var(--icaas-success) 30%, var(--icaas-border));
        max-width: clamp(10rem, 15vw, 17rem);
    }

    body.icaas-ribbon-floating .icaas-ribbon-kicker {
        color: var(--icaas-muted);
        display: block;
        font-size: 0.6rem;
        font-weight: 900;
        letter-spacing: 0.06em;
        text-transform: uppercase;
    }

    body.icaas-ribbon-floating .icaas-ribbon-chip strong {
        color: var(--icaas-text);
        display: block;
        font-size: 0.78rem;
        font-weight: 900;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    body.icaas-ribbon-floating .icaas-ribbon-user {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    body.icaas-ribbon-floating .icaas-ribbon-profile-icon {
        align-items: center;
        background: #fff;
        border-radius: 999px;
        box-shadow: 0 0.35rem 0.9rem color-mix(in srgb, var(--icaas-primary) 18%, transparent);
        color: var(--icaas-primary);
        display: inline-flex;
        flex: 0 0 1.8rem;
        height: 1.8rem;
        justify-content: center;
        width: 1.8rem;
    }

    body.icaas-ribbon-floating .icaas-floating-ribbon .icaas-workspace-shortcut,
    body.icaas-ribbon-floating .icaas-floating-ribbon .icaas-site-settings-toggle {
        flex: 0 0 auto;
        min-width: 0;
        padding-left: 0.7rem;
        padding-right: 0.7rem;
    }

    body.icaas-ribbon-floating .icaas-floating-ribbon .icaas-account {
        flex: 0 1 auto;
        margin: 0;
        min-width: 0;
        padding: 0.35rem 0.45rem;
        width: auto;
    }

    body.icaas-ribbon-floating .icaas-floating-ribbon .icaas-account-user {
        align-items: center;
        display: flex;
        gap: 0.45rem;
        min-width: 0;
        width: auto;
    }

    body.icaas-ribbon-floating .icaas-floating-ribbon .icaas-account-copy {
        max-width: clamp(6rem, 10vw, 10rem);
        min-width: 0;
    }

    body.icaas-ribbon-floating .icaas-floating-ribbon .icaas-site-settings-panel {
        top: calc(100% + 0.55rem);
    }

    body.icaas-ribbon-floating .icaas-floating-ribbon .icaas-workspace-shortcut,
    body.icaas-ribbon-floating .icaas-floating-ribbon .icaas-site-settings-toggle,
    body.icaas-ribbon-floating .icaas-floating-ribbon #login .icaas-signout,
    body.icaas-ribbon-floating .icaas-floating-ribbon #login .icaas-account-link {
        min-height: 2.3rem;
    }
}

@media (max-width: 991.98px) {
    .icaas-floating-ribbon {
        position: relative;
    }

    .icaas-ribbon-context {
        display: none !important;
    }
}

.icaas-header-actions,
.icaas-site-settings-panel,
[data-icaas-site-settings="open"] .icaas-site-settings-panel {
    z-index: 1800 !important;
}

.icaas-site-settings-panel .preference-switcher-control {
    z-index: 1810 !important;
}

.icaas-site-settings-panel,
[data-icaas-site-settings="open"] .icaas-site-settings-panel {
    align-items: stretch;
    background: var(--icaas-surface-bg);
    border: 1px solid var(--icaas-border);
    border-radius: 0.5rem;
    box-shadow: 0 1rem 2.5rem color-mix(in srgb, #0f172a 24%, transparent);
    display: block;
    max-height: min(28rem, calc(100dvh - 6rem));
    max-width: none;
    opacity: 1;
    overflow: visible;
    padding: 0.55rem;
    position: absolute;
    right: 0;
    top: calc(100% + 0.45rem);
    transform: translateY(0);
    transform: none;
    transition: opacity 160ms ease, visibility 180ms;
    visibility: visible;
    width: min(27rem, calc(100vw - 1.5rem));
    z-index: 1300;
}

[data-icaas-site-settings="closed"] .icaas-site-settings-panel {
    max-height: min(28rem, calc(100dvh - 6rem));
    max-width: none;
    opacity: 0;
    overflow: visible;
    pointer-events: none;
    transform: translateY(-0.45rem);
    visibility: hidden;
}

.icaas-site-settings-panel .icaas-header-preferences {
    display: grid;
    gap: 0.45rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
}

.icaas-site-settings-panel .icaas-header-preferences > .icaas-mobile-section-label {
    grid-column: 1 / -1;
}

.icaas-site-settings-panel .preference-switcher,
.icaas-site-settings-panel .preference-switcher-trigger {
    min-width: 0;
    width: 100%;
}

.icaas-site-settings-panel .preference-switcher {
    position: relative;
}

.icaas-site-settings-panel .preference-switcher-trigger {
    min-height: 2.75rem;
}

.icaas-site-settings-panel .preference-switcher .preference-switcher-control {
    bottom: auto !important;
    left: 0 !important;
    max-height: min(22rem, calc(100dvh - 7rem));
    max-width: calc(100vw - 3rem);
    overflow-x: hidden;
    overflow-y: auto;
    position: absolute !important;
    right: auto !important;
    top: calc(100% + 0.35rem) !important;
    transform-origin: top left;
    width: min(20rem, calc(100vw - 3rem)) !important;
    z-index: 1400;
}

.icaas-site-settings-panel .navigation-mode-switcher .preference-switcher-control,
.icaas-site-settings-panel .font-size-switcher .preference-switcher-control {
    left: auto !important;
    right: 0 !important;
    transform-origin: top right;
}

.icaas-site-settings-panel .navigation-mode-switcher .preference-switcher-control {
    grid-template-columns: repeat(2, minmax(6.5rem, 1fr));
    width: min(18rem, calc(100vw - 3rem)) !important;
}

.icaas-site-settings-panel .theme-switcher .preference-switcher-control {
    grid-template-columns: repeat(3, minmax(4.75rem, 1fr));
}

.icaas-site-settings-panel .font-switcher .preference-switcher-control {
    grid-template-columns: repeat(2, minmax(5.5rem, 1fr));
}

.icaas-site-settings-panel .font-size-switcher .preference-switcher-control {
    grid-template-columns: repeat(3, minmax(4.25rem, 1fr));
}

@media (max-width: 991.98px) {
    .navbar.icaas-topbar,
    .icaas-topbar > .icaas-header-shell {
        min-height: 0;
    }

    .icaas-header-actions {
        align-items: center;
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .icaas-account {
        border-bottom: 0;
        min-width: 0;
    }

    .icaas-site-settings-toggle {
        margin: 0.45rem max(0.75rem, env(safe-area-inset-right)) 0.45rem 0;
    }

    .icaas-site-settings-panel,
    [data-icaas-site-settings="open"] .icaas-site-settings-panel,
    [data-icaas-site-settings="closed"] .icaas-site-settings-panel {
        left: max(0.75rem, env(safe-area-inset-left));
        max-height: min(26rem, calc(100dvh - 8rem));
        right: max(0.75rem, env(safe-area-inset-right));
        top: calc(100% + 0.35rem);
        width: auto;
    }

    .icaas-site-settings-panel .icaas-header-preferences {
        background: transparent;
        padding: 0;
    }
}

@media (max-width: 575.98px) {
    .icaas-brand {
        padding-bottom: 0.5rem;
        padding-top: 0.5rem;
    }

    .icaas-account {
        padding-bottom: 0.5rem;
        padding-top: 0.5rem;
    }

    .icaas-site-settings-label {
        display: none;
    }

    .icaas-site-settings-toggle {
        aspect-ratio: 1;
        min-height: 2.5rem;
        padding: 0.45rem;
        width: 2.5rem;
    }
}

html {
    --icaas-font-family: "Segoe UI", Aptos, Arial, sans-serif;
    font-size: 100%;
}

html[data-icaas-font-size="small"] {
    font-size: 90%;
}

html[data-icaas-font-size="standard"] {
    font-size: 100%;
}

html[data-icaas-font-size="large"] {
    font-size: 112.5%;
}

html[data-icaas-font="arial"] {
    --icaas-font-family: Arial, Helvetica, sans-serif;
}

html[data-icaas-font="aptos"] {
    --icaas-font-family: Aptos, "Segoe UI", Arial, sans-serif;
}

html[data-icaas-font="superior"] {
    --icaas-font-family: Inter, "Segoe UI", Aptos, Arial, sans-serif;
}

html[data-icaas-font="source-sans"] {
    --icaas-font-family: "Source Sans Pro", Verdana, sans-serif;
}

html[data-icaas-font="red-hat"] {
    --icaas-font-family: "Red Hat Display", "Segoe UI", Arial, sans-serif;
}

html[data-icaas-font="verdana"] {
    --icaas-font-family: Verdana, Geneva, sans-serif;
}

html[data-icaas-font="georgia"] {
    --icaas-font-family: Georgia, "Times New Roman", serif;
}

html[data-icaas-font] body,
html[data-icaas-font] button,
html[data-icaas-font] input,
html[data-icaas-font] select,
html[data-icaas-font] textarea,
html[data-icaas-font] table,
html[data-icaas-font] label,
html[data-icaas-font] a {
    font-family: var(--icaas-font-family) !important;
}

/* KCAA corporate theme: crisp geometry, official blue navigation and orange action accents. */
[data-icaas-theme="kcaa"] .icaas-topbar {
    border-bottom-color: #e77d34;
    box-shadow: 0 0.2rem 0.7rem rgba(22, 43, 60, 0.08);
}

[data-icaas-theme="kcaa"] .icaas-menubar,
[data-icaas-theme="kcaa"] .icaas-mobile-nav-bar {
    background: #055cab !important;
    border-color: #03477f !important;
}

[data-icaas-theme="kcaa"] .card,
[data-icaas-theme="kcaa"] .pm-card,
[data-icaas-theme="kcaa"] .modal-content,
[data-icaas-theme="kcaa"] .account-panel {
    border-radius: 0.25rem !important;
    border-color: #c5d2de !important;
    box-shadow: 0 0.45rem 1.1rem rgba(5, 92, 171, 0.1) !important;
}

[data-icaas-theme="kcaa"] .card-header,
[data-icaas-theme="kcaa"] .pm-card .card-header,
[data-icaas-theme="kcaa"] .modal-header {
    border-radius: 0.2rem 0.2rem 0 0 !important;
    border-bottom: 2px solid #e77d34 !important;
}

[data-icaas-theme="kcaa"] .btn {
    border-radius: 0.2rem;
}

[data-icaas-theme="kcaa"] .btn-primary {
    --bs-btn-bg: #055cab;
    --bs-btn-border-color: #055cab;
    --bs-btn-hover-bg: #03477f;
    --bs-btn-hover-border-color: #03477f;
    --bs-btn-active-bg: #033d70;
    --bs-btn-active-border-color: #033d70;
}

[data-icaas-theme="kcaa"] .btn-warning {
    --bs-btn-bg: #e77d34;
    --bs-btn-border-color: #e77d34;
    --bs-btn-hover-bg: #ca6422;
    --bs-btn-hover-border-color: #ca6422;
    --bs-btn-color: #1b2833;
}

[data-icaas-theme="kcaa"] .table > thead > tr > th,
[data-icaas-theme="kcaa"] .table > thead > tr > td {
    background: #055cab !important;
    border-color: #03477f !important;
    color: #ffffff !important;
}

[data-icaas-theme="kcaa"] .form-control,
[data-icaas-theme="kcaa"] .form-select,
[data-icaas-theme="kcaa"] select,
[data-icaas-theme="kcaa"] textarea,
[data-icaas-theme="kcaa"] input {
    border-radius: 0.2rem;
}

[data-icaas-theme="kcaa"] .account-portal-header {
    border-bottom: 4px solid #e77d34;
}

[data-icaas-theme="kcaa"] .account-portal-footer {
    background: #033f73 !important;
    color: #ffffff !important;
}

/* Superior theme: restrained neutral surfaces with precise emerald actions. */
[data-icaas-theme="superior"] .icaas-topbar,
[data-icaas-theme="superior"] .account-portal-header {
    border-bottom: 1px solid #d7d7d1;
    box-shadow: 0 0.3rem 1.1rem rgba(32, 33, 35, 0.07);
}

[data-icaas-theme="superior"] .icaas-topbar::before {
    background: linear-gradient(90deg, #10a37f 0 68%, #7a5af8 68% 100%);
}

[data-icaas-theme="superior"] .icaas-menubar,
[data-icaas-theme="superior"] .icaas-mobile-nav-bar {
    background: #202123 !important;
    border-color: #343541 !important;
}

[data-icaas-theme="superior"] .card,
[data-icaas-theme="superior"] .pm-card,
[data-icaas-theme="superior"] .modal-content,
[data-icaas-theme="superior"] .account-panel {
    border-color: #d7d7d1 !important;
    box-shadow: 0 0.7rem 1.8rem rgba(32, 33, 35, 0.08) !important;
}

[data-icaas-theme="superior"] .card-header,
[data-icaas-theme="superior"] .pm-card .card-header,
[data-icaas-theme="superior"] .modal-header {
    background: #f6f6f3 !important;
    border-bottom-color: #10a37f !important;
    color: #202123 !important;
}

[data-icaas-theme="superior"] .btn-primary {
    --bs-btn-bg: #10a37f;
    --bs-btn-border-color: #10a37f;
    --bs-btn-hover-bg: #087f63;
    --bs-btn-hover-border-color: #087f63;
    --bs-btn-active-bg: #066b54;
    --bs-btn-active-border-color: #066b54;
}

[data-icaas-theme="superior"] .table > thead > tr > th,
[data-icaas-theme="superior"] .table > thead > tr > td {
    background: #202123 !important;
    border-color: #343541 !important;
    color: #ffffff !important;
}

[data-icaas-theme="superior"] .form-control:focus,
[data-icaas-theme="superior"] .form-select:focus {
    border-color: #10a37f !important;
    box-shadow: 0 0 0 0.2rem rgba(16, 163, 127, 0.18) !important;
}

[data-icaas-theme="superior"] .icaas-footer,
[data-icaas-theme="superior"] .icaas-footer .content-wrapper,
[data-icaas-theme="superior"] .icaas-footer #systemFooterIdentity,
[data-icaas-theme="superior"] .account-portal-footer {
    background: #202123 !important;
    background-color: #202123 !important;
    color: #f7f7f5 !important;
}

/* Shared responsive foundation for legacy Web Forms pages. */
html,
body,
form {
    max-width: 100%;
}

img,
svg,
video,
canvas,
iframe {
    max-width: 100%;
}

.icaas-page-shell,
.main-content,
.content-wrapper,
.card,
.card-body,
.modal-content,
.table-responsive {
    min-width: 0;
}

.table-responsive,
.main-content .table,
.main-content table.table {
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 991.98px) {
    body {
        overflow-x: hidden;
    }

    .icaas-page-shell {
        max-width: none !important;
        padding-left: 0.85rem;
        padding-right: 0.85rem;
        width: 100%;
    }

    .content-wrapper.main-content {
        margin-bottom: 1rem;
        margin-top: 0.85rem;
        padding-left: 0;
        padding-right: 0;
    }

    .icaas-mobile-nav-bar {
        padding-left: env(safe-area-inset-left);
        padding-right: env(safe-area-inset-right);
    }

    .icaas-mobile-nav-bar > .container {
        gap: 0.75rem;
        min-height: 3.5rem;
        padding-left: 0.85rem;
        padding-right: 0.85rem;
    }

    .icaas-sidebar-toggle,
    .icaas-menu-toggler,
    .icaas-sidebar-close,
    .icaas-horizontal-child-toggle {
        min-height: 2.75rem;
        min-width: 2.75rem;
        touch-action: manipulation;
    }

    .icaas-sidebar {
        max-width: min(92vw, 22rem);
        padding-bottom: env(safe-area-inset-bottom);
    }

    .icaas-sidebar-header {
        padding-top: max(0.9rem, env(safe-area-inset-top));
    }

    .icaas-sidebar-link,
    .icaas-sidebar-group > summary {
        min-height: 3rem;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
        max-height: 100dvh;
        overflow: visible;
    }

    [data-icaas-navigation="dropdown"] .icaas-navigation-collapse {
        max-height: calc(100dvh - 4rem);
    }

    .preference-switcher .preference-switcher-control {
        border-radius: 0.4rem;
        box-shadow: 0 1rem 2.25rem rgba(15, 23, 42, 0.28);
        padding: 0.55rem;
    }

    .preference-switcher .preference-switcher-control button,
    .preference-switcher .preference-switcher-control .btn {
        min-height: 2.75rem;
        min-width: 0;
        touch-action: manipulation;
    }

    .modal-dialog {
        margin: 0.6rem auto;
        max-width: calc(100vw - 1.2rem);
        width: calc(100vw - 1.2rem);
    }

    .modal-content {
        max-height: calc(100dvh - 1.2rem);
    }

    .modal-body {
        overflow-y: auto;
        overscroll-behavior: contain;
    }

    .modal-footer {
        flex-wrap: wrap;
    }

    .modalPopup,
    #MainContent_updatePanel2 {
        box-sizing: border-box;
        height: auto !important;
        left: 50% !important;
        margin: 0 !important;
        max-height: calc(100dvh - 1.5rem);
        max-width: calc(100vw - 1.5rem);
        overflow: auto;
        padding: 1rem !important;
        position: fixed !important;
        top: 50% !important;
        transform: translate(-50%, -50%);
        width: calc(100vw - 1.5rem) !important;
    }

    .modalPopup .body {
        box-sizing: border-box;
        margin: 0.75rem 0;
        max-height: calc(100dvh - 7rem);
        width: 100%;
    }

    .form-control,
    .form-select,
    select.form-control,
    textarea.form-control,
    input.form-control {
        font-size: 1rem;
        min-height: 2.75rem;
    }

    input[type="checkbox"],
    input[type="radio"] {
        min-height: 1.15rem;
        min-width: 1.15rem;
    }

    .btn,
    input[type="button"],
    input[type="submit"],
    button {
        touch-action: manipulation;
    }

    .main-content > .table,
    .main-content .card-body > .table,
    .main-content .table-responsive > .table {
        display: table;
        min-width: 42rem;
        width: 100%;
    }

    .main-content > .table,
    .main-content .card-body {
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        -webkit-overflow-scrolling: touch;
    }

    .table > :not(caption) > * > * {
        white-space: normal;
    }

    .table .btn,
    td .btn {
        min-height: 2.4rem;
    }

    #systemFooterIdentity {
        border-radius: 0;
        padding: 1rem !important;
    }

    #systemFooterIdentity img {
        height: auto !important;
        max-width: 4.5rem;
    }
}

@media (max-width: 575.98px) {
    .navbar.icaas-topbar {
        position: relative;
    }

    .icaas-topbar > .icaas-header-shell {
        gap: 0.65rem;
        padding: 0.75rem 0.65rem 0.65rem;
    }

    .icaas-brand {
        gap: 0.6rem;
        width: 100%;
    }

    .icaas-brand-logo {
        height: 2.65rem;
        width: 5.6rem;
    }

    .icaas-brand-copy {
        flex: 1 1 auto;
        padding: 0.4rem 0.55rem 0.4rem 0.65rem;
    }

    #systemIdentity {
        font-size: 1.2rem;
    }

    .icaas-header-actions {
        display: grid;
        gap: 0.55rem;
        grid-template-columns: minmax(0, 1fr);
        width: 100%;
    }

    .icaas-account,
    .icaas-account-user,
    .icaas-account-anonymous {
        width: 100%;
    }

    .icaas-account-user,
    .icaas-account-anonymous {
        justify-content: flex-start;
    }

    .icaas-account-copy {
        flex: 1 1 auto;
        max-width: none;
    }

    #login .icaas-signout,
    #login .icaas-account-link {
        align-items: center;
        display: inline-flex;
        justify-content: center;
        min-height: 2.5rem;
    }

    .icaas-header-preferences {
        display: grid;
        gap: 0.35rem;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        width: 100%;
    }

    .icaas-header-preferences .preference-switcher {
        min-width: 0;
        width: 100%;
    }

    .icaas-header-preferences .preference-switcher-trigger {
        font-size: 0.72rem;
        gap: 0.25rem;
        justify-content: center;
        min-height: 2.6rem;
        overflow: hidden;
        padding: 0.35rem 0.2rem;
        text-overflow: ellipsis;
        white-space: nowrap;
        width: 100%;
    }

    .theme-switcher .preference-switcher-control,
    .font-switcher .preference-switcher-control {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .font-size-switcher .preference-switcher-control {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .icaas-mobile-current {
        max-width: 48vw;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .card-header {
        gap: 0.5rem;
        padding: 0.75rem !important;
    }

    .card-body,
    .modal-body {
        padding: 0.85rem !important;
    }

    .modal-footer {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        padding: 0.75rem 0.85rem !important;
    }

    .modal-footer .btn,
    .modal-footer input.btn {
        margin: 0 !important;
        width: 100%;
    }

    .row {
        --bs-gutter-x: 0.9rem;
        --bs-gutter-y: 0.65rem;
    }

    .alert,
    .pm-message {
        overflow-wrap: anywhere;
    }

    .main-content > .table,
    .main-content .card-body > .table,
    .main-content .table-responsive > .table {
        min-width: 38rem;
    }
}

@media (max-width: 359.98px) {
    .icaas-header-preferences {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .icaas-brand-logo {
        width: 5rem;
    }
}

/* Bootstrap 5 Web Forms control normalization */
:root {
    --icaas-control-bg: var(--icaas-surface, var(--bs-body-bg, #fff));
    --icaas-control-bg-muted: var(--icaas-surface-alt, var(--bs-secondary-bg, #f3f6f9));
    --icaas-control-border: var(--icaas-border, var(--bs-border-color, #ced4da));
    --icaas-control-color: var(--icaas-text, var(--bs-body-color, #212529));
    --icaas-control-muted: var(--icaas-muted, var(--bs-secondary-color, #667085));
    --icaas-control-focus: var(--icaas-primary, var(--bs-primary, #006db6));
}

.form-control,
.form-select,
.input-group-text {
    background-color: var(--icaas-control-bg) !important;
    border-color: var(--icaas-control-border) !important;
    color: var(--icaas-control-color) !important;
    font: inherit;
    min-height: 2.5rem;
}

textarea.form-control {
    min-height: 6rem;
    resize: vertical;
}

.form-control::placeholder {
    color: var(--icaas-control-muted);
    opacity: 0.78;
}

.form-control:focus,
.form-select:focus,
.form-check-input:focus {
    background-color: var(--icaas-control-bg) !important;
    border-color: color-mix(in srgb, var(--icaas-control-focus) 68%, #fff) !important;
    box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--icaas-control-focus) 20%, transparent) !important;
    color: var(--icaas-control-color) !important;
}

.form-control:disabled,
.form-control[readonly],
.form-select:disabled,
.aspNetDisabled.form-control,
.aspNetDisabled.form-select {
    background-color: var(--icaas-control-bg-muted) !important;
    color: var(--icaas-control-muted) !important;
    cursor: not-allowed;
    opacity: 1;
}

.form-select option {
    background: var(--icaas-control-bg);
    color: var(--icaas-control-color);
}

.form-control[type="file"] {
    overflow: hidden;
    padding: 0.36rem 0.75rem;
}

.form-control[type="file"]::file-selector-button {
    background: var(--icaas-control-bg-muted);
    border: 0;
    border-inline-end: 1px solid var(--icaas-control-border);
    color: var(--icaas-control-color);
    font-weight: 700;
    margin: -0.36rem 0.75rem -0.36rem -0.75rem;
    min-height: 2.5rem;
    padding: 0.52rem 0.85rem;
}

.form-check {
    align-items: center;
    display: flex;
    gap: 0.5rem;
    min-height: 1.75rem;
}

.form-check-input {
    background-color: var(--icaas-control-bg);
    border-color: var(--icaas-control-border);
    flex: 0 0 auto;
    margin-top: 0;
}

.form-check-input:checked {
    background-color: var(--icaas-control-focus);
    border-color: var(--icaas-control-focus);
}

.form-check-label,
.form-label {
    color: var(--icaas-control-color);
}

.form-label {
    font-weight: 650;
    margin-bottom: 0.38rem;
}

.icaas-form-legend {
    border-bottom: 1px solid var(--icaas-control-border);
    font-size: 1rem;
    padding-bottom: 0.55rem;
}

.input-group-text {
    font-weight: 650;
}

.icaas-validator {
    color: var(--bs-danger-text-emphasis, #b42318) !important;
    font-size: 0.78rem;
    font-weight: 650;
    margin-top: 0.25rem;
}

.icaas-validation-summary {
    background: color-mix(in srgb, var(--bs-danger, #dc3545) 10%, var(--icaas-control-bg)) !important;
    border-color: color-mix(in srgb, var(--bs-danger, #dc3545) 38%, var(--icaas-control-border)) !important;
    color: var(--bs-danger-text-emphasis, #842029) !important;
}

.icaas-validation-summary ul {
    margin-bottom: 0;
}

.btn {
    align-items: center;
    display: inline-flex;
    font-weight: 650;
    gap: 0.38rem;
    justify-content: center;
    min-height: 2.35rem;
}

.btn.btn-sm {
    min-height: 2rem;
}

.btn:disabled,
.btn.disabled,
.aspNetDisabled.btn {
    cursor: not-allowed;
    opacity: 0.62;
}

.icaas-details-view {
    color: var(--icaas-control-color);
    margin-bottom: 0;
    width: 100%;
}

.icaas-details-view > tbody > tr > td:first-child:not(:only-child),
.icaas-details-view > tbody > tr > th:first-child:not(:only-child) {
    color: var(--icaas-control-color);
    font-weight: 700;
}

@media (max-width: 575.98px) {
    .form-row > [class*="col-"],
    .form-row > .form-group {
        width: 100%;
    }

    .form-row .btn {
        width: 100%;
    }

    .input-group {
        flex-wrap: wrap;
    }

    .input-group > .form-control,
    .input-group > .form-select {
        min-width: 0;
    }
}

/* Refined corporate header hierarchy. */
.icaas-mobile-section-label {
    display: none;
}

.icaas-brand-authority,
.icaas-account-label {
    display: block;
}

.navbar.icaas-topbar {
    min-height: 6rem;
}

.icaas-topbar > .icaas-header-shell {
    min-height: 6rem;
}

.icaas-brand-logo {
    box-shadow: 0 0.25rem 0.8rem color-mix(in srgb, var(--icaas-primary) 13%, transparent);
}

.icaas-brand-copy {
    background: linear-gradient(90deg,
        color-mix(in srgb, var(--icaas-primary) 10%, var(--icaas-topbar-bg)),
        color-mix(in srgb, var(--icaas-primary) 2%, var(--icaas-topbar-bg)));
    border-right: 1px solid color-mix(in srgb, var(--icaas-primary) 12%, transparent);
}

.icaas-header-actions {
    background: color-mix(in srgb, var(--icaas-surface-alt) 76%, transparent);
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 15%, var(--icaas-border));
    border-radius: 0.45rem;
    gap: 0.65rem;
    padding: 0.45rem;
}

.icaas-account {
    background: var(--icaas-surface-bg);
    border: 1px solid var(--icaas-border);
    border-radius: 0.35rem;
    padding: 0.45rem 0.6rem;
}

.icaas-header-preferences {
    gap: 0.35rem;
}

.icaas-header-preferences .preference-switcher-trigger {
    background: var(--icaas-surface-bg);
    border-color: var(--icaas-border);
    display: grid;
    gap: 0.08rem 0.35rem;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    min-width: 5.6rem;
    padding: 0.38rem 0.5rem;
    text-align: left;
}

.icaas-header-preferences .preference-switcher-trigger > span:first-child {
    color: var(--icaas-muted);
    font-size: 0.62rem;
    font-weight: 800;
    grid-column: 1;
    line-height: 1;
    text-transform: uppercase;
}

.icaas-header-preferences .preference-switcher-current {
    color: var(--icaas-topbar-text);
    font-size: 0.72rem;
    font-weight: 800;
    grid-column: 1;
    line-height: 1.2;
    max-width: 7.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.icaas-header-preferences .preference-switcher-chevron {
    grid-column: 2;
    grid-row: 1 / 3;
    place-self: center;
}

@media (max-width: 991.98px) {
    .navbar.icaas-topbar,
    .icaas-topbar > .icaas-header-shell {
        min-height: 0;
    }

    .icaas-topbar > .icaas-header-shell {
        gap: 0;
        padding: 0;
        position: relative;
    }

    .icaas-site-settings-toggle {
        justify-self: end;
        margin: 0.55rem max(0.85rem, env(safe-area-inset-right)) 0.55rem 0;
        min-height: 2.5rem;
    }

    .icaas-site-settings-panel {
        align-items: stretch;
        background: var(--icaas-topbar-bg);
        display: grid;
        gap: 0;
        grid-template-columns: minmax(0, 1fr);
        max-height: 30rem;
        max-width: none;
        opacity: 1;
        overflow: visible;
        transform: translateY(0);
        transition: max-height 240ms ease, opacity 160ms ease, transform 220ms ease,
            visibility 220ms;
        visibility: visible;
        width: 100%;
    }

    [data-icaas-site-settings="closed"] .icaas-site-settings-panel {
        max-height: 0;
        max-width: none;
        opacity: 0;
        overflow: hidden;
        transform: translateY(-0.5rem);
    }

    .icaas-brand {
        background: linear-gradient(100deg,
            color-mix(in srgb, var(--icaas-primary) 9%, var(--icaas-topbar-bg)),
            var(--icaas-topbar-bg) 70%);
        border-bottom: 1px solid var(--icaas-border);
        padding: 0.75rem max(0.85rem, env(safe-area-inset-right))
            0.75rem max(0.85rem, env(safe-area-inset-left));
        width: 100%;
    }

    .icaas-header-actions {
        background: var(--icaas-topbar-bg);
        border: 0;
        border-radius: 0;
        display: grid;
        gap: 0;
        grid-template-columns: minmax(0, 1fr);
        padding: 0;
    }

    .icaas-account {
        background: var(--icaas-surface-bg);
        border: 0;
        border-bottom: 1px solid var(--icaas-border);
        border-radius: 0;
        display: grid;
        gap: 0.45rem;
        padding: 0.65rem max(0.85rem, env(safe-area-inset-right))
            0.65rem max(0.85rem, env(safe-area-inset-left));
    }

    .icaas-mobile-section-label {
        color: var(--icaas-primary);
        display: block;
        font-size: 0.62rem;
        font-weight: 850;
        letter-spacing: 0;
        line-height: 1;
        text-transform: uppercase;
    }

    .icaas-account-copy {
        max-width: none;
    }

    .icaas-account-label {
        display: block;
    }

    .icaas-header-preferences {
        background: var(--icaas-surface-alt);
        display: grid;
        gap: 0.4rem;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        padding: 0.65rem max(0.85rem, env(safe-area-inset-right))
            0.75rem max(0.85rem, env(safe-area-inset-left));
        width: 100%;
    }

    .icaas-header-preferences > .icaas-mobile-section-label {
        grid-column: 1 / -1;
        margin-bottom: 0.05rem;
    }

    .icaas-header-preferences .preference-switcher,
    .icaas-header-preferences .preference-switcher-trigger {
        min-width: 0;
        width: 100%;
    }

    .icaas-header-preferences .preference-switcher-trigger {
        background: var(--icaas-surface-bg);
        min-height: 3rem;
    }
}

@media (max-width: 575.98px) {
    .icaas-brand {
        padding-bottom: 0.65rem;
        padding-top: 0.65rem;
    }

    .icaas-brand-authority {
        display: block;
        font-size: 0.65rem;
        line-height: 1.25;
        white-space: normal;
    }

    .icaas-brand-authority::after {
        display: none;
    }

    #systemIdentity {
        display: block;
        font-size: clamp(0.88rem, 4vw, 1.05rem);
        line-height: 1.2;
        max-width: none;
        white-space: normal;
    }

    .icaas-brand-acronym {
        display: inline;
        margin-left: 0.2rem;
    }

    .icaas-brand-copy {
        min-height: 0;
        place-content: initial;
    }

    .icaas-account-user {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) auto;
        width: 100%;
    }

    .icaas-account-anonymous {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .icaas-account-anonymous .icaas-account-link {
        width: 100%;
    }

    .icaas-header-preferences {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .icaas-header-preferences .preference-switcher-current {
        display: block;
        font-size: 0.68rem;
        max-width: none;
    }

    .icaas-header-preferences .preference-switcher-trigger {
        min-height: 3.25rem;
        padding: 0.45rem 0.55rem;
    }
}

@media (max-width: 359.98px) {
    .icaas-brand-logo {
        height: 2.45rem;
        width: 5rem;
    }

    .icaas-brand-authority {
        display: none;
    }
}

/* FileTracker workspace */
.icaas-filetracker-page .filetracker-workspace {
    --ft-control-height: 2.85rem;
    color: var(--icaas-text);
    padding-bottom: 1.5rem;
}

.icaas-filetracker-page .filetracker-workspace > .message,
.icaas-filetracker-page .filetracker-workspace > span.message {
    display: block;
    margin-bottom: 0.75rem;
}

.icaas-filetracker-page .filetracker-workspace .message:not(:empty),
.icaas-filetracker-page .filetracker-workspace .requiredFields {
    background: color-mix(in srgb, var(--icaas-accent) 9%, var(--icaas-surface-bg));
    border: 1px solid color-mix(in srgb, var(--icaas-accent) 35%, var(--icaas-border));
    border-left: 4px solid var(--icaas-accent);
    border-radius: 0.3rem;
    color: var(--icaas-text);
    display: block;
    padding: 0.75rem 0.9rem;
}

.icaas-filetracker-page .filetracker-workspace .form-control,
.icaas-filetracker-page .filetracker-workspace .form-select {
    background-color: var(--icaas-surface-bg);
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 18%, var(--icaas-border));
    border-radius: 0.3rem;
    box-shadow: none;
    color: var(--icaas-text);
    font-size: 0.88rem;
    line-height: 1.45;
    min-height: var(--ft-control-height);
    padding: 0.58rem 0.75rem;
    transition: border-color 150ms ease, box-shadow 150ms ease, background-color 150ms ease;
    width: 100%;
}

.icaas-filetracker-page .filetracker-workspace textarea.form-control {
    min-height: 6.5rem;
    resize: vertical;
}

.icaas-filetracker-page .filetracker-workspace .form-control:hover:not(:disabled):not([readonly]),
.icaas-filetracker-page .filetracker-workspace .form-select:hover:not(:disabled) {
    border-color: color-mix(in srgb, var(--icaas-primary) 48%, var(--icaas-border));
}

.icaas-filetracker-page .filetracker-workspace .form-control:focus,
.icaas-filetracker-page .filetracker-workspace .form-select:focus {
    background-color: var(--icaas-surface-bg);
    border-color: var(--icaas-primary);
    box-shadow: 0 0 0 0.22rem color-mix(in srgb, var(--icaas-primary) 17%, transparent);
    color: var(--icaas-text);
    outline: 0;
}

.icaas-filetracker-page .filetracker-workspace .form-control::placeholder {
    color: var(--icaas-muted);
    opacity: 0.72;
}

.icaas-filetracker-page .filetracker-workspace .form-label {
    color: var(--icaas-text);
    display: inline-block;
    font-size: 0.76rem;
    font-weight: 750 !important;
    margin-bottom: 0.38rem;
}

.icaas-filetracker-page .filetracker-workspace .ft-form-group {
    margin-bottom: 1rem;
    min-width: 0;
}

.icaas-filetracker-page .filetracker-workspace .form-row:not(.ft-search-bar):not(.ft-results-toolbar) {
    row-gap: 0.25rem;
}

.icaas-filetracker-page .filetracker-workspace .form-check-input {
    accent-color: var(--icaas-primary);
    border-color: color-mix(in srgb, var(--icaas-primary) 35%, var(--icaas-border));
    box-shadow: none;
    flex: 0 0 auto;
    height: 1.08rem;
    margin: 0;
    vertical-align: middle;
    width: 1.08rem;
}

.icaas-filetracker-page .filetracker-workspace .form-check-input:checked {
    background-color: var(--icaas-primary);
    border-color: var(--icaas-primary);
}

.icaas-filetracker-page .filetracker-workspace .form-check-input:focus {
    border-color: var(--icaas-primary);
    box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--icaas-primary) 18%, transparent);
}

.icaas-filetracker-page .filetracker-workspace .ft-choice-control {
    align-items: center;
    display: inline-flex;
    gap: 0.48rem;
    min-height: 2.25rem;
}

.icaas-filetracker-page .filetracker-workspace .ft-choice-control label {
    color: var(--icaas-text);
    font-size: 0.82rem;
    font-weight: 650 !important;
    margin: 0;
}

.icaas-filetracker-page .filetracker-workspace .ft-file-control {
    min-height: var(--ft-control-height);
    padding: 0.3rem 0.4rem;
}

.icaas-filetracker-page .filetracker-workspace .ft-file-control::file-selector-button {
    background: color-mix(in srgb, var(--icaas-primary) 9%, var(--icaas-surface-alt));
    border: 0;
    border-right: 1px solid var(--icaas-border);
    color: var(--icaas-primary-strong);
    font-weight: 750;
    margin: -0.3rem 0.7rem -0.3rem -0.4rem;
    min-height: calc(var(--ft-control-height) - 2px);
    padding: 0.55rem 0.8rem;
}

.icaas-filetracker-page .filetracker-workspace .btn {
    align-items: center;
    border-radius: 0.3rem;
    display: inline-flex;
    font-size: 0.79rem;
    font-weight: 750;
    justify-content: center;
    line-height: 1.35;
    min-height: 2.35rem;
    padding: 0.48rem 0.85rem;
    text-decoration: none !important;
    transition: background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
    white-space: normal;
}

.icaas-filetracker-page .filetracker-workspace .btn:hover:not(:disabled) {
    transform: translateY(-1px);
}

.icaas-filetracker-page .filetracker-workspace .btn:focus-visible {
    box-shadow: 0 0 0 0.22rem color-mix(in srgb, var(--icaas-primary) 20%, transparent);
    outline: 0;
}

.icaas-filetracker-page .filetracker-workspace .btn-sm {
    min-height: 2.15rem;
    padding: 0.38rem 0.68rem;
}

.icaas-filetracker-page .filetracker-workspace .btn:disabled,
.icaas-filetracker-page .filetracker-workspace .btn.disabled {
    cursor: not-allowed;
    opacity: 0.58;
}

.icaas-filetracker-page .filetracker-workspace .invalid-feedback,
.icaas-filetracker-page .filetracker-workspace .invalid-tooltip,
.icaas-filetracker-page .filetracker-workspace [class*="validator"] {
    color: var(--bs-danger, #dc3545);
    font-size: 0.72rem;
    font-weight: 650;
}

.icaas-filetracker-page .ft-search-bar {
    align-items: end;
    background:
        linear-gradient(110deg,
            color-mix(in srgb, var(--icaas-primary) 8%, var(--icaas-surface-bg)),
            var(--icaas-surface-bg) 62%);
    border: 1px solid var(--icaas-border);
    border-top: 3px solid var(--icaas-primary);
    border-radius: 0.4rem;
    box-shadow: 0 0.45rem 1.15rem color-mix(in srgb, #0f172a 8%, transparent);
    display: grid;
    gap: 0.8rem;
    grid-template-columns: minmax(11rem, 0.8fr) minmax(18rem, 1.8fr) auto;
    margin: 0 0 0.7rem !important;
    padding: 1rem;
}

.icaas-filetracker-page .ft-search-bar--simple {
    grid-template-columns: minmax(18rem, 1fr) auto;
}

.icaas-filetracker-page .ft-search-bar > [class*="col-"],
.icaas-filetracker-page .ft-search-bar > div {
    margin: 0 !important;
    max-width: none;
    padding: 0 !important;
    width: auto;
}

.icaas-filetracker-page .ft-search-bar label {
    color: var(--icaas-muted) !important;
    display: block;
    font-size: 0.68rem;
    font-weight: 850 !important;
    margin: 0 0 0.38rem;
    text-transform: uppercase;
}

.icaas-filetracker-page .ft-search-field {
    min-width: 0;
    position: relative;
}

.icaas-filetracker-page .ft-search-field::before {
    border: 2px solid var(--icaas-primary);
    border-radius: 50%;
    bottom: 0.88rem;
    content: "";
    height: 0.8rem;
    left: 1rem;
    pointer-events: none;
    position: absolute;
    width: 0.8rem;
    z-index: 2;
}

.icaas-filetracker-page .ft-search-field::after {
    background: var(--icaas-primary);
    bottom: 0.78rem;
    content: "";
    height: 2px;
    left: 1.72rem;
    pointer-events: none;
    position: absolute;
    transform: rotate(45deg);
    transform-origin: left center;
    width: 0.45rem;
    z-index: 2;
}

.icaas-filetracker-page .ft-search-field input {
    background: var(--icaas-surface-bg) !important;
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 32%, var(--icaas-border)) !important;
    border-radius: 0.3rem;
    font-size: 0.92rem;
    min-height: var(--ft-control-height);
    padding-left: 2.65rem !important;
    width: 100%;
}

.icaas-filetracker-page .ft-search-field input::placeholder {
    color: var(--icaas-muted);
    opacity: 0.78;
}

.icaas-filetracker-page .ft-search-field input:focus {
    border-color: var(--icaas-primary) !important;
    box-shadow: 0 0 0 0.22rem color-mix(in srgb, var(--icaas-primary) 18%, transparent) !important;
}

.icaas-filetracker-page .ft-status-select,
.icaas-filetracker-page .ft-page-size {
    appearance: auto;
    background-color: var(--icaas-surface-bg) !important;
    border: 1px solid var(--icaas-border) !important;
    border-radius: 0.3rem;
    color: var(--icaas-text) !important;
}

.icaas-filetracker-page .ft-status-select {
    min-height: var(--ft-control-height);
    width: 100%;
}

.icaas-filetracker-page .ft-search-action {
    align-self: end;
}

.icaas-filetracker-page .ft-search-button {
    align-items: center;
    background: linear-gradient(135deg, var(--icaas-primary-strong), var(--icaas-primary)) !important;
    border: 1px solid var(--icaas-primary-strong) !important;
    border-radius: 0.3rem !important;
    box-shadow: 0 0.35rem 0.8rem color-mix(in srgb, var(--icaas-primary) 24%, transparent);
    color: #fff !important;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 800;
    justify-content: center;
    margin: 0 !important;
    min-height: var(--ft-control-height);
    min-width: 7.5rem;
    padding: 0.55rem 1rem !important;
}

.icaas-filetracker-page .ft-search-button:hover,
.icaas-filetracker-page .ft-search-button:focus {
    background: var(--icaas-primary-strong) !important;
    box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--icaas-primary) 18%, transparent);
    transform: translateY(-1px);
}

.icaas-filetracker-page .ft-results-toolbar {
    align-items: center;
    background: var(--icaas-surface-alt);
    border: 1px solid var(--icaas-border);
    border-radius: 0.3rem;
    color: var(--icaas-muted);
    display: flex;
    font-size: 0.72rem;
    font-weight: 800;
    justify-content: flex-end;
    margin: 0 0 0.85rem !important;
    min-height: 2.8rem;
    padding: 0.45rem 0.65rem;
    text-transform: uppercase;
}

.icaas-filetracker-page .ft-results-toolbar > div {
    align-items: center;
    display: flex;
    gap: 0.5rem;
}

.icaas-filetracker-page .ft-page-size {
    font-size: 0.78rem;
    font-weight: 750;
    min-height: 2.1rem;
    min-width: 4.75rem;
    padding: 0.25rem 0.45rem;
}

.icaas-filetracker-page .ft-table-scroll,
.icaas-filetracker-page .table-responsive,
.icaas-filetracker-page .ft-grid-shell {
    border: 1px solid var(--icaas-border);
    border-radius: 0.35rem;
    max-width: 100%;
    overflow-x: auto;
    position: relative;
    scrollbar-color: var(--icaas-primary) var(--icaas-surface-alt);
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
}

.icaas-filetracker-page .ft-grid-shell:focus-visible {
    box-shadow: 0 0 0 0.22rem color-mix(in srgb, var(--icaas-primary) 20%, transparent);
    outline: 0;
}

.icaas-filetracker-page .ft-grid-shell--wide {
    background:
        linear-gradient(to right, var(--icaas-surface-bg) 30%, transparent),
        linear-gradient(to left, var(--icaas-surface-bg) 30%, transparent),
        linear-gradient(to right, color-mix(in srgb, #0f172a 16%, transparent), transparent 70%),
        linear-gradient(to left, color-mix(in srgb, #0f172a 16%, transparent), transparent 70%);
    background-attachment: local, local, scroll, scroll;
    background-position: left, right, left, right;
    background-repeat: no-repeat;
    background-size: 2.2rem 100%, 2.2rem 100%, 0.8rem 100%, 0.8rem 100%;
}

.icaas-filetracker-page .ft-grid-shell::-webkit-scrollbar {
    height: 0.65rem;
}

.icaas-filetracker-page .ft-grid-shell::-webkit-scrollbar-track {
    background: var(--icaas-surface-alt);
}

.icaas-filetracker-page .ft-grid-shell::-webkit-scrollbar-thumb {
    background: color-mix(in srgb, var(--icaas-primary) 72%, var(--icaas-muted));
    border: 2px solid var(--icaas-surface-alt);
    border-radius: 999px;
}

.icaas-filetracker-page .ft-data-table {
    --bs-table-bg: var(--icaas-surface-bg);
    --bs-table-color: var(--icaas-text);
    --bs-table-striped-bg: color-mix(in srgb, var(--icaas-primary) 5%, var(--icaas-surface-bg));
    --bs-table-striped-color: var(--icaas-text);
    --bs-table-hover-bg: color-mix(in srgb, var(--icaas-primary) 10%, var(--icaas-surface-bg));
    --bs-table-hover-color: var(--icaas-text);
    background: var(--icaas-surface-bg);
    border-collapse: separate !important;
    border-spacing: 0;
    margin: 0 !important;
    min-width: max(100%, calc(var(--ft-grid-columns, 5) * 8.5rem));
    width: 100% !important;
}

.icaas-filetracker-page .ft-data-table.ft-grid-compact {
    min-width: 100%;
}

.icaas-filetracker-page .ft-data-table > tbody > tr {
    transition: background-color 140ms ease, box-shadow 140ms ease;
}

.icaas-filetracker-page .ft-data-table.table-hover > tbody > tr:hover > td {
    background: var(--bs-table-hover-bg) !important;
    color: var(--bs-table-hover-color) !important;
}

.icaas-filetracker-page .ft-data-table.table-striped > tbody > tr:nth-of-type(odd) > td {
    background: var(--bs-table-striped-bg);
    color: var(--bs-table-striped-color);
}

.icaas-filetracker-page .ft-data-table > tbody > tr > td {
    border-color: color-mix(in srgb, var(--icaas-border) 72%, transparent) !important;
    color: var(--icaas-text);
    line-height: 1.4;
    min-width: 7.5rem;
    padding: 0.72rem 0.65rem !important;
    vertical-align: middle !important;
}

.icaas-filetracker-page .ft-data-table th {
    background: var(--icaas-primary-strong) !important;
    border-color: color-mix(in srgb, #fff 18%, var(--icaas-primary-strong)) !important;
    color: #fff !important;
    font-size: 0.7rem;
    font-weight: 850;
    padding: 0.75rem 0.65rem !important;
    text-transform: uppercase;
    white-space: nowrap;
}

.icaas-filetracker-page .ft-data-table th:first-child,
.icaas-filetracker-page .ft-data-table td:first-child {
    min-width: 3.4rem;
}

.icaas-filetracker-page .ft-data-table td[colspan] {
    color: var(--icaas-muted);
    min-height: 4rem;
    padding: 1.5rem !important;
    text-align: center;
}

.icaas-filetracker-page .ft-data-table td > input[type="checkbox"] {
    accent-color: var(--icaas-primary);
    height: 1.05rem;
    width: 1.05rem;
}

.icaas-filetracker-page .ft-data-table td > select,
.icaas-filetracker-page .ft-data-table td > input[type="text"] {
    max-width: 100%;
    min-height: 2.3rem;
    min-width: 8rem;
}

.icaas-filetracker-page .ft-data-table td .btn {
    min-height: 2.25rem;
    white-space: nowrap;
}

.icaas-filetracker-page .ft-data-table td > .btn + .btn,
.icaas-filetracker-page .ft-data-table td > input[type="submit"] + input[type="submit"],
.icaas-filetracker-page .ft-data-table td > a + a {
    margin-left: 0.3rem;
}

.icaas-filetracker-page .ft-grid-expander {
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: 2.35rem;
    padding: 0.2rem;
}

.icaas-filetracker-page .ft-grid-expander .btn {
    margin: 0;
}

.icaas-filetracker-page .ft-details-shell {
    background: var(--icaas-surface-bg);
    border: 1px solid var(--icaas-border);
    border-radius: 0.4rem;
    box-shadow: 0 0.45rem 1.15rem color-mix(in srgb, #0f172a 8%, transparent);
    margin-bottom: 1rem;
    max-width: 100%;
    overflow: hidden;
}

.icaas-filetracker-page .ft-details-view {
    --bs-table-bg: var(--icaas-surface-bg);
    --bs-table-color: var(--icaas-text);
    --bs-table-striped-bg: color-mix(in srgb, var(--icaas-primary) 4%, var(--icaas-surface-bg));
    --bs-table-striped-color: var(--icaas-text);
    --bs-table-hover-bg: color-mix(in srgb, var(--icaas-primary) 8%, var(--icaas-surface-bg));
    --bs-table-hover-color: var(--icaas-text);
    background: var(--icaas-surface-bg) !important;
    border-collapse: separate !important;
    border-spacing: 0;
    color: var(--icaas-text) !important;
    margin: 0 !important;
    max-width: 100%;
    min-width: 0 !important;
    table-layout: fixed;
    width: 100% !important;
}

.icaas-filetracker-page .ft-details-view > tbody > tr > td,
.icaas-filetracker-page .ft-details-view > tbody > tr > th {
    background-color: transparent;
    border-color: color-mix(in srgb, var(--icaas-border) 78%, transparent) !important;
    color: var(--icaas-text) !important;
    line-height: 1.5;
    overflow-wrap: anywhere;
    padding: 0.72rem 0.8rem !important;
    vertical-align: top;
}

.icaas-filetracker-page .ft-details-view > tbody > tr > td:first-child:not(:only-child),
.icaas-filetracker-page .ft-details-view > tbody > tr > th:first-child:not(:only-child) {
    background: color-mix(in srgb, var(--icaas-primary) 7%, var(--icaas-surface-alt)) !important;
    color: var(--icaas-primary-strong) !important;
    font-size: 0.75rem;
    font-weight: 800;
    width: min(32%, 16rem);
}

.icaas-filetracker-page .ft-details-view.table-striped > tbody > tr:nth-of-type(odd) > td:not(:first-child),
.icaas-filetracker-page .ft-details-view.table-striped > tbody > tr:nth-of-type(odd) > th:not(:first-child) {
    background: var(--bs-table-striped-bg);
}

.icaas-filetracker-page .ft-details-view.table-hover > tbody > tr:hover > td,
.icaas-filetracker-page .ft-details-view.table-hover > tbody > tr:hover > th {
    border-color: color-mix(in srgb, var(--icaas-primary) 24%, var(--icaas-border)) !important;
}

.icaas-filetracker-page .ft-details-view.table-hover > tbody > tr:hover > td:not(:first-child),
.icaas-filetracker-page .ft-details-view.table-hover > tbody > tr:hover > th:not(:first-child) {
    background: var(--bs-table-hover-bg) !important;
    color: var(--bs-table-hover-color) !important;
}

.icaas-filetracker-page .ft-details-view > tbody > tr:first-child > th[colspan],
.icaas-filetracker-page .ft-details-view > tbody > tr:first-child > td[colspan] {
    background: linear-gradient(110deg, var(--icaas-primary-strong), var(--icaas-primary)) !important;
    border-bottom: 3px solid var(--icaas-accent) !important;
    color: #fff !important;
    font-weight: 800;
    text-align: left;
}

.icaas-filetracker-page .ft-details-view td[colspan] {
    background: var(--icaas-surface-alt);
    color: var(--icaas-muted) !important;
    padding: 1rem !important;
    text-align: center;
}

.icaas-filetracker-page .ft-details-view .form-control,
.icaas-filetracker-page .ft-details-view .form-select {
    max-width: 100%;
}

.icaas-filetracker-page .ft-details-view a:not(.btn) {
    color: var(--icaas-primary) !important;
    font-weight: 700;
}

.icaas-filetracker-page .ft-data-table td > span[id*="Status"],
.icaas-filetracker-page .ft-data-table td > span[id*="status"] {
    background: color-mix(in srgb, var(--icaas-primary) 10%, var(--icaas-surface-alt));
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 22%, var(--icaas-border));
    border-radius: 999px;
    color: var(--icaas-primary-strong);
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 800;
    padding: 0.28rem 0.55rem;
}

.icaas-filetracker-page .filetracker-workspace > span[id*="rptPager"],
.icaas-filetracker-page .filetracker-workspace [id*="rptPager"] {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
    margin-top: 0.8rem;
}

.icaas-filetracker-page .filetracker-workspace [id*="rptPager"] a,
.icaas-filetracker-page .filetracker-workspace [id*="rptPager"] span {
    align-items: center;
    background: var(--icaas-surface-bg);
    border: 1px solid var(--icaas-border);
    border-radius: 0.25rem;
    color: var(--icaas-primary) !important;
    display: inline-flex;
    font-weight: 800;
    justify-content: center;
    min-height: 2.25rem;
    min-width: 2.25rem;
    padding: 0.3rem 0.55rem;
    text-decoration: none !important;
}

.icaas-filetracker-page .filetracker-workspace [id*="rptPager"] span,
.icaas-filetracker-page .filetracker-workspace [id*="rptPager"] a[disabled] {
    background: var(--icaas-primary);
    border-color: var(--icaas-primary);
    color: #fff !important;
}

.icaas-filetracker-page .ft-card,
.icaas-filetracker-page .filetracker-workspace .card {
    border: 1px solid var(--icaas-border) !important;
    border-radius: 0.35rem;
    box-shadow: 0 0.45rem 1.15rem color-mix(in srgb, #0f172a 8%, transparent);
    margin-bottom: 1rem;
}

.icaas-filetracker-page .ft-card .card-header,
.icaas-filetracker-page .filetracker-workspace .card-header {
    background: linear-gradient(110deg, var(--icaas-primary-strong), var(--icaas-primary)) !important;
    border-bottom: 3px solid var(--icaas-accent) !important;
    color: #fff !important;
    min-height: 3.1rem;
}

.icaas-filetracker-page .ft-card .card-header *,
.icaas-filetracker-page .filetracker-workspace .card-header * {
    color: #fff !important;
}

.icaas-filetracker-page .filetracker-workspace input[disabled],
.icaas-filetracker-page .filetracker-workspace textarea[disabled],
.icaas-filetracker-page .filetracker-workspace select[disabled],
.icaas-filetracker-page .filetracker-workspace input[readonly],
.icaas-filetracker-page .filetracker-workspace textarea[readonly] {
    background: color-mix(in srgb, var(--icaas-primary) 4%, var(--icaas-surface-alt)) !important;
    border-color: color-mix(in srgb, var(--icaas-primary) 14%, var(--icaas-border)) !important;
    color: var(--icaas-text) !important;
    opacity: 1;
}

.icaas-filetracker-page .ft-page-actions {
    align-items: center;
    display: flex;
    justify-content: flex-end;
    margin-bottom: 0.65rem;
    min-height: 2.6rem;
}

.icaas-filetracker-page .filetracker-workspace .summary {
    height: auto !important;
    min-height: 2.7rem;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_xp,
.icaas-filetracker-page .filetracker-workspace .ajax__tab_container,
.icaas-filetracker-page .filetracker-workspace .ft-tab-workspace {
    background: transparent;
    margin-bottom: 1rem;
    width: 100%;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_header {
    align-items: stretch;
    background:
        linear-gradient(120deg,
            color-mix(in srgb, var(--icaas-primary) 13%, var(--icaas-surface-alt)),
            var(--icaas-surface-alt) 72%) !important;
    border: 1px solid var(--icaas-border);
    border-bottom: 0;
    border-radius: 0.35rem 0.35rem 0 0;
    box-shadow: inset 0 3px 0 var(--icaas-primary);
    counter-reset: filetracker-tab;
    display: flex;
    gap: 0.35rem;
    overflow-x: auto;
    padding: 0.7rem 0.7rem 0;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
    white-space: nowrap;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_header > span {
    counter-increment: filetracker-tab;
    flex: 0 0 auto;
    scroll-snap-align: start;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_outer,
.icaas-filetracker-page .filetracker-workspace .ajax__tab_inner,
.icaas-filetracker-page .filetracker-workspace .ajax__tab_tab {
    background: none !important;
    height: auto !important;
    margin: 0 !important;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_outer {
    border: 1px solid transparent;
    border-radius: 0.32rem 0.32rem 0 0;
    display: block;
    overflow: hidden;
    transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_inner {
    display: block;
    padding: 0 !important;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_tab {
    align-items: center;
    border-bottom: 3px solid transparent;
    color: var(--icaas-muted) !important;
    display: flex;
    font-size: 0.75rem;
    font-weight: 800;
    gap: 0.5rem;
    min-height: 2.6rem;
    padding: 0.62rem 0.85rem !important;
    text-decoration: none !important;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_tab::before {
    align-items: center;
    background: color-mix(in srgb, var(--icaas-primary) 12%, var(--icaas-surface-bg));
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 25%, var(--icaas-border));
    border-radius: 50%;
    color: var(--icaas-primary);
    content: counter(filetracker-tab);
    display: inline-flex;
    font-size: 0.66rem;
    font-weight: 900;
    height: 1.5rem;
    justify-content: center;
    width: 1.5rem;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_outer:hover {
    background: color-mix(in srgb, var(--icaas-primary) 7%, var(--icaas-surface-bg)) !important;
    border-color: color-mix(in srgb, var(--icaas-primary) 22%, var(--icaas-border));
    transform: translateY(-1px);
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_active .ajax__tab_outer {
    background: var(--icaas-surface-bg) !important;
    border-color: var(--icaas-border);
    box-shadow: 0 -0.25rem 0.75rem color-mix(in srgb, #0f172a 8%, transparent);
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_active .ajax__tab_tab {
    background: var(--icaas-surface-bg) !important;
    border-bottom-color: var(--icaas-accent);
    color: var(--icaas-primary-strong) !important;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_active .ajax__tab_tab::before {
    background: var(--icaas-primary);
    border-color: var(--icaas-primary);
    color: #fff;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_tab:focus-visible {
    box-shadow: inset 0 0 0 2px var(--icaas-primary);
    outline: 0;
}

.icaas-filetracker-page .filetracker-workspace .ajax__tab_body {
    background: var(--icaas-surface-bg);
    border: 1px solid var(--icaas-border) !important;
    border-top: 3px solid color-mix(in srgb, var(--icaas-primary) 48%, var(--icaas-border)) !important;
    border-radius: 0 0 0.35rem 0.35rem;
    box-shadow: 0 0.65rem 1.5rem color-mix(in srgb, #0f172a 8%, transparent);
    color: var(--icaas-text);
    padding: 1rem !important;
}

.icaas-filetracker-page .filetracker-workspace .modalPopup {
    background: var(--icaas-surface-bg);
    border: 1px solid var(--icaas-border);
    border-radius: 0.4rem;
    box-shadow: 0 1.5rem 3.5rem rgba(15, 23, 42, 0.3);
    color: var(--icaas-text);
    overflow: hidden;
}

.icaas-filetracker-page .filetracker-workspace .modalPopup .header {
    background: linear-gradient(110deg, var(--icaas-primary-strong), var(--icaas-primary));
    border-bottom: 3px solid var(--icaas-accent);
    color: #fff;
    min-height: 3.25rem;
    padding: 0.55rem 0.8rem;
}

.icaas-filetracker-page .filetracker-workspace .modalPopup .body {
    background: var(--icaas-surface-bg);
    color: var(--icaas-text);
    line-height: 1.55;
    padding: 0.8rem;
    text-align: left;
}

.icaas-filetracker-page .filetracker-workspace .collapsed-row > td {
    background: var(--icaas-surface-alt) !important;
    padding: 0.75rem !important;
}

@media (max-width: 991.98px) {
    .icaas-filetracker-page .ft-search-bar {
        grid-template-columns: minmax(10rem, 0.8fr) minmax(14rem, 1.2fr);
    }

    .icaas-filetracker-page .ft-search-bar--simple {
        grid-template-columns: minmax(14rem, 1fr) auto;
    }

    .icaas-filetracker-page .ft-search-action {
        grid-column: 1 / -1;
    }

    .icaas-filetracker-page .ft-search-button {
        width: 100%;
    }

    .icaas-filetracker-page .ft-data-table {
        min-width: max(46rem, calc(var(--ft-grid-columns, 5) * 8rem));
    }

    .icaas-filetracker-page .ft-data-table.ft-grid-compact {
        min-width: 100%;
    }
}

@media (max-width: 575.98px) {
    .icaas-filetracker-page .filetracker-workspace {
        padding-bottom: 1rem;
    }

    .icaas-filetracker-page .ft-search-bar {
        gap: 0.7rem;
        grid-template-columns: minmax(0, 1fr);
        padding: 0.8rem;
    }

    .icaas-filetracker-page .ft-search-bar--simple {
        grid-template-columns: minmax(0, 1fr);
    }

    .icaas-filetracker-page .ft-search-action {
        grid-column: auto;
    }

    .icaas-filetracker-page .ft-results-toolbar {
        justify-content: flex-start;
    }

    .icaas-filetracker-page .ft-page-actions .btn,
    .icaas-filetracker-page .ft-page-actions input.btn {
        width: 100%;
    }

    .icaas-filetracker-page .filetracker-workspace .ajax__tab_body {
        padding: 0.75rem !important;
    }

    .icaas-filetracker-page .filetracker-workspace .ajax__tab_tab {
        min-height: 2.85rem;
        padding: 0.72rem 0.75rem !important;
    }

    .icaas-filetracker-page .filetracker-workspace .ajax__tab_header {
        padding: 0.6rem 0.6rem 0;
    }

    .icaas-filetracker-page .filetracker-workspace .ajax__tab_header > span {
        min-width: 9.5rem;
    }

    .icaas-filetracker-page .filetracker-workspace .ajax__tab_outer,
    .icaas-filetracker-page .filetracker-workspace .ajax__tab_inner,
    .icaas-filetracker-page .filetracker-workspace .ajax__tab_tab {
        width: 100% !important;
    }

    .icaas-filetracker-page .ft-data-table {
        min-width: max(42rem, calc(var(--ft-grid-columns, 5) * 7.5rem));
    }

    .icaas-filetracker-page .ft-data-table.ft-grid-compact {
        min-width: 36rem;
    }

    .icaas-filetracker-page .ft-grid-shell--wide::after {
        background: color-mix(in srgb, var(--icaas-primary) 90%, #000);
        border-radius: 999px;
        bottom: 0.55rem;
        color: #fff;
        content: "Swipe to view more";
        font-size: 0.65rem;
        font-weight: 800;
        left: calc(100% - 8rem);
        padding: 0.3rem 0.55rem;
        pointer-events: none;
        position: sticky;
    }

    .icaas-filetracker-page .ft-details-view,
    .icaas-filetracker-page .ft-details-view > tbody {
        display: block;
        width: 100% !important;
    }

    .icaas-filetracker-page .ft-details-view > tbody > tr {
        display: block;
        width: 100%;
    }

    .icaas-filetracker-page .ft-details-view > tbody > tr > td,
    .icaas-filetracker-page .ft-details-view > tbody > tr > th {
        display: block;
        width: 100% !important;
    }

    .icaas-filetracker-page .ft-details-view > tbody > tr > td:first-child:not(:only-child),
    .icaas-filetracker-page .ft-details-view > tbody > tr > th:first-child:not(:only-child) {
        border-bottom-width: 0 !important;
        padding-bottom: 0.42rem !important;
    }

    .icaas-filetracker-page .ft-details-view > tbody > tr > td:not(:first-child),
    .icaas-filetracker-page .ft-details-view > tbody > tr > th:not(:first-child) {
        padding-top: 0.58rem !important;
    }

    .icaas-filetracker-page .filetracker-workspace .card-body {
        padding: 0.8rem !important;
    }
}

/* Corporate brand lockup */
.icaas-brand {
    gap: clamp(0.8rem, 1.35vw, 1.15rem);
}

.icaas-brand-copy {
    align-content: center;
    background: transparent;
    border: 0;
    border-left: 1px solid color-mix(in srgb, var(--icaas-primary) 28%, var(--icaas-border));
    border-radius: 0;
    display: grid;
    gap: 0.32rem;
    max-width: 35rem;
    min-height: 3.55rem;
    padding: 0.32rem 0 0.32rem clamp(0.85rem, 1.4vw, 1.15rem);
    position: relative;
}

.icaas-brand-copy,
.icaas-brand-copy * {
    font-family: "Red Hat Display", "Aptos Display", Aptos, "Segoe UI", sans-serif;
}

.icaas-brand-copy::before {
    background: var(--icaas-accent);
    content: "";
    height: 1.35rem;
    left: -2px;
    position: absolute;
    top: 0.4rem;
    transition: height 160ms ease;
    width: 3px;
}

.icaas-brand-authority {
    color: color-mix(in srgb, var(--icaas-primary-strong) 88%, var(--icaas-text));
    display: block;
    font-size: 0.7rem;
    font-weight: 800;
    line-height: 1;
    margin: 0;
    overflow: visible;
    text-overflow: clip;
    text-shadow: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.icaas-brand-authority::after {
    display: none;
}

#systemIdentity.icaas-brand-description {
    align-items: center;
    color: var(--icaas-primary-strong) !important;
    display: flex;
    flex-wrap: wrap;
    font-size: clamp(1.02rem, 1.28vw, 1.28rem);
    font-family: "Red Hat Display", "Aptos Display", Aptos, "Segoe UI", sans-serif;
    font-weight: 750;
    gap: 0.35rem 0.6rem;
    line-height: 1.18;
    max-width: 35rem;
    text-shadow: none;
}

.icaas-brand-acronym {
    background: var(--icaas-primary);
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 78%, #000);
    color: #fff;
    display: inline-flex;
    font-size: 0.62em;
    font-weight: 850;
    line-height: 1;
    padding: 0.38rem 0.46rem;
    white-space: nowrap;
}

.icaas-brand:hover .icaas-brand-copy::before,
.icaas-brand:focus-visible .icaas-brand-copy::before {
    height: calc(100% - 0.8rem);
}

.icaas-brand:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--icaas-primary) 35%, transparent);
    outline-offset: 0.35rem;
}

@media (max-width: 991.98px) {
    .icaas-brand-copy {
        max-width: none;
    }

    #systemIdentity.icaas-brand-description {
        font-size: clamp(0.96rem, 2vw, 1.15rem);
    }
}

@media (max-width: 575.98px) {
    .icaas-brand {
        align-items: center;
        gap: 0.7rem;
    }

    .icaas-brand-copy {
        gap: 0.24rem;
        min-height: 2.75rem;
        padding: 0.24rem 0 0.24rem 0.7rem;
    }

    .icaas-brand-copy::before {
        height: 1rem;
        top: 0.3rem;
    }

    .icaas-brand-authority {
        display: block;
        font-size: clamp(0.58rem, 2.6vw, 0.68rem);
        line-height: 1.15;
        white-space: normal;
    }

    #systemIdentity.icaas-brand-description {
        align-items: flex-start;
        display: grid;
        font-size: clamp(0.82rem, 3.7vw, 1rem);
        gap: 0.28rem;
        line-height: 1.18;
    }

    .icaas-brand-acronym {
        font-size: 0.62rem;
        justify-self: start;
        margin-left: 0;
        padding: 0.28rem 0.36rem;
    }
}

@media (max-width: 359.98px) {
    .icaas-brand-authority {
        display: block;
        font-size: 0.56rem;
    }

    .icaas-brand-acronym {
        display: none;
    }
}

/* Final header preference layer: keep the header compact and float all display tools. */
.icaas-brand {
    flex: 1 1 auto;
    max-width: none;
    width: 100%;
}

.icaas-brand-copy {
    flex: 1 1 auto;
    max-width: none;
    width: 100%;
}

#systemIdentity.icaas-brand-description {
    max-width: none;
    width: 100%;
}

.navbar.icaas-topbar,
.icaas-topbar > .icaas-header-shell {
    min-height: 4.75rem;
}

.icaas-topbar > .icaas-header-shell {
    padding-bottom: 0.45rem;
    padding-top: 0.45rem;
}

.icaas-header-actions {
    overflow: visible;
    position: relative;
    z-index: 1250;
}

.icaas-site-settings-panel,
[data-icaas-site-settings="open"] .icaas-site-settings-panel,
[data-icaas-site-settings="closed"] .icaas-site-settings-panel {
    background: var(--icaas-surface-bg);
    border: 1px solid var(--icaas-border);
    border-radius: 0.5rem;
    box-shadow: 0 1rem 2.5rem color-mix(in srgb, #0f172a 24%, transparent);
    display: block;
    left: auto;
    max-height: min(28rem, calc(100dvh - 6rem));
    max-width: none;
    overflow: visible;
    padding: 0.55rem;
    position: absolute;
    right: 0;
    top: calc(100% + 0.45rem);
    transform: none;
    transition: opacity 160ms ease, visibility 180ms;
    width: min(27rem, calc(100vw - 1.5rem));
    z-index: 1300;
}

[data-icaas-site-settings="open"] .icaas-site-settings-panel {
    opacity: 1;
    pointer-events: auto;
    transform: none;
    visibility: visible;
}

[data-icaas-site-settings="closed"] .icaas-site-settings-panel {
    opacity: 0;
    pointer-events: none;
    transform: none;
    visibility: hidden;
}

.icaas-site-settings-panel .icaas-header-preferences {
    background: transparent;
    display: grid;
    gap: 0.45rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 0;
    width: 100%;
}

.icaas-site-settings-panel .icaas-header-preferences > .icaas-mobile-section-label {
    grid-column: 1 / -1;
}

.icaas-site-settings-panel .preference-switcher,
.icaas-site-settings-panel .preference-switcher-trigger {
    min-width: 0;
    width: 100%;
}

.icaas-site-settings-panel .preference-switcher-trigger {
    min-height: 2.75rem;
}

@media (max-width: 991.98px) {
    .navbar.icaas-topbar,
    .icaas-topbar > .icaas-header-shell {
        min-height: 0;
    }

    .icaas-header-actions {
        align-items: center;
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) auto;
        padding: 0;
    }

    .icaas-workspace-shortcut {
        margin-left: max(0.75rem, env(safe-area-inset-left));
        min-height: 2.5rem;
        padding: 0.45rem 0.65rem;
    }

    .icaas-brand {
        align-items: center;
        display: grid;
        gap: 0.8rem;
        grid-template-columns: auto minmax(0, 1fr);
        padding-left: max(0.85rem, env(safe-area-inset-left));
        padding-right: max(0.85rem, env(safe-area-inset-right));
    }

    .icaas-brand-logo {
        height: 4.25rem;
        width: 8.25rem;
    }

    .icaas-brand-copy {
        align-content: center;
        min-height: 4.25rem;
        padding-bottom: 0.4rem;
        padding-top: 0.4rem;
    }

    #systemIdentity.icaas-brand-description {
        font-size: 1.1rem;
        font-weight: 850;
    }

    .icaas-account {
        align-items: center;
        border-bottom: 0;
        display: flex;
        min-width: 0;
        padding-bottom: 0.5rem;
        padding-top: 0.5rem;
    }

    .icaas-account-user,
    .icaas-account-anonymous {
        width: 100%;
    }

    .icaas-account-avatar {
        flex-basis: 2.5rem;
        height: 2.5rem;
        width: 2.5rem;
    }

    #login .icaas-account-name,
    #login .username {
        font-size: 0.9rem;
    }

    .icaas-site-settings-toggle {
        justify-self: end;
        margin: 0.45rem max(0.75rem, env(safe-area-inset-right)) 0.45rem 0;
        min-height: 2.5rem;
    }

    .icaas-site-settings-panel,
    [data-icaas-site-settings="open"] .icaas-site-settings-panel,
    [data-icaas-site-settings="closed"] .icaas-site-settings-panel {
        left: max(0.75rem, env(safe-area-inset-left));
        max-height: min(26rem, calc(100dvh - 8rem));
        right: max(0.75rem, env(safe-area-inset-right));
        top: calc(100% + 0.35rem);
        width: auto;
    }

    .icaas-site-settings-panel .preference-switcher .preference-switcher-control {
        max-width: calc(100vw - 2.6rem);
        width: min(20rem, calc(100vw - 2.6rem)) !important;
    }
}

@media (max-width: 575.98px) {
    .icaas-brand {
        gap: 0.6rem;
        padding-bottom: 0.5rem;
        padding-top: 0.5rem;
    }

    .icaas-brand-logo {
        height: 3.5rem;
        width: 6.5rem;
    }

    .icaas-brand-copy {
        min-height: 3.5rem;
    }

    #systemIdentity.icaas-brand-description {
        font-size: 0.92rem;
    }

    .icaas-account {
        padding-left: 0.75rem;
        padding-right: 0.35rem;
    }

    .icaas-account-avatar {
        flex-basis: 2.25rem;
        height: 2.25rem;
        width: 2.25rem;
    }

    #login .icaas-signout,
    #login .icaas-account-link {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }

    .icaas-site-settings-toggle {
        margin-right: 0.75rem;
        padding: 0.45rem 0.6rem;
    }

    .icaas-site-settings-label {
        display: inline;
        font-size: 0.66rem;
    }

    .icaas-workspace-shortcut span:last-child {
        display: none;
    }

    .icaas-site-settings-panel .icaas-header-preferences {
        grid-template-columns: minmax(0, 1fr);
    }

    .icaas-site-settings-panel .preference-switcher .preference-switcher-control,
    .icaas-site-settings-panel .navigation-mode-switcher .preference-switcher-control,
    .icaas-site-settings-panel .font-size-switcher .preference-switcher-control {
        left: 0 !important;
        right: auto !important;
        width: min(18rem, calc(100vw - 2.6rem)) !important;
    }

    .icaas-site-settings-panel .theme-switcher .preference-switcher-control {
        grid-template-columns: repeat(2, minmax(5rem, 1fr));
    }
}

/* Display preferences use one contained accordion model on every viewport. */
.icaas-site-settings-panel,
[data-icaas-site-settings="open"] .icaas-site-settings-panel,
[data-icaas-site-settings="closed"] .icaas-site-settings-panel {
    max-height: min(34rem, calc(100dvh - 1.5rem));
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.icaas-site-settings-panel .preference-switcher {
    position: static;
}

.icaas-site-settings-panel .preference-switcher .preference-switcher-control,
.icaas-site-settings-panel .navigation-mode-switcher .preference-switcher-control,
.icaas-site-settings-panel .font-size-switcher .preference-switcher-control {
    box-shadow: none;
    grid-column: 1 / -1;
    left: auto !important;
    margin-top: 0;
    max-height: 0;
    max-width: none;
    opacity: 0;
    overflow: hidden;
    padding: 0 0.35rem;
    pointer-events: none;
    position: static !important;
    right: auto !important;
    top: auto !important;
    transform: translateY(-0.35rem);
    transition: max-height 220ms ease, margin-top 180ms ease, opacity 160ms ease,
        padding 180ms ease, transform 200ms ease, visibility 200ms;
    visibility: hidden;
    width: 100% !important;
}

.icaas-site-settings-panel .preference-switcher.is-open .preference-switcher-control {
    border-color: var(--icaas-border);
    margin-top: 0.4rem;
    max-height: 24rem;
    opacity: 1;
    overflow: visible;
    padding: 0.45rem;
    pointer-events: auto;
    transform: translateY(0);
    visibility: visible;
}

.icaas-site-settings-panel .theme-switcher .preference-switcher-control {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.icaas-site-settings-panel .font-switcher .preference-switcher-control {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.icaas-site-settings-panel .navigation-mode-switcher .preference-switcher-control {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.icaas-site-settings-panel .font-size-switcher .preference-switcher-control {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.icaas-site-settings-panel .preference-switcher-control button,
.icaas-site-settings-panel .preference-switcher-control .btn {
    min-width: 0;
    overflow-wrap: anywhere;
    white-space: normal;
}

@media (max-width: 991.98px) {
    .icaas-site-settings-panel,
    [data-icaas-site-settings="open"] .icaas-site-settings-panel,
    [data-icaas-site-settings="closed"] .icaas-site-settings-panel {
        bottom: auto;
        left: max(0.75rem, env(safe-area-inset-left));
        max-height: calc(100dvh - var(--icaas-settings-top, 8rem) - 0.75rem);
        position: fixed;
        right: max(0.75rem, env(safe-area-inset-right));
        top: var(--icaas-settings-top, 8rem);
        width: auto;
    }
}

@media (max-width: 575.98px) {
    .icaas-site-settings-panel .theme-switcher .preference-switcher-control,
    .icaas-site-settings-panel .font-switcher .preference-switcher-control {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Keep the navigation preference inside its settings card. */
.icaas-site-settings-panel #icaasNavigationOptions {
    box-sizing: border-box;
    display: grid;
    gap: 0.4rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 100%;
    overflow: hidden;
    width: 100% !important;
}

.icaas-site-settings-panel #icaasNavigationOptions > button {
    box-sizing: border-box;
    display: inline-flex !important;
    justify-content: center;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    padding-left: 0.65rem;
    padding-right: 0.65rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
}

@media (max-width: 420px) {
    .icaas-site-settings-panel #icaasNavigationOptions {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Final horizontal menu containment: wrapped level-1 rows must stay on the blue bar. */
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
    align-items: stretch;
    background: var(--icaas-menubar-bg, #075d94) !important;
    border-bottom: 3px solid var(--icaas-accent, #f06600);
    box-shadow: 0 .65rem 1.25rem rgba(15, 23, 42, .12);
    min-height: 3.35rem;
    overflow: visible !important;
    padding: 0 !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav > .container,
[data-icaas-navigation="dropdown"] .icaas-navigation-collapse,
[data-icaas-navigation="dropdown"] .icaas-navigation,
[data-icaas-navigation="dropdown"] .icaas-navigation-menu,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar {
    background: var(--icaas-menubar-bg, #075d94) !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav > .container {
    align-items: stretch;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    min-height: inherit;
    overflow-x: auto !important;
    overflow-y: visible !important;
    padding-left: .75rem;
    padding-right: .75rem;
}

[data-icaas-navigation="dropdown"] .icaas-navigation-collapse,
[data-icaas-navigation="dropdown"] .icaas-navigation,
[data-icaas-navigation="dropdown"] .icaas-navigation-menu,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar {
    min-width: max-content;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > table,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > table {
    background: var(--icaas-menubar-bg, #075d94) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: .3rem 0 !important;
    width: 100% !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul::-webkit-scrollbar,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul::-webkit-scrollbar {
    height: .45rem;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul::-webkit-scrollbar-thumb,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul::-webkit-scrollbar-thumb {
    background: color-mix(in srgb, #ffffff 42%, transparent);
    border-radius: 999px;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > a,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul > li > a,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > table > tbody > tr > td > a,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > table > tbody > tr > td > a {
    background: transparent !important;
    color: var(--icaas-menubar-text, #fff) !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > a:hover,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > a:focus,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul > li > a:hover,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul > li > a:focus,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > table > tbody > tr > td > a:hover,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > table > tbody > tr > td > a:focus,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > table > tbody > tr > td > a:hover,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > table > tbody > tr > td > a:focus {
    background: color-mix(in srgb, #ffffff 14%, transparent) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav .icaas-horizontal-child-toggle {
    color: #ffffff !important;
}

/* Horizontal navigation accessibility layer: keep every menu item reachable. */
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav > .container,
[data-icaas-navigation="dropdown"] .icaas-navigation-collapse,
[data-icaas-navigation="dropdown"] .icaas-navigation,
[data-icaas-navigation="dropdown"] .icaas-navigation-menu,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar {
    overflow: visible !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
    position: sticky;
    top: 0;
    z-index: 1250;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul {
    align-items: stretch;
    display: flex !important;
    flex-wrap: nowrap;
    gap: 0.25rem;
    max-width: 100%;
    overflow-x: visible !important;
    overflow-y: visible !important;
    scrollbar-width: thin;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav > .container,
[data-icaas-navigation="dropdown"] .icaas-navigation-collapse,
[data-icaas-navigation="dropdown"] .icaas-navigation,
[data-icaas-navigation="dropdown"] .icaas-navigation-menu,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar {
    min-width: 0 !important;
    overflow: visible !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul {
    width: 100% !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul > li {
    flex: 0 0 auto;
    max-width: min(20rem, 100%);
    min-width: 0;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > a,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul > li > a {
    border-radius: 0.45rem;
    min-height: 2.6rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.level2.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.level3.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.level4.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar div[id*="Items"],
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav [id*="menuBar"][id$="Items"] {
    max-height: var(--icaas-menu-visible-height, min(72vh, 34rem));
    min-width: min(22rem, calc(100vw - 1.5rem));
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    z-index: 1400 !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > ul.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul > li > ul.dynamic {
    left: 0 !important;
    right: auto !important;
    top: calc(100% + 0.35rem) !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.dynamic.icaas-menu-align-right {
    left: auto !important;
    right: 0 !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.dynamic ul.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.level3.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.level4.dynamic {
    left: calc(100% + 0.35rem) !important;
    right: auto !important;
    top: 0 !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.dynamic.icaas-menu-flip-left {
    left: auto !important;
    right: calc(100% + 0.35rem) !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.level2.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li > ul.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul > li > ul.dynamic {
    left: 0 !important;
    right: auto !important;
    top: calc(100% + 0.45rem) !important;
    transform: none !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.level2.dynamic.icaas-menu-align-right {
    left: auto !important;
    right: 0 !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li.icaas-menu-more,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul > li.icaas-menu-more {
    margin-left: auto;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-menu-more > a {
    background: color-mix(in srgb, #ffffff 16%, transparent) !important;
    border: 1px solid color-mix(in srgb, #ffffff 24%, transparent);
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-menu-more-list {
    column-gap: 0.75rem;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(13rem, 1fr));
    max-width: min(64rem, calc(100vw - 1.5rem));
    min-width: min(42rem, calc(100vw - 1.5rem));
    padding: 0.8rem !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-menu-more-list > li {
    break-inside: avoid;
    display: block;
    min-width: 0;
    width: 100%;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-menu-more-list > li > a {
    border-radius: 0.45rem;
    color: var(--icaas-submenu-text, #172033) !important;
    min-height: 2.7rem;
    padding: 0.65rem 0.75rem !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-menu-more-list > li > a:hover,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-menu-more-list > li > a:focus {
    background: var(--icaas-submenu-hover-bg, #e8f2fa) !important;
    color: var(--icaas-submenu-hover-text, #004f86) !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-menu-more-list ul.dynamic {
    display: none !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-menu-more-list .icaas-horizontal-child-toggle {
    color: var(--icaas-submenu-text, #172033) !important;
    pointer-events: none;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.dynamic a,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar div[id*="Items"] a,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav [id*="menuBar"][id$="Items"] a {
    align-items: center;
    display: flex !important;
    gap: 0.45rem;
    line-height: 1.25;
    min-height: 2.65rem;
    white-space: normal !important;
}

@media (min-width: 992px) {
    [data-icaas-navigation="dropdown"] .icaas-navigation-collapse {
        display: block !important;
    }
}

@media (max-width: 991.98px) {
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul {
        display: block !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul > li {
        max-width: none;
        width: 100%;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > ul > li.icaas-menu-more,
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar > div > ul > li.icaas-menu-more {
        display: none !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-menu-more-list {
        display: block !important;
        max-width: none;
        min-width: 0;
    }
}

/* Final stacking guard: display preferences must always open above the menu bar. */
.navbar.icaas-topbar,
.icaas-topbar,
.icaas-topbar > .icaas-header-shell,
.icaas-header-actions {
    overflow: visible !important;
    position: relative;
    z-index: 2200 !important;
}

.icaas-site-settings-panel,
[data-icaas-site-settings="open"] .icaas-site-settings-panel,
[data-icaas-site-settings="closed"] .icaas-site-settings-panel,
.icaas-site-settings-panel .preference-switcher-control,
.icaas-site-settings-panel .preference-switcher.is-open .preference-switcher-control {
    z-index: 2300 !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
    z-index: 1100 !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.level2.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.level3.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar ul.level4.dynamic,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar div[id*="Items"],
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav [id*="menuBar"][id$="Items"] {
    z-index: 1150 !important;
}

/* Mega horizontal menu: replaces cascading desktop flyouts with stable full-width panels. */
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav .icaas-mega-menu,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav .icaas-mega-menu * {
    box-sizing: border-box;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav .icaas-mega-menu {
    background: var(--icaas-menubar-bg, #075d94) !important;
    display: block !important;
    min-width: 0 !important;
    overflow: visible !important;
    position: relative;
    width: 100%;
}

[data-icaas-navigation="dropdown"] .icaas-mega-tabs {
    align-items: stretch;
    background: var(--icaas-menubar-bg, #075d94);
    display: flex !important;
    flex-wrap: wrap;
    gap: .25rem .35rem;
    min-height: 3.15rem;
    padding: .35rem .25rem;
    width: 100%;
}

[data-icaas-navigation="dropdown"] .icaas-mega-tab {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: .45rem;
    color: var(--icaas-menubar-text, #fff);
    display: inline-flex;
    font: inherit;
    font-weight: 850;
    gap: .45rem;
    justify-content: center;
    min-height: 2.55rem;
    padding: .55rem .8rem;
    text-align: center;
    white-space: nowrap;
}

[data-icaas-navigation="dropdown"] .icaas-mega-tabs .icaas-mega-tab {
    visibility: visible !important;
}

[data-icaas-navigation="dropdown"] .icaas-mega-tab > span {
    border-left: .28rem solid transparent;
    border-right: .28rem solid transparent;
    border-top: .35rem solid currentColor;
    display: inline-block;
    opacity: .9;
}

[data-icaas-navigation="dropdown"] .icaas-mega-tab:hover,
[data-icaas-navigation="dropdown"] .icaas-mega-tab:focus,
[data-icaas-navigation="dropdown"] .icaas-mega-tab.is-active,
[data-icaas-navigation="dropdown"] .icaas-mega-tab.is-selected {
    background: color-mix(in srgb, #ffffff 16%, transparent);
    color: #fff;
    outline: 0;
}

[data-icaas-navigation="dropdown"] .icaas-mega-tab.is-active {
    box-shadow: inset 0 -3px 0 var(--icaas-accent, #f06600);
}

[data-icaas-navigation="dropdown"] .icaas-mega-layer {
    background: var(--icaas-submenu-bg, #fff);
    border: 1px solid var(--icaas-submenu-border, #b9c9d9);
    border-top: 3px solid var(--icaas-accent, #f06600);
    box-shadow: 0 1.4rem 3rem rgba(15, 23, 42, .22);
    color: var(--icaas-submenu-text, #172033);
    display: none;
    left: 0;
    max-height: min(72vh, 42rem);
    overflow: auto;
    padding: 1rem;
    position: absolute;
    right: 0;
    top: 100%;
    z-index: 1180;
}

[data-icaas-navigation="dropdown"] .icaas-mega-menu.is-mega-open .icaas-mega-layer {
    display: block;
}

.icaas-mega-search {
    align-items: end;
    display: grid;
    gap: .35rem;
    grid-template-columns: minmax(12rem, 24rem);
    margin-bottom: .9rem;
}

.icaas-mega-search label {
    color: var(--icaas-submenu-muted, #5f6d7e);
    font-size: .78rem;
    font-weight: 900;
    text-transform: uppercase;
}

.icaas-mega-search input {
    background: var(--icaas-surface-bg, #fff);
    border: 1px solid var(--icaas-submenu-border, #b9c9d9);
    border-radius: .45rem;
    color: var(--icaas-text, #172033);
    min-height: 2.75rem;
    padding: .55rem .75rem;
    width: 100%;
}

.icaas-mega-panel[hidden] {
    display: none !important;
}

.icaas-mega-panel-heading {
    align-items: center;
    border-bottom: 1px solid var(--icaas-submenu-border, #b9c9d9);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: .9rem;
    padding-bottom: .75rem;
}

.icaas-mega-panel-heading span {
    color: var(--icaas-submenu-muted, #5f6d7e);
    display: block;
    font-size: .75rem;
    font-weight: 900;
    text-transform: uppercase;
}

.icaas-mega-panel-heading h3 {
    color: var(--icaas-primary-strong, #004f86);
    font-size: 1.3rem;
    font-weight: 900;
    margin: 0;
}

.icaas-mega-panel-home {
    border: 1px solid var(--icaas-submenu-border, #b9c9d9);
    border-radius: .45rem;
    color: var(--icaas-primary, #006db6) !important;
    font-weight: 850;
    padding: .55rem .75rem;
    text-decoration: none;
}

.icaas-mega-grid {
    display: grid;
    gap: .85rem;
    grid-template-columns: repeat(4, minmax(13rem, 1fr));
}

.icaas-mega-group {
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 92%, var(--icaas-primary, #006db6));
    border: 1px solid color-mix(in srgb, var(--icaas-submenu-border, #b9c9d9) 80%, transparent);
    border-radius: .55rem;
    min-width: 0;
    padding: .65rem;
}

.icaas-mega-group.is-filtered-out,
.icaas-mega-link.is-filtered-out,
.icaas-mega-group-title.is-filtered-out {
    display: none !important;
}

.icaas-mega-group-title,
.icaas-mega-link {
    color: var(--icaas-submenu-text, #172033) !important;
    display: block;
    line-height: 1.25;
    overflow-wrap: anywhere;
    text-decoration: none;
}

.icaas-mega-group-title {
    border-bottom: 1px solid color-mix(in srgb, var(--icaas-submenu-border, #b9c9d9) 75%, transparent);
    color: var(--icaas-primary-strong, #004f86) !important;
    font-weight: 900;
    margin-bottom: .45rem;
    padding: .2rem .2rem .55rem;
}

.icaas-mega-links {
    display: grid;
    gap: .35rem;
}

.icaas-mega-links .icaas-mega-group {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
}

.icaas-mega-links .icaas-mega-group-title,
.icaas-mega-link {
    border-radius: .4rem;
    font-weight: 750;
    min-height: 2.25rem;
    padding: .45rem .5rem;
}

.icaas-mega-links .icaas-mega-group-title {
    border-bottom: 0;
    margin-bottom: 0;
}

.icaas-mega-group-title:hover,
.icaas-mega-group-title:focus,
.icaas-mega-link:hover,
.icaas-mega-link:focus,
.icaas-mega-panel-home:hover,
.icaas-mega-panel-home:focus {
    background: var(--icaas-submenu-hover-bg, #e8f2fa) !important;
    color: var(--icaas-submenu-hover-text, #004f86) !important;
    text-decoration: none;
}

.icaas-mega-empty {
    color: var(--icaas-submenu-muted, #5f6d7e);
    font-weight: 800;
    margin: .5rem 0 0;
}

@media (max-width: 1399.98px) {
    .icaas-mega-grid {
        grid-template-columns: repeat(3, minmax(13rem, 1fr));
    }
}

@media (max-width: 991.98px) {
    [data-icaas-navigation="dropdown"] .icaas-mega-tabs {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    [data-icaas-navigation="dropdown"] .icaas-mega-tab {
        justify-content: space-between;
        text-align: left;
        width: 100%;
    }

    [data-icaas-navigation="dropdown"] .icaas-mega-layer {
        border-left: 0;
        border-right: 0;
        max-height: 70vh;
        position: static;
    }

    .icaas-mega-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Stable horizontal launcher menu: full tree access happens through searchable overlay/sidebar. */
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav .icaas-launcher-menu {
    background: var(--icaas-menubar-bg, #075d94) !important;
    display: block !important;
    min-width: 0 !important;
    overflow: visible !important;
    position: relative;
    width: 100%;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-row {
    align-items: center;
    background: var(--icaas-menubar-bg, #075d94);
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    min-height: 3.25rem;
    padding: .35rem .25rem;
    width: 100%;
}

.icaas-launcher-button,
.navbar .container a.icaas-launcher-button {
    align-items: center;
    background: transparent;
    border: 1px solid transparent;
    border-radius: .45rem;
    color: var(--icaas-menubar-text, #fff) !important;
    display: inline-flex;
    font: inherit;
    font-weight: 850;
    gap: .15rem;
    justify-content: center;
    min-height: 2.55rem;
    padding: .55rem .85rem;
    text-decoration: none !important;
    white-space: nowrap;
}

.icaas-menu-icon {
    align-items: center;
    background: color-mix(in srgb, var(--icaas-primary, #006db6) 12%, #fff);
    border: 1px solid color-mix(in srgb, var(--icaas-primary, #006db6) 18%, transparent);
    border-radius: .4rem;
    color: var(--icaas-primary-strong, #004f86);
    display: inline-flex;
    flex: 0 0 auto;
    height: 1.8rem;
    justify-content: center;
    margin-right: .45rem;
    width: 1.8rem;
}

.icaas-launcher-row > .icaas-launcher-button .icaas-menu-icon,
.icaas-launcher-button.is-primary .icaas-menu-icon {
    background: rgba(255, 255, 255, .24);
    border-color: rgba(255, 255, 255, .36);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18);
    color: #fff;
    height: 2rem;
    width: 2rem;
}

.icaas-launcher-row > .icaas-launcher-button .icaas-top-menu-icon {
    background: color-mix(in srgb, #ffffff 88%, var(--icaas-primary, #006db6));
    border-color: color-mix(in srgb, #ffffff 62%, var(--icaas-primary, #006db6));
    border-radius: .35rem;
    color: var(--icaas-primary-strong, #004f86);
    height: 2.25rem;
    width: 2.25rem;
}

.icaas-launcher-row > .icaas-launcher-button .icaas-top-menu-icon .glyphicon {
    color: inherit;
    display: inline-block;
    font-size: 1.15rem;
    line-height: 1;
}

.icaas-launcher-row > .icaas-launcher-button:hover .icaas-top-menu-icon,
.icaas-launcher-row > .icaas-launcher-button:focus .icaas-top-menu-icon,
.icaas-launcher-row > .icaas-launcher-button.is-selected .icaas-top-menu-icon,
.icaas-launcher-row > .icaas-launcher-button.is-active .icaas-top-menu-icon {
    background: #ffffff;
    border-color: #ffffff;
    color: var(--icaas-primary-strong, #004f86);
}

.icaas-menu-icon .icaas-menu-svg {
    display: block;
    height: 1rem;
    width: 1rem;
}

.icaas-menu-text {
    min-width: 0;
}

.icaas-launcher-row > .icaas-launcher-button {
    color: var(--icaas-menubar-text, #fff) !important;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .18);
}

button.icaas-launcher-button {
    cursor: pointer;
}

.icaas-launcher-button:hover,
.icaas-launcher-button:focus,
.icaas-launcher-button.is-selected,
.icaas-launcher-button.is-active {
    background: color-mix(in srgb, #ffffff 16%, transparent);
    border-color: color-mix(in srgb, #ffffff 22%, transparent);
    color: #fff !important;
    outline: 0;
}

.icaas-launcher-button.is-primary {
    background: color-mix(in srgb, var(--icaas-accent, #f06600) 88%, #fff);
    border-color: color-mix(in srgb, var(--icaas-accent, #f06600) 70%, #fff);
    color: #fff !important;
    margin-left: auto;
}

.icaas-launcher-panels {
    position: relative;
    z-index: 1180;
}

.icaas-launcher-panel[hidden] {
    display: none !important;
}

.icaas-launcher-panel {
    background:
        linear-gradient(180deg,
            color-mix(in srgb, var(--icaas-submenu-bg, #fff) 96%, var(--icaas-primary, #006db6)) 0%,
            var(--icaas-submenu-bg, #fff) 100%);
    border: 1px solid var(--icaas-submenu-border, #d6e2ec);
    border-top: 4px solid var(--icaas-accent, #f06600);
    box-shadow: 0 1.4rem 3.4rem rgba(15, 23, 42, .18);
    color: var(--icaas-submenu-text, #172033);
    left: 0;
    max-height: min(72vh, 42rem);
    min-height: 12rem;
    overflow: auto;
    overscroll-behavior: contain;
    padding: 1rem 1.15rem 1.2rem;
    position: absolute;
    right: 0;
    top: 0;
    scrollbar-color: color-mix(in srgb, var(--icaas-primary, #006db6) 70%, var(--icaas-submenu-border, #b9c9d9)) transparent;
    scrollbar-width: thin;
}

.icaas-launcher-panel::-webkit-scrollbar,
.icaas-more-roots::-webkit-scrollbar,
.icaas-more-details::-webkit-scrollbar {
    height: .65rem;
    width: .65rem;
}

.icaas-launcher-panel::-webkit-scrollbar-thumb,
.icaas-more-roots::-webkit-scrollbar-thumb,
.icaas-more-details::-webkit-scrollbar-thumb {
    background: color-mix(in srgb, var(--icaas-primary, #006db6) 70%, var(--icaas-submenu-border, #b9c9d9));
    border-radius: 999px;
}

.icaas-launcher-panel-heading {
    align-items: center;
    border-bottom: 1px solid var(--icaas-submenu-border, #b9c9d9);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: .9rem;
    padding-bottom: .75rem;
}

.icaas-launcher-panel-heading span {
    color: var(--icaas-muted, #5f6d7e);
    display: block;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.icaas-launcher-panel-heading h3 {
    color: var(--icaas-primary-strong, #004f86);
    font-size: 1.25rem;
    font-weight: 900;
    margin: 0;
}

.icaas-launcher-panel-close {
    align-items: center;
    background: var(--icaas-surface-alt, #f6f9fc);
    border: 1px solid var(--icaas-submenu-border, #b9c9d9);
    border-radius: .45rem;
    color: var(--icaas-danger, #c92a2a);
    display: inline-flex;
    font-size: 1.45rem;
    font-weight: 900;
    height: 2.4rem;
    justify-content: center;
    line-height: 1;
    width: 2.4rem;
}

.icaas-launcher-panel-grid {
    display: grid;
    gap: .9rem;
    grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr));
}

.icaas-launcher-panel-group {
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 94%, var(--icaas-primary, #006db6));
    border: 1px solid var(--icaas-submenu-border, #d6e2ec);
    border-radius: .35rem;
    color: var(--icaas-submenu-text, #172033);
    min-width: 0;
    padding: .35rem;
}

.icaas-launcher-level-2 {
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 94%, var(--icaas-primary, #006db6));
    border-color: var(--icaas-submenu-border, #d6e2ec);
    box-shadow: 0 .45rem 1rem rgba(15, 23, 42, .06);
}

.icaas-launcher-panel-title,
.navbar .container a.icaas-launcher-panel-title {
    align-items: center;
    background: var(--icaas-submenu-bg, #fff) !important;
    border-radius: .28rem;
    color: var(--icaas-submenu-text, #172033) !important;
    display: flex;
    gap: .1rem;
    font-weight: 900;
    line-height: 1.28;
    min-height: 2.75rem;
    padding: .65rem .75rem;
    text-decoration: none !important;
    white-space: normal;
    word-break: normal;
    overflow-wrap: anywhere;
}

.icaas-launcher-level-2 > .icaas-launcher-panel-title {
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 88%, var(--icaas-primary, #006db6)) !important;
    border-left: 4px solid var(--icaas-primary, #006db6);
    color: var(--icaas-primary-strong, #004f86) !important;
    font-size: .98rem;
    letter-spacing: .01em;
    margin: 0;
    padding: .7rem .85rem;
    text-transform: uppercase;
}

.icaas-launcher-level-2 > .icaas-launcher-panel-title.is-category {
    color: var(--icaas-primary-strong, #004f86) !important;
}

.icaas-launcher-panel-title:not(.is-category):hover,
.icaas-launcher-panel-title:not(.is-category):focus {
    background: var(--icaas-submenu-hover-bg, #eaf4fb) !important;
    color: var(--icaas-submenu-hover-text, #003f6b) !important;
    outline: 0;
}

.icaas-launcher-panel-title.is-category {
    color: var(--icaas-primary-strong, #004f86) !important;
    cursor: default;
}

.icaas-launcher-panel-links {
    display: grid;
    gap: .35rem;
    margin-top: .45rem;
}

.icaas-launcher-panel-links .icaas-launcher-panel-group {
    background: transparent;
    border: 0;
    border-left: 3px solid var(--icaas-submenu-border, #cbd8e3);
    border-radius: 0;
    box-shadow: none;
    padding: 0 0 0 .55rem;
}

.icaas-launcher-panel-links .icaas-launcher-panel-title {
    background: transparent !important;
    color: var(--icaas-submenu-text, #172033) !important;
    font-size: .92rem;
    font-weight: 800;
    min-height: 2.25rem;
    padding: .45rem .55rem;
    text-transform: none;
}

.icaas-launcher-level-3 > .icaas-launcher-panel-title {
    background: transparent !important;
    color: var(--icaas-submenu-text, #172033) !important;
}

.icaas-launcher-level-3 > .icaas-launcher-panel-title:not(.is-category):hover,
.icaas-launcher-level-3 > .icaas-launcher-panel-title:not(.is-category):focus {
    background: var(--icaas-submenu-hover-bg, #eaf4fb) !important;
    color: var(--icaas-submenu-hover-text, #003f6b) !important;
}

.icaas-launcher-level-4,
.icaas-launcher-level-5,
.icaas-launcher-level-6 {
    background: color-mix(in srgb, #fff 96%, var(--icaas-accent, #f06600)) !important;
    border-left-color: color-mix(in srgb, var(--icaas-primary, #006db6) 52%, var(--icaas-accent, #f06600)) !important;
    margin-left: .45rem;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-launcher-panel,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-launcher-panel * {
    text-shadow: none !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-launcher-panel .icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-launcher-panel a.icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-launcher-panel div.icaas-launcher-panel-title,
.navbar .container #menuBar .icaas-launcher-panel a.icaas-launcher-panel-title {
    background: inherit;
    color: var(--icaas-submenu-text, #172033) !important;
    -webkit-text-fill-color: var(--icaas-submenu-text, #172033) !important;
    opacity: 1 !important;
    visibility: visible !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-launcher-panel .icaas-launcher-panel-title:hover,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar .icaas-launcher-panel .icaas-launcher-panel-title:focus {
    background: var(--icaas-submenu-hover-bg, #eaf4fb) !important;
    color: var(--icaas-submenu-hover-text, #003f6b) !important;
    -webkit-text-fill-color: var(--icaas-submenu-hover-text, #003f6b) !important;
}

.icaas-launcher-more-panel {
    max-height: min(76vh, 46rem);
    min-height: 22rem;
}

.icaas-more-layout {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(15rem, 24rem) minmax(0, 1fr);
}

.icaas-more-roots {
    border-right: 1px solid var(--icaas-submenu-border, #c7d5e2);
    display: grid;
    gap: .45rem;
    max-height: calc(min(76vh, 46rem) - 7.5rem);
    overflow: auto;
    padding-right: 1rem;
    scrollbar-color: color-mix(in srgb, var(--icaas-primary, #006db6) 70%, var(--icaas-submenu-border, #b9c9d9)) transparent;
    scrollbar-width: thin;
}

.icaas-more-root,
.navbar .container a.icaas-more-root {
    align-items: center;
    background: var(--icaas-submenu-bg, #fff);
    border: 1px solid transparent;
    border-radius: .35rem;
    color: var(--icaas-submenu-text, #172033) !important;
    display: flex;
    font: inherit;
    font-weight: 850;
    gap: .75rem;
    justify-content: space-between;
    line-height: 1.25;
    min-height: 3.15rem;
    padding: .75rem .9rem;
    text-align: left;
    text-decoration: none !important;
    white-space: normal;
    width: 100%;
}

.icaas-more-root .icaas-menu-icon {
    margin-right: .1rem;
}

.icaas-more-root .icaas-menu-text {
    flex: 1 1 auto;
}

.icaas-more-root .icaas-more-arrow {
    color: var(--icaas-submenu-muted, #516071);
    font-size: 1.45rem;
    line-height: 1;
}

.icaas-more-root:hover,
.icaas-more-root:focus,
.icaas-more-root.is-active {
    background: var(--icaas-submenu-hover-bg, #eef2f6);
    border-color: var(--icaas-submenu-border, #d6e2ec);
    color: var(--icaas-submenu-hover-text, #003f6b) !important;
    outline: 0;
}

.icaas-more-root.is-active {
    border-left: 4px solid var(--icaas-accent, #f06600);
}

.icaas-more-details {
    max-height: calc(min(76vh, 46rem) - 7.5rem);
    min-width: 0;
    overflow: auto;
    padding-left: .2rem;
    scrollbar-color: color-mix(in srgb, var(--icaas-primary, #006db6) 70%, var(--icaas-submenu-border, #b9c9d9)) transparent;
    scrollbar-width: thin;
}

.icaas-more-detail[hidden] {
    display: none !important;
}

.icaas-more-detail h4 {
    color: var(--icaas-primary-strong, #142033);
    font-size: 1.15rem;
    font-weight: 900;
    margin: 0 0 .9rem;
}

.icaas-menu-search-overlay[hidden] {
    display: none !important;
}

.icaas-menu-search-overlay {
    background: rgba(15, 23, 42, .48);
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 0;
    overflow: auto;
    padding: clamp(.75rem, 2vw, 1.5rem);
    position: fixed;
    right: 0;
    top: 0;
    z-index: 2400;
}

.icaas-menu-search-dialog {
    background: var(--icaas-submenu-bg, #fff);
    border: 1px solid var(--icaas-submenu-border, #b9c9d9);
    border-radius: .65rem;
    box-shadow: 0 1.5rem 4rem rgba(15, 23, 42, .32);
    color: var(--icaas-submenu-text, #172033);
    margin-top: min(6rem, 10vh);
    max-height: min(82vh, 52rem);
    max-width: min(72rem, calc(100vw - 1.5rem));
    overflow: hidden;
    width: 100%;
}

.icaas-menu-search-header {
    align-items: center;
    background: linear-gradient(110deg, var(--icaas-primary-strong, #004f86), var(--icaas-primary, #006db6));
    color: #fff;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.2rem;
}

.icaas-menu-search-header span {
    display: block;
    font-size: .75rem;
    font-weight: 900;
    opacity: .82;
    text-transform: uppercase;
}

.icaas-menu-search-header h3 {
    color: #fff;
    font-size: 1.35rem;
    font-weight: 900;
    margin: 0;
}

.icaas-menu-search-close {
    align-items: center;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: .5rem;
    color: #fff;
    display: inline-flex;
    font-size: 1.7rem;
    height: 2.75rem;
    justify-content: center;
    line-height: 1;
    width: 2.75rem;
}

.icaas-menu-search-box {
    background: var(--icaas-surface-alt, #f6f9fc);
    border-bottom: 1px solid var(--icaas-submenu-border, #b9c9d9);
    display: grid;
    gap: .35rem;
    padding: 1rem 1.2rem;
}

.icaas-menu-search-box label {
    color: var(--icaas-muted, #5f6d7e);
    font-size: .78rem;
    font-weight: 900;
    text-transform: uppercase;
}

.icaas-menu-search-box input {
    background: var(--icaas-surface-bg, #fff);
    border: 1px solid var(--icaas-submenu-border, #b9c9d9);
    border-radius: .45rem;
    color: var(--icaas-text, #172033);
    min-height: 2.9rem;
    padding: .65rem .85rem;
    width: 100%;
}

.icaas-menu-search-results {
    display: grid;
    gap: .55rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-height: calc(min(82vh, 52rem) - 11rem);
    overflow: auto;
    padding: 1rem 1.2rem;
}

.icaas-menu-search-link,
.navbar .container a.icaas-menu-search-link {
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 94%, var(--icaas-primary, #006db6));
    border: 1px solid color-mix(in srgb, var(--icaas-submenu-border, #b9c9d9) 82%, transparent);
    border-radius: .5rem;
    color: var(--icaas-submenu-text, #172033) !important;
    display: grid;
    gap: .22rem;
    min-height: 4rem;
    padding: .75rem;
    text-decoration: none !important;
}

.icaas-menu-search-link strong {
    color: var(--icaas-primary-strong, #004f86);
    font-weight: 900;
}

.icaas-menu-search-link span {
    color: var(--icaas-muted, #5f6d7e);
    font-size: .82rem;
    font-weight: 700;
    line-height: 1.25;
}

.icaas-menu-search-link:hover,
.icaas-menu-search-link:focus {
    background: var(--icaas-submenu-hover-bg, #e8f2fa);
    border-color: var(--icaas-primary, #006db6);
    outline: 0;
}

.icaas-menu-search-link.is-category {
    background: color-mix(in srgb, var(--icaas-primary, #006db6) 8%, var(--icaas-submenu-bg, #fff));
    cursor: default;
}

.icaas-menu-search-link.is-category strong::after {
    color: var(--icaas-muted, #5f6d7e);
    content: " category";
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.icaas-menu-search-link.is-hidden {
    display: none !important;
}

.icaas-menu-search-empty {
    color: var(--icaas-muted, #5f6d7e);
    font-weight: 850;
    margin: 0;
    padding: 0 1.2rem 1rem;
}

@media (max-width: 1199.98px) {
    .icaas-launcher-panel-grid {
        grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    }

    .icaas-menu-search-results {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .icaas-launcher-panel {
        max-height: 68vh;
        overflow: auto;
        position: static;
    }

    .icaas-launcher-panel-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .icaas-more-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .icaas-more-roots {
        border-bottom: 1px solid #c7d5e2;
        border-right: 0;
        padding: 0 0 1rem;
    }

    [data-icaas-navigation="dropdown"] .icaas-launcher-button[data-menu-panel] {
        display: none !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-launcher-button.is-primary,
    [data-icaas-navigation="dropdown"] #icaasOpenSidebarFromMenu {
        display: inline-flex !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-launcher-row {
        justify-content: flex-end;
        min-height: 3rem;
        padding: .45rem .65rem;
    }
}

@media (max-width: 767.98px) {
    [data-icaas-navigation="dropdown"] .icaas-launcher-row {
        align-items: stretch;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        justify-content: stretch;
    }

    .icaas-launcher-button.is-primary {
        margin-left: 0;
    }

    [data-icaas-navigation="dropdown"] .icaas-launcher-button {
        min-width: 0;
        width: 100%;
    }

    .icaas-launcher-panel-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .icaas-menu-search-results {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Mobile navigation intentionally uses the traditional recursive sidebar tree. */
@media (max-width: 991.98px) {
    [data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
        display: none !important;
        height: 0 !important;
        overflow: hidden !important;
        visibility: hidden !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-mobile-nav-bar {
        display: block !important;
        position: sticky;
        top: 0;
        visibility: visible !important;
        z-index: 1035;
    }

    [data-icaas-navigation="dropdown"] .icaas-sidebar {
        display: block !important;
        visibility: visible !important;
    }

    [data-icaas-navigation="dropdown"] .icaas-sidebar-backdrop {
        display: block;
    }

    body.icaas-sidebar-open .navbar.icaas-topbar,
    body.icaas-sidebar-open .icaas-topbar,
    body.icaas-sidebar-open .icaas-topbar > .icaas-header-shell,
    body.icaas-sidebar-open .icaas-header-actions {
        z-index: 1000 !important;
    }

    body.icaas-sidebar-open .icaas-mobile-nav-bar {
        z-index: 2460 !important;
    }

    body.icaas-sidebar-open .icaas-sidebar-backdrop {
        z-index: 2470 !important;
    }

    body.icaas-sidebar-open .icaas-sidebar {
        z-index: 2480 !important;
    }

    .icaas-mobile-nav-bar,
    .icaas-mobile-nav-bar .icaas-sidebar-toggle,
    .icaas-mobile-nav-bar .icaas-sidebar-toggle span,
    .icaas-mobile-nav-bar .icaas-mobile-current,
    .icaas-mobile-nav-bar .icaas-mobile-current span,
    .icaas-mobile-nav-bar .glyphicon {
        color: #ffffff !important;
        opacity: 1 !important;
        -webkit-text-fill-color: #ffffff !important;
    }

    .icaas-mobile-nav-bar .icaas-menu-toggler-icon span {
        background: #ffffff !important;
        border-color: #ffffff !important;
        opacity: 1 !important;
    }

    body.icaas-sidebar-open .icaas-sidebar {
        display: flex !important;
        flex-direction: column !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        overflow: hidden !important;
        overscroll-behavior: contain;
        padding-bottom: env(safe-area-inset-bottom);
    }

    body.icaas-sidebar-open .icaas-sidebar-header,
    body.icaas-sidebar-open .icaas-sidebar-search {
        flex: 0 0 auto !important;
    }

    body.icaas-sidebar-open .icaas-sidebar-nav {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        padding-bottom: max(1.25rem, env(safe-area-inset-bottom)) !important;
        scrollbar-color: color-mix(in srgb, var(--icaas-primary, #006db6) 70%, var(--icaas-border, #cbd6e2)) transparent;
        scrollbar-width: thin;
        -webkit-overflow-scrolling: touch;
    }

    body.icaas-sidebar-open .icaas-sidebar-nav::-webkit-scrollbar {
        width: .55rem;
    }

    body.icaas-sidebar-open .icaas-sidebar-nav::-webkit-scrollbar-thumb {
        background: color-mix(in srgb, var(--icaas-primary, #006db6) 70%, var(--icaas-border, #cbd6e2));
        border-radius: 999px;
    }

    .navbar.icaas-topbar,
    .icaas-topbar > .icaas-header-shell,
    .icaas-mobile-nav-bar {
        width: 100% !important;
    }

    .icaas-topbar > .icaas-header-shell,
    .icaas-mobile-nav-bar > .container {
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .icaas-topbar > .icaas-header-shell {
        justify-items: stretch !important;
    }

    .icaas-brand,
    .icaas-header-actions,
    .icaas-site-settings-panel,
    .icaas-account,
    .icaas-header-preferences {
        max-width: none !important;
        width: 100% !important;
    }

    .icaas-brand {
        justify-content: flex-start !important;
    }

    .icaas-header-actions {
        align-items: stretch !important;
        justify-items: stretch !important;
    }

    .icaas-account {
        align-items: center !important;
        grid-template-columns: auto minmax(0, 1fr) auto !important;
    }

    .icaas-header-preferences {
        justify-content: stretch !important;
    }

    .icaas-mobile-nav-bar > .container {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: .75rem !important;
        padding-left: max(1rem, env(safe-area-inset-left)) !important;
        padding-right: max(1rem, env(safe-area-inset-right)) !important;
        width: 100% !important;
    }

    .icaas-mobile-nav-bar .icaas-sidebar-toggle {
        justify-content: flex-start !important;
        min-width: 0 !important;
        width: 100% !important;
    }

    .icaas-mobile-nav-bar .icaas-mobile-current {
        align-items: center !important;
        display: inline-flex !important;
        gap: .45rem !important;
        justify-content: flex-end !important;
        min-width: 0 !important;
        text-align: right !important;
        text-decoration: none !important;
        width: 100% !important;
    }
}

/* Launcher contrast guard: keep submenu panels readable across every theme. */
[data-icaas-navigation="dropdown"] .icaas-launcher-panel,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel * {
    text-shadow: none !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel p,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel span,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel div,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel button,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel a {
    color: var(--icaas-submenu-text, #172033) !important;
    -webkit-text-fill-color: var(--icaas-submenu-text, #172033) !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel h3,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel h4,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-2 > .icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-title.is-category {
    color: var(--icaas-primary-strong, var(--icaas-submenu-text, #172033)) !important;
    -webkit-text-fill-color: var(--icaas-primary-strong, var(--icaas-submenu-text, #172033)) !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-heading span,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-more-arrow {
    color: var(--icaas-submenu-muted, #5f6d7e) !important;
    -webkit-text-fill-color: var(--icaas-submenu-muted, #5f6d7e) !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-more-root,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel a.icaas-more-root,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel button.icaas-more-root,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-group,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-title {
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 94%, var(--icaas-primary, #006db6)) !important;
    border-color: var(--icaas-submenu-border, #b9c9d9) !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-2 > .icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-2 > .icaas-launcher-panel-title .icaas-menu-text {
    background: transparent !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-2 {
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 90%, var(--icaas-primary, #006db6)) !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-links .icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-links .icaas-launcher-panel-group {
    background: transparent !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-more-root:hover,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-more-root:focus,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-more-root.is-active,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-title:not(.is-category):hover,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-title:not(.is-category):focus {
    background: var(--icaas-submenu-hover-bg, #e8f2fa) !important;
    color: var(--icaas-submenu-hover-text, #004f86) !important;
    -webkit-text-fill-color: var(--icaas-submenu-hover-text, #004f86) !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-menu-icon,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-top-menu-icon {
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 78%, var(--icaas-primary, #006db6)) !important;
    border-color: var(--icaas-submenu-border, #b9c9d9) !important;
    color: var(--icaas-primary-strong, var(--icaas-submenu-text, #172033)) !important;
    -webkit-text-fill-color: var(--icaas-primary-strong, var(--icaas-submenu-text, #172033)) !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-menu-svg,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .glyphicon {
    color: inherit !important;
    fill: none !important;
    stroke: currentColor !important;
    -webkit-text-fill-color: currentColor !important;
}

/* Launcher nesting guard: keep level-3 menus inside their parent cards. */
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-grid,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-more-details {
    min-width: 0 !important;
    overflow-x: hidden !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-group {
    box-sizing: border-box !important;
    min-width: 0 !important;
    overflow: hidden !important;
    width: 100% !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-2 {
    display: flex !important;
    flex-direction: column !important;
    gap: .55rem !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-2 > .icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-3 > .icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-4 > .icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-5 > .icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-6 > .icaas-launcher-panel-title {
    align-items: center !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    max-width: 100% !important;
    min-width: 0 !important;
    width: 100% !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-title .icaas-menu-text {
    display: block !important;
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
    word-break: normal !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-title {
    align-content: center !important;
    height: auto !important;
    min-height: 3.2rem !important;
    overflow: visible !important;
    padding-bottom: .65rem !important;
    padding-top: .65rem !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-title .icaas-menu-icon {
    align-self: start !important;
    margin-top: .05rem !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-2 > .icaas-launcher-panel-links {
    align-items: stretch !important;
    display: grid !important;
    gap: .55rem !important;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)) !important;
    margin-top: 0 !important;
    min-width: 0 !important;
    width: 100% !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-3,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-4,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-5,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-6 {
    border-left: 3px solid var(--icaas-submenu-border, #b9c9d9) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: .4rem !important;
    height: auto !important;
    margin-left: 0 !important;
    min-height: 3.35rem !important;
    overflow: visible !important;
    padding: .45rem .55rem !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-3 > .icaas-launcher-panel-links,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-4 > .icaas-launcher-panel-links,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-5 > .icaas-launcher-panel-links {
    display: grid !important;
    gap: .4rem !important;
    grid-template-columns: minmax(0, 1fr) !important;
    margin: 0 !important;
    min-width: 0 !important;
}

@media (max-width: 1399.98px) {
    [data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-2 > .icaas-launcher-panel-links {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

/* ICAAS menu repair: final launcher layout and contrast guard.
   Keep this block last so theme overrides cannot make menu text unreadable. */
[data-icaas-navigation="dropdown"] .navbar.icaas-menubar,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav {
    overflow: visible !important;
    z-index: 1040 !important;
}

[data-icaas-navigation="dropdown"] .icaas-dropdown-nav #menuBar,
[data-icaas-navigation="dropdown"] .icaas-dropdown-nav .icaas-launcher-menu {
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
    width: 100% !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-row {
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: .55rem !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    scrollbar-width: thin;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-row::-webkit-scrollbar {
    height: .45rem;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-row::-webkit-scrollbar-thumb {
    background: color-mix(in srgb, var(--icaas-menubar-text, #fff) 45%, transparent);
    border-radius: 999px;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-button,
[data-icaas-navigation="dropdown"] .navbar .container a.icaas-launcher-button {
    flex: 0 0 auto !important;
    min-width: max-content !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panels {
    position: relative !important;
    z-index: 1260 !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel {
    background: var(--icaas-submenu-bg, #ffffff) !important;
    border-color: var(--icaas-submenu-border, #b9c9d9) !important;
    box-shadow: 0 1.4rem 3.5rem rgba(4, 40, 74, .18) !important;
    color: var(--icaas-submenu-text, #172033) !important;
    left: 0 !important;
    max-height: min(76vh, 44rem) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    right: 0 !important;
    top: 0 !important;
    z-index: 1260 !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel * {
    text-shadow: none !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-heading h3,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-heading span,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-menu-text,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel a,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel button {
    color: var(--icaas-submenu-text, #172033) !important;
    -webkit-text-fill-color: var(--icaas-submenu-text, #172033) !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-grid,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-more-details {
    align-items: start !important;
    display: grid !important;
    gap: .85rem !important;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)) !important;
    min-width: 0 !important;
    overflow: visible !important;
    width: 100% !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-group {
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 92%, var(--icaas-primary, #006db6)) !important;
    border: 1px solid var(--icaas-submenu-border, #b9c9d9) !important;
    border-radius: .9rem !important;
    box-shadow: 0 .65rem 1.35rem rgba(4, 40, 74, .08) !important;
    min-width: 0 !important;
    overflow: hidden !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-title,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-more-root,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel a.icaas-more-root,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel button.icaas-more-root {
    align-items: center !important;
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 96%, var(--icaas-primary, #006db6)) !important;
    border: 0 !important;
    color: var(--icaas-submenu-text, #172033) !important;
    display: grid !important;
    gap: .65rem !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    min-height: 3.35rem !important;
    min-width: 0 !important;
    padding: .65rem .8rem !important;
    width: 100% !important;
    -webkit-text-fill-color: var(--icaas-submenu-text, #172033) !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-2 > .icaas-launcher-panel-title {
    background: linear-gradient(90deg,
        color-mix(in srgb, var(--icaas-submenu-bg, #fff) 86%, var(--icaas-primary, #006db6)),
        color-mix(in srgb, var(--icaas-submenu-bg, #fff) 97%, var(--icaas-primary, #006db6))) !important;
    border-left: 4px solid var(--icaas-primary, #006db6) !important;
    color: var(--icaas-primary-strong, #004f86) !important;
    -webkit-text-fill-color: var(--icaas-primary-strong, #004f86) !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-panel-title .icaas-menu-text {
    background: transparent !important;
    color: inherit !important;
    display: block !important;
    font-size: clamp(.88rem, 1.1vw, 1rem) !important;
    line-height: 1.2 !important;
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    -webkit-text-fill-color: currentColor !important;
    white-space: normal !important;
    word-break: normal !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-2 > .icaas-launcher-panel-links,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-3 > .icaas-launcher-panel-links,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-4 > .icaas-launcher-panel-links,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-5 > .icaas-launcher-panel-links {
    display: grid !important;
    gap: .55rem !important;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 13.5rem), 1fr)) !important;
    margin: .55rem 0 0 !important;
    min-width: 0 !important;
    width: 100% !important;
}

[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-3,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-4,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-5,
[data-icaas-navigation="dropdown"] .icaas-launcher-panel .icaas-launcher-level-6 {
    background: color-mix(in srgb, var(--icaas-submenu-bg, #fff) 95%, var(--icaas-primary, #006db6)) !important;
    border-left: 3px solid color-mix(in srgb, var(--icaas-primary, #006db6) 60%, var(--icaas-submenu-border, #b9c9d9)) !important;
    padding: .45rem !important;
}

@media (max-width: 991.98px) {
    [data-icaas-navigation="dropdown"] .icaas-launcher-row {
        flex-wrap: wrap !important;
        overflow-x: hidden !important;
    }

    .icaas-mobile-shell,
    .icaas-mobile-menu,
    .icaas-sidebar-panel {
        max-height: 100dvh !important;
        overflow-y: auto !important;
        z-index: 1400 !important;
    }
}

/* FileTracker tab modernization shared by CrossDepartmentalReferences and peer workspaces */
.icaas-filetracker-page {
    --ft-kcaa-blue: #0067a8;
    --ft-kcaa-blue-dark: #004f86;
    --ft-kcaa-orange: #f58220;
    --ft-kcaa-teal: #0f8f9a;
    --ft-border: #c8dbef;
    --ft-surface: color-mix(in srgb, var(--icaas-surface, #fff) 96%, #eef7ff);
    --ft-soft: color-mix(in srgb, var(--icaas-surface, #fff) 90%, #e8f4ff);
    --ft-text: var(--icaas-text, #172033);
    color: var(--ft-text);
}

.icaas-filetracker-page .filetracker-workspace {
    display: block;
    margin: 0 auto;
    max-width: min(100%, 1500px);
    overflow: visible;
    padding: clamp(.75rem, 1.5vw, 1.25rem);
}

.icaas-filetracker-page .cdp-mini-hero,
.icaas-filetracker-page .cdp-hero {
    align-items: center;
    background:
        linear-gradient(115deg, rgba(245, 130, 32, .16), rgba(255, 255, 255, .92) 28%, rgba(0, 103, 168, .14) 100%),
        var(--ft-surface);
    border: 1px solid var(--ft-border);
    border-bottom: 4px solid var(--ft-kcaa-orange);
    border-left: 6px solid var(--ft-kcaa-orange);
    border-radius: 1.25rem;
    box-shadow: 0 1rem 2.4rem rgba(0, 55, 95, .08);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin: 0 0 1rem;
    min-height: 7.5rem;
    padding: clamp(1rem, 2vw, 1.65rem);
}

.icaas-filetracker-page .cdp-mini-hero h1,
.icaas-filetracker-page .cdp-hero h1 {
    color: var(--ft-text);
    font-size: clamp(1.85rem, 4vw, 3rem);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.05;
    margin: .15rem 0 .45rem;
}

.icaas-filetracker-page .cdp-mini-hero p,
.icaas-filetracker-page .cdp-hero p {
    color: color-mix(in srgb, var(--ft-text) 78%, #657386);
    font-size: clamp(.96rem, 1.3vw, 1.08rem);
    font-weight: 650;
    margin: 0;
    max-width: 68rem;
}

.icaas-filetracker-page .cdp-kicker {
    color: var(--ft-kcaa-orange);
    display: inline-block;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.icaas-filetracker-page .cdp-hero-actions,
.icaas-filetracker-page .closebar {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    justify-content: flex-end;
}

.icaas-filetracker-page .cdp-close-button,
.icaas-filetracker-page .closebar .btn,
.icaas-filetracker-page .closebar input[type="submit"] {
    background: var(--ft-kcaa-blue) !important;
    border: 1px solid color-mix(in srgb, var(--ft-kcaa-blue) 70%, #fff) !important;
    border-radius: .7rem !important;
    box-shadow: 0 .75rem 1.35rem rgba(0, 103, 168, .16);
    color: #fff !important;
    font-weight: 900 !important;
    min-height: 2.8rem;
    padding: .55rem 1.1rem !important;
}

.icaas-filetracker-page .cdp-tabs,
.icaas-filetracker-page .Tab {
    background: var(--icaas-surface, #fff);
    border: 1px solid var(--ft-border);
    border-radius: 1.1rem;
    box-shadow: 0 .7rem 1.7rem rgba(4, 40, 74, .06);
    overflow: hidden;
}

.icaas-filetracker-page .Tab .ajax__tab_header,
.icaas-filetracker-page .cdp-tabs .ajax__tab_header {
    align-items: stretch;
    background: color-mix(in srgb, var(--icaas-surface, #fff) 92%, #e8f4ff);
    border-bottom: 2px solid color-mix(in srgb, var(--ft-kcaa-blue) 55%, #d7e8f7);
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    min-height: 4.2rem;
    overflow: visible;
    padding: .65rem .8rem;
}

.icaas-filetracker-page .Tab .ajax__tab_outer,
.icaas-filetracker-page .Tab .ajax__tab_inner,
.icaas-filetracker-page .Tab .ajax__tab_tab {
    background: transparent !important;
    height: auto !important;
}

.icaas-filetracker-page .Tab .ajax__tab_tab {
    align-items: center;
    background: linear-gradient(180deg, #fff, #f3f8fd) !important;
    border: 1px solid #bcd7f1;
    border-radius: .85rem;
    color: color-mix(in srgb, var(--ft-text) 78%, #5e6875) !important;
    display: flex !important;
    font-size: .92rem;
    font-weight: 900;
    justify-content: center;
    line-height: 1.15;
    min-height: 3.15rem;
    min-width: min(100%, 14rem);
    padding: .65rem 1rem;
    text-align: center;
    white-space: normal;
}

.icaas-filetracker-page .Tab .ajax__tab_active .ajax__tab_tab {
    background: linear-gradient(135deg, #0d6efd, var(--ft-kcaa-blue)) !important;
    border-color: var(--ft-kcaa-blue);
    box-shadow: inset 0 -.22rem 0 var(--ft-kcaa-orange);
    color: #fff !important;
}

.icaas-filetracker-page .Tab .ajax__tab_body,
.icaas-filetracker-page .ajax__tab_body {
    background: var(--icaas-surface, #fff);
    border: 0 !important;
    overflow-x: auto;
    padding: clamp(.85rem, 1.5vw, 1.35rem);
}

.icaas-filetracker-page .form-row,
.icaas-filetracker-page .row {
    row-gap: 1rem;
}

.icaas-filetracker-page .form-control,
.icaas-filetracker-page .form-select,
.icaas-filetracker-page input[type="text"],
.icaas-filetracker-page select,
.icaas-filetracker-page textarea {
    border: 1px solid #c8d8e8 !important;
    border-radius: .8rem !important;
    box-shadow: none !important;
    min-height: 2.75rem;
}

.icaas-filetracker-page .cdp-grid,
.icaas-filetracker-page .ft-data-table {
    background: var(--icaas-surface, #fff);
    border: 1px solid var(--ft-border) !important;
    border-collapse: separate !important;
    border-radius: 1rem;
    border-spacing: 0;
    box-shadow: 0 .55rem 1.2rem rgba(4, 40, 74, .05);
    color: var(--ft-text);
    overflow: hidden;
    width: 100%;
}

.icaas-filetracker-page .cdp-grid th,
.icaas-filetracker-page .cdp-grid-header,
.icaas-filetracker-page .cdp-grid-header th,
.icaas-filetracker-page .cdp-grid-header td,
.icaas-filetracker-page .cdp-assignment-grid-header,
.icaas-filetracker-page .cdp-assignment-grid-header th,
.icaas-filetracker-page .cdp-assignment-grid-header td,
.icaas-filetracker-page .cdp-log-grid-header,
.icaas-filetracker-page .cdp-log-grid-header th,
.icaas-filetracker-page .cdp-log-grid-header td,
.icaas-filetracker-page .cdp-grid tr[class*="grid-header"],
.icaas-filetracker-page .cdp-grid tr[class*="grid-header"] > th,
.icaas-filetracker-page .cdp-grid tr[class*="grid-header"] > td,
.icaas-filetracker-page .ft-data-table th,
.icaas-filetracker-page .ft-data-table .cdp-grid-header th,
.icaas-filetracker-page .ft-data-table .cdp-grid-header td {
    --bs-table-bg: var(--ft-kcaa-blue-dark) !important;
    --bs-table-color: #fff !important;
    --bs-table-hover-bg: var(--ft-kcaa-blue-dark) !important;
    --bs-table-hover-color: #fff !important;
    background: linear-gradient(135deg, var(--ft-kcaa-blue-dark), var(--ft-kcaa-blue)) !important;
    background-color: var(--ft-kcaa-blue-dark) !important;
    border-color: color-mix(in srgb, var(--ft-kcaa-blue) 78%, #fff) !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: .78rem;
    font-weight: 900 !important;
    letter-spacing: .04em;
    line-height: 1.25;
    padding: .9rem .8rem !important;
    text-shadow: none !important;
    text-transform: uppercase;
    vertical-align: middle !important;
    white-space: normal;
}

.icaas-filetracker-page .cdp-grid tr.cdp-grid-header:hover > th,
.icaas-filetracker-page .cdp-grid tr.cdp-grid-header:hover > td,
.icaas-filetracker-page .cdp-grid tr.cdp-assignment-grid-header:hover > th,
.icaas-filetracker-page .cdp-grid tr.cdp-assignment-grid-header:hover > td,
.icaas-filetracker-page .cdp-grid tr.cdp-log-grid-header:hover > th,
.icaas-filetracker-page .cdp-grid tr.cdp-log-grid-header:hover > td,
.icaas-filetracker-page .cdp-grid tr[class*="grid-header"]:hover > th,
.icaas-filetracker-page .cdp-grid tr[class*="grid-header"]:hover > td,
.icaas-filetracker-page .ft-data-table tr.cdp-grid-header:hover > th,
.icaas-filetracker-page .ft-data-table tr.cdp-grid-header:hover > td {
    --bs-table-bg: var(--ft-kcaa-blue-dark) !important;
    --bs-table-color: #fff !important;
    --bs-table-hover-bg: var(--ft-kcaa-blue-dark) !important;
    --bs-table-hover-color: #fff !important;
    background: linear-gradient(135deg, var(--ft-kcaa-blue-dark), var(--ft-kcaa-blue)) !important;
    background-color: var(--ft-kcaa-blue-dark) !important;
    box-shadow: none !important;
    color: #fff !important;
}

.icaas-filetracker-page .cdp-grid td,
.icaas-filetracker-page .ft-data-table td {
    border-color: color-mix(in srgb, var(--ft-border) 74%, transparent) !important;
    color: var(--ft-text);
    font-weight: 550;
    line-height: 1.35;
    padding: .8rem !important;
    vertical-align: top !important;
}

.icaas-filetracker-page .cdp-grid tr:nth-child(even):not(.cdp-grid-header):not(.cdp-assignment-grid-header):not(.cdp-log-grid-header) td,
.icaas-filetracker-page .ft-data-table tr:nth-child(even):not(.cdp-grid-header):not(.cdp-assignment-grid-header):not(.cdp-log-grid-header) td {
    background: color-mix(in srgb, var(--icaas-surface, #fff) 84%, #f2f8ff);
}

.icaas-filetracker-page .cdp-grid tr:not(.cdp-grid-header):not(.cdp-assignment-grid-header):not(.cdp-log-grid-header):hover td,
.icaas-filetracker-page .ft-data-table tr:not(.cdp-grid-header):not(.cdp-assignment-grid-header):not(.cdp-log-grid-header):hover td {
    background: color-mix(in srgb, #e7f4ff 82%, var(--icaas-surface, #fff)) !important;
}

.icaas-filetracker-page .cdp-child-grid {
    box-shadow: none;
    margin: .55rem 0;
}

.icaas-filetracker-page .cdp-document-grid .btn,
.icaas-filetracker-page .cdp-assignment-grid .btn,
.icaas-filetracker-page .cdp-log-grid .btn {
    border-radius: .65rem;
    font-weight: 850;
    white-space: normal;
}

.icaas-filetracker-page .cdp-details-view,
.icaas-filetracker-page .ft-details-view {
    border: 1px solid var(--ft-border) !important;
    border-radius: 1rem;
    box-shadow: 0 .7rem 1.4rem rgba(4, 40, 74, .06);
    overflow: hidden;
    width: 100%;
}

.icaas-filetracker-page .cdp-details-view td,
.icaas-filetracker-page .ft-details-view td,
.icaas-filetracker-page .cdp-details-view th,
.icaas-filetracker-page .ft-details-view th {
    border-color: color-mix(in srgb, var(--ft-border) 70%, transparent) !important;
    padding: .7rem .85rem !important;
}

.icaas-filetracker-page .cdp-payment-details td:first-child,
.icaas-filetracker-page .ft-details-view td:first-child {
    color: var(--ft-kcaa-blue-dark);
    font-weight: 900;
}

.icaas-filetracker-page .cdp-hod-card,
.icaas-filetracker-page .cdp-payment-card,
.icaas-filetracker-page .cdp-activity-log-card {
    background: var(--icaas-surface, #fff);
    border: 1px solid var(--ft-border);
    border-left: 5px solid var(--ft-kcaa-orange);
    border-radius: 1.15rem;
    box-shadow: 0 .8rem 1.75rem rgba(4, 40, 74, .06);
    margin: 0 0 1rem;
    padding: clamp(.9rem, 1.5vw, 1.25rem);
}

@media (max-width: 767.98px) {
    .icaas-filetracker-page .filetracker-workspace {
        padding: .65rem;
    }

    .icaas-filetracker-page .cdp-mini-hero,
    .icaas-filetracker-page .cdp-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
    }

    .icaas-filetracker-page .cdp-mini-hero h1,
    .icaas-filetracker-page .cdp-hero h1 {
        font-size: clamp(1.65rem, 9vw, 2.25rem);
    }

    .icaas-filetracker-page .cdp-hero-actions,
    .icaas-filetracker-page .closebar {
        justify-content: stretch;
        width: 100%;
    }

    .icaas-filetracker-page .cdp-close-button,
    .icaas-filetracker-page .closebar .btn,
    .icaas-filetracker-page .closebar input[type="submit"] {
        width: 100%;
    }

    .icaas-filetracker-page .Tab .ajax__tab_header,
    .icaas-filetracker-page .cdp-tabs .ajax__tab_header {
        display: grid;
        grid-template-columns: 1fr;
        max-height: none;
    }

    .icaas-filetracker-page .Tab .ajax__tab_tab {
        min-width: 0;
        width: 100%;
    }

    .icaas-filetracker-page .table-responsive {
        border: 0;
        overflow-x: visible;
    }

    .icaas-filetracker-page .cdp-grid,
    .icaas-filetracker-page .ft-data-table {
        min-width: 0;
    }

    .icaas-filetracker-page .cdp-assignment-grid,
    .icaas-filetracker-page .cdp-log-grid,
    .icaas-filetracker-page .cdp-document-grid {
        background: transparent;
        border: 0 !important;
        box-shadow: none;
    }

    .icaas-filetracker-page .cdp-assignment-grid tbody,
    .icaas-filetracker-page .cdp-log-grid tbody,
    .icaas-filetracker-page .cdp-document-grid tbody,
    .icaas-filetracker-page .cdp-assignment-grid tr,
    .icaas-filetracker-page .cdp-log-grid tr,
    .icaas-filetracker-page .cdp-document-grid tr,
    .icaas-filetracker-page .cdp-assignment-grid td,
    .icaas-filetracker-page .cdp-log-grid td,
    .icaas-filetracker-page .cdp-document-grid td {
        display: block;
        width: 100% !important;
    }

    .icaas-filetracker-page .cdp-assignment-grid tr[class*="grid-header"],
    .icaas-filetracker-page .cdp-log-grid tr[class*="grid-header"],
    .icaas-filetracker-page .cdp-document-grid tr[class*="grid-header"],
    .icaas-filetracker-page .cdp-assignment-grid th,
    .icaas-filetracker-page .cdp-log-grid th,
    .icaas-filetracker-page .cdp-document-grid th {
        display: none !important;
    }

    .icaas-filetracker-page .cdp-assignment-grid tr:not([class*="grid-header"]),
    .icaas-filetracker-page .cdp-log-grid tr:not([class*="grid-header"]),
    .icaas-filetracker-page .cdp-document-grid tr:not([class*="grid-header"]) {
        background: var(--icaas-surface, #fff);
        border: 1px solid var(--ft-border);
        border-left: 5px solid var(--ft-kcaa-orange);
        border-radius: 1rem;
        box-shadow: 0 .65rem 1.4rem rgba(4, 40, 74, .08);
        margin: 0 0 .85rem;
        overflow: hidden;
        padding: .65rem .75rem;
    }

    .icaas-filetracker-page .cdp-assignment-grid tr:not([class*="grid-header"]):hover td,
    .icaas-filetracker-page .cdp-log-grid tr:not([class*="grid-header"]):hover td,
    .icaas-filetracker-page .cdp-document-grid tr:not([class*="grid-header"]):hover td {
        background: transparent !important;
    }

    .icaas-filetracker-page .cdp-assignment-grid td,
    .icaas-filetracker-page .cdp-log-grid td,
    .icaas-filetracker-page .cdp-document-grid td {
        background: transparent !important;
        border: 0 !important;
        border-bottom: 1px solid color-mix(in srgb, var(--ft-border) 70%, transparent) !important;
        padding: .62rem .2rem !important;
    }

    .icaas-filetracker-page .cdp-assignment-grid td:last-child,
    .icaas-filetracker-page .cdp-log-grid td:last-child,
    .icaas-filetracker-page .cdp-document-grid td:last-child {
        border-bottom: 0 !important;
    }

    .icaas-filetracker-page .cdp-assignment-grid td::before,
    .icaas-filetracker-page .cdp-log-grid td::before,
    .icaas-filetracker-page .cdp-document-grid td::before {
        color: var(--ft-kcaa-blue-dark);
        content: "Detail";
        display: block;
        font-size: .72rem;
        font-weight: 900;
        letter-spacing: .04em;
        margin-bottom: .25rem;
        text-transform: uppercase;
    }

    .icaas-filetracker-page .cdp-assignment-grid td:nth-child(1)::before,
    .icaas-filetracker-page .cdp-document-grid td:nth-child(1)::before {
        content: "File / Document";
    }

    .icaas-filetracker-page .cdp-assignment-grid td:nth-child(2)::before {
        content: "TL Assignment Date";
    }

    .icaas-filetracker-page .cdp-assignment-grid td:nth-child(3)::before {
        content: "TL Comments";
    }

    .icaas-filetracker-page .cdp-assignment-grid td:nth-child(4)::before {
        content: "Inspector";
    }

    .icaas-filetracker-page .cdp-assignment-grid td:nth-child(5)::before {
        content: "Inspector Action";
    }

    .icaas-filetracker-page .cdp-assignment-grid td:nth-child(6)::before {
        content: "Inspector Action Date";
    }

    .icaas-filetracker-page .cdp-assignment-grid td:nth-child(7)::before {
        content: "Inspector Comments";
    }

    .icaas-filetracker-page .cdp-log-grid td:nth-child(1)::before {
        content: "Date";
    }

    .icaas-filetracker-page .cdp-log-grid td:nth-child(2)::before {
        content: "User / Actor";
    }

    .icaas-filetracker-page .cdp-log-grid td:nth-child(3)::before {
        content: "Action";
    }

    .icaas-filetracker-page .cdp-log-grid td:nth-child(4)::before {
        content: "Comments";
    }

    .icaas-filetracker-page .cdp-document-grid td:nth-child(2)::before {
        content: "Uploaded / Assignment";
    }

    .icaas-filetracker-page .cdp-document-grid td:nth-child(3)::before {
        content: "Status / Notes";
    }

    .icaas-filetracker-page .cdp-document-grid td:nth-child(4)::before {
        content: "Action";
    }
}

/* Final FileTracker GridView guard: keep cdp grid headers branded in normal and hover states. */
.cdp-grid tr[class*="grid-header"],
.cdp-grid tr[class*="grid-header"] > th,
.cdp-grid tr[class*="grid-header"] > td,
.cdp-grid th {
    --bs-table-bg: var(--ft-kcaa-blue-dark, #004f86) !important;
    --bs-table-color: #fff !important;
    --bs-table-hover-bg: var(--ft-kcaa-blue-dark, #004f86) !important;
    --bs-table-hover-color: #fff !important;
    background: linear-gradient(135deg, var(--ft-kcaa-blue-dark, #004f86), var(--ft-kcaa-blue, #0067a8)) !important;
    background-color: var(--ft-kcaa-blue-dark, #004f86) !important;
    box-shadow: none !important;
    color: #fff !important;
    opacity: 1 !important;
    text-shadow: none !important;
}

.cdp-grid tr[class*="grid-header"]:hover,
.cdp-grid tr[class*="grid-header"]:hover > th,
.cdp-grid tr[class*="grid-header"]:hover > td {
    --bs-table-bg: var(--ft-kcaa-blue-dark, #004f86) !important;
    --bs-table-color: #fff !important;
    --bs-table-hover-bg: var(--ft-kcaa-blue-dark, #004f86) !important;
    --bs-table-hover-color: #fff !important;
    background: linear-gradient(135deg, var(--ft-kcaa-blue-dark, #004f86), var(--ft-kcaa-blue, #0067a8)) !important;
    background-color: var(--ft-kcaa-blue-dark, #004f86) !important;
    box-shadow: none !important;
    color: #fff !important;
}

@media (max-width: 767.98px) {
    .cdp-assignment-grid,
    .cdp-log-grid,
    .cdp-document-grid {
        min-width: 0 !important;
    }
}

/* Licence register dashboard and nested grid */
.licence-register-page {
    --lic-blue: #0072bc;
    --lic-blue-dark: #00558a;
    --lic-orange: #f58220;
    --lic-teal: #008f83;
    --lic-ink: #142033;
    --lic-muted: #66758a;
    --lic-border: #c7ddf0;
    display: grid;
    gap: 1rem;
}

.lic-register-hero,
.lic-search-panel,
.lic-dashboard,
.lic-validity-panel,
.lic-register-table-panel {
    background: linear-gradient(135deg, rgba(0, 114, 188, .08), rgba(0, 143, 131, .08) 55%, rgba(245, 130, 32, .08));
    border: 1px solid var(--lic-border);
    border-radius: 16px;
    box-shadow: 0 20px 45px rgba(0, 72, 120, .08);
}

.lic-register-hero {
    align-items: center;
    border-left: 6px solid var(--lic-orange);
    display: flex;
    justify-content: space-between;
    padding: 1.5rem;
}

.lic-register-eyebrow {
    color: var(--lic-blue);
    display: inline-block;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lic-register-hero h1,
.lic-dashboard-header h2,
.lic-table-header h2 {
    color: var(--lic-ink);
    font-weight: 900;
    margin: .15rem 0;
}

.lic-register-hero p {
    color: var(--lic-muted);
    font-size: 1rem;
    margin: 0;
    max-width: 820px;
}

.lic-primary-action,
.lic-search-button,
.lic-clear-button {
    border-radius: 10px !important;
    font-weight: 800 !important;
    min-height: 44px;
}

.lic-search-panel {
    align-items: start;
    background:
        linear-gradient(135deg, rgba(0, 114, 188, .14), rgba(255, 255, 255, .97) 44%, rgba(245, 130, 32, .13)),
        radial-gradient(circle at 8% 20%, rgba(0, 114, 188, .12), transparent 28%);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: .75rem;
    padding: 1rem;
}

.lic-search-box {
    min-width: 0;
}

.lic-search-box,
.lic-search-button,
.lic-clear-button {
    align-self: start;
}

.lic-search-box {
    min-width: 260px;
}

.lic-search-box label {
    color: var(--lic-ink);
    display: block;
    font-weight: 800;
    letter-spacing: .01em;
    margin-bottom: .4rem;
}

.lic-search-input-wrap {
    display: block;
    position: relative;
}

.lic-search-glyph {
    background: linear-gradient(135deg, #ffffff, #e7f5ff);
    border: 1px solid #9fd0f4;
    border-radius: 14px;
    box-shadow: 0 8px 18px rgba(0, 114, 188, .13);
    color: var(--lic-blue);
    font-weight: 900;
    height: 42px;
    left: .62rem;
    line-height: 1;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    z-index: 1;
}

.lic-search-glyph::before {
    border: 3px solid currentColor;
    border-radius: 50%;
    content: "";
    height: 14px;
    left: 11px;
    position: absolute;
    top: 10px;
    width: 14px;
}

.lic-search-glyph::after {
    background: currentColor;
    border-radius: 999px;
    content: "";
    height: 11px;
    left: 25px;
    position: absolute;
    top: 25px;
    transform: rotate(45deg);
    width: 3px;
}

.lic-search-box .form-control,
.lic-search-box .lic-register-search-input {
    background: rgba(255, 255, 255, .96);
    border: 1px solid #a9cee9;
    border-radius: 18px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9), 0 14px 32px rgba(0, 72, 120, .08);
    color: var(--lic-ink);
    font-weight: 700;
    min-height: 62px;
    padding-left: 4.45rem !important;
    padding-right: 1rem !important;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
    width: 100%;
}

.lic-search-box .form-control:focus,
.lic-search-box .form-control.lic-filter-active {
    background: #fff;
    border-color: var(--lic-blue);
    box-shadow: 0 0 0 .22rem rgba(0, 114, 188, .16), 0 16px 36px rgba(0, 72, 120, .12);
    outline: 0;
}

.lic-live-search-note {
    color: #5d6b7a;
    display: block;
    font-size: .82rem;
    font-weight: 700;
    margin-top: .35rem;
    min-height: 1.15rem;
}

.lic-client-filter-summary {
    align-self: end;
    background: rgba(255, 255, 255, .78);
    border: 1px solid rgba(0, 114, 188, .18);
    border-radius: 999px;
    color: #35566f;
    display: inline-flex;
    font-size: .78rem;
    font-weight: 800;
    grid-column: 1 / 2;
    justify-self: start;
    margin-top: -.15rem;
    padding: .4rem .75rem;
}

.lic-progress-overlay {
    align-items: center;
    background: rgba(3, 35, 59, .38);
    backdrop-filter: blur(3px);
    display: none;
    inset: 0;
    justify-content: center;
    padding: 1rem;
    position: fixed;
    z-index: 99999;
}

.lic-register-busy .lic-progress-overlay-client {
    display: flex;
}

.lic-progress-card {
    align-items: center;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(231, 245, 255, .93)),
        radial-gradient(circle at 50% 20%, rgba(0, 114, 188, .16), transparent 36%);
    border: 1px solid rgba(0, 114, 188, .22);
    border-radius: 22px;
    box-shadow: 0 28px 70px rgba(3, 35, 59, .28);
    color: var(--lic-ink);
    display: grid;
    gap: .55rem;
    justify-items: center;
    min-width: min(360px, calc(100vw - 2rem));
    overflow: hidden;
    padding: 2.2rem 2rem;
    position: relative;
    text-align: center;
}

.lic-progress-logo {
    left: 50%;
    max-width: 210px;
    opacity: .13;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 62%;
}

.lic-progress-ring {
    animation: lic-spin .85s linear infinite;
    border: 6px solid rgba(0, 114, 188, .18);
    border-radius: 50%;
    border-top-color: var(--lic-orange);
    height: 64px;
    position: relative;
    width: 64px;
    z-index: 1;
}

.lic-progress-card strong,
.lic-progress-card span:not(.lic-progress-ring) {
    position: relative;
    z-index: 1;
}

.lic-progress-card strong {
    color: var(--lic-blue);
    font-size: 1.05rem;
    font-weight: 900;
}

.lic-progress-card span:not(.lic-progress-ring) {
    color: #536678;
    font-weight: 700;
}

@keyframes lic-spin {
    to {
        transform: rotate(360deg);
    }
}

.lic-search-button,
.lic-clear-button {
    border-radius: 14px !important;
    align-self: start;
    margin-top: 1.85rem;
    min-height: 62px;
    min-width: 112px;
    padding-left: 1.35rem !important;
    padding-right: 1.35rem !important;
}

.lic-search-button {
    box-shadow: 0 14px 24px rgba(0, 114, 188, .18);
}

.lic-clear-button {
    background: #fff !important;
}

.lic-active-filter {
    align-items: center;
    background: #fff8ef;
    border: 1px solid #ffd2a6;
    border-radius: 999px;
    color: #8a4300;
    display: inline-flex;
    font-weight: 800;
    gap: .35rem;
    padding: .55rem .9rem;
    width: max-content;
}

.lic-dashboard,
.lic-validity-panel,
.lic-register-table-panel {
    padding: 1rem;
}

.lic-dashboard-header,
.lic-table-header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .9rem;
}

.lic-dashboard-summary {
    background: #ffffff;
    border: 1px solid var(--lic-border);
    border-radius: 999px;
    color: var(--lic-blue-dark);
    font-weight: 900;
    padding: .45rem .8rem;
}

.lic-dashboard-grid {
    display: grid;
    gap: .85rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.lic-dashboard-group {
    background: rgba(255, 255, 255, .72);
    border: 1px solid var(--lic-border);
    border-radius: 14px;
    padding: .85rem;
}

.lic-dashboard-group h3 {
    color: var(--lic-ink);
    font-size: .95rem;
    font-weight: 900;
    margin: 0 0 .65rem;
}

.lic-dashboard-card,
.lic-validity-card {
    align-items: center;
    background: #fff;
    border: 1px solid #d7e7f5;
    border-left: 4px solid var(--lic-blue);
    border-radius: 12px;
    color: var(--lic-ink);
    display: grid;
    gap: .15rem;
    margin-bottom: .55rem;
    padding: .7rem .75rem;
    text-decoration: none !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.lic-dashboard-card:hover,
.lic-validity-card:hover {
    border-color: var(--lic-orange);
    box-shadow: 0 14px 24px rgba(0, 85, 138, .14);
    color: var(--lic-ink);
    transform: translateY(-2px);
}

.lic-card-title {
    font-weight: 900;
    line-height: 1.2;
}

.lic-dashboard-card strong,
.lic-validity-card strong {
    color: var(--lic-blue-dark);
    font-size: 1.35rem;
    font-weight: 900;
}

.lic-dashboard-card small,
.lic-validity-card small {
    color: var(--lic-muted);
    font-weight: 700;
}

.lic-validity-grid {
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.lic-table-shell {
    background: #fff;
    border: 1px solid var(--lic-border);
    border-radius: 14px;
    overflow: auto;
}

.lic-register-grid,
.lic-nested-grid {
    margin-bottom: 0 !important;
}

.lic-register-grid th,
.lic-nested-grid th {
    --bs-table-bg: var(--lic-blue-dark) !important;
    --bs-table-color: #fff !important;
    --bs-table-hover-bg: var(--lic-blue-dark) !important;
    --bs-table-hover-color: #fff !important;
    background: linear-gradient(135deg, var(--lic-blue-dark), var(--lic-blue)) !important;
    background-color: var(--lic-blue-dark) !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: .78rem;
    font-weight: 900 !important;
    letter-spacing: .05em;
    opacity: 1 !important;
    padding: 1rem .95rem !important;
    text-shadow: none !important;
    text-transform: uppercase;
    vertical-align: middle !important;
}

.lic-register-grid > thead > tr > th,
.lic-register-grid > tbody > tr:first-child > th,
.lic-register-grid > tbody > tr:first-child > td,
.lic-nested-grid > thead > tr > th,
.lic-nested-grid > tbody > tr:first-child > th,
.lic-nested-grid > tbody > tr:first-child > td {
    --bs-table-bg: var(--lic-blue-dark) !important;
    --bs-table-color: #fff !important;
    --bs-table-hover-bg: var(--lic-blue-dark) !important;
    --bs-table-hover-color: #fff !important;
    background: linear-gradient(135deg, var(--lic-blue-dark), var(--lic-blue)) !important;
    background-color: var(--lic-blue-dark) !important;
    border-color: color-mix(in srgb, var(--lic-blue) 72%, #fff) !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: .78rem;
    font-weight: 900 !important;
    letter-spacing: .05em;
    opacity: 1 !important;
    padding: 1rem .95rem !important;
    text-shadow: none !important;
    text-transform: uppercase;
}

.lic-register-grid.table-hover > tbody > tr:first-child:hover > th,
.lic-register-grid.table-hover > tbody > tr:first-child:hover > td,
.lic-nested-grid.table-hover > tbody > tr:first-child:hover > th,
.lic-nested-grid.table-hover > tbody > tr:first-child:hover > td {
    --bs-table-bg: var(--lic-blue-dark) !important;
    --bs-table-color: #fff !important;
    --bs-table-hover-bg: var(--lic-blue-dark) !important;
    --bs-table-hover-color: #fff !important;
    background: linear-gradient(135deg, var(--lic-blue-dark), var(--lic-blue)) !important;
    background-color: var(--lic-blue-dark) !important;
    box-shadow: none !important;
    color: #fff !important;
}

.lic-register-grid td,
.lic-nested-grid td {
    vertical-align: middle !important;
}

.lic-holder-cell,
.lic-meta-cell {
    display: grid;
    gap: .15rem;
}

.lic-holder-cell strong {
    color: var(--lic-ink);
    font-weight: 900;
}

.lic-holder-cell span,
.lic-meta-cell span {
    color: var(--lic-muted);
    font-size: .9rem;
    font-weight: 700;
}

.lic-expand-button {
    align-items: center;
    background: #e9f5ff;
    border: 1px solid #b8d8f0;
    border-radius: 10px;
    color: var(--lic-blue-dark);
    display: inline-flex;
    height: 36px;
    justify-content: center;
    width: 36px;
}

.lic-expand-button::before {
    content: "+";
    font-size: 1.2rem;
    font-weight: 900;
    line-height: 1;
}

.lic-expand-open::before {
    content: "-";
}

.collapsed-row {
    display: none;
}

.lic-child-panel {
    background: #f6fbff;
    border: 1px solid var(--lic-border);
    border-radius: 14px;
    margin: .75rem 0;
    padding: .85rem;
}

.lic-child-header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .75rem;
}

.lic-child-header span {
    color: var(--lic-blue-dark);
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.lic-profile-link,
.lic-number-link {
    font-weight: 800 !important;
}

@media (max-width: 1199.98px) {
    .lic-dashboard-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lic-validity-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .lic-register-hero,
    .lic-dashboard-header,
    .lic-table-header,
    .lic-child-header {
        align-items: stretch;
        flex-direction: column;
    }

    .lic-dashboard-grid,
    .lic-validity-grid {
        grid-template-columns: 1fr;
    }

    .lic-search-panel {
        align-items: stretch;
        grid-template-columns: 1fr;
    }

    .lic-search-button,
    .lic-clear-button {
        margin-top: 0;
        width: 100%;
    }

    .lic-client-filter-summary {
        grid-column: 1 / -1;
    }

    .lic-register-grid,
    .lic-register-grid thead,
    .lic-register-grid tbody,
    .lic-register-grid th,
    .lic-register-grid td,
    .lic-register-grid tr {
        display: block;
    }

    .lic-register-grid thead,
    .lic-register-grid tr:first-child {
        position: absolute;
        left: -9999px;
        top: -9999px;
    }

    .lic-register-grid tr {
        background: #fff;
        border: 1px solid var(--lic-border);
        border-radius: 14px;
        margin: .75rem;
        padding: .75rem;
    }

    .lic-register-grid td {
        border: 0 !important;
        padding: .45rem .25rem !important;
    }

    .lic-register-grid td:first-child,
    .lic-register-grid td:last-child {
        display: inline-block;
        margin-right: .45rem;
    }

    .lic-register-grid .collapsed-row {
        display: none;
    }

    .lic-register-grid .collapsed-row[style*="table-row"] {
        display: block !important;
    }

    .lic-register-grid .collapsed-row td {
        display: block;
        width: 100%;
    }

    .lic-nested-grid {
        min-width: 680px;
    }
}

/* Shared header action layout refinement */
.icaas-header-actions {
    align-items: center;
    display: grid;
    grid-template-columns: auto minmax(16rem, auto) auto;
    justify-content: end;
}

.icaas-workspace-shortcut,
.icaas-site-settings-toggle,
#login .icaas-signout,
#login .icaas-account-link {
    white-space: nowrap;
}

.icaas-account {
    background: color-mix(in srgb, var(--icaas-surface-bg) 92%, transparent);
    border: 1px solid var(--icaas-border);
    border-radius: 0.5rem;
    padding: 0.45rem 0.6rem;
}

.icaas-account-user {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    width: 100%;
}

.icaas-account-copy {
    min-width: 0;
}

.icaas-site-settings-toggle {
    min-width: 11rem;
}

.icaas-site-settings-label {
    line-height: 1.15;
}

@media (max-width: 1199.98px) {
    .icaas-topbar > .icaas-header-shell {
        grid-template-columns: minmax(0, 1fr);
    }

    .icaas-brand {
        width: 100%;
    }

    .icaas-header-actions {
        background: color-mix(in srgb, var(--icaas-surface-bg) 94%, transparent);
        border: 1px solid var(--icaas-border);
        border-radius: 0.55rem;
        gap: 0.55rem;
        grid-template-columns: auto minmax(18rem, 1fr) auto;
        justify-content: stretch;
        padding: 0.5rem;
        width: 100%;
    }

    .icaas-workspace-shortcut,
    .icaas-site-settings-toggle {
        min-height: 3rem;
    }

    .icaas-account {
        min-width: 0;
        width: 100%;
    }

    .icaas-account-copy {
        max-width: none;
    }

    #login .icaas-account-name,
    #login .username {
        display: block;
        max-width: 100%;
    }
}

@media (max-width: 767.98px) {
    .icaas-header-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .icaas-workspace-shortcut,
    .icaas-site-settings-toggle {
        justify-content: center;
        min-width: 0;
        width: 100%;
    }

    .icaas-account {
        grid-column: 1 / -1;
        order: 3;
    }

    .icaas-account-user {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    .icaas-site-settings-panel {
        grid-column: 1 / -1;
        order: 4;
    }
}

@media (max-width: 439.98px) {
    .icaas-header-actions {
        gap: 0.45rem;
        padding: 0.45rem;
    }

    .icaas-workspace-shortcut span:last-child,
    .icaas-site-settings-label {
        font-size: 0.74rem;
    }

    .icaas-account-user {
        grid-template-columns: auto minmax(0, 1fr);
    }

    #login .icaas-signout {
        grid-column: 1 / -1;
        justify-self: stretch;
        text-align: center;
    }
}

/* Final mobile header guard: keep action buttons compact, never tile-sized. */
@media (max-width: 991.98px) {
    .icaas-header-actions {
        align-items: center !important;
        grid-auto-rows: auto !important;
        justify-items: stretch !important;
    }

    .icaas-workspace-shortcut,
    .icaas-site-settings-toggle {
        align-items: center !important;
        align-self: center !important;
        border-radius: 0.55rem !important;
        box-sizing: border-box;
        display: inline-flex !important;
        height: auto !important;
        justify-content: center !important;
        line-height: 1.15 !important;
        margin: 0 !important;
        max-height: 3.25rem !important;
        min-height: 2.8rem !important;
        padding: 0.55rem 0.75rem !important;
    }

    .icaas-workspace-shortcut {
        min-width: 0 !important;
    }

    .icaas-site-settings-toggle {
        aspect-ratio: auto !important;
        min-width: 0 !important;
        width: 100% !important;
    }

    .icaas-workspace-shortcut .glyphicon,
    .icaas-site-settings-toggle .glyphicon {
        flex: 0 0 auto;
        font-size: 1rem !important;
    }

    .icaas-site-settings-label {
        display: inline !important;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

@media (max-width: 575.98px) {
    .icaas-header-actions {
        gap: 0.55rem !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        padding: 0.65rem max(0.85rem, env(safe-area-inset-right))
            0.65rem max(0.85rem, env(safe-area-inset-left)) !important;
    }

    .icaas-account {
        grid-column: 1 / -1 !important;
        order: 3 !important;
    }

    .icaas-site-settings-panel {
        grid-column: 1 / -1 !important;
        order: 4 !important;
    }
}

/* Signed-in account popover */
.icaas-account-user {
    position: relative;
}

#login .icaas-account-user {
    align-items: center;
    display: grid;
    gap: 0.55rem;
    grid-template-columns: minmax(0, 1fr) auto;
}

.icaas-account-menu-trigger {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 0.45rem;
    color: var(--icaas-topbar-text);
    cursor: pointer;
    display: grid;
    gap: 0.65rem;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    min-width: 0;
    padding: 0.15rem 0.25rem;
    text-align: left;
    transition: background-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
    width: 100%;
}

.icaas-account-menu-trigger:hover,
.icaas-account-menu-trigger:focus,
.icaas-account-menu-trigger.is-active {
    background: color-mix(in srgb, var(--icaas-primary) 8%, var(--icaas-surface-bg));
    box-shadow: 0 0.35rem 1rem color-mix(in srgb, var(--icaas-primary) 12%, transparent);
    outline: none;
}

.icaas-account-chevron {
    color: var(--icaas-primary);
    font-size: 0.7rem;
    transition: transform 0.18s ease;
}

.icaas-account-bell {
    align-items: center;
    background: color-mix(in srgb, var(--icaas-primary) 10%, var(--icaas-surface-bg));
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 22%, var(--icaas-border));
    border-radius: 999px;
    color: var(--icaas-primary);
    display: inline-flex;
    height: 2.05rem;
    justify-content: center;
    position: relative;
    width: 2.05rem;
}

.icaas-account-bell.has-alerts {
    background: #c1121f;
    border-color: color-mix(in srgb, #c1121f 85%, var(--icaas-border));
    box-shadow: 0 0.65rem 1.2rem color-mix(in srgb, #c1121f 28%, transparent);
    color: #fff;
}

.icaas-account-bell-count {
    align-items: center;
    background: #ff7a1a;
    border: 2px solid var(--icaas-surface-bg);
    border-radius: 999px;
    color: #fff;
    display: none;
    font-size: 0.58rem;
    font-weight: 900;
    height: 1.05rem;
    justify-content: center;
    line-height: 1;
    min-width: 1.05rem;
    padding: 0 0.2rem;
    position: absolute;
    right: -0.35rem;
    top: -0.35rem;
}

.icaas-account-bell.has-alerts .icaas-account-bell-count {
    display: inline-flex;
}

.icaas-account-menu-trigger.is-active .icaas-account-chevron {
    transform: rotate(180deg);
}

.icaas-account-menu-panel {
    background: var(--icaas-surface-bg);
    border: 1px solid var(--icaas-border);
    border-radius: 0.75rem;
    box-shadow: 0 1rem 2.5rem color-mix(in srgb, var(--icaas-text) 18%, transparent);
    display: none;
    min-width: 18rem;
    padding: 0.5rem;
    position: absolute;
    right: 0;
    top: calc(100% + 0.65rem);
    z-index: 5000;
}

[data-icaas-account-menu="open"] .icaas-account-menu-panel {
    display: grid;
    gap: 0.35rem;
}

.icaas-account-notifications {
    background: linear-gradient(135deg,
            color-mix(in srgb, var(--icaas-primary) 7%, var(--icaas-surface-bg)),
            color-mix(in srgb, var(--icaas-orange) 6%, var(--icaas-surface-bg)));
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 18%, var(--icaas-border));
    border-radius: 0.7rem;
    display: grid;
    gap: 0.45rem;
    margin-bottom: 0.3rem;
    padding: 0.65rem;
    position: relative;
    z-index: 1;
}

.icaas-account-notifications-head {
    align-items: center;
    display: flex;
    gap: 0.7rem;
    justify-content: space-between;
}

.icaas-account-notifications-head strong,
.icaas-account-notifications-head small {
    display: block;
}

.icaas-account-notifications-head strong {
    color: var(--icaas-text);
    font-size: 0.82rem;
    font-weight: 900;
}

.icaas-account-notifications-head small {
    color: var(--icaas-muted);
    font-size: 0.66rem;
    font-weight: 700;
}

.icaas-account-mark-read {
    background: transparent;
    border: 0;
    color: var(--icaas-primary);
    font-size: 0.68rem;
    font-weight: 900;
    padding: 0.15rem 0.25rem;
    white-space: nowrap;
}

.icaas-account-mark-read:hover,
.icaas-account-mark-read:focus {
    color: var(--icaas-orange);
    outline: none;
    text-decoration: underline;
}

.icaas-account-notification-list {
    display: grid;
    gap: 0.35rem;
    max-height: 17rem;
    overflow: auto;
}

.icaas-account-notification-item {
    align-items: start;
    background: color-mix(in srgb, var(--icaas-surface-bg) 86%, white);
    border: 1px solid color-mix(in srgb, var(--icaas-border) 82%, transparent);
    border-radius: 0.55rem;
    color: var(--icaas-text) !important;
    display: grid;
    gap: 0.45rem;
    grid-template-columns: 0.5rem minmax(0, 1fr);
    padding: 0.55rem 0.6rem;
    text-decoration: none !important;
}

.icaas-account-notification-item strong,
.icaas-account-notification-item small {
    display: block;
}

.icaas-account-notification-item strong {
    font-size: 0.74rem;
    font-weight: 900;
    line-height: 1.25;
}

.icaas-account-notification-item small {
    color: var(--icaas-muted);
    font-size: 0.62rem;
    font-weight: 700;
    line-height: 1.25;
    margin-top: 0.2rem;
}

.icaas-account-notification-item:hover,
.icaas-account-notification-item:focus {
    border-color: color-mix(in srgb, var(--icaas-primary) 40%, var(--icaas-border));
    box-shadow: 0 0.45rem 1rem color-mix(in srgb, var(--icaas-primary) 10%, transparent);
    outline: none;
}

.icaas-account-notification-dot {
    background: color-mix(in srgb, var(--icaas-muted) 45%, transparent);
    border-radius: 999px;
    height: 0.45rem;
    margin-top: 0.35rem;
    width: 0.45rem;
}

.icaas-account-notification-item.is-unread .icaas-account-notification-dot {
    background: #c1121f;
    box-shadow: 0 0 0 0.22rem color-mix(in srgb, #c1121f 14%, transparent);
}

.icaas-account-notification-empty {
    color: var(--icaas-muted);
    font-size: 0.72rem;
    font-weight: 800;
    padding: 0.45rem;
}

.icaas-account-notification-empty.is-error {
    color: #b42318;
}

.icaas-account-menu-panel::before {
    background: var(--icaas-surface-bg);
    border-left: 1px solid var(--icaas-border);
    border-top: 1px solid var(--icaas-border);
    content: "";
    height: 0.8rem;
    position: absolute;
    right: 1.4rem;
    top: -0.42rem;
    transform: rotate(45deg);
    width: 0.8rem;
}

.icaas-account-menu-item {
    align-items: center;
    border-radius: 0.55rem;
    color: var(--icaas-text) !important;
    display: grid;
    gap: 0.65rem;
    grid-template-columns: 2.1rem minmax(0, 1fr);
    padding: 0.65rem 0.7rem;
    position: relative;
    text-decoration: none !important;
    transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
    z-index: 1;
}

.icaas-account-menu-item .glyphicon {
    align-items: center;
    background: color-mix(in srgb, var(--icaas-primary) 10%, var(--icaas-surface-bg));
    border: 1px solid color-mix(in srgb, var(--icaas-primary) 22%, var(--icaas-border));
    border-radius: 0.45rem;
    color: var(--icaas-primary);
    display: inline-flex;
    height: 2.1rem;
    justify-content: center;
    width: 2.1rem;
}

.icaas-account-menu-item strong,
.icaas-account-menu-item small {
    display: block;
}

.icaas-account-menu-item strong {
    font-size: 0.82rem;
    font-weight: 900;
}

.icaas-account-menu-item small {
    color: var(--icaas-muted);
    font-size: 0.68rem;
    font-weight: 700;
    line-height: 1.2;
}

.icaas-account-menu-item:hover,
.icaas-account-menu-item:focus {
    background: color-mix(in srgb, var(--icaas-primary) 9%, var(--icaas-surface-alt));
    color: var(--icaas-primary) !important;
    outline: none;
    transform: translateX(0.1rem);
}

@media (max-width: 575.98px) {
    #login .icaas-account-user {
        grid-template-columns: minmax(0, 1fr);
    }

    .icaas-account-menu-trigger {
        grid-template-columns: auto minmax(0, 1fr) auto auto;
        min-height: 3rem;
    }

    .icaas-account-menu-panel {
        left: 0;
        min-width: 0;
        right: 0;
        top: calc(100% + 0.55rem);
    }

    .icaas-account-menu-panel::before {
        right: 1.35rem;
    }
}

/* Premium display-preferences layout: readable pills, no broken words. */
@media (min-width: 992px) {
    .icaas-site-settings-panel,
    [data-icaas-site-settings="open"] .icaas-site-settings-panel {
        width: min(58rem, calc(100vw - 3rem));
    }

    body.icaas-ribbon-floating .icaas-floating-ribbon .icaas-site-settings-panel {
        right: 0;
        width: min(58rem, calc(100vw - 3rem));
    }

    .icaas-site-settings-panel .icaas-header-preferences {
        align-items: start;
        display: grid;
        gap: 0.85rem;
        grid-template-columns: minmax(22rem, 1.15fr) minmax(18rem, 0.85fr);
    }
}

.icaas-site-settings-panel .preference-switcher-trigger {
    min-height: 3.15rem;
}

.icaas-site-settings-panel .preference-switcher-trigger > span:first-child,
.icaas-site-settings-panel .preference-switcher-current {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.icaas-site-settings-panel .theme-switcher .preference-switcher-control {
    align-items: stretch;
    display: grid;
    gap: 0.45rem;
    grid-template-columns: repeat(auto-fit, minmax(7.35rem, 1fr)) !important;
}

.icaas-site-settings-panel .font-switcher .preference-switcher-control {
    grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr)) !important;
}

.icaas-site-settings-panel .preference-switcher-control button,
.icaas-site-settings-panel .preference-switcher-control .btn {
    align-items: center;
    border-radius: 999px;
    display: inline-flex !important;
    justify-content: center;
    line-height: 1.05;
    min-height: 2.45rem;
    overflow: hidden;
    overflow-wrap: normal !important;
    padding: 0.5rem 0.7rem;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap !important;
    word-break: normal !important;
}

.icaas-site-settings-panel .preference-switcher-control button.active,
.icaas-site-settings-panel .preference-switcher-control .btn.active {
    box-shadow: 0 0.5rem 1.2rem color-mix(in srgb, var(--icaas-primary) 22%, transparent);
}

@media (max-width: 991.98px) {
    .icaas-site-settings-panel .icaas-header-preferences {
        display: grid;
        gap: 0.65rem;
        grid-template-columns: 1fr;
    }

    .icaas-site-settings-panel .theme-switcher .preference-switcher-control,
    .icaas-site-settings-panel .font-switcher .preference-switcher-control {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
