﻿/*--- Cores ---*/
:root {
    --corcliente: #42464E;
    --corcliente-hover: #2e3136;
    --corcliente-rgb: 66, 70, 78;
    --corcliente-rgb-hover: 57, 62, 72;
    --corcliente-rgb-boxShadow: 51, 55, 65;
}
/*---  ---*/

#lbsair, #lbentrar { /*Limpar bem isto*/
    padding: 0 10px;
    line-height: 35px;
    font-size: 12px;
    text-decoration: none;
    /* color: #4a4a4a; */
    /* color: #FFF; */
}
.pfade-in {
    animation: fade-in 1s;
    animation-timing-function: ease-in-out;
    background-color: #fff;
}

.pfade-out {
    animation: fade-out 1s;
    animation-timing-function: ease-in-out;
    background-color: #fff;
}

@keyframes fade-in {
    from {
        bottom: -50%;
    }

    to {
        bottom: 0%;
    }
}

@keyframes fade-out {
    from {
        bottom: 50%;
    }

    to {
        bottom: 0%;
    }
}

.h-elem {
    transition: transform .2s;
}

    .h-elem:hover {
        /* background: whitesmoke;
    opacity: 0.8;
   */
        transform: scale(1.02);
    }

.tituloaccao {
    background: rgba(0,0,0,0.5);
    color: #FFF !important;
    position: absolute;
    bottom: 5%;
}

.larguracliente {
    width: 90%;
}

.larguracliente-header {
    width: 90%;
}

.navbar-cliente {
    transition: 4000ms ease;
    background: rgba(0, 0, 0, 0.8); /*Fundo preto inicial*/
    color: white !important;
    /*background: rgba(255, 255, 255, 1);*/ /*Fundo Branco inicial - não esquecer de retirar o navbar-dark do navbarTopo*/
    /*color: black !important;*/
    z-index: 1021;
    /*border-block-end: #0001 solid 1px;*/
    /*box-shadow: 0px 10px 47px -21px rgb(133 133 133);*/
}

.sidebar-cliente {
    background: rgba(0, 0, 0, 0.8);
    color: white !important;
}

.corpo-sidebar {
    top: calc(142px + 1em); /*Com redes sociais*/
    /*top: calc(104px + 1em);*/ /*Sem redes sociais*/
    max-height: 70vh;
}

.barra-infocurso {
    top: calc(131px);
    position: sticky;
    z-index: 1020;
    background-color: white;
}

.nav-topo {
    color: white; /*Fundo preto inicial*/
    /*color: black;*/ /*Fundo Branco inicial*/
}

    .nav-topo:hover {
        transition: 200ms ease;
        color: rgb(235, 235, 235); /*Fundo preto inicial*/
        /*color: rgb(118, 118, 118);*/ /*Fundo Branco inicial*/
    }

/*Botões menu navbar mobile*/
.btnscroll {
    color: white; /*Fundo preto inicial*/
    /*color: black;*/ /*Fundo Branco inicial*/
}

/*Classes após scroll da página*/
.navbar-cliente.scrolled {
    transition: 2000ms ease;
    /*background: rgba(255,255,255,1);*/ /*Fundo branco*/
    background: rgba(0,0,0,1); /*Fundo Preto*/
}

.sidebar-cliente.scrolled {
    background: rgba(255,255,255,1);
}

.nav-topo.scrolled {
    transition: 2000ms ease;
    /*color: black;*/ /*Fundo branco*/
    color: white; /*Fundo Preto*/
}

    .nav-topo.scrolled:hover {
        transition: 200ms ease;
        /*color: rgb(118, 118, 118);*/ /*Fundo branco*/
        color: rgb(235, 235, 235); /*Fundo Preto*/
    }

.btnscroll.scrolled {
    transition: 2000ms ease;
    /*color: black;*/ /*Fundo branco*/
    color: white; /*Fundo Preto*/
}

.scrolled {
    /*color: black;*/ /*Fundo branco*/
    color: white; /*Fundo Preto*/
}

.textocormenus-cliente {
    color: white !important;
}

.corcliente {
    color: rgb(var(--corcliente-rgb)) !important;
}

