/*
 * Identidade visual IMA — Sistema de Design v1.0.
 * Os tokens (--ima-*, --font-sans, --gray-*) vem de ima-tokens.css, carregado
 * antes deste arquivo. Nao usar cor literal aqui: usar sempre o token.
 */
body {
    font-family: var(--font-sans);
}


.nav-side-menu {
    overflow: auto;
    font-family: var(--font-sans);
    font-size: 12px;
    font-weight: 200;
    background-color: var(--ima-blue);
    position: fixed;
    top: 0px;
    width: 16.6%;
    height: 100%;
    color: var(--white);
}
.nav-side-menu .brand {
    background-color: var(--ima-blue-900);
    line-height: 50px;
    display: block;
    text-align: center;
    font-size: 14px;
}
.nav-side-menu .toggle-btn {
    display: none;
}
.nav-side-menu ul,
.nav-side-menu li {
    list-style: none;
    padding: 0px;
    margin: 0px;
    line-height: 35px;
    cursor: pointer;
    /*    
      .collapsed{
         .arrow:before{
                   font-family: FontAwesome;
                   content: "\f053";
                   display: inline-block;
                   padding-left:10px;
                   padding-right: 10px;
                   vertical-align: middle;
                   float:right;
              }
       }
    */
}
.nav-side-menu ul :not(collapsed) .arrow:before,
.nav-side-menu li :not(collapsed) .arrow:before {
    font-family: FontAwesome;
    content: "\f078";
    display: inline-block;
    padding-left: 10px;
    padding-right: 10px;
    vertical-align: middle;
    float: right;
}
.nav-side-menu ul .active,
.nav-side-menu li .active {
    border-left: 3px solid var(--ima-accent);
    background-color: var(--ima-blue-700);
}
.nav-side-menu ul .sub-menu li.active,
.nav-side-menu li .sub-menu li.active {
    color: var(--ima-accent);
}
.nav-side-menu ul .sub-menu li.active a,
.nav-side-menu li .sub-menu li.active a {
    color: var(--ima-accent);
}
.nav-side-menu ul .sub-menu li,
.nav-side-menu li .sub-menu li {
    background-color: var(--ima-blue-900);
    border: none;
    line-height: 28px;
    border-bottom: 1px solid var(--ima-blue-900);
    margin-left: 0px;
}
.nav-side-menu ul .sub-menu li:hover,
.nav-side-menu li .sub-menu li:hover {
    background-color: var(--ima-green);
    color: var(--white);
}
.nav-side-menu ul .sub-menu li:before,
.nav-side-menu li .sub-menu li:before {
    font-family: FontAwesome;
    content: "\f105";
    display: inline-block;
    padding-left: 10px;
    padding-right: 10px;
    vertical-align: middle;
}
.nav-side-menu li {
    padding-left: 0px;
    border-left: 3px solid var(--ima-blue);
    border-bottom: 1px solid var(--ima-blue-900);
}
.nav-side-menu li a {
    text-decoration: none;
    color: var(--white);
}
.nav-side-menu li a i {
    padding-left: 10px;
    width: 20px;
    padding-right: 20px;
}
.nav-side-menu li:hover {
    border-left: 3px solid var(--ima-accent);
    background-color: var(--ima-green);
    color: var(--white);
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    -ms-transition: all 1s ease;
    transition: all 1s ease;
}
@media (max-width: 767px) {
    .nav-side-menu {
        position: relative;
        width: 100%;
        margin-bottom: 10px;
    }
    .nav-side-menu .toggle-btn {
        display: block;
        cursor: pointer;
        position: absolute;
        right: 10px;
        top: 10px;
        z-index: 10 !important;
        padding: 3px;
        background-color: var(--white);
        color: var(--gray-900);
        width: 40px;
        text-align: center;
    }
    .brand {
        text-align: left !important;
        font-size: 22px;
        padding-left: 20px;
        line-height: 50px !important;
    }
}
@media (min-width: 767px) {
    .nav-side-menu .menu-list .menu-content {
        display: block;
    }
}
body {
    margin: 0px;
    padding: 0px;
}

.company-logo{
    /* Sem moldura: o manual de marca proibe efeitos sobre a assinatura.
       O espaco em volta faz o papel da area de protecao. */
    margin: var(--sp-4) auto;
    display: block;
    width: 72%;
    max-width: 190px;
    height: auto;
}

.company-logo-mobile{
    margin: var(--sp-2) auto;
    display: block;
    height: 32px;
    width: auto;
}

.user-profile-name{
    text-align: right;
    margin-top: 2.15vh;
    color: var(--gray-200);
}


.breadcrumb-top{
    font-weight: bolder;
    color: var(--ima-accent);
    /*border-bottom: 4px double #23282e;*/
}

.conteudo{
    width: 100%;
}

.fa-circle{
    font-size: 10px;
}


.form-label-line{
    padding: 0.375rem 0.75rem;
    border: 1px solid var(--gray-300);
    border-radius: 0.25rem;
    width: 4em;
    text-align: right;
}

.form-input-line{
    padding: 0.375rem 0.75rem;
    border: 1px solid var(--gray-300);
    border-radius: 0.25rem;
    margin-left: -8px;
    width:80%;
}
/* ---------- Ações institucionais ----------
   O botão de acesso é a ação primária da tela de login e, pelo Sistema de
   Design IMA, ação primária usa o azul institucional. Antes vinha com a
   classe btn-dark do Bootstrap, cinza-chumbo. */
.btn-entrar {
    background-color: var(--ima-blue);
    border-color: var(--ima-blue);
    color: var(--white);
    font-weight: var(--fw-semibold);
}

.btn-entrar:hover,
.btn-entrar:focus {
    background-color: var(--ima-blue-700);
    border-color: var(--ima-blue-700);
    color: var(--white);
}

.btn-entrar:focus-visible {
    outline: none;
    box-shadow: var(--focus-ring);
}