.bordercliente {
    border-color: rgb(var(--corcliente-rgb)) !important;
}

.bgcliente {
    background-color: rgb(var(--corcliente-rgb)) !important;
}

.corcliente-transparente {
    color: rgba(var(--corcliente-rgb), 0.9) !important;
}

.bordercliente-transparente {
    border-color: rgba(var(--corcliente-rgb), 0.9) !important;
}

.bgcliente-transparente {
    background-color: rgba(var(--corcliente-rgb), 0.9) !important;
}

.active.bb-solid {
    border-bottom: solid currentColor 6px !important;
}

.checkcliente:checked {
    background-color: rgb(var(--corcliente-rgb));
    border-color: rgb(var(--corcliente-rgb));
}

.footercliente{
    background-color: #CCC;
}

.loginCliente {
    min-width: 500px
}

.shadow-cliente {
    box-shadow: 0px 0px 20px -10px rgb(133, 133, 133);
}

@media (max-width: 575.98px) {
    .loginCliente {
        min-width: 300px
    }
}

.anchor {
    display: block;
    height: 140px;
    margin-top: -140px;
}

.navbar-logo {
    max-height: 72px;
}

/*Breakpoint LG*/
@media (max-width: 991.98px) {
    .navbar-logo {
        max-height: 40px;
    }

    .nav-topo {
        color: black;
    }

    .navbar-cliente {
        z-index: 1020;
    }

    .shadow-cliente {
        box-shadow: none;
    }

    .nav-topo.scrolled {
        transition: 2000ms ease;
        color: black;
    }

    .corpo-sidebar {
        max-height: 100vh;
    }
    .barra-infocurso {
        /*top: calc(131px);*/
        position: initial;
        /*z-index: 1020;
        background-color: white;*/
    }
}

.active-canvas {
    /* color: #A2CF53 !important;*/
    font-weight: bold;
}

/*Progress-bar*/

.progressbar {
    position: relative;
    display: flex;
    justify-content: space-between;
    counter-reset: step;
    margin: 2rem 0 4rem
}

    .progressbar::before, .progress {
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        height: 4px;
        width: 100%;
        background-color: #dcdcdc;
        z-index: 1
    }

.progress {
    background-color: rgb(var(--corcliente-rgb));
    width: 0%;
    transition: 0.3s
}

.progress-step {
    width: 2.1875rem;
    height: 2.1875rem;
    background-color: #dcdcdc;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1
}

    .progress-step::before {
        counter-increment: step;
        content: counter(step);
        position: absolute;
    }

    .progress-step::after {
        content: attr(data-title);
        position: relative;
        top: calc(100% + 0.5rem);
        font-size: 0.85rem;
        color: #666
    }

.progress-step-active {
    background-color: rgb(var(--corcliente-rgb));
    color: #f3f3f3
}

.form {
    width: clamp(320px, 30%, 430px);
    margin: 0 auto;
    border: none;
    border-radius: 10px !important;
    overflow: hidden;
    padding: 1.5rem;
    background-color: #fff;
    padding: 20px 30px
}

.step-forms {
    display: none;
    transform-origin: top;
    animation: animate 1s
}

.step-forms-active {
    display: block
}

@keyframes animate {
    from {
        transform: scale(1, 0);
        opacity: 0
    }

    to {
        transform: scale(1, 1);
        opacity: 1
    }
}

.progress-step-check {
    position: relative;
    background-color: green !important;
    transition: all 0.8s
}

    .progress-step-check::before {
        position: absolute;
        content: '\2713';
        width: 100%;
        height: 100%;
        top: 8px;
        left: 13px;
        font-size: 12px
    }

.checkmark {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: block;
    stroke-width: 2;
    stroke: #fff;
    stroke-miterlimit: 10;
    margin: 10% auto;
    box-shadow: inset 0px 0px 0px #42464e;
    animation: fill .4s ease-in-out .4s forwards, scale .3s ease-in-out .9s both
}

@keyframes stroke {
    100% {
        stroke-dashoffset: 0
    }
}

@keyframes scale {
    0%, 100% {
        transform: none
    }

    50% {
        transform: scale3d(1.1, 1.1, 1)
    }
}

@keyframes fill {
    100% {
        box-shadow: inset 0px 0px 0px 30px #42464e
    }
}
/*--- Gradiente na loginpage ---*/
.gradient-custom-2 {
    /* fallback for old browsers */
    background: var(--corcliente-hover);
    /* Chrome 10-25, Safari 5.1-6 */
    background: -webkit-linear-gradient(to right,var(--corcliente),var(--corcliente-hover));
    /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
    background: linear-gradient(to right,var(--corcliente),var(--corcliente-hover));
}

@media (min-width: 768px) {
    .gradient-form {
        height: 100vh !important;
    }
}

@media (min-width: 769px) {
    .gradient-custom-2 {
        border-top-right-radius: .3rem;
        border-bottom-right-radius: .3rem;
    }
}
/*--- ---*/

@media (min-width: 769px) {
    .hnoticia {
        height: 120px;
    }
}

.h-elem {
    transition: transform .2s;
}

    .h-elem:hover {
        /* background: whitesmoke;
    opacity: 0.8;
   */
        transform: scale(1.02);
    }

.h-elem2 {
    transition: transform .2s;
}

    .h-elem2:hover {
        /* background: #d6d6d6;*/
        background: #efefef;
        /*border: solid black 1px;*/
        /*  box-shadow: 0px 10px 47px -21px rgb(133 133 133);*/
        /*box-shadow: inset 1px 0 0 #dadce0, inset -1px 0 0 #dadce0, 0 1px 2px 0 rgb(60 65 67 / 30%), 0 1px 3px 1px rgb(60 64 67 / 15%);
        z-index: 2;*/
        /* opacity: 0.8;*/
        /*transform: scale(1.005);*/
    }

.h-elem3 {
    transition: transform .2s;
}

    .h-elem3:hover {
        /* background: #d6d6d6;*/
        background: #FFF;
        /*border: solid black 1px;*/
        /*  box-shadow: 0px 10px 47px -21px rgb(133 133 133);*/
        /*box-shadow: inset 1px 0 0 #dadce0, inset -1px 0 0 #dadce0, 0 1px 2px 0 rgb(60 65 67 / 30%), 0 1px 3px 1px rgb(60 64 67 / 15%);
        z-index: 2;*/
        /* opacity: 0.8;*/
        /*transform: scale(1.005);*/
    }

/*--- Elementos para tabelas responsivas, isto depois incide na função no cliente.js chamada AlimentarTableResponsive ---*/
@media screen and (max-width: 768px) {
    .table-responsive-stack .table-responsive-stack-thead {
        font-weight: bold;
    }

    .table-responsive-stack tr {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        border-bottom: 3px solid #ccc;
        display: block;
    }

    .table-responsive-stack th {
        display: block;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }

    .table-responsive-stack td {
        display: block;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        /*  IE9 FIX   */
        float: left\9;
        width: 100%;
    }
}
.tPesquisa th {
    position: sticky !important;
    top: 0;
    box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.4);
    z-index: 2;
    background-color: #6c757d !important;
}


/*Isto é usado no canvas - talvez mudar param em vez de ser o nav-link ser o .canvas-fixe.active
    Também é usado nos menus da sidebar :V temos que arranjar algo melhor para isto
*/
.nav-link.active {
    /*  background-color: gray !important;*/
    background-color: #eee !important;
    color: rgb(var(--corcliente-rgb)) !important;
    font-weight: 600;
}

/*::::::::::::  CSS TICKETS  ::::::::::::*/
.ticket-estado-Aberto {
    border-radius: 15px;
    background: #c61d26;
    padding: 0.20rem 1rem;
    color: white !important;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.ticket-estado-Respondido {
    border-radius: 15px;
    background: #52489c;
    padding: 0.20rem 1rem;
    color: white !important;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.ticket-estado-Recebido {
    border-radius: 15px;
    background: #fcaa67;
    padding: 0.20rem 1rem;
    color: white !important;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.ticket-estado-Recusado {
    border-radius: 15px;
    background: #c61d26;
    padding: 0.20rem 1rem;
    color: white !important;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.ticket-estado-Finalizado {
    border-radius: 15px;
    background: #2ec4b6;
    padding: 0.20rem 1rem;
    color: white !important;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.ticket-estado-Comunicação-Interna {
    border-radius: 15px;
    background: #333333;
    padding: 0.20rem 1rem;
    color: white !important;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.ticket-estado-Segundo-Plano {
    border-radius: 15px;
    background: #c61d66;
    padding: 5px;
    color: white !important;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}
.ticket-estado-Pedido-de-Informação {
    border-radius: 15px;
    background: #A2CF53;
    padding: 0.20rem 1rem;
    color: white !important;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.ticket-estado-Informação-Recebida {
    border-radius: 15px;
    background: #F75E3B;
    padding: 0.20rem 1rem;
    color: white !important;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.canvasPrintScreen {
    width: 100%;
    height: 250px;
}
/*::::::::::::    ::::::::::::*/

/*--- CSS para rever bem no futuro, do Icon-conteudo para baixo são elementos do e-formação ---*/
.etiqueta {
    background: rgba(var(--corcliente-rgb), 0.9);
    color: #fff;
    padding: 0px 10px;
    margin-top: 5px;
    margin-bottom: 0px;
    font-size: 14px;
    text-align: end;
    width: fit-content;
    margin-right: 0;
    margin-left: auto;
    line-height: revert;
}

    .etiqueta.dtipoformacaoonline {
        background: black;
        color: white;
    }


.grupoitem {
    position: relative;
    float: left;
    /*font-size: 14px;*/
    /*line-height: 10px;*/
    margin: 0px;
    margin-bottom: 10px;
    width: 100%;
    border-radius: 0px 0px 0px 0px;
    /*padding: 10px 10px 10px 10px;*/
    padding: 0px 0px 0px 0px;
    /*background-color: #efefef;*/
    background-color: #fff;
    border: solid #ccc 1px;
}

.grupotitulo {
    position: relative;
    float: left;
    background-color: #ccc;
    margin: 0px 0px;
    width: 100%;
    /*border:solid #ccc 1px;*/
    /*padding:10px 10px 10px 10px;*/
    clear: both;
    display: block;
    float: left;
    width: 100%;
    position: relative;
    /*line-height : normal;*/
    min-height: 38px;
}

.gtitulo {
    width: 100%;
    position: relative;
    float: left;
    display: block;
    padding-left: 20px;
    padding-top: 5px;
    /*background-image: url('../icons-formacao/ic_formacao_duracao.png');*/
}

.icon-menu {
    background-repeat: no-repeat;
    background-position: 5px center;
    background-size: contain;
    background-size: 18px;
    padding-left: 15px;
    /*display:inline-block;*/
}

.icon-conteudo {
    background-repeat: no-repeat;
    background-position: 5px center;
    /*background-size:contain;*/
    background-size: 18px;
    padding-left: 25px;
}

.online {
    background-image: url('../img/icons_conteudo/online.svg');
    background-repeat: no-repeat;
}

.home {
    background-image: url('../img/icons_conteudo/home.svg');
    background-repeat: no-repeat;
}

.tarefa {
    background-image: url('../img/icons_conteudo/tarefas.svg');
    background-repeat: no-repeat;
}

.aviso {
    background-image: url('../img/icons_conteudo/avisos.svg');
    background-repeat: no-repeat;
}

.conteudo {
    background-image: url('../img/icons_conteudo/conteudos.svg');
    background-repeat: no-repeat;
}

.cronograma {
    background-image: url('../img/icons_conteudo/cronograma.svg');
    background-repeat: no-repeat;
}

.falta {
    background-image: url('../img/icons_conteudo/faltas.svg');
    background-repeat: no-repeat;
}

.resultado {
    background-image: url('../img/icons_conteudo/resultados.svg');
    background-repeat: no-repeat;
}

.ar {
    background-image: url('../img/icons_conteudo/ar.svg');
    background-repeat: no-repeat;
}

.teste {
    background-image: url('../img/icons_conteudo/teste.svg');
    background-repeat: no-repeat;
}

.sincrona {
    background-image: url('../img/icons_conteudo/sincrona.svg');
    background-repeat: no-repeat;
}

.pauta {
    background-image: url('../img/icons_conteudo/pauta.svg');
    background-repeat: no-repeat;
}

.ocorrencia {
    background-image: url('../img/icons_conteudo/ocorrencia.svg');
    background-repeat: no-repeat;
}

.jfalta {
    background-image: url('../img/icons_conteudo/jfalta.svg');
    background-repeat: no-repeat;
}

.entregadoc {
    background-image: url('../img/icons_conteudo/entregadoc.svg');
    background-repeat: no-repeat;
}

.docapoio {
    background-image: url('../img/icons_conteudo/docapoio.svg');
    background-repeat: no-repeat;
}

.evidencia {
    background-image: url('../img/icons_conteudo/evidencia.svg');
    background-repeat: no-repeat;
}

.geral {
    background-image: url('../img/icons_conteudo/geral.svg');
    background-repeat: no-repeat;
}

.moodle {
    background-image: url('../img/icons_conteudo/moodle.svg');
    background-repeat: no-repeat;
}

.tutoria {
    background-image: url('../img/icons_conteudo/tutoria.svg');
    background-repeat: no-repeat;
}

.taviso {
    background-image: url('../img/icons_conteudo/topicoaviso.png');
    background-repeat: no-repeat;
}

.tnovo {
    background-image: url('../img/icons_conteudo/topiconovo.svg');
    background-repeat: no-repeat;
}

/*--- Checkbox parecida ao do Bootstrap ---*/
.checkclienteContainer {

}

    .checkclienteContainer label {
        cursor:pointer;
    }

    .checkclienteContainer input {
        width: 24px;
        height: 24px;
        vertical-align: top;
        background-color: #fff;
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        border: 1px solid rgba(0, 0, 0, 0.25);
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        -webkit-print-color-adjust: exact;
        color-adjust: exact;
        border-radius: 0.25em;
        /*float: left;*/
        margin-right: 0.5em;
        cursor: pointer;
        margin-bottom: 0.5em;
    }
        .checkclienteContainer input:checked[type=radio] {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
        }
        .checkclienteContainer input:checked[type=checkbox] {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
        }
        .checkclienteContainer input:checked {
            background-color: var(--corcliente);
            border-color: var(--corcliente);
        }
        .checkclienteContainer input:disabled {
            cursor: default;
            opacity: 0.5;
        }
            .checkclienteContainer input:disabled + label {
                cursor: default;
                opacity: 0.5;
            }

/*--- Radio parecida ao do Bootstrap ---*/
.radioclienteContainer {
}

    .radioclienteContainer label {
        cursor: pointer;
    }

    .radioclienteContainer input {
        width: 24px;
        height: 24px;
        vertical-align: top;
        background-color: #fff;
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        border: 1px solid rgba(0, 0, 0, 0.25);
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        -webkit-print-color-adjust: exact;
        color-adjust: exact;
        border-radius: 50%;
        /*float: left;*/
        margin-right: 0.5em;
        cursor: pointer;
    }

        .radioclienteContainer input:checked[type=radio] {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
        }

        .radioclienteContainer input:checked[type=checkbox] {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
        }

        .radioclienteContainer input:checked {
            background-color: var(--corcliente);
            border-color: var(--corcliente);
        }

        .radioclienteContainer input:disabled {
            cursor: default;
            opacity: 0.5;
        }

            .radioclienteContainer input:disabled + label {
                cursor: default;
                opacity: 0.5;
            }
/*--- Overrides de BootStrap ---*/
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--corcliente);
    --bs-btn-border-color: var(--corcliente);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--corcliente-hover);
    --bs-btn-hover-border-color: var(--corcliente-hover);
    --bs-btn-focus-shadow-rgb: var(--corcliente-rgb-boxShadow);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--corcliente-hover);
    --bs-btn-active-border-color: var(--corcliente-hover);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--corcliente);
    --bs-btn-disabled-border-color: var(--corcliente);
}
.dropdown-menu {
    --bs-dropdown-link-active-bg: var(--corcliente);
}

.link-success {
    color: var(--corcliente) !important;
}

    .link-success:hover {
        color: var(--corcliente-hover) !important;
    }

.modal-open {
    padding-right: 0 !important;
}