/*
 *  Document   : themes.css
 *  Author     : pixelcave
 *  Description: The themes stylesheet of the template. The classes can be used to
 *  alter the text, the background or the border color of an element individually
 *
 */
/* Scroll horizontal controlado */
.table-responsive {
    position: relative;
    overflow-x: auto;
}

.form-control {
    border-radius: 6px;
    border: 1px solid #d4d4d4;
    transition: 0.2s;
    box-shadow: none;
}



/* Dropdown flutuante */
.dropdown-menu {
    z-index: 1050;
}
.

/* Fix para botões da biblioteca - evita scroll horizontal */
.biblioteca-acoes {
    min-width: 200px;
    white-space: nowrap;
}

.biblioteca-acoes > .btn,
.biblioteca-acoes > .btn-group {
    display: inline-block;
    vertical-align: top;
    margin-right: 2px;
    min-height: 26px;
    min-width: 30px;
}

.biblioteca-acoes > .btn > i{
    margin-top: 3px;
}

.biblioteca-acoes > .btn:last-child,
.biblioteca-acoes > .btn-group:last-child {
    margin-right: 0;
}

/* Dropdown configurações básicas */
.biblioteca-acoes .dropdown-menu {
    min-width: 180px;
    transform: none !important;
}

/* Garante posicionamento correto dos dropdowns */
.biblioteca-acoes .btn-group {
    position: static;
}


/* CSS específico para dropdowns em modais - Solução robusta */

/* Reset de estilos conflitantes do Bootstrap 3 para modais */
.modal .biblioteca-acoes .btn-group {
    position: static !important;
}

.modal .biblioteca-acoes .dropdown-menu {
    position: fixed !important;
    transform: none !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
}

/* Estilo para dropdown visível */
.modal .biblioteca-acoes .dropdown-menu.show {
    display: block !important;
}

/* Suporte para dropup (quando abre para cima) */
.modal .biblioteca-acoes .btn-group.dropup .caret {
    content: "";
    border-top: 0;
    border-bottom: 4px dashed;
    border-bottom: 4px solid \9;
}

/* Animação suave - APENAS NO MODAL */
#moduloParticipantesModal .biblioteca-acoes .dropdown-menu {
    transition: opacity 0.15s ease-in-out;
}

#moduloParticipantesModal .biblioteca-acoes .dropdown-menu:not(.show) {
    opacity: 0;
    pointer-events: none; /* Previne interação quando invisível */
}

#moduloParticipantesModal .biblioteca-acoes .dropdown-menu.show {
    opacity: 1;
    pointer-events: auto;
}

/* Sombra para melhor visualização */
.modal .biblioteca-acoes .dropdown-menu {
    box-shadow: 0 6px 12px rgba(0,0,0,.175);
    border: 1px solid rgba(0,0,0,.15);
}

/* Garantir que o modal não corte o dropdown */
.modal-open .modal {
    overflow: auto !important;
}

.modal .modal-dialog {
    overflow: visible !important;
}

.modal .modal-content {
    overflow: visible !important;
}

/* Scroll do modal body sem afetar dropdowns */
.modal .modal-body {
    overflow-y: auto !important;
    overflow-x: visible !important;
    max-height: calc(100vh - 200px); /* Ajuste conforme necessário */
}

/* Z-index alto para garantir que fique acima de tudo */
.modal .biblioteca-acoes .dropdown-menu {
    z-index: 10500 !important;
}

/* Correção para table-responsive */
.modal .table-responsive {
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
}

/* Media query para telas pequenas */
@media (max-width: 768px) {
    .modal .biblioteca-acoes .dropdown-menu {
        min-width: 180px !important;
        max-width: calc(100vw - 40px) !important;
    }
}

/* Estilos específicos para dropdowns das tabelas */

/* Garante que dropdowns das tabelas não sejam afetados pelo CSS do modal */
#tabela1 .biblioteca-acoes .dropdown-menu,
#tabela2 .biblioteca-acoes .dropdown-menu,
#tabela3 .biblioteca-acoes .dropdown-menu {
    opacity: 1 !important;
    pointer-events: auto !important;
    transition: none !important; /* Remove animações que podem causar problemas */
}

/* Estado inicial - escondido */
#tabela1 .biblioteca-acoes .dropdown-menu:not(:visible),
#tabela2 .biblioteca-acoes .dropdown-menu:not(:visible),
#tabela3 .biblioteca-acoes .dropdown-menu:not(:visible) {
    display: none !important;
}

/* Cursor pointer nos botões */
#tabela1 .biblioteca-acoes .dropdown-toggle,
#tabela2 .biblioteca-acoes .dropdown-toggle,
#tabela3 .biblioteca-acoes .dropdown-toggle {
    cursor: pointer;
}

/* Remove qualquer classe .show que possa vir do Bootstrap */
#tabela1 .biblioteca-acoes .dropdown-menu.show,
#tabela2 .biblioteca-acoes .dropdown-menu.show,
#tabela3 .biblioteca-acoes .dropdown-menu.show {
    /* Não usa classe .show - usa jQuery show/hide */
}

/* Sombra para melhor visualização */
#tabela1 .biblioteca-acoes .dropdown-menu,
#tabela2 .biblioteca-acoes .dropdown-menu,
#tabela3 .biblioteca-acoes .dropdown-menu {
    box-shadow: 0 6px 12px rgba(0,0,0,.175);
    border: 1px solid rgba(0,0,0,.15);
    background-color: #fff;
}

/* Z-index alto mas menor que o do modal */
#tabela1 .biblioteca-acoes .dropdown-menu,
#tabela2 .biblioteca-acoes .dropdown-menu,
#tabela3 .biblioteca-acoes .dropdown-menu {
    z-index: 9999 !important;
}

/*
=================================================================
THEME DEFAULT
=================================================================
*/
@font-face {
    font-family: nexa;
    src: url("../font/Nexa%20Light.otf");
}
* {
    font-family: "Open Sans", sans-serif;
    border-radius: 2px ;
}


.login_info{
    color: #474747;
    font-weight: 500;
    margin-bottom: 5px;
}

.btn-info {
    color: #fff;
    background-color: #0091DA;
    border-color: #17a2b8;
}
.btn-warning {
    color: #fff;
    background-color: #F68D2E;
    border-color: #F68D2E;
}


.themed-color-default {
    color: #1bbae1 !important;
}

.themed-border-default {
    border-color: #FFFFFF !important;
}

.themed-background-default {
    background-color: #1bbae1 !important;
}

.themed-color-dark-default {
    color: #394263 !important;
}

.themed-border-dark-default {
    border-color: #394263 !important;
}

.themed-background-dark-default {
    background-color: #394263 !important;
}

/*
=================================================================
THEME NIGHT
=================================================================
*/

.themed-color-night {
    color: #888888 !important;
}

.themed-border-night {
    border-color: #888888 !important;
}

.themed-background-night {
    background-color: #888888 !important;
}

.themed-color-dark-night {
    color: #333333 !important;
}

.themed-border-dark-night {
    border-color: #333333 !important;
}

.themed-background-dark-night {
    background-color: #333333 !important;
}

/*
=================================================================
THEME AMETHYST
=================================================================
*/

.themed-color-amethyst {
    color: #af64cc !important;
}

.themed-border-amethyst {
    border-color: #af64cc !important;
}

.themed-background-amethyst {
    background-color: #af64cc !important;
}

.themed-color-dark-amethyst {
    color: #583a63 !important;
}

.themed-border-dark-amethyst {
    border-color: #583a63 !important;
}

.themed-background-dark-amethyst {
    background-color: #583a63 !important;
}

/*
=================================================================
THEME MODERN
=================================================================
*/

.themed-color-modern {
    color: #46b7bf !important;
}

.themed-border-modern {
    border-color: #46b7bf !important;
}

.themed-background-modern {
    background-color: #46b7bf !important;
}

.themed-color-dark-modern {
    color: #3b3f40 !important;
}

.themed-border-dark-modern {
    border-color: #3b3f40 !important;
}

.themed-background-dark-modern {
    background-color: #3b3f40 !important;
}

/*
=================================================================
THEME AUTUMN
=================================================================
*/

.themed-color-autumn {
    color: #e67e22 !important;
}

.themed-border-autumn {
    border-color: #e67e22 !important;
}

.themed-background-autumn {
    background-color: #e67e22 !important;
}

.themed-color-dark-autumn {
    color: #4a392b !important;
}

.themed-border-dark-autumn {
    border-color: #4a392b !important;
}

.themed-background-dark-autumn {
    background-color: #4a392b !important;
}

/*
=================================================================
THEME FLATIE
=================================================================
*/

.themed-color-flatie {
    color: #1ec1b8 !important;
}

.themed-border-flatie {
    border-color: #1ec1b8 !important;
}

.themed-background-flatie {
    background-color: #1ec1b8 !important;
}

.themed-color-dark-flatie {
    color: #32323a !important;
}

.themed-border-dark-flatie {
    border-color: #32323a !important;
}

.themed-background-dark-flatie {
    background-color: #32323a !important;
}

/*
=================================================================
THEME SPRING
=================================================================
*/

.themed-color-spring {
    color: #27ae60 !important;
}

.themed-border-spring {
    border-color: #27ae60 !important;
}

.themed-background-spring {
    background-color: #27ae60 !important;
}

.themed-color-dark-spring {
    color: #344a3d !important;
}

.themed-border-dark-spring {
    border-color: #344a3d !important;
}

.themed-background-dark-spring {
    background-color: #344a3d !important;
}

/*
=================================================================
THEME FANCY
=================================================================
*/

.themed-color-fancy {
    color: #d9416c !important;
}

.themed-border-fancy {
    border-color: #d9416c !important;
}

.themed-background-fancy {
    background-color: #d9416c !important;
}

.themed-color-dark-fancy {
    color: #352b4e !important;
}

.themed-border-dark-fancy {
    border-color: #352b4e !important;
}

.themed-background-dark-fancy {
    background-color: #352b4e !important;
}

/*
=================================================================
THEME FIRE
=================================================================
*/

.themed-color-fire {
    color: #e74c3c !important;
}

.themed-border-fire {
    border-color: #e74c3c !important;
}

.themed-background-fire {
    background-color: #e74c3c !important;
}

.themed-color-dark-fire {
    color: #4a2e2b !important;
}

.themed-border-dark-fire {
    border-color: #4a2e2b !important;
}

.themed-background-dark-fire {
    background-color: #4a2e2b !important;
}


.block {
    margin: 0 0 10px;
    padding: 10px 10px 5px;
    background-color: #ffffff;
    border: 1px solid #dbe1e8;
    word-wrap: break-word;
    height: min-content;
}
.dl-horizontal dd {
    font-size: 16px!important;
}
.table > tbody > tr > td {
    /* border-color: transparent !important; */
    font-size: 15px;
}
.btn {
    padding: 5px 4px!important;
    font-size: 11px!important;
    line-height: 1.5!important;
    border-radius: 4px!important;
    font-weight: 700;
}
.block-title h1, .block-title h2, .block-title h3 {
    padding: 0px 15px 0px;
    font-size: 14px;
    font-weight: 600;
}
span.label {
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 600;
}


button{
    text-transform: uppercase;
}

label{
    text-transform: uppercase;
}

.block-title{
    text-transform: uppercase;
}
label {
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 500;
}

input.btn {
    text-transform: uppercase;
}

a.btn {
    text-transform: uppercase;
}

.btn-primary {
    color: #fff;
    background-color: var(--primary, #00338D);
    border-color: var(--primary, #00338D);
}
.btn-primary.outline {
    color: var(--primary, #00338D);
    background-color: transparent;
    border-color: var(--primary, #00338D);
}
.btn-primary.outline:hover,
.btn-primary.outline:focus,
.btn-primary.outline:active {
    color: #fff;
    background-color: var(--primary, #00338D);
    border-color: var(--primary, #00338D);
}
.btn-danger.outline {
    color: #dc3545;
    background-color: transparent;
    border-color: #dc3545;
}
.btn-danger.outline:hover,
.btn-danger.outline:focus {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}
.btn-danger {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}

.btn-success {
    color: #fff;
    background-color: #43B02A;
    border-color: #28a745;
}
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus, .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus, .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus, .navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus, .navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus, .navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {

    background-color: #00338D;
}
.text-primary, .text-primary:hover, a, a:hover, a:focus, a.text-primary, a.text-primary:hover, a.text-primary:focus {
    color: #00338D;
}

.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus {
    background-color: var(--primary, #1bbae1);
    color: #ffffff;
    border-radius: 6px;
}



/*------Dropb */

/* ICONE */

.quadrado-estatistica {
    border-color: #FFFFFF;
    text-align: center;
}

.quadrado-estatistica .quadrado-icon {
    /* background: url("../img/body-bg.png") repeat scroll 0 0 #F7F7F7; */
    border-radius: 60px 60px 60px 60px;
    font-size: 27px;
    height: 47px;

}


.quadrado-estatistica .quadrado-number {
    margin: 0px !important;
    margin-bottom: 5px !important;
    font-size: 18px;
    padding: 0px;
    font-weight: bold;
    text-shadow: 0 1px rgba(244, 244, 244, 0.85);
    color: #777;
}

.quadrado-estatistica .quadrado-title {
    padding: 0px !important;
    font-size: 11px;
    text-shadow: 0 1px rgba(232, 232, 232, 0.75);
    color: #777;
}

.quadrado-icon .turquoise-color {
    color: #4cc5cd;
}

.quadrado-icon .red-color {
    color: #e83339;
}

.quadrado-icon .green-color {
    color: #2bb574;
}

.quadrado-icon .gray-color {
    color: #b9baba;
}

.quadrado-icon .purple-color {
    color: #c8abdb;
}

.quadrado-icon .blue-color {
    color: #43609c;
}

.quadrado-icon .gold-color {
    color: #F8BE2E;
}

.quadrado-icon .laranja-color {
    color: #f37735;
}

.quadrado-icon .dimgray-color {
    color: #696969;
}

.nav.navbar-nav-custom > li:not(.topbar-icon).open > a, .nav.navbar-nav-custom > li:not(.topbar-icon) > a:hover, .nav.navbar-nav-custom > li:not(.topbar-icon) > a:focus {
    background-color: #00338D;
}

/* hr feed */
.feedhr {
    margin-top: 10px;
    margin-bottom: 10px;
    border: 0;
    border-top: 1px solid #B1B1B1;
}

/* caixa para perfil */
.color-555 {
    color: #555 !important
}

.box-subtitle {
    margin-top: 0px;
    margin-bottom: 30px
}

.post-box {
    width: 100%;
    color: #555;
    border-radius: 3px;
    overflow: hidden;
    display: block;
    box-shadow: 1px 2px 3px 1px rgba(0, 0, 0, 0.4);
    margin: 10px;
    background-color: white;
    border-radius: 10px;
    word-wrap: break-word;
}

a.post-box {
    text-decoration: none;
    color: #555
}

a.post-box:hover .post-box-content {
    background: #edece8
}

.post-box-header {
    position: relative;
    height: 100px;
    overflow: hidden;
    background: #fff
}

.post-box-image {
    position: absolute;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%
}

.post-box-title {
    position: absolute;
    top: 70px;
    padding: 10px;
    margin: 0;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    text-shadow: 1px 1px 2px #000;
    text-align: center;
    width: 100%
}

.post-box-title::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    width: 50%;
    left: 25%;
    border-top: 1px solid rgba(255, 255, 255, 0.5)
}

.post-box-content {
    position: relative;
    min-height: 105px;

    overflow: visible;
    text-align: center
}

.post-box-user {
    position: absolute;
    top: -40px;
    right: 0;
    left: 0
}

.post-box-user .post-box-user-icon {
    margin: auto;
    width: 80px;
    height: 80px;
    border: 3px solid white;
    border-radius: 100%;
    background-color: #f37735;

}

.post-box-user .post-box-user-photo {

}

.post-box-user-photo img {
    font-size: 28px;
    margin-top: 0px;
    color: #FFFFFF;
    border: 3px solid white;
    border-radius: 100%;
}

.post-box-user-icon i {
    font-size: 28px;
    margin-top: 23px;
    color: #FFFFFF;
}

.post-box-user-name {
    display: block;
    text-align: center;
    text-transform: uppercase;
    font-weight: 600;
    margin-top: 10px
}

.post-box-user-name--collection {
    position: relative;
    font-size: 18px;
    width: 275px;
    padding: 7px 0 0 15px;
    display: inline-block
}

.post-box-text {
    padding: 10px 15px 15px;
    font-size: 12px;
    color: black;
}

.post-box-text-padding-top {
    padding: 80px 15px 15px
}

.post-box-list-item:hover .box-list-item-position, .post-box:hover .box-list-item-position {
    background-color: #ffc33e
}

.post-box-list-item:hover .box-list-item-text {
    background: #edece8
}

.post-box .box-list-item-position {
    position: absolute;
    z-index: 1;
    left: 0px;
    height: 40px;
    padding: 10px;
    width: 34px;
    border-radius: 0px 0px 3px 0
}

.post-box--narrow, .post-box--narrow .post-box-header, .post-box--narrow .post-box-content {
    width: 250px
}

.post-box--no-user .post-box-title {
    padding: 10px 10px 4px 10px
}

.post-box--no-user .post-box-text {
    padding-top: 15px
}

.post-box-overlay {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.4);
    border-radius: 2px;
    background: #C2C2C2;

}

.post-box-tipo {
    font-size: 17px;
    font-weight: bold;
    margin-top: 20px;
}

/* Botao icon */
.button-icon {
    background-color: #FFFFFF;
    border: 0px;
    border-color: #FFFFFF;
}

.button-icon i {
    font-size: 20px;
}

.button-icon .blue-color {
    color: #43609c;
}

.button-icon .yellow-color {
    color: #f90;
}

.button-icon .red-color {
    color: red;
}



::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #F5F5F5;
}

::-webkit-scrollbar {
    width: 12px;
    background-color: #dbdbdb;
    height: 12px;
}

::-webkit-scrollbar-thumb {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
    background-color: #555;
}

.modal-body-editar {
    margin: 5px;
    padding: 5px 10px;
}

.notificacao-header {
    background: #1A2C47;
    color: #fefefe;
    margin: 0;
    padding: 10px;
    width: 350px;
    text-align: center;
    font-size: 17px;
    font-weight: 900;
    word-wrap: break-word;

}

.notificacao-triangulo {
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid #1A2C47;
    height: 57;
    left: 245px;
    position: absolute;
    top: -23px;
}

.alert-notificacao-nome {
    font-size: 15px;
    height: 24px;
    color: #3b5998;
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-left: 55px;
}

.alert-notificacao-nome a {
    color: #3b5998;
}

.alert-notificacao-favorito {
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
    border-color: #FFB74C;
    font-size: 15px;
    height: 24px;
    margin-left: 55px;
}

.alert-notificacao-corrigiu {
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
    border-color: #FFB74C;
    /* font-size: 15px; */
    height: 24px;
    margin-left: 55px;
}

.alert-notificacao-corrigiu a {
    color: #3b5998;
}

.alert-notificacao-curti {
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
    border-color: #FFB74C;
    font-size: 15px;
    height: 24px;
    margin-left: 55px;
}

.alert-notificacao-favorito a {
    color: #3b5998;
}

.alert-notificacao-curti a {
    color: #3b5998;
}

.alert-img {
    float: left;
}

.alert-notificacao {
    background-color: #f9fafc;
    height: 60px;
    cursor: pointer;
}

.alert-notificacao:hover,
.alert-notificacao:focus {
    background: rgb(221, 222, 223);
}

/* MENSAGENS ***********************************/

.mensagens_block {
    border: 1px solid rgb(216, 216, 216);
    box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.4);
    background: white;
    max-width: 700px;
    word-wrap: break-word;
}

.mensagens-header {
    background: #1A2C47;
    color: #fefefe;
    margin: 0;
    padding: 10px;
    /*width: 350px;*/
    text-align: center;
    font-size: 17px;
    font-weight: 900;
}

.mensagens-triangulo {
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid #1A2C47;
    height: 57;
    left: 192px;
    position: absolute;
    top: -23px;
}

.alert-mensagens {
    font-size: 15px;
    height: 24px;
}

.alert-mensagens a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: normal;
    line-height: 1.42857143;
    color: #333;
    white-space: nowrap;
}

.alert-mensagens a:hover {
    color: #fff;
    background-color: rgb(221, 222, 223);;
    text-decoration: none;
}

.alert-mensagens a:focus {
    color: #fff;
    background-color: rgb(221, 222, 223);;
    text-decoration: none;
}

.alert-curti {
    /*color: #3b5998;*/
    border-color: #3b5998;
    font-size: 15px;
    height: 24px;
}

.alert-visualizo {
    /*color: #147E00;*/
    border-color: #3b5998;
    font-size: 15px;
    height: 24px;
}

.alert-favorito {
    /*color: #FFB800;*/
    border-color: #FFB74C;
    font-size: 15px;
    height: 24px;

}

.alert-veja-mais {
    display: block;
    text-align: center;
    text-decoration: none;
}

.yellow-color {
    color: #FFB800;
}

.blue-color {
    color: #3b5998;
}

.profile-title {
    text-align: center;
    font-size: 20px;
    margin: 20px;
}

.profile-title a {
    text-align: center;
    font-size: 14px;
    color: #00338D;

}

.hr-tabela {
    margin: 0px;
}

/* busca pessoa header */

.busca_pessoa {
    width: 341px;
    margin-top: 22px;
    margin-left: 40px;
    min-height: 25px;
}

ul.procura {
    overflow: hidden;
    height: auto !important;
    height: 1%;
    width: 400px;
    cursor: text;
    font-size: 12px;
    font-family: Verdana;
    min-height: 1px;
    z-index: 999;
    margin: 0;
    padding: 0;
    background-color: #fff;
    list-style-type: none;
    clear: left;
    border-radius: 6px;
}

ul.procura li input {
}

.input-group-addon, .input-group-btn, .input-group .form-control {
    display: table-cell;
}

.busca_dropdown {
    display: none;
    position: absolute;
    top: 20px;
    width: 399px;
    border: 1px solid rgb(219, 219, 219);
    z-index: 10000000;
    background-color: #FFFFFF;
    border-radius: 4px;
}
@import url('https://fonts.googleapis.com/css?family=Roboto:300');
.busca_descricao_startup_ct {
    height:80px;
}

.busca_descricao_startup {
    line-height:19px;
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
}
.busca_lista {
    padding-left: 5px;
}

.lista_li {
    min-height: 57px;
    padding: 2px 30px 2px 63px;
    cursor: pointer;
    border: solid #fff;
    border-width: 1px 0;
    color: #333;
    display: block;
    position: relative;
    border-bottom: 1px solid lightgrey;
}

li.lista_li:hover {
    background: rgb(221, 222, 223);
}

.lista_li img {
    background-color: #eceff5;
    display: block;
    height: 50px;
    left: 6px;
    position: absolute;
    width: 50px;
}

.busca_nome {
    color: #3b5998;
    font-weight: bold;
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.busca_cidade {
    color: #666;
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.busca_ico {
    position: absolute;
    left: 352px;
    bottom: 8px;
    height: 40px;
    width: 40px;
    background: rgb(240, 240, 240);
    border-radius: 30px;
}

.busca_veja_mais {
    min-height: 36px;
    padding: 8px 66px 2px 59px;
    cursor: pointer;
    border: solid #fff;
    border-width: 1px 0;
    color: #00F;
    display: block;
    position: relative;
    border-bottom: 1px solid lightgrey;
    text-align: center;
}

li.busca_veja_mais:hover {
    background: rgb(221, 222, 223);
}

.busca_pagina_block {
    width: 500px;
}

/* Encontra */

.encontra_lista {
    overflow: hidden;
    height: auto !important;
    height: 1%;
    display: block;
    cursor: text;
    font-size: 12px;
    font-family: Verdana;
    min-height: 1px;
    margin: 0;
    padding: 0;
    background-color: #fff;
    list-style-type: none;
    clear: left;
    list-style: none;
}

.encontra_li {
    min-height: 70px;
    padding: 11px 36px 5px 55px;
    cursor: pointer;
    border: solid #fff;
    border-width: 1px 0;
    color: #333;
    display: block;
    position: relative;
    border-bottom: 1px solid lightgrey;
}

li.encontra_li:hover {
    background: rgb(221, 222, 223);
}

.encontra_li img {
    background-color: #eceff5;
    display: block;
    height: 50px;
    left: 6px;
    position: absolute;
    width: 50px;
}

.encontra_nome {
    color: #3b5998;
    font-weight: bold;
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
    float: left;
    margin-left: 10px;
}

.encontra_cidade {
    color: #666;
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
    position: relative;
    right: 223px;
}

.encontra_ico {
    position: absolute;
    right: 0px;
    bottom: 17px;
    height: 45px;
    width: 45px;
    background: rgb(240, 240, 240);
    border-radius: 30px;
}

.encontra_ico i {
    font-size: 23px;
    text-align: center;
    margin-top: 14px;
    margin-left: 1px;
}

/* problema */

.resposta_block {

}

.resposta_title {

}

.resposta_autor {

    padding: 3px;
}

.resposta_categoria {

    padding: 3px;
}

.resposta_corpo {
    word-wrap: break-word;
    padding: 3px;
}

.resposta_solucao {
    margin: 44px;
}

.resposta_resposta {
    float: left;
    padding: 3px;
}

.logimagem {
    width: 210px;
    height: 50px;
    position: relative;
    left: -11px;
    height: -1px;
    top: -2px;
}

/* Busca problema */
.problema_dropdown {
    /*margin: 19px;*/
}

.problema_li_resultado {
    list-style-type: none;
    text-align: left;
    font-size: large;
    margin-left: 25%;
}

.problema_lista {
    overflow: hidden;
    height: auto !important;
    height: 1%;
    cursor: text;
    font-size: 12px;
    font-family: Verdana;
    min-height: 1px;
    margin: 0;
    padding: 0;
    background-color: #fff;
    list-style-type: none;
    clear: left;
}

.problema_li {
    min-height: 70px;
    padding: 11px 36px 5px 55px;
    cursor: pointer;
    border: solid #fff;
    border-width: 1px 0;
    color: #333;
    display: block;
    position: relative;
    border-bottom: 1px solid lightgrey;
    border-radius: 10px;
}

li.problema_li:hover {
    background: rgb(165, 183, 255);

}

.problema_li img {
    background-color: #eceff5;
    display: block;
    height: 50px;
    left: 6px;
    position: absolute;
    width: 50px;
}

.problema_nome {
    color: #3b5998;
    font-weight: bold;
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
    float: left;
    margin-left: 10px;
}

.problema_cidade {
    color: #666;
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
    position: relative;
    right: 223px;
}

.problema_ico {
    position: absolute;
    right: 0px;
    bottom: 17px;
    height: 45px;
    width: 45px;
    background: rgb(240, 240, 240);
    border-radius: 30px;
}

.problema_ico i {
    font-size: 23px;
    text-align: center;
    margin-top: 14px;
    margin-left: 1px;
}

.encontra_problema {
    /*max-width: 900px;*/
}

.encontra_box-post {
    background: #FFF;
    padding: 10px;
    position: relative;
    margin-bottom: 2em;
    height: 280px;
    box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.4);
    border-radius: 2px;
}

/*
.encontra_box-post:hover,.box-post:active,.box-post:focus {
box-shadow:0 0 4px 0 rgba(0,0,0,0.4);
border-color:#b3b3b3;
}
*/
.encontra_box-post .encontra_box-titulo {
    height: 36px;
    width: 100%;
    border-bottom-color: rgb(210, 210, 210);
    border-bottom-style: solid;
    border-bottom-width: 1px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.encontra_box-post .encontra_box-titulo .encontra_titulo {
    margin-left: 6px;
}

.encontra_box-post .encontra_box-autor {
    margin-top: 5px;
    margin-bottom: 20px;
    margin-left: 6px;
    height: 15px;
}

.encontra_box-post .encontra_box-descricao {
    margin-left: 10px;
    height: 100px;
}

.encontra_box-post .encontra_box-descricao .encontra_box-texto {
    margin-left: 75px;
    max-height: 100px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.encontra_box-post .encontra_box-descricao .encontra_box-avatar {
    float: left;
    font-size: 1em;
    line-height: 1.3;
    margin: 0;
}

.encontra_box-post .encontra_box-descricao .encontra_box-widget-avatar.pull-right {
    margin-left: 10px;
}

.encontra_box-post .encontra_box-descricao .encontra_box-widget-avatar.pull-right {
    margin-right: 0;
}

.encontra_box-post .encontra_box-descricao .encontra_box-widget-avatar {
    width: 65px;
    height: 83px;
    float: left;
    padding: 0px;
    margin-top: 4px;
    background: url('../img/template/ie8_opacity_light_75.png') repeat;
    background: rgba(255, 255, 255, 0.75);
}

.encontra_box-post .encontra_box-descricao .encontra_box-widget-avatar img {
    width: 70px;
    height: 70px;
}

.encontra_box-post .encontra_box-descricao .encontra_box-caixa-icon {
    height: 70px;
    width: 70px;
    font-size: 40px;
    background-color: rgb(236, 238, 238);
    text-align: center;
}

.encontra_box-post .encontra_box-categoria {
    font-size: 1em;
    line-height: 1.3;
    margin: 0;

    overflow: hidden;
    text-overflow: ellipsis;
}

.encontra_box-post .encontra_box-footer {
    position: absolute;
    bottom: 0px;
    left: 0px;
    background: #f0efed;
    padding: .5em .7em .35em;
    width: 100%;
}

.encontra_box-post .encontra_box-footer i {
    color: #bfbeba;
    font-size: .75em;
    -webkit-transition: color 1s ease-out;
    -moz-transition: color 1s ease-out;
    -o-transition: color 1s ease-out;
    transition: color 1s ease-out;
}

.encontra_box-post .encontra_box-footer .count {
    font-size: .875em;
    display: inline-block;
    margin-right: .9em;
}

.encontra_box-post .encontra_box-footer .count.view-count i {
    position: relative;
    top: 1px;
    font-size: .925em;
}

.encontra_box-post .encontra_box-footer .count.comment-count.highlight i {
    color: #33312d;
}

.encontra_box-post .encontra_box-footer .encontra_button-icon {
    float: left;
    background-color: #f0efed;
    border: 0px;
    border-color: #f0efed;
}

.encontra_box-post .encontra_box-footer .encontra_button-icon i {
    font-size: 20px;
}

.encontra_box-post .encontra_box-footer .encontra_button-icon .blue-color {
    color: #43609c;
}

.encontra_box-post .encontra_box-footer .encontra_button-icon .yellow-color {
    color: #f90;
}

.encontra_box-post .encontra_box-footer .encontra_button-icon .red-color {
    color: red;
}

.encontra_box-post .encontra_box-footer .encontra_box-button-resolver {
    float: right;
}

.encontra_button-icon {
    float: left;
    background-color: #ffffff;
    border: 0px;
    border-color: #f0efed;
    margin-top: 10px;
}

.encontra_button-icon i {
    font-size: 20px;
}

.encontra_button-icon .blue-color {
    color: #43609c;
}

.encontra_button-icon .yellow-color {
    color: #f90;
}

.encontra_button-icon .red-color {
    color: red;
}

.encontra_box-button-resolver {
    float: right;
}

/* inbox */

/*
.inbox-siderbar{
float: left;
width: 154px;
position: relative;
}







/*mail inbox*/

.mail-box {
    border-collapse: collapse;
    border-spacing: 0;
    display: table;
    table-layout: fixed;
    width: 100%;
    border-color: #FFFFFF;
    box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.4);
    word-wrap: break-word;
    margin: 0px 0px 25px 0px;
}

.mail-box aside {
    /* height: 100%; */
    padding: 0;
    vertical-align: top;
}

.mail-box .sm-side {
    background: #FFFFFF;
    border-radius: 4px 0 0 4px;
    -webkit-border-radius: 4px 0 0 4px;
    padding-left: 0px;
    border-right: 1px solid #d5d8df;
}

.mail-box .lg-side {
    background: #fff;
    border-radius: 0px 4px 4px 0;
    -webkit-border-radius: 0px 4px 4px 0;
}

.mail-box .sm-side .user-head {
    background: #00a8b3;
    border-radius: 4px 0px 0px 0;
    -webkit-border-radius: 4px 0px 0px 0;
    padding: 10px;
    color: #fff;
    min-height: 80px;
}

.user-head .inbox-avatar {
    width: 65px;
    float: left;
}

.user-head .inbox-avatar img {
    border-radius: 4px;
    -webkit-border-radius: 4px;
}

.user-head .user-name {
    display: inline-block;
    margin: 0 0 0 10px;
}

.user-head .user-name h5 {
    font-size: 14px;
    margin-top: 15px;
    margin-bottom: 0;
    font-weight: 300;
}

.user-head .user-name h5 a {
    color: #fff;
}

.user-head .user-name span a {
    font-size: 12px;
    color: #87e2e7;
}

a.mail-dropdown {
    background: #80d3d9;
    padding: 3px 5px;
    font-size: 10px;
    color: #01a7b3;
    border-radius: 2px;
    margin-top: 20px;
}

.inbox-body {
    padding: 10px;
}

.btn-compose {
    background: #1abb75;
    padding: 7px 0;
    text-align: center;
    width: 100%;
    color: #FFFFFF;
    font-size: 17px!important;
}

.btn-compose:hover {
    background: #068a53;
    color: #FFFFFF;
}
#enviar_email{
    font-size:14px;
}

ul.inbox-nav {
    display: inline-block;
    width: 100%;
    margin: 0;
    padding-left: 10px;
    padding-right: 10px;
}

.inbox-divider {
    border-bottom: 1px solid #d5d8df;
}

ul.inbox-nav li {
    display: inline-block;
    line-height: 45px;
    width: 100%;
}

ul.inbox-nav li a {
    color: #6a6a6a;
    line-height: 45px;
    width: 100%;
    display: inline-block;
    padding: 0 20px;
}

ul.inbox-nav li a:hover, ul.inbox-nav li.active a, ul.inbox-nav li a:focus {
    color: #6a6a6a;
    background: #d5d7de;
}

ul.inbox-nav li a i {
    padding-right: 10px;
    font-size: 16px;
    color: #6a6a6a;
}

ul.inbox-nav li a span.label {
    margin-top: 13px;
    padding: 2px;
}

ul.labels-info li h4 {
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 5px;
    color: #5c5c5e;
    font-size: 13px;
    text-transform: uppercase;
}

ul.labels-info li {
    margin: 0;
}

ul.labels-info li a {
    color: #6a6a6a;
    border-radius: 0;
}

ul.labels-info li a:hover, ul.labels-info li a:focus {
    color: #6a6a6a;
    background: #d5d7de;
}

ul.labels-info li a i {
    padding-right: 10px;
}

.nav.nav-pills.nav-stacked.labels-info p {
    margin-bottom: 0;
    padding: 0 22px;
    color: #9d9f9e;
    font-size: 11px;
}

.inbox-head {
    padding: 10px;
    background: #FFFFFF;
    color: #000;
    border-radius: 0 4px 0 0;
    background-color: #f9fafc;
    font-weight: bold;
    text-align: center;
    font-size: 14px;
    text-transform: uppercase;
}

.inbox-head h3 {
    display: inline-block;
    padding-top: 6px;
    font-weight: 300;
    font-size: 14px;
}

.inbox-head .sr-input {
    height: 40px;
    border: 1px solid;
    box-shadow: none;
    padding: 0 10px;
    float: left;
    border-radius: 4px 0 0 4px;
    color: #9B9B9B;
}

.inbox-head .sr-btn {
    height: 40px;
    border: none;
    background: #00a6b2;
    color: #fff;
    padding: 0 20px;
    border-radius: 0 4px 4px 0;
    -webkit-border-radius: 0 4px 4px 0;
}

.table-inbox {
    border: 2px solid #e7e7e7;
    margin-bottom: 0;
}

.table-inbox tr td {
    padding: 12px !important;
}

.table-inbox tr td:hover {
    cursor: pointer;
}

.table-inbox tr td .icon-star.inbox-started, .table-inbox tr td .icon-star:hover {
    color: #f78a09;
}

.table-inbox tr td .icon-star {
    color: #d5d5d5;
}

.table-inbox tr.unread td {
    font-weight: 600;
    background: #D3D3D3;
}

ul.inbox-pagination {
    float: right;
    list-style: none;
}

ul.inbox-pagination li {
    float: left;
}

.mail-option {
    display: inline-block;
    margin-bottom: 10px;
    width: 100%;
}

.mail-option .chk-all, .mail-option .btn-group {
    margin-right: 5px;
}

.mail-option .chk-all, .mail-option .btn-group a.btn {
    border: 1px solid #e7e7e7;
    padding: 5px 10px;
    display: inline-block;
    background: #fcfcfc;
    color: #000000;
    border-radius: 3px !important;
    -webkit-border-radius: 3px !important;
}

.inbox-pagination a.np-btn {
    border: 1px solid #e7e7e7;
    padding: 5px 15px;
    display: inline-block;
    background: #fcfcfc;
    color: #afafaf;
    border-radius: 3px !important;
    -webkit-border-radius: 3px !important;
}

.mail-option .chk-all input[type=checkbox] {
    margin-top: 0;
}

.mail-option .btn-group a.all {
    padding: 0;
    border: none;
}

.inbox-pagination a.np-btn {
    margin-left: 5px;
}

.inbox-pagination li span {
    display: inline-block;
    margin-top: 7px;
    margin-right: 5px;
}

.fileinput-button {
    border: 1px solid #e6e6e6;
    background: #eeeeee;
}

.inbox-body .modal .modal-body input, .inbox-body .modal .modal-body textarea {
    border: 1px solid #e6e6e6;
    box-shadow: none;
}

.btn-send, .btn-send:hover {
    background: #00A8B3;
    color: #fff;
}

.btn-send:hover {
    background: #009da7;
}

.modal-header h4.modal-title {
    font-weight: 600;
    font-family: 'Open Sans', sans-serif;
}

.modal-body label {
    font-weight: 400;
    font-family: 'Open Sans', sans-serif;
}

.pessoa_email {
    width: 341px;
    margin-top: 22px;
    margin-left: 40px;
    min-height: 25px;
}

.pessoa_email_lista {
    width: 341px;
    margin-top: 22px;
    margin-left: 40px;
    min-height: 25px;
}

.pessoa_email_dropdown {
    display: none;
    position: absolute;
    top: 35px;
    width: 97%;
    border: 1px solid rgb(219, 219, 219);
    z-index: 1;
    background-color: #FFFFFF;
    border-radius: 4px;
}

.pessoa_email_nome {
    color: #3b5998;
    font-weight: bold;
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pessoa_email_cidade {
    color: #666;
    display: block;
    overflow: hidden;
    padding-bottom: 2px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pessoa_email_ico {
    position: absolute;
    right: 11px;
    bottom: 8px;
    height: 40px;
    width: 40px;
    background: rgb(240, 240, 240);
    border-radius: 30px;
}

.lista_email {

}

.inbox-body-head {
}

.inbox-body-img {
    float: left;
}

.inbox-body-head .inbox-nome {
    color: #0077b5;
    position: relative;
    left: 15px;
}

.inbox-body-head .inbox-assunto {
    font-size: 18px;
    font-weight: bold;
    line-height: 22px;
    color: #000;
    word-wrap: break-word;
    position: relative;
    left: 15px;
}

.inbox-body-head .inbox-body-body {
    font-size: 13px;
    line-height: 17px;
    color: #333;
    font-weight: normal;
    padding-left: 0px;
    padding-right: 10px;
    padding-top: 10px;
    padding-bottom: 0px;
    word-wrap: break-word;
    clear: both;
    margin-left: 0px;
    margin-right: 10px;
}

.inbox-body-head .inbox-data {
    font-size: 12px;
    line-height: 14px;
    color: #333;
    font-weight: normal;
    color: #a9a9a9;
    position: relative;
    left: 15px;
}

.inbox-body-mensagem {
    padding: 20px 20px 20px 0px;
}

/*.inbox-body-button {*/
/*height: 32px;*/
/*border-bottom: 1px solid #e5e5e5;*/
/*margin-left: 28px;*/
/*margin-right: 28px;*/
/*}*/

.inbox-body-button ul {
    float: left;
    padding-top: 10px;
    list-style: none;
}

.inbox-body-button li {
    display: inline-block;
    vertical-align: middle;
    zoom: 1;
    margin-right: 25px;
    cursor: pointer;
}

.inbox-body-button a {
    margin-top: 5px;
    color: #6F6F6F;
    text-decoration: none;
    font-size: 12px;
    vertical-align: text-top;
}

.inbox-body-button a:hover, a:focus {
    color: #2a6496;
}

.inbox-responder {
    display: none;
    margin: 17px;
}

/* Responder */

.responder_button {

}

.responder_button .like {
    position: relative;
    left: 0px;
    float: left;
}

.responder_button .favorite {
    position: relative;
    left: 0px;
    float: left;
}

.button-menu {
    font-size: 18px;
    margin-left: 10px;
}

.button_link {
    color: #FFFFFF;
}

.buttons_convites {

}

#aceitar {
    background: #1abb75;
    color: white;
    font-size: 14px;
}

#recusar {
    background: #e74c3c;
    color: white;
    font-size: 14px;
}

/* caixa estilo face */
.block-head {
    /*border: solid;*/
    height: 57px;
    border-bottom: 1px solid;
    overflow: hidden;
    text-overflow: ellipis;
}

.block-head a img {
    width: 40px;
    height: 40px;
    border: 2px solid #fff;
    border-radius: 20px;
    vertical-align: top;
}

.block-content {
    /*border: solid;*/
    height: 350px;
}

.content-interno {
    /*border: solid;*/
    height: 180px;
    margin: 10px;
}

.content-descricao {
    height: 60px;
    padding: 10px;
}

.content-descricao .span_categorias {

}

.content-descricao .span_tags {
    position: relative;
    top: 5px;
}

.content-botao .content-botao-botao {

}

.content-botao a {
    position: relative;
    top: 35px;
    cursor: pointer;
    text-decoration: none;
}

.block-comentario {
    margin-top: 16px;
    height: 40px;
    border-top: 1px solid;
    display: none;
}

.content-botao button {
    float: right;
    margin: 3px;
}

.content-indicadores {
    margin-top: 6px;
    height: 20px;
}

.content-botao {
    /*border: solid;*/
    margin: 10px;
    padding: 10px;
}

.block-head a {
    height: 40px;
    width: 40px;
    float: left;
}

/* caixa estilo face */

/* block menu */

.block-menu {
    margin: 0;
    font-size: 80% /*smaller*/;
    font-weight: bold;
    line-height: 1.1;
    text-align: center;
    position: fixed;
    top: 120px;
    width: 100%;
    max-width: 266px;
}

.block-menu-title {
    border-bottom: 1px solid;
    font-size: 16px;
}

.block-menu-body {

}

.block-menu-notificacao {
    margin-top: 10px;

}

.block-linha-notificacao {
    margin-top: 10px;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
}

.block-data-notificacao {
    font-size: 9px;
    border-bottom: 1px solid #EFEFEF;
}

/* block menu */

.sidebar-nav-grupo {
    list-style: none;
    margin: 0;
    padding: 10px 0 0;
}

.sidebar-nav-grupo .sidebar-header-grupo:first-child {
    margin-top: 0;
}

.sidebar-nav-grupo a {
    display: block;
    min-height: 35px;
    line-height: 35px;
    color: black;
    font-size: 13px;
}

.sidebar-nav-grupo a:hover,
.sidebar-nav-grupo a.open,
.sidebar-nav-grupo li.active > a {
    color: black;
    text-decoration: none;
}

.sidebar-nav-grupo a.active {
    padding-left: 5px;
    border-left: 5px solid #1bbae1;
    background: url('../img/template/ie8_opacity_dark_30.png') repeat;
    background: rgba(0, 0, 0, 0.3);
}

.sidebar-nav-grupo a > .sidebar-nav-grupo-icon {
    margin-right: 10px;
}

.sidebar-nav-grupo a > .sidebar-nav-grupo-indicator {
    float: right;
    line-height: inherit;
    margin-left: 4px;
    -webkit-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
}

.sidebar-nav-grupo a > .sidebar-nav-grupo-icon,
.sidebar-nav-grupo a > .sidebar-nav-grupo-indicator {
    display: inline-block;
    opacity: 0.5;
    filter: alpha(opacity=50);
    width: 18px;
    font-size: 14px;
    text-align: center;
}

.sidebar-nav-grupo a:hover,
.sidebar-nav-grupo a:hover > .sidebar-nav-grupo-icon,
.sidebar-nav-grupo a:hover > .sidebar-nav-grupo-indicator,
.sidebar-nav-grupo a.active,
.sidebar-nav-grupo a.active > .sidebar-nav-grupo-icon,
.sidebar-nav-grupo a.active > .sidebar-nav-grupo-indicator,
.sidebar-nav-grupo a.open,
.sidebar-nav-grupo a.open > .sidebar-nav-grupo-icon,
.sidebar-nav-grupo a.open > .sidebar-nav-grupo-indicator,
.sidebar-nav-grupo li.active > a,
.sidebar-nav-grupo li.active > a > .sidebar-nav-grupo-icon,
.sidebar-nav-grupo li.active > a > .sidebar-nav-grupo-indicator {
    opacity: 1;
    filter: alpha(opacity=100);
}

.sidebar-nav-grupo a.active > .sidebar-nav-grupo-indicator,
.sidebar-nav-grupo a.open > .sidebar-nav-grupo-indicator,
.sidebar-nav-grupo li.active > a > .sidebar-nav-grupo-indicator {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

.sidebar-nav-grupo ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: none;
}

.sidebar-nav-grupo li.active > ul {
    display: block;
}

.sidebar-nav-grupo ul a {
    margin: 0;
    font-size: 14px;
    padding-left: 15px;
    min-height: 32px;
    line-height: 32px;
}

.sidebar-nav-grupo ul a.active,
.sidebar-nav-grupo ul a.active:hover {
    border-left: 5px solid #1bbae1;
    padding-left: 10px;
}

.sidebar-nav-grupo ul ul {
    background: url('../img/template/ie8_opacity_dark_40.png') repeat;
    background: rgba(0, 0, 0, 0.4);
}

.sidebar-nav-grupo ul ul a {
    padding-left: 25px;
}

.sidebar-nav-grupo ul ul a.active,
.sidebar-nav-grupo ul ul a.active:hover {
    padding-left: 20px;
}

/* Sidebar Header */
.sidebar-header-grupo {
    margin: 10px 0 0;
    padding: 10px;
    line-height: 12px;
}

.sidebar-header-grupo + .sidebar-section {
    padding-top: 0px;
    padding-bottom: 0px;
}

.sidebar-header-grupo .sidebar-header-grupo-title {
    color: #ffffff;
    font-size: 11px;
    text-transform: uppercase;
    opacity: 0.5;
    filter: alpha(opacity=50);
}

.sidebar-header-grupo-options {
    float: right;
    display: inline-block;
}

.sidebar-header-grupo-options > a,
.sidebar-nav-grupo .sidebar-header-grupo-options a {
    float: right;
    margin: 0;
    padding: 0;
    min-height: 0;
    line-height: inherit;
    display: block;
    min-width: 18px;
    text-align: center;
    color: #ffffff;
    opacity: 0.3;
    filter: alpha(opacity=30);
}

.sidebar-header-grupo-options a.active,
.sidebar-header-grupo-options a:hover,
.sidebar-header-grupo-options a:focus,
.sidebar-nav-grupo .sidebar-header-grupo-options a.active,
.sidebar-nav-grupo .sidebar-header-grupo-options a:hover,
.sidebar-nav-grupo .sidebar-header-grupo-options a:focus {
    background: none;
    color: #ffffff;
    opacity: 1;
    filter: alpha(opacity=100);
}

.sidebar-header-grupo-options a > i {
    font-size: 14px;
}

.block-atividade-title {
    border-bottom: 1px solid;
    font-size: 16px;
}

.block-notificacao-title {
    border-bottom: 1px solid;
    font-size: 16px;
}

.block-notificacao {
    margin: 0;
    font-size: 80% /*smaller*/;
    font-weight: bold;
    line-height: 1.1;
    text-align: center;
    position: fixed;
    top: 400px;
    width: 100%;
    max-width: 175px;
}

.header_grupo_left {
    position: absolute;
    left: 0px;
    margin-top: 15px;
    list-style: none;
}

.header_grupo_left li {
    display: inline;
}

.header_grupo_right {
    margin-top: 15px;
    list-style: none;
    position: absolute;
    right: 70px;
    color: #FFFFFF;
}

.header_grupo_right li {
    display: inline;
}

.block-header {
    display: inline-block;
    float: left;
}

.block-header a {
    border: 1px solid #e7e7e7;
    padding: 5px 10px;
    display: inline-block;
    background: #fcfcfc;
    color: #afafaf;
    border-radius: 3px !important;
    -webkit-border-radius: 3px !important;
}

.block-pessoa {
    max-height: 120px;
}

.block-pessoa a {
    position: relative;
    left: 0px;
}

.block-pessoa a img {
    width: 60px;
    height: 60px;
    vertical-align: top;
}

.block-pessoa-nome {
    position: relative;
    left: 70px;
    bottom: 60px;
    word-wrap: break-word;
    width: 90px;
    height: 4px;
    cursor: pointer;

}

.block-pessoa-button {
    height: 55px;
}

.block-pessoa-button {

}

/* Editar Perfil */
.bnt_deletar_formacao {
    background: #FFFFFF;
    border-color: #FFFFFF;
    border: 1px;
    color: red;
}

.bnt_alterar_formacao {
    background: #FFFFFF;
    border-color: #FFFFFF;
    border: 1px;
    color: black;
}

.bnt_deletar_profissional {
    background:transparent;
    border:transparent;
    color: red;
}

.bnt_adicionar{
    background:transparent;
    border:transparent;
    color: green;
}

.bnt_alterar_profissional {
    background: #FFFFFF;
    border-color: #FFFFFF;
    border: 1px;
    color: black;
}

.bnt_editar {
    background: #FFFFFF;
    border-color: #FFFFFF;
    border: 1px;
}

.painel i {
    margin-right: 10px;
}

.box_status_desafio {
    height: 264px;
    width: 62px;
    border: solid 1px rgb(255, 234, 234);
    float: left;
    position: relative;
    top: -21px;
    left: -21px;
}

.vertical-text {
    -webkit-transform: rotate(270deg);
    -moz-transform: rotate(270deg);
    -o-transform: rotate(270deg);
    writing-mode: lr-tb;
    position: absolute;
    top: 118px;
    left: -26px;
    font-size: 26px;
    /*-webkit-transform: rotate(270deg);
    -moz-transform: rotate(270deg);
    -o-transform: rotate(270deg);
    writing-mode: lr-tb;
    position: absolute;
    top: 200px;
    left: 11px;
    font-size: 26px;
    */
}

.site-block {
    height: 205px;
}

.site-block-descricao {
    height: 80px;
}

.box_status_fundo {
    position: relative;

    bottom: -20px;
    height: 17px;
    left: 21px;
    z-index: 0;
}

.block_estatistica_desafico {
    float: left;
}

.block_button_desafico {
    position: absolute;
    right: 37px;
    margin-top: 15px;
}

.block_botoes {
    height: 50px;

}

.resposta-comentario {
    margin-top: 16px;
    height: 118px;
    display: none;
}

.problema_corrige {
    margin-top: 16px;
    display: none;
}

.cursor_resposta_comentario {
    cursor: pointer;
    text-decoration: none;
}

.favorito_busca {
    margin-bottom: 3px;
    margin-left: 1px;
    margin-right: 6px;
}

.table_midias {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
}

.table_midias td {
    font-family: Arial, sans-serif;
    font-size: 14px;
    padding: 10px 20px;
    border-style: solid;
    border-width: 1px;
    overflow: hidden;
    height: 80px;
    word-break: break-word;

}

.table_midias th {
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: normal;
    padding: 10px 20px;
    border-style: solid;
    border-width: 1px;
    overflow: hidden;

}

.ajuda_professor {
    float: right;
    margin-top: -10px;
    margin-right: -10px;
}

.block_notificacao {
    margin: 0;
    font-size: 80% /*smaller*/;
    font-weight: bold;
    line-height: 1.1;
    text-align: center;
    position: fixed;
    top: 388px;
    width: 100%;
    max-width: 266px;
}

.block_proxima_ativicade {
    margin: 0;
    font-size: 80% /*smaller*/;
    font-weight: bold;
    line-height: 1.1;
    text-align: center;
    position: fixed;
    top: 450;
    width: 100%;
    max-width: 266px;
}

.block_desafio_grupo {

}

.block_status_desafico_grupo {
    height: 265px;
    width: 63px;
    border: solid 1px rgb(255, 234, 234);
    float: left;
    position: relative;
    top: -21px;
    left: -21px;
}

.block_fundo_desafio_grupo {
    position: relative;
    bottom: -21px;
    height: 17px;
    left: 21px;
    z-index: 0;
}

.block_head_desafio_grupo {
    /* border: solid; */
    height: 57px;
    border-bottom: 1px solid;
    overflow: hidden;
    text-overflow: ellipis;
}

.block_footer_desafico_status {

}

.block_estatistica_desafico_grupo {
    float: left;
}

.block_button_desafico_grupo {
    position: absolute;
    right: 37px;
    margin-top: 15px;
}

.box_status_desafio_solucao {
    height: 275px;
    width: 66px;
    border: solid 1px rgb(255, 234, 234);
    float: left;
    position: relative;
    top: -32px;
    left: -21px;
}

.desafio-titulo {
    height: 23px;
    border-bottom: 1px solid;
    font-size: 17px;
    font-weight: 500;
}


.busca_mentor_nome {

}

.busca_mentor_area {
    height: 55px;
    max-height: 55px;
}


.busca_lista_area {
    list-style: none;
    margin-left: -32px;
}

/** CSS Mentorias */

.span_mentorias {
    display: block;
    padding: 3px 0px;
    color: #636363;
    font-size: 13px;
}



.busca_mentorias_avatar {
    display: block;
    float: left;
    margin-right: 10px;

    border: 2px solid #eef1f5;
    border-radius: 8px;
}

.busca_mentorias_nome {
    display: block;
    font-weight: 600;
    color: #2b2b2b;
}

.busca_mentorias_area {
    display: block;
    height: 55px;
    max-height: 55px;
}

.busca_mentorias_botoes {
    margin-top: 15px;

}

.busca_mentorias_botoes2{
    margin-top: 15px;
    position: absolute;
    bottom: 33px;
}

.block .busca_mentorias_avatar {
    height: 65px;
    width: 65px;
    border-radius: 8px;
}

.indisponivel span {
    margin-bottom: 0;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    border-radius: 4px;
}

.subtilulo_endereco {
    font-size: 12px;
    margin-top: 14px;
    color: #6F6F6F;
    margin-bottom: 0px;
}


.bnt_deletar_seguimento {
    background-color: transparent;
    border-color: transparent;
    color: red;
}

.horario-atividade > h5{
    margin: 0;
    font-weight: bold;
}

.horario-atividade{
    padding: 10px 15px;
    border: 2px solid #005EB8;
    border-radius: 50%;
    float: right;
    text-align: center;
    width: 75px;
    /*position: absolute;
     right: 35px;*/
    right: 0px;
    margin-top: -95px;

}
.modal-title {
    font-weight: 300;
    font-size: 16px;
    font-weight: 600;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
}

.dropdown-menu>li>a {
    font-size: 13px;
    text-transform: capitalize;
}
/*.dataTables_filter{
    position: absolute;
}*/

.style-alt .block {
    background-color: rgb(255, 255, 255);

    border: 0.90566px solid oklch(0.929 0.013 255.508);
    border-radius: 16px;
}

.form-bordered .form-group {

    border-bottom: none;
}

.style-alt .block-title {
    border-bottom-color: inherit;
}


.navbar-default .navbar-nav > li > a, .color-branco, .menu-link {
    text-transform: uppercase;
    color: #00338D;
    font-weight: 600;

}

.navbar-default .navbar-nav > li > a:focus, .color-branco:focus, .menu-link:focus,
.navbar-default .navbar-nav > li > a:hover, .color-branco:hover, .menu-link:hover {
    color: white !important;
}

.navbar-default .navbar-nav > li > a:hover {
    transition: .1s;
}


#header-color, .navbar.navbar-default {
    background-color: #FFFFFF;
}

/* Topbar - ícones de ação (ajuda, suporte, chat, mensagens, notificações) - Minimal Clarity */
.topbar-actions {
    margin-top: 5px;
    align-items: center;
}

.topbar-icon {
    display: flex;
    align-items: center;
}

.topbar-icon-link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 36px;
    margin-top: 9px;
    border-radius: var(--mc-radius-sm, 8px);
    transition: var(--mc-transition, all .2s ease);
}

.topbar-icon-link:hover,
.topbar-icon-link:focus,
.topbar-profile-link:hover,
.topbar-profile-link:focus,
.topbar-icon.open > .topbar-icon-link,
.topbar-icon.open > .topbar-profile-link {
    background-color: rgba(255, 255, 255, .18);
    transform: translateY(-1px);
}

/* Header invertido (fundo branco, ícones na cor primária) - realce claro em vez do fundo escuro padrão */
.header-invertido .topbar-icon-link:hover,
.header-invertido .topbar-icon-link:focus,
.header-invertido .topbar-profile-link:hover,
.header-invertido .topbar-profile-link:focus,
.header-invertido .topbar-icon.open > .topbar-icon-link,
.header-invertido .topbar-icon.open > .topbar-profile-link {
    background-color: var(--mc-primary-light, #e8eef9);
}

/* Nome/avatar do usuário: mesmo tratamento de hover dos ícones, sem forçar cor de texto branca (herda .menu-link/.color-branco) */
.topbar-profile-link {
    display: inline-flex !important;
    align-items: center;
    height: 50px;
    margin-top: 2px;
    padding: 0 10px 0 6px;
    border-radius: var(--mc-radius-xl, 20px);
    transition: var(--mc-transition, all .2s ease);
}

.topbar-icon-link .fa {
    font-size: 18px;
    margin-top: 0;
    line-height: 1;
}

.topbar-badge {
    position: absolute !important;
    top: -3px !important;
    right: -3px !important;
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    border-radius: var(--mc-radius-pill, 999px) !important;
    border: 2px solid var(--primary);
    font-size: 10px;
    line-height: 13px;
}

.header-invertido .topbar-badge {
    border-color: #ffffff;
}

ul.procura {
    border-radius: 0px !important;
    margin-right: 4px;
}

ul.procura * {
    border-color: #e4e4e4 !important;
}

.dropdown:hover > a > i *, .dropdown:focus * {
    color: white !important;
}
.table>tbody>tr>td {
    border-top: none;
    border-bottom: 1px solid #ddd;
}

/*Loading Page*/
.login_bg_img {
    width: 100%;
    min-height: 672px;
    background-size: cover;
    background-repeat: no-repeat;
    display: flex;
}

.login_box_login {
    margin: auto;
    width: 100%;
    max-width: 500px;
    padding: 35px;
    background-color: #ffffff;
    text-align: center;
    border: 1px solid #efefef;
}

.login_box_login p {
    line-height: 1;
}

.login_p_seed {
    font-size: 50px;
    color: #5b5b5b;
    margin-bottom:0;
}

.login_p_mentoria {
    margin-bottom: 50px;
    color: #5b5b5b;
}

.login_p_senha {
    margin: 12px 0 30px;
    font-size: 10pt;
    color: #191919;
}

.login_p_copy {
    font-size: 10pt;
    color: #191919;
    margin-bottom: 5px;
}

.login_p_naoconhece {
    font-size: 10pt;
    color: #191919;
}

.login_p_naoprograma {
    font-size: 10pt;
    margin-top: 10px;
    margin-bottom: 0;
}
.login_p_naoprograma a {
    color: #191919 !important;
}

.login_p_button {
    margin-top: 30px;
}

.login_box_login a {
    text-decoration: none;
    color: #0c91f8;
}

.login_box_login input {
    padding: 10px;
    width: 90%;
    border: none;
    border-bottom: 1px solid #898989;
    background: transparent;
    margin: 10px 0;
    outline:none;
    color: #191919;
    border-radius: 0;
}

.login_box_login button {
    border: none;
    padding: 11px 40px;
    border-radius: 3px;
    background: #0066ff;
    outline: none;
    color: ghostwhite;
    font-size: 17px;
    font-weight: 300;
    -webkit-transition: all 150ms ease;
    -moz-transition: all 150ms ease;
    -ms-transition: all 150ms ease;
    -o-transition: all 150ms ease;
    transition: all 150ms ease;
}
.login_box_login button:hover {
    background: #007cff;
}
/*loading page*/
@media screen and (min-width: 768px) {
    /*  .navbar-menu-over{
          overflow: hidden!important;
      }
  */
}

@media screen and (max-width: 768px) {
    .nav-center {
        margin: 0 auto !important;
        float: none !important;
    }

    .nav-center img {
        max-height: 80px;
        margin: 0 auto;
    }

    .no-float {
        float: none !important;
    }

    .button-link {
        color: #00338D !important;
        font-size:16px;
    }
    .button-link i {
        color: #00338D !important;
        font-size:16px!important;
    }

    .button-link:hover {
        color: #00338D !important;
        font-size:16px!important;
        background-color: #FFFFFF!important;
    }
    .button-link:active {
        color: #00338D !important;
        font-size:16px!important;
        background-color: #FFFFFF!important;
    }
    .button-link:focus {
        color: #00338D !important;
        font-size:16px!important;
        background-color: #FFFFFF!important;
    }
    .navbar-hide {
        height: 100% !important;
        margin-top: -58px !important;
        z-index: -1 !important;
    }

    #page-content {
        padding: 20px 5px 1px;
        background-color: #F1F1F1;
    }
    .div-feed img {
        max-width: 190px;
    }
}



@media screen and  (max-width: 1190px) {
    .nome-completo {
        /*display: none !important;
    */
    }

}

.nome-completo {
    text-transform: uppercase;
    text-align: center;
    color: #FF695D !important;
    margin-top: 35px;
    padding-left: 15px;
    font-size: 16px;
    font-family: nexa;
}

.collapse, .collapsing {
    width: 100%;
}

.style-alt .widget, .style-alt .task-list li {
    background-color: #fff;
}

.linha-azul {
    /*border-top: 3px solid #00338D !important;*/
}

@media (min-width: 768px) {
    /* BS5: .navbar .navbar-nav precisa ficar flex-row.
       Aplicamos apenas em navbars antigos (sem .navbar-expand-*). */
    .navbar:not([class*="navbar-expand"]) .navbar-nav {
        display: inline-block;
        float: none;
        vertical-align: top;
    }

    .navbar:not([class*="navbar-expand"]) .navbar-collapse {
        text-align: justify;
        /*text-align: center;*/
    }
}

/* BS5 horizontal navbar (mentorar BS5) */
.navbar.navbar-expand-lg .navbar-nav {
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
}
.navbar.navbar-expand-lg .navbar-nav .nav-link {
    padding-left: 12px;
    padding-right: 12px;
}

@media (max-width: 768px) {
    #search-bar {
        display: block !important;
        margin-top: 0px !important;
    }

    .margin-top-50-xs {
        margin-top: 50px !important;
    }
}

@media (min-width: 768px) {
    #search-bar {
        /*  margin-top: -30px !important; */
    }
}

.widget-simple > .widget-content > strong {
    color: #00338D;
}

.botao_bloqueio button {

}

hr {
    margin-top: 15px;
    margin-bottom:15px;
    border: 0;
    border-top: 1px solid #EDEDED;
}


.nav.navbar-nav-custom > li > a > img {
    border: none;
}

.rating-stars {
    font-family: 'Glyphicons Halflings' !important;
}

.style-alt #page-content, #page-container, #sidebar, #sidebar-alt {
    background-color: #f5f5f5;
}



.modal-body {
    overflow-y: scroll;
    /* height: 100%!important; */
    max-height: 700px;
}

.img-circle, .widget .widget-icon, .dropdown img, .dropdown a img, .nav.navbar-nav-custom > li > a > img {
    border-radius: 50% !important;
}

.content-header {
    padding: 0px 32%;
    margin-left: -32%;
    margin-right: -32%;
    margin-top: -47px;
}
.badge-etapa{
    padding: 1px 6px!important;
    font-size: 14px;
    font-weight: 600;
    margin-right: 0px;
    margin-left: 5px;
    border-radius: 6px!important;
    border: 1px solid transparent;
    transition: color .15s ease-in-out,
                background-color .15s ease-in-out,
                border-color .15s ease-in-out,
                box-shadow .15s ease-in-out,
                filter .15s ease-in-out;
}

.badge-etapa:hover,
.badge-etapa:focus {
    text-decoration: none;
    filter: brightness(0.92);
}

.badge-etapa:focus {
    outline: 0;
    box-shadow: 0 0 0 4px rgba(13, 110, 253, .25);
}

.badge-etapa[style*="--etapa-color"] {
    background: color-mix(in srgb, var(--etapa-color) 12%, #fff) !important;
    border-color: color-mix(in srgb, var(--etapa-color) 55%, #fff) !important;
    color: color-mix(in srgb, var(--etapa-color) 85%, #000) !important;
}

.badge-etapa[style*="--etapa-color"]:hover,
.badge-etapa[style*="--etapa-color"]:focus {
    background: var(--etapa-color) !important;
    border-color: var(--etapa-color) !important;
    color: #fff !important;
    filter: none;
}

.badge-custom {
    background: var(--primary); !important;
    font-size: 14px; !important;
    max-width: 260px;!important;
    padding: 6px;
    margin: 6px;
}
.label-btn {
    margin-left: 5px;
}

/*
.modal.in .page-loading {
    display: none;
}

 */

.page-loading {
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    position: fixed;
    top: 50%;
    left: 50%;
    min-width: 125px;
    margin-left: -60px;
    margin-top: -30px;
    padding: 7px;
    text-align: center;
    color: #fdfdfd;
    font-size: 32px;

    vertical-align: middle;

}

.style-alt #page-content + footer {
    border-top-color: #00338d;
    height: 28px;
    line-height: 12px;
}

.busca_logo_startup{
    padding:15px;
    width: 165px;
    height: 165px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: -15px;
}

.busca_nome_startup{
    height:45px;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    display: grid;
    align-items: center;
}

.pointer{
    cursor:pointer;
}

ul.dropdown-menu.dropdown-custom.dropdown-options {
    border-radius: 3px;
}
ul.dropdown-menu.dropdown-custom.dropdown-menu-right {
    border-radius: 3px;
}


footer {
    height: 28px;
    padding-left: 7px;
    padding-top: 7px;
}


#div_item_search{
    display: block;
    position: fixed;
    z-index: 10000;
    right: 140px;
}

input#procura_pessoa {
    border-radius: 3px;
}




.table>tbody>tr>td {
    border-top: none;
    border-bottom: 1px solid #ddd;
}

/*Loading Page*/
.login_bg_img {
    width: 100%;
    min-height: 672px;
    background-size: cover;
    min-height: 100vh;
    background-size: cover;     /* cobre a tela */
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: scroll; /* evita bug em celulares */
    display: flex;
    overflow: auto;
    overflow-x: hidden;
    overflow-y: auto;
}

.login_box_login {
    margin: auto;
    width: 100%;
    max-width: 420px;
    padding: 35px;
    text-align: center;
    border-radius: 8px;
}

.login_box_login p {
    line-height: 1;
}

.login_p_seed {
    font-size: 50px;
    color: #5b5b5b;
    margin-bottom:0;
}

.login_p_mentoria {
    margin-bottom: 50px;
    color: #5b5b5b;
}

.login_p_senha {
    margin: 12px 0 30px;
    font-size: 10pt;
    color: #191919;
}

.login_p_copy {
    font-size: 10pt;
    color: #191919;
    margin-bottom: 5px;
}

.login_p_naoconhece {
    font-size: 10pt;
    color: #191919;
}

.login_p_naoprograma {
    font-size: 10pt;
    margin-top: 10px;
    margin-bottom: 0;
}
.login_p_naoprograma a {
    color: #191919 !important;
}

.login_p_button {
    margin-top: 30px;
}

.login_box_login a {
    text-decoration: none;
    color: #0c91f8;
}

.login_box_login input {
    padding: 8px;
    width: 90%;
    border: none;
    border-bottom: 1px solid #898989;
    background: transparent;
    margin: 10px 0;
    outline:none;
    color: #191919;
    border-radius: 0;
    font-size: 16px;
}

.login_box_login button {
    border: none;
    padding: 11px 40px;
    border-radius: 5px;
    background: #0066ff;
    outline: none;
    color: ghostwhite;
    font-size: 17px;
    font-weight: 300;
    -webkit-transition: all 150ms ease;
    -moz-transition: all 150ms ease;
    -ms-transition: all 150ms ease;
    -o-transition: all 150ms ease;
    transition: all 150ms ease;
}
.login_box_login button:hover {
    background: #007cff;
}

#login_login {
    width: 100%;
}

.login-msg-center {
    margin-top: 10px;
    font-size: 16px;
}

.alert h4 {
    color: inherit;
    padding-top: 5px;
}
/*loading page*/


/*admin mentorado*/

#modal_cadastrar_mentorado label{
    margin-top: 10px;
    text-align: right;
}

#img_mentorado{
    max-width: 200px;
    max-height: 200px;
    border: 2px solid #818081a6;
}
/*admin mentorado*/

/*admin mentor*/

#modal_cadastrar_mentor label{
    margin-top: 10px;
    text-align: right;
}

#img_mentor{
    max-width: 200px;
    max-height: 200px;
    border: 2px solid #818081a6;
}
/*admin mentor*/

/*Dasboard mentorado*/
@media only screen and (max-width: 500px){

    .horario-atividade.responsive{
        display: none;
    }

    .span_mentorias.horario{
        display: block!important;
        text-align: center;
        margin: 10px;
    }

}
/*Dasboard mentorado*/

.aviso-final {
    width: 100%;
    height: 25px;
    background-color: #BC204B;
    color: white;
    font-size: 16px;
    text-align: center;
}

.aviso-final-admin{
    position: relative;
    top: 23px;
}

.aviso-final-mentor{
    position: relative;
    top: 28px;
}

.botao-avaliar{
    text-align: center;
    position: relative;
    margin: 32px 0 -32px;
}


.comentario-avaliacao-admin{
    min-height: 50px;
    width: 80%;
    padding: 4px;
    margin-left: 10%;
}

.relatorios-label-status{
    padding: 5px;
    font-size: 13px;
    min-width:100% !important;
}

.relatorios-label-status-num{
    margin-top: -3px;
    margin-left: 10px;
    background: white;
    color: black;
}
.fc-event .fc-time {
    float: left;
    text-align: left;
    color: #fff;
    font-size: 10px;
    font-weight: 600;
    padding-right: 0px;
    width: 100%;
}

.fc-event .fc-title {
    text-align: left;
    float: left;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    text-align: center!important;
    width: 100%!important;
}

.modal .modal-content{
    overflow:hidden;
}
.modal-body{
    overflow-y:scroll;
}

.profile-title {
    text-align: center;
    font-size: 20px;
    margin: 15px;
}

@media (min-width: 768px) {
    .modal-dialog {
        width: 80%;
        margin: 10px auto;
        max-width: 1200px;
    }

    #block_heeader{
        height: 105px!important;
    }
}


@media screen and (min-width: 361px) and (max-width: 768px) {
    #block_heeader{
        height: 50px!important
    }
}

@media screen and  (max-width: 361px) {
    #block_heeader{
        height: 50px!important;
    }
}

@media screen and  (max-width: 1190px) {

}

.img-circle, .widget .widget-icon, .dropdown img, .dropdown a img, .nav.navbar-nav-custom > li > a > img {
    border-radius: 8px !important;
}

/*

.page-quick-sidebar {
    z-index: 10499;
    height: 100%;
    background: #353c48!important;
}

.page-quick-sidebar-wrapper-left-fade {
    transition: left .3s;
    opacity: 0.2;
    position: fixed;
    top: 0px;
    border: 0;
    outline: none;
    z-index: 0;
    height: 100%;
    display: none;
}

.page-quick-sidebar-wrapper {
    transition: right .3s;
    z-index: 10500;
    position: fixed;
    top: 0;
    bottom: 0;
    width: 320px;
    right: -320px;
    overflow: hidden;
    color: #99a8b5;
    background: #21282e;
}


.page-quick-sidebar-wrapper {
    background: #728598;
}
.page-quick-sidebar-wrapper-left {
    transition: left .3s;
    z-index: 10501;
    margin-top: 0px;
    position: fixed;
    top: 0;
    bottom: 0;
    width: 240px;
    left: -240px;
    overflow: hidden;
    color: #99a8b5;
    background: #21282e;
}




.page-quick-sidebar-open .page-quick-sidebar-wrapper-left {
    left: 0px;
}
.page-quick-sidebar-open .page-quick-sidebar-wrapper {
    transition: right .3s;
    right: 0;
}


*/


#navbar-menu {
    width: 100%;
    max-width: 100%;
    display: block !important;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
    max-height: 50px;
    /* overflow: auto; */
}

#horizontal-menu-collapse {
    max-width: 980px;
    margin-right: auto;
    margin-left: auto;
    max-height: 55px;
    overflow: hidden!important;
    text-align: center;
}

/* Menu horizontal (admin/gestor): submenu abre ao passar o mouse */
@media (min-width: 769px) {
    /* abre o submenu ao passar o mouse no item ou no proprio submenu */
    #horizontal-menu-collapse .navbar-nav.menu-hover > li.dropdown:hover > .dropdown-menu {
        display: block;
    }

    /* sem vao entre o item e o submenu: evita o hover "cair" e fechar o menu */
    #horizontal-menu-collapse .navbar-nav.menu-hover > li.dropdown > .dropdown-menu {
        margin-top: 0;
        border-radius: 8px;
    }

    /* mantem o item destacado so enquanto o mouse estiver nele ou no submenu */
    #horizontal-menu-collapse .navbar-nav.menu-hover > li.dropdown:hover > a {
        background-color: var(--primary-hover);
    }

    /* nao deixa a cor de fundo "presa" no item depois do clique (foco) */
    #horizontal-menu-collapse .navbar-nav.menu-hover > li > a:focus {
        background-color: transparent;
    }
}


.nav.navbar-nav-custom>li>a>img {
    width: 45px;
    height: 45px;
    border: 2px solid #fff;
    border-radius: 6px;
    vertical-align: top;
}

.logo {
    max-height: 50px!important;
    margin-top: 5px;
    margin-left: 4px!important;
    cursor: pointer;
}

.block-title {
    border-bottom: none;
    font-weight: bold;
    text-align: center;
    font-size: 14px;
    padding: 6px 8px 6px;
    margin: 0px -10px 5px;
    background-color: #ffffff!important;
    border-radius: 16px;
}

.block-user-profile{
    min-height: 100px;
    margin-top: 0px;
    margin-bottom: 5px;
}

.block-perfil-texto{
    font-size: 14px;
    text-align:justify;
    margin-bottom: 20px;

}

.badge {
    background: white;
    font-size:10px;
}
#sidebar {
    height: 100%;
    background: #0282c6;

}


.btn-info:hover {
    background-color: #45a1de;
    border-color: #45a1de;
    color: #ffffff;
}

.block.full {
    padding: 15px 15px;
}

.sidebar-nav {
    list-style: none;
    margin: 0;
    padding: 0px 0 0;
    margin-top:60px;
}

.sidebar-nav li{

}
#sidebar-img {
    background: #ffffff;
    width: 200px;
    height: 60px;
    border-radius: 0px;
    padding: 10px 30px;
}

.sidebar-nav li a {
    /* text-transform: uppercase; */
    color: #0099DB !important;
}

#sidebar .sidebar-nav li a {
    /* text-transform: uppercase; */
    color: #ffffff !important;
    font-size: 20px;
    margin-top: 12px;
}

.button-menu a i {
    font-size: 22px!important;
    margin-top: 0px;
    padding: 10px;
}




.block-profile .image-thumb {
    /* border-radius: 50%; */
    height: 145px;
    margin: 0px auto 10px;
    overflow: hidden;
    width: 145px;
    border-radius: 6px;
}

.block-profile .profile-name {
    margin: 0px;
}

.block-profile  .profile-value-time {
    margin-top: 15px;
    font-size: 20px;
}

.block-profile  .profile-value-time .profile-time {
    background: #0099db;
    color: #fff;
    padding: 5px 15px;
    display: inline-block;
    border-radius: 30px;
    margin-bottom: 10px;
}

.block-profile .info-title {
    font-size: 25px;
    font-weight: 400;
    color: #716d71;
    /* margin-left: 10px; */
}

.block-profile  section .description {
    width: 160px;
    font-size: 20px;
    color: #073087;
    font-weight: 400;
}
.block-profile>section {
    display: flex;
    padding-bottom: 10px;
}
.block-profile  section .description-info {
    font-size: 20px;
    font-weight: 400;
    margin-left: 10px;
    color: #716d71;
    text-align: justify;
}



.block-mentor-title{
    font-size: 13px;
    font-weight: 600;
    margin: -20px -20px 0px;
    border-radius: 5px;
}

.block-mentors .image-thumb {
    margin: auto;
    overflow: hidden;
    margin-left: 25%;

}



.block_busca img {
    height: 65px;
    width: 65px;
    border-radius: 6px;
    margin-right: 5px;
}




.block.block-mentors {
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    height: 240px;
    padding: 10px 15px;
    margin-bottom: 20px;
    border-radius: 8px;
}

.busca_mentor_nome {
    font-size: 15px;
    font-weight: 600;
    color: #4c4c4c;
}


.mail-box.linha-azul {
    border-radius: 8px!important;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    display: block;
}
.table-inbox {
    border: 2px solid #e7e7e7;
    margin-bottom: 0;
    border-radius: 6px;
    display: block;
}

.modal-header {
    padding: 12px 12px 12px;
    border-bottom: 1px solid #eeeeee;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    background: #FFFFFF;
    min-height: 50px;
}

.modal-lg {
    width: 98%!important;
}

.table thead > tr > th {
    font-size: 12px;
    font-weight: 500;
    background-color: #ffffff!important;
}

.note-group-select-from-files{
    display:none;
}

.note-modal .close{
    display:none;
}

.panel-body {
    min-height: 300px;
}

.note-editable {
    min-height: 400px;
}

.mais-feed{
    text-align: center;
    color: #00338D;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 15px;
}

.div-feed {
    color: #2d2d2d;
    cursor: pointer;
}

.div-feed-text{
    max-height: 56px;
    overflow: hidden;
    color: #505254;
    text-align: justify;
}
.div-feed-data-completa {
    font-size: 13px;
    margin-top: 8px;
    text-align: right;
    color: #5a5a5a;
}
.div-feed-hr{
    margin-top: 10px;
    margin-bottom: 10px;
}

.block-news{
    max-height: 400px;
    overflow: auto;
}

.div-feed-data{
    color: #868686;
    font-size:12px;
}
.div-feed-data-completa{
    font-size: 13px;
}

.div-feed h4{
    margin: 5px 0px 5px 0px;
}

.modal-header-feed {
    padding: 12px 12px 0px;
    border-bottom: 1px solid #ffffff;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    background: #FFFFFF;
}

#modal_recados_titles {
    text-align: center;
    color: #00338D;
    margin: 0px 10px 10px 10px;
    font-weight: 600;
}

#ativ-arq{
    margin-bottom: 10px;
    padding: 0px;
}

#arquivos_div{
    padding: 0px;
}

.conteudo-post {
    color: #4b5661;
    font-family: Roboto, sans-serif!important;
    font-size: 20px;
    font-weight: 400;
    /*text-align: justify;*/
}

.conteudo-post p{
    /*color: #47525E!important;*/
    font-family: 'Roboto', sans-serif!important;
    font-size: 20px!important;
    font-weight: 400!important;
    line-height: 1.5!important;
    /*text-align: justify!important;*/
    margin-top: 0px!important;
    margin-bottom: 0px!important;
}
.paragrafo-seccao {
    color: #47525E;
    font-family: 'Roboto', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.5;
    /*text-align: justify;*/
    margin-top: 0px;
    margin-bottom: 0px;
}
.paragrafo-seccao p{
    color: #47525E;
    font-family: 'Roboto', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.5;
    /* text-align: justify;*/
    margin-top: 0px;
    margin-bottom: 0px;
}

.paragrafo-seccao img{
    width: 100%;
    max-width: 500px;
    margin-right: auto;
    margin-left: auto;
    display: block;
}
.paragrafo-seccao p img{
    width: 100%;
    max-width: 500px;
    margin-right: auto;
    margin-left: auto;
    display: block;
}
.modal-feed-curti{
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    color: #565656;

    cursor: pointer;
}

.modal-feed-botao-comentar{
    margin-top: 10px!important;
}

.nav.navbar-nav-custom > li > a {
    line-height: 45px;
}

.feed-curti{
    color: #009419;
}
.feed-nao-curti{
    color: #ff3c3c;
}

.feed-seja-primeiro{
    margin-bottom: 10px;
}
.busca_mentor_dado{
    width: 100%;
    margin-top: 5px;
    font-size: 12px;
}

.busca_mentor_badge {
    margin-top: 3px;
    float: left;
    margin-right: 5px;
    margin-bottom: 3px;
}

.fc-row .fc-content-skeleton tbody td, .fc-row .fc-helper-skeleton tbody td {
    border-top: 0;
    cursor: pointer;
}

.table-responsive {

    border: 0px solid #ddd!important;
}

.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus, .dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus, .dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus, .nav .open > a, .nav .open > a:hover, .nav .open > a:focus {

    background-color: #00338D;
}

.btn-sugerir{
    text-transform: uppercase;
    /* float: right; */
    position: absolute;
    right: 20px;
}

.introjs-helperLayer.introjs-fixedTooltip {
    background-color: rgb(255 255 255 / 63%);
}

.btn-intro-encontrar{
    position: absolute;right: 25px;top: 12px;
}



.div-feed img{
    max-height: 160px;
    max-width: 180px;
    width: 90%;
    margin-top: 5px;
    border-radius: 8px;
}

.div-feed-titulo{
    height: 66px;
    overflow: hidden;
    font-weight: 600;
    font-size: 16px;
    color: #4c4c4c;
    text-align: center;

}

.div-feed-img{
    text-align: center;
    height: 170px;
}

.div-feed-bagde{

    font-size: 14px;
    height: 26px;
}
.div-feed-info{

}
.div-feed-block{
    height: 300px;
    padding: 5px 10px 5px;
}

@media screen and (min-width: 600px) and (max-width: 990px) {
    .div-feed-img{
        float: left;
        width: 30%;
        margin-right: 15px;
    }

    .div-feed-bagde {
        font-size: 14px;
        height: 26px;
        float: left;
    }

    .div-feed img {
        height: 160px;
        width: 100%;
        max-width: 200px;

    }
    .div-feed-info{
        width: 70%;
        margin-top: 25px;
        margin-left: 30%;
    }

    .div-feed-block{
        height: 220px;
        padding: 5px 10px 5px;
    }

    .div-feed-titulo {
        height: 100px;
        overflow: hidden;
        font-weight: 600;
        font-size: 16px;
        color: #4c4c4c;
    }
}

.select2-container{
    border:0px;
}

a.select2-choice {
    margin-top: -6px;
    margin-left: -10px;
    border: 1px solid #98a9bd;
    height: 35px;
}


element.style {
}

.select2-drop-active {
    margin-left: -2px;
}

p, .table, .alert, .carousel {
    margin-bottom: 10px;
}


.avatar_imagem {
    height: 80px;
    width: 80px;
    border-radius: 8px;
    border: 2px solid #eef1f5;
    margin-right: 5px;
    float: left;
    margin-right: 15px;
}

.swal2-show {
    z-index: 100000000000000!important;
}

.swal2-container.swal2-center {
    align-items: center;
    z-index: 1000000000000000000!important;
}

.view-message{
    width: 32%;
}

.media-hover:hover{
    background: #ededed;
}

.media-atividades{
    padding: 15px 20px 10px 20px;
    margin-bottom: 5px;
    cursor: pointer;
    border: 1px solid #e5e5e5;
    MARGIN: 10px 15px;
    MARGIN-TOP: 10PX!important;
}



.paragrafo-seccao-atividade p {
    color: #47525E;
    font-family: 'Roboto', sans-serif;
    font-size: 16px!important;
    font-weight: 400;
    line-height: 1.5;
    /* text-align: justify; */
    margin-top: 0px;
    margin-bottom: 0px;
}

.conteudo-post-atividade p {
    /* color: #47525E!important; */
    font-family: 'Roboto', sans-serif!important;
    font-size: 16px!important;
    font-weight: 400!important;
    line-height: 1.5!important;
    /* text-align: justify!important; */
    margin-top: 0px!important;
    margin-bottom: 0px!important;
}

.note-editing-area{
    min-height: 150px;
}

.nav.navbar-nav-custom > li:not(.topbar-icon) > a:hover > i, .nav.navbar-nav-custom > li:not(.topbar-icon) > a:focus > i {
    color: white!important;
}

.nav.navbar-nav-custom > li:not(.topbar-icon).open > a, .nav.navbar-nav-custom > li:not(.topbar-icon) > a:hover, .nav.navbar-nav-custom > li:not(.topbar-icon) > a:focus {
    background-color: #1A2C47;
    color: #ffffff!important;
}

.modal-title .text-success{
    color: #27ae60!important;
    font-weight: 700!important;
}

.inbox-head {
    padding: 15px 10px 0px 10px!important;
}

.btn-compose{
    color: #fff;
    background-color: #00338D;
    border-color: #00338D;
}

.btn-compose:hover {
    background-color: #003faf;
    color: #FFFFFF;
}

.pagination>li>a, .pagination>li>span {
    padding: 0px 6px;
}

.botoes-mentorias {
    margin-top: 10px;
    min-height: 30px;
}

/* Mentoria em grupo — polimento sutil dos cards (mentor e mentee)
   Reutiliza .block_mentorias_cabecalho existente; apenas adiciona utilitários. */
.block .bmc-card {
    padding: 12px 14px 10px;
    margin-bottom: 12px;
    background: #ffffff;
    border: 1px solid #eef1f5;
    border-left: 1px solid #eef1f5 !important;
    border-radius: 8px;
    transition: box-shadow .18s ease, border-color .18s ease;
}
.block .bmc-card::before,
.block .bmc-card::after {
    content: none !important;
    display: none !important;
}
.block .bmc-card:hover {
    box-shadow: 0 4px 14px rgba(20, 30, 50, 0.06);
    border-color: #dde3eb;
}

.bmc-titulo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 4px;
}
.bmc-titulo.centro { justify-content: center; text-align: center; }
.bmc-titulo-texto {
    flex: 1 1 auto;
    min-width: 0;
    color: #2d3748;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
    word-break: break-word;
}
.bmc-titulo.centro .bmc-titulo-texto { flex: 0 1 auto; }
.bmc-titulo .badge.bmc-pilar {
    flex: 0 0 auto;
    position: static;
    font-size: 11px;
    padding: 4px 10px;
    border-radius: 999px;
    color: #fff;
    font-weight: 600;
    letter-spacing: .3px;
    text-transform: uppercase;
    max-width: 50%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.botoes-mentorias.direita {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 6px;
}
.botoes-mentorias.direita .btn { margin: 0; float: none; }

.bmc-status-label {
    display: inline-block;
    font-weight: 600;
}

@media (max-width: 575px) {
    .bmc-titulo { justify-content: center; text-align: center; }
    .botoes-mentorias.direita { justify-content: stretch; }
    .botoes-mentorias.direita .btn { flex: 1 1 auto; text-align: center; }
}




.badge.badge-primary{
    color: #0091da;
    font-weight: 700;
    font-size: 12px;
}
.badge{
    max-width: 220px;
}
/*
*
* Mural
 */

.mural-recado-div{
    margin-top: 20px;
    padding: 0px 15px 10px 15px;
    border-bottom: 2px solid #e8e8e8;
}

.perfil-link-editar{
    text-decoration: underline;
}

div#page-content {
    padding-bottom: 20px;
}



.dashboarad-option {
    display: flex;
    border: 1px solid #0082c7;
    padding: 5px;
    text-align: center;
    color: #0082c7;
    cursor: pointer;
    font-size: 22px !important;
    max-width: 200px;
    margin: auto;
    padding-top: 10px;
    width: 160px;
    margin-top:5px;
    margin-bottom:5px;
    min-height: 43px!important;
}

.dashboarad-option:hover .fa {
    opacity: 0.7;
}

.dashboarad-option i {
    height: 20px;
    margin-right: 0px;
    font-size: 14px;
    margin-top: 3px;
}

.dashboarad-option h5{
    margin: 0px;
    margin-left: 5px;
    text-align: start;
    font-size:12px;
}























/*
*
* list-days
*
 */

.list-days-info {
    text-align: center;
    font-size: 18px;
}

.list-days {
    list-style: none;
    /* text-align: center; */
    padding-left: 0px;
}

.list-day-div {
    display: flex;
}

.list-day-div {
    display: flex;
    min-height: 40px;
}

.list-day-div .list-day {
    font-size: 20px;
    margin-right: 15px;
    width: 160px;
}

.list-day-div .list-btn-day {
    margin-top: 5px;
}

.div-list {
    margin-left: auto;
    margin-right: auto;
    display: table;
    width: 300px;
}

.list-link {
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    /* margin-top: 7px; */
    /* height: 34px; */
}

.form-group textarea.form-control {
    max-width: 100%;
}

.block-user-profile {
    min-height: 160px;
    margin-bottom: 25px;
}

.text-description {
    text-align: justify;
}


/*
*
* Calendário
*
 */


/****
*
* CalendÃ¡rio
*
 */

.fc-widget-header {
    background-image: none;
    filter: none;
    background-color: #eee;
    text-transform: uppercase;
    font-weight: 300;
}

.fc button {
    color: #fff;
    background-color: #691e40;
    border-color: #691e40;
    font-size: 12px!important;
    border-radius: 2px;
    border-width: 0 !important;
    overflow: hidden;
    position: relative;
    user-select: none;
    padding: 6px 6px 6px 6px!important;
    outline: none !important;
    line-height: 1.44;
    display: inline-block;
    margin-bottom: 0;
    text-align: center;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    height: 30px!important;
}

.fc .fc-toolbar>*> :first-child {
    font-size: 26px;
    font-weight: 600;
}

.fc-state-active,
.fc-state-down {
    background-color: #ccc !important;
    background-color: #efd3ac !important;
}

.fc-state-disabled,
.fc-state-down {
    color: #333 !important;
    background-color: #efd3ac !important;
}

.fc-state-hover {
    color: #FFFFFF !important;
    background-color: #efd3ac !important;
}

.fc-event .fc-time {
    /* float: left; */
    text-align: center;
    color: #fff;
    font-size: 13px;
    font-weight: 500;
    padding-right: 5px;
}



.fc-event,
.fc-event-dot {
    /* background-color: #375a2f; */
    /* border-color: #FF5B00; */
    color: #fff;
    background-color: #5cb85c;
    border-color: #4cae4c;
}

button.fc-agendaWeek-button.fc-button.fc-state-default {
    font-size: 13px;
}




/*

Calendário
 */

.eventCalendar-wrap .arrow {
    text-decoration: none;
    color: #fff;
    padding: 0 5px;
    line-height: 28px;
    top: 9px;
    padding: 8px 10px;
}

.eventCalendar-wrap .arrow.prev {}

.eventCalendar-wrap .arrow:hover {
    opacity: 0.7;
}

.eventCalendar-wrap .arrow span {
    height: 0;
    width: 0;
    font-size: 0;
    line-height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 6px solid #fff;
    float: left;
    text-indent: -5000px;
}

.eventCalendar-wrap .arrow.prev span {
    border-left-width: 0;
    border-right: 6px solid #fff;
}

.eventsCalendar-slider {}

.eventsCalendar-monthWrap {
    border-radius: 5px;
    top: 10px;
    left: 0px;
}

.eventsCalendar-currentTitle .monthTitle {
    font-size: 110%;
    text-decoration: none;
    font-weight: bold;
    color: #fff;
    margin-right: 40px;
}

.eventsCalendar-daysList {
    zoom: 1;
    padding: 0;
    width: 100%;
}

.eventsCalendar-daysList.showAsWeek {
    margin: 10px 5px;
    width: auto;
    border: solid 1px #BCBCBC;
    border-bottom-width: 0;
    border-radius: 0;
    background-color: #CCCCCC;
    background-image: linear-gradient(top, #EEEEEE 42%, #CCCCCC 71%);
    background-image: -o-linear-gradient(top, #EEEEEE 42%, #CCCCCC 71%);
    background-image: -moz-linear-gradient(top, #EEEEEE 42%, #CCCCCC 71%);
    background-image: -webkit-linear-gradient(top, #EEEEEE 42%, #CCCCCC 71%);
    background-image: -ms-linear-gradient(top, #EEEEEE 42%, #CCCCCC 71%);
    background-image: -webkit-gradient( linear, left top, left bottom, color-stop(0.42, #EEEEEE), color-stop(0.71, #CCCCCC));
}

.eventsCalendar-daysList:before,
.eventsCalendar-daysList:after {
    content: "";
    display: table;
}

.eventsCalendar-daysList:after {
    clear: both;
}

.eventsCalendar-day-header {
    text-transform: lowercase;
    text-align: center;
    font-size: 10px;
    border-bottom: solid 1px #BCBCBC;
}

.eventsCalendar-daysList.showAsWeek li.empty {}

.eventsCalendar-day a {
    text-decoration: none;
    font-size: 10px;
    color: #424242;
}

.eventsCalendar-day {
    border-left: solid 1px #BCBCBC;
}

.eventsCalendar-day a {
    border: solid 1px #BCBCBC;
    border-width: 0 1px 1px 0;
}

.showAsWeek .eventsCalendar-day {
    border-left-width: 0;
}

.eventsCalendar-day a:hover {
    background-color: #E4E4E4;
    /*	box-shadow:inset 5px 5px 10px #C1C1C1;
        text-shadow: 2px 2px 2px #C1C1C1;*/
}

.eventsCalendar-daysList li.today a {
    color: #fff;
    background: #aaa;
    /*	box-shadow:inset 5px 5px 10px #777;
        text-shadow: 2px 2px 2px #777;*/
}

li.eventsCalendar-day.today a:hover {
    background-color: #ccc;
    /*box-shadow:inset 5px 5px 10px #999;*/
}

.eventsCalendar-daysList li.dayWithEvents a {
    background: #0099DB;
    /*box-shadow:inset 5px 5px 10px #698B10;
    text-shadow: 2px 2px 2px #698B10;*/
    color: #fff;
}

li.eventsCalendar-day.dayWithEvents a:hover {
    background-color: #C2D374;
    /*box-shadow:inset 5px 5px 10px #89B814;
    text-shadow: 2px 2px 2px #89B814;*/
}

.eventsCalendar-daysList li.current a {
    color: #fff;
    background: #2081bb;
    box-shadow: inset 5px 5px 10px #21537a;
    text-shadow: 2px 2px 2px #216B7A;
}

li.eventsCalendar-day.current a:hover {
    background-color: #79BDCC;
    box-shadow: inset 5px 5px 10px #449FB2;
    text-shadow: 2px 2px 2px #449FB2;
}

.eventsCalendar-loading {
    border-radius: 4px;
    margin: 5px auto;
    padding: 0 10px;
    background-color: #ccc;
    color: #fff;
    text-align: center;
    font-weight: bold;
    box-shadow: 0 0 10px #ccc;
    text-shadow: 0 0 3px #aaa;
    position: absolute;
    z-index: 4;
    top: 25px;
    left: 5px;
}

.eventsCalendar-loading.error {
    background-color: red;
}

.eventsCalendar-list-wrap {
    min-height: 100px;
    position: relative;
}

.eventsCalendar-list-content.scrollable {
    height: 100px;
    overflow-y: auto;
    margin: 0 5px 5px 0;
}

.eventsCalendar-list {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.eventsCalendar-list li {
    padding: 0 5px 10px;
    margin: 0;
    clear: both;
}

.eventsCalendar-list li .eventTitle {
    display: flex;
    clear: both;
    font-weight: bold;
    text-decoration: none;
}

.eventsCalendar-list li a.eventTitle {
    color: #0E8EAB;
}

.eventsCalendar-list li a.eventTitle:hover {
    text-decoration: underline;
}

.eventsCalendar-list li .eventDesc {
    clear: both;
    margin: 0 0 5px 0;
    font-size: 80%;
    line-height: 1.2em;
}

.eventsCalendar-list .eventsCalendar-noEvents {
    font-size: 120%;
    border-radius: 4px;
    margin: 5px;
    padding: 15px 5px 5px 5px;
    background-color: #ccc;
    color: #fff;
    text-align: center;
    font-weight: bold;
    box-shadow: 0 0 10px #ccc;
    text-shadow: 0 0 3px #aaa;
}

.eventCalendar-wrap {
    margin-bottom: 20px;
    background-color: #fff;
    color: #807E7E;
    border-top: 2px solid #0099db;
    border-bottom: 2px solid #db0000;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    border-radius: 8px;
}

.eventsCalendar-list-wrap {
    padding: 0px 10px;
    width: 100% !important;
}

.eventsCalendar-list li time em {
    float: left;
    width: 85px;
    padding: 5px 5px;
    font-style: normal;
}

.eventsCalendar-subtitle {
    text-transform: uppercase;
    line-height: 1.2;
    padding-top: 15px;
}

.eventsCalendar-subtitle span {
    font-size: 16px;
    display: block;
    text-align: center;
}

.eventsCalendar-list {
    opacity: 1;
    left: 0px;
    height: auto;
    display: block;
}

.eventsCalendar-list li {
    display: inline-block;
}

.eventsCalendar-list li a {
    background: #fff;
    padding: 12px 5px;
    border: 1px solid #ddd;
    border-radius: 5px;
    text-decoration: none;
    text-align: center;
    width: 100px;
    margin-left: 5px;
    font-size: 12px;
    display: block;
    float: left;
}

.eventsCalendar-list li {
    padding: 0 5px 10px;
    margin: 0 0 0px;
    clear: both;
    font-size: 16px;
    display: table;
    width: 100%;
}

em {
    font-size: 13px;
    background: #fff;
    padding: 5px 0;
    border: 1px solid #ddd;
    border-radius: 5px;
    text-decoration: none;
    text-align: center;
    width: 25%;
}

.eventsCalendar-list li time small {
    background: #fff;
    padding: 5px 0;
    border: 1px solid #ddd;
    border-radius: 5px;
    text-decoration: none;
    text-align: center;
    width: 61px;
    font-size: 16px;
    color: #42b541;
    float: left;
    margin: 0 0 0 3px;
}

.eventsCalendar-list li time {
    font-size: 30px;
    line-height: 30px;
    width: 150px;
    float: left;
}

.pv-calendar .pv-title {
    font-size: 1.3rem;
    text-transform: uppercase;
}

.eventsCalendar-monthWrap {
    top: 0;
}

.eventsCalendar-currentTitle {
    outline: none;
    line-height: 25px;
}

.eventsCalendar-currentTitle .monthTitle {
    margin: 0;
    padding: 10px 0;
    color: #515b5d;
}

.eventCalendar-wrap .arrow {
    top: 13px;
}

.eventCalendar-wrap .arrow span {
    border-left: 6px solid #515b5d;
}

.eventCalendar-wrap .arrow.prev span {
    border-right: 6px solid #515b5d;
}

.eventCalendar-wrap .next {
    right: 0;
}

.eventsCalendar-daysList.showDayNames.showAsWeek {
    border-radius: 0;
    width: 100%;
    margin: 0;
    border: none;
    background: #f6f6f6;
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.8);
}

.eventsCalendar-daysList.showAsWeek li {
    text-transform: uppercase;
    color: #515b5d;
    font-weight: bold;
    background: white;
    line-height: 26px;
    height: 39px;
    margin: 0;
}

.eventsCalendar-daysList.showAsWeek li.empty {
    background-color: transparent;
    border: 1px solid #ddd;
    min-height: 39px;
}

.eventsCalendar-day-header {
    padding: 5px 0;
}

.eventsCalendar-day {
    border-left: solid 1px #ddd;
}

.showAsWeek .eventsCalendar-day a {
    border: solid 1px #ddd;
    /* border-color: #ddd #ddd #ddd #ddd; */
    font-size: 12px;
    padding: 5px 0;
    cursor: default;
    line-height: 27px;
    background: #ebebeb;
}

.showAsWeek .eventsCalendar-day.today a {
    cursor: pointer;
    background: #0099DB;
}

li.eventsCalendar-day.today a:hover {
    background-color: #C2D374;
}

.header-boder{

    border-bottom: 1px solid #ffffff;
}


.block-sessao-status{
    font-size: 16px;
    display: block;
    width: 250px;
    text-overflow: ellipsis;
    word-break: break-word;
    overflow: hidden;
    height: 20px;
}

.sidebar-lateral{
    position: fixed!important;
    top: 0px!important;
}

figure img{
    border-radius: 8px;
}

.modal-sm {
    width: 300px;
}

.mural-altura{
    max-height: 400px;
    display: block;
    overflow: auto;
}

.badge {
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
    opacity: 0.8;
    filter: saturate(80%);
}

#profileImage{
    border-radius: 8px;
    margin-top: 10px;
}

.btnmodify-6, .btnmodify-7, .btnmodify-8, .btnmodify-9, .btnmodify-10, .btnmodify-11, .btnmodify-12{
    width: 20px;
    overflow: clip;
    transition: width 1s;
}

.btnmodify-6:hover {
    width: 60px;
}

.btnmodify-7:hover {
    width: 70px;
}

.btnmodify-8:hover {
    width: 80px;
}

.btnmodify-9:hover {
    width: 90px;
}

.btnmodify-10:hover {
    width: 100px;
}

.btnmodify-11:hover {
    width: 110px;
}

.btnmodify-12:hover {
    width: 120px;
}

.switch_div {
    /*position: absolute;*/
    top: 0; right: 0; bottom: 0; left: 0;
    height: 40px;
    margin: auto;
    /*text-align: center;*/
}

/** Switch
 -------------------------------------*/

.switch input {
    position: absolute;
    opacity: 0;
}

/**
 * 1. Adjust this to size
 */

.switch {
    display: inline-block;
    font-size: 20px; /* 1 */
    height: 1em;
    width: 2em;
    background: #BDB9A6;
    border-radius: 1em;
}

.switch div {
    height: 1em;
    width: 1em;
    border-radius: 1em;
    background: #FFF;
    box-shadow: 0 0.1em 0.3em rgba(0,0,0,0.3);
    -webkit-transition: all 300ms;
    -moz-transition: all 300ms;
    transition: all 300ms;
}

.switch input:checked + div {
    -webkit-transform: translate3d(100%, 0, 0);
    -moz-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
}

.switch + input:checked {
    background: #bada55;
}

.table>caption+thead>tr:first-child>td, .table>caption+thead>tr:first-child>th, .table>colgroup+thead>tr:first-child>td, .table>colgroup+thead>tr:first-child>th, .table>thead:first-child>tr:first-child>td, .table>thead:first-child>tr:first-child>th {
    border-top: 0;
    text-transform: uppercase;
}

.icon_login {
    margin-top: 10px;
    color: var(--primary);
    font-size: 20px;
    padding: 0 20px 0 0;
    transition: 0.3s;
    cursor: pointer;
}

.icon_login:hover {
    color: var(--primary-hover);
}

.bloco{
    position: relative;
    padding: 5px 10px;
    margin: 5px auto;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
}

.bloco input[type=radio]{
    display: none;
}

.bloco label{
    float: left;
    font-family: "Source Sans Pro";
    font-size: 14px;
    width: calc(100% / 3);
    padding: 10px;
    cursor: pointer;
    text-align: center;
}

.lang_nav {
    font-size: 10px;
    color: #8a7575;
    transition: 0.3s;
}

.lang_nav:hover {
    color: var(--primary-hover);
}

.lang-icon {
    width: 20px;
}

.croppie-container {
    width: 100%;
    height: auto;
}


.mail-box{
    height: auto;
}
.mail-box .lg-side {
    height: auto;
}

.span-diarioBordo {
    color: red;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 15px;
    margin: 20px auto;
}

.label-custom-number {
    color: #9d9d9d;
}

.input-number {
    border: none;
    border-bottom: 2px solid #9d9d9d;
    text-align: center;
}

.password-container {
    position: relative;
}

#login-password {
    padding-right: 30px;
}

#mostrarSenha {
    transition: .3s;
    position: absolute;
    top: 50%;
    right: 30px;
    font-size: 15px;
    transform: translateY(-80%);
    cursor: pointer;
}

#mostrarSenha:hover {
    color: var(--primary-hover);
}


.footer_client_logo {
    width: 200px;
    margin-top: 10px;
    margin-bottom: 6px;
}

.btn-group-xs>.btn, .btn-xs {
    margin-left: 2px!important;
}

footer {
    color: var(--rodape-text-color);!important;
}

footer a {
    color: var(--rodape-text-color);!important;
}
footer a:hover {
    color: var(--rodape-hover);!important;
}

/* Rodapé simplificado (somente copyright), cores invertidas em relação ao rodapé padrão */
footer.rodape-simples {
    background: var(--rodape-text-color) !important;
    color: var(--rodape-bg) !important;
    border-top: 1px solid var(--rodape-bg);
    box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.4);
    height: auto;
    padding: 10px 0;
}
footer.rodape-simples a {
    color: var(--rodape-bg) !important;
}
footer.rodape-simples a:hover {
    color: var(--rodape-hover) !important;
}
footer.rodape-simples .rodape-coracao {
    color: #e0245e;
    margin: 0 2px;
}

.wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

.steps {
    margin: 0 auto;
}

.step {
    display: flex;
    position: relative;
}
.step:after {
    content: "";
    position: absolute;
    left: 15px;
    top: 32px;
    height: 0;
    background-color: #c5c3c3;
}

.step-line:after {
    width: 2px;
}

.step-primary:after {
    background-color: var(--primary);
}
.step-secondary:after {
    background-color: #372e2e;
}
.step-tertiary:after {
    background-color: #c5c3c3;
}
.step-quartiary:after {
    background-color: rgb(43, 161, 240);
}

.step-completed:after {
    background-color: #1b6b11 !important;
}
.step .info {
    margin: 4px 0 6px;
    text-wrap: nowrap;
}
.step .title {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 15px;
    color: black;
    cursor: pointer;
}
.step .text {
    font-size: 12px;
    color: rgba(0, 0, 0, 0.7);
    padding-bottom: 0;
    margin: 0;
}
.step:not(:last-child):after {
    height: 100%;
}

.step .number {
    width: 32px;
    height: 32px;
    background-color: transparent;
    border-radius: 50%;
    border: 2px solid #c5c3c3;
    flex-shrink: 0;
    display: flex;
    cursor: pointer;
    justify-content: center;
    align-items: center;
    color: black;
    font-size: 15px;
    font-weight: 600;
    margin-right: 25px;
    background-color: white;
}
.step .number.step-primary {
    border: 2px solid var(--primary);
}
.step .number.step-secondary {
    border: 2px solid #372e2e;
}
.step .number.step-tertiary {
    border: 2px solid #c5c3c3;
}
.step .number.step-quartiary {
    border: 2px solid rgb(43, 161, 240);
}
.step .number.step-completed {
    background-color: #34e51d !important;
    border: 2px solid #1b6b11 !important;
    color: #FFFFFF !important;
}
.step .number svg {
    width: 16px;
    height: 16px;
    -o-object-fit: contain;
    object-fit: contain;
}
.step .number svg path {
    fill: white;
}

.loading-wrapper {
    width: 100%;
    padding: 10px;
}

.loading-step,
.loading-substep,
.loading-subsubstep {
    display: flex;
    align-items: center;
    padding: 8px 0;
}

.loading-substep {
    margin-left: 50px;
}

.loading-subsubstep {
    margin-left: 100px;
}

.loading-number {
    min-width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: #ddd;
    margin-right: 16px;
    position: relative;
}

.loading-title {
    flex-grow: 1;
    height: 2.4rem;
    background-color: #ddd;
    position: relative;
    overflow: hidden;
}

.loading-textarea {
    flex-grow: 1;
    height: 35rem;
    background-color: #ddd;
    position: relative;
    overflow: hidden;
}

.loading-title::after, .loading-textarea::after {
    content: '';
    position: absolute;
    top: 0;
    right: -150px;
    bottom: 0;
    left: -150px;
    background-image: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.7), transparent);
    animation: loading 1.5s infinite linear;
}

@keyframes loading {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(100%);
    }
}

.placeholder-line {
    height: 4px;
    background: #3498db;
    width: 100%;
    margin: 10px 0;
}

.sortable-ghost {
    height: 4px;
    background: #3498db;
    width: 100%;
    margin: 10px 0;
    border: none; /* Remover borda, se houver */
    box-shadow: none; /* Remover sombra, se houver */
    overflow: hidden; /* Garante que o conteúdo interno não ultrapasse a barra */
}

.sortable-ghost * {
    height: 0 !important;
    opacity: 0 !important;
}

.sortable-drag{
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    opacity: 1;
}

.modulo-timeline {
    position: relative;
    max-width: 1200px;
    margin: 25px auto;
}

.modulo-container {
    padding: 10px 50px;
    position: relative;
    width: 50%;
}

.modulo-text-box {
    padding: 20px 30px;
    background: #fff;
    position: relative;
    border-radius: 6px;
    font-size: 15px;
    box-shadow: 10px 10px 50px 0px rgba(0,0,0,0.2);
}

.modulo-left-container {
    left: 0;
}

.modulo-right-container{
    left: 50%;
}

.modulo-container .modulo-number {
    position: absolute;
    width: 40px;
    border-radius: 50%;
    right: -20px;
    top: 32px;
    z-index: 10;
    background: #fff;
    font-size: 15px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    box-shadow: 10px 10px 50px 0px rgba(0,0,0,0.2);
    border: 3px solid var(--primary);
}

.modulo-number-check {
    background: #72db72 !important;
    border: 3px solid #368714 !important;
    color: #fff !important;
}

.modulo-number-check {
    content: "✓";
}

.modulo-right-container .modulo-number{
    left: -20px;
}

.modulo-timeline::after {
    content: '';
    position: absolute;
    width: 6px;
    height: 100%;
    background: rgba(0, 0, 0, .3);
    top: 0;
    left: 50%;
    border-radius: 6px;
    margin-left: -3px;
    z-index: 9;
}

.modulo-timeline-completed {
    position: absolute;
    width: 6px;
    background: rgba(0, 255, 0);
    top: 0;
    left: 50%;
    border-radius: 6px;
    margin-left: -3px;
    z-index: 9;
}



.modulo-text-box h2 {
    font-weight: 600;
    color: var(--primary);
}

.modulo-text-box small {
    display: inline-block;
    margin-bottom: 15px;
}

.modulo-left-container-arrow {
    height: 0;
    width: 0;
    position: absolute;
    top: 28px;
    z-index: 1;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 15px solid #fff;
    right: -14px;
}

.modulo-right-container-arrow {
    height: 0;
    width: 0;
    position: absolute;
    top: 28px;
    z-index: 1;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-right: 15px solid #fff;
    left: -15px;
}

@media screen and (max-width: 600px) {
    .modulo-timeline {
        margin:  50px auto;
    }

    .modulo-timeline-completed {
        top: 32px;
    }

    .modulo-timeline::after, .modulo-timeline-completed {
        left: 31px !important;
    }

    .modulo-container {
        width: 100%;
        padding-left: 80px;
        padding-right: 25px;
    }

    .modulo-text-box {
        font-size: 13px;
    }

    .modulo-text-box small {
        margin-bottom: 10px;
    }

    .modulo-right-container {
        left: 0;
    }

    .modulo-left-container .modulo-number, .modulo-right-container .modulo-number {
        left: 10px
    }

    .modulo-left-container-arrow, .modulo-right-container-arrow {
        border-right: 15px solid #fff;
        border-left: 0;
        left: -15px;
    }
}

.nav-modulo .active a {
    color: #fff !important;
    background-color: var(--primary) !important;
}

.nav-modulo a:hover {
    color: #fff !important;
    background-color: var(--primary-hover) !important;
}

.modulo-capitulo-card {
    width: 100% !important;
    height: 6rem !important;
    color: var(--primary) !important;
     border: 1px solid #dadada !important;
    /* border-radius: 4px !important; */
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 15px 0 !important;
    /* box-shadow: 4px 4px 4px rgba(0, 0, 0, .1) !important; */
    background: #ffffff;
    /* border-radius: 7px !important; */
}

.modulo-capitulo-card p {
    margin-bottom: 0;
    font-size: 1.4rem;
    font-weight: 600;
    word-break: break-all !important;
}

.modulo-capitulo-card i {
    color: white;
    padding: 5px;
    margin-right: 10px;
}

.modulo-capitulo-card > .panel-collapse > .panel-body > * {
    width: 100% !important;
    word-break: break-word !important;
}

.modulo-capitulo-card .primary {
    background: var(--primary);
}

.modulo-capitulo-card .secondary {
    background: var(--segundary);
}

.modulo-capitulo-container {
    display: flex;
}

#modulo-capitulo-container-divisor {
    width: 5px;
    cursor: col-resize;
    background-color: #ccc;
    margin: 0 15px;
}

.modulo-capitulo-container-left {
    width: 22%;
    min-width: 15%;
    height:100%;
    overflow-y: auto
}

.modulo-capitulo-container-right {
    width: 78%;
    height:100%;
}

.card-body-exercicio{
    padding: 8px;
}

li[data-disabled="true"] a {
    pointer-events: none !important;
    cursor: default !important;
    color: #ccc !important;
}

.spinner-border {
    display: inline-block;
    width: 1.3rem;
    height: 1.3rem;
    vertical-align: text-bottom;
    border: 0.25em solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: spinner-border .75s linear infinite;
}

.spinner-hidden {
    display: none;
}

.btn:hover .spinner-hidden {
    display: inline-block;
}


@keyframes spinner-border {
    100% {
        transform: rotate(360deg);
    }
}

.btn-spinner {
    transition: background-color 1s ease;
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
}

.btn-spinner:hover {
    column-gap: 0.5rem;
}

.spinner-border {
    transition: opacity 1s ease;
}

.spinnner-check {
    display: none;
    transition: opacity 1s ease;
}

.spinnner-check {
    display: inline-block;
}

.panel-body-exercicio {
    min-height: auto !important;
}

.modal-footer {
    background-color: #FFFFFF;
}
.contact1.active {
    background-color: #e0f0ff !important;
    border-radius: 8px !important;
    padding: 5px !important;
}


/* coracões */

.heart {
    width: 12px; /* Largura do coração - ajuste conforme necessário */
    height: 12px; /* Altura do coração - ajuste conforme necessário */
    position: relative; /* Para o posicionamento */
}

/* Coração cheio */
.full-heart::before,
.full-heart::after {
    content: '';
    width: 8px; /* Largura da parte superior do coração */
    height: 12px; /* Altura da parte superior do coração */
    position: absolute;
    background-color: #ff6f61; /* Cor do coração cheio */
    border-radius: 10px 10px 0 0; /* Arredonda o topo */
    top: 0;
}

.full-heart::before {
    left: 8px; /* Posiciona à direita */
    transform: rotate(-45deg); /* Rotação para formar o coração */
    transform-origin: 0 100%; /* Origem da transformação */
}

.full-heart::after {
    left: 0; /* Posiciona à esquerda */
    transform: rotate(45deg); /* Rotação para formar o coração */
    transform-origin: 100% 100%; /* Origem da transformação */
}

/* Coração vazio */
.empty-heart::before,
.empty-heart::after {
    content: '';
    width: 8px; /* Largura da parte superior do coração */
    height: 12px; /* Altura da parte superior do coração */
    position: absolute;
    background-color: #ccc; /* Cor do coração vazio */
    border-radius: 10px 10px 0 0; /* Arredonda o topo */
    top: 0;
}

.empty-heart::before {
    left: 8px; /* Lado direito */
    transform: rotate(-45deg); /* Rotação para formar o coração */
    transform-origin: 0 100%; /* Origem da transformação */
}

.empty-heart::after {
    left: 0; /* Lado esquerdo */
    transform: rotate(45deg); /* Rotação para formar o coração */
    transform-origin: 100% 100%; /* Origem da transformação */
}

/* rating heart */

.rating {
    font-size: 30px;
    color: #ccc;
    display: flex;
    justify-content: center; /* Alinha os corações horizontalmente ao centro */
    align-items: center; /* Alinha verticalmente ao centro */
    gap: 10px; /* Espaçamento entre os corações */
}
.rating-profile {
    display: flex;
    align-items: center; /* Alinha verticalmente ao centro */
    gap: 4px; /* Espaçamento entre os corações */
    margin: 8px 0; /* Adiciona margens para afastar dos elementos adjacentes */
}


.rating i {
    cursor: pointer;
    position: relative;
}

.rating i.selected {
    color: #ff6f61;
}

.rating i:hover,
.rating i.selected {
    color: #ff6f61;
}

#arquivos_div2{
    padding-left: 0px;
}

#ativ-arq2{
    padding-left: 0px;
}

/* Modal anexos/recados */

.card-custom-margin {
    margin-top: 5px;
    margin-bottom: 5px;
    min-width: 300px;  /* Tamanho mínimo de 350px */
}

.card-body {
    min-height: 300px;
    /* max-height: 300px; /* Definimos uma altura máxima para o card */
    overflow-y: auto;  /* Adiciona a barra de rolagem vertical quando o conteúdo ultrapassar a altura */
    padding: 10px 15px 10px 15px;
}
.card-header {
    background-color: #f5f5f5;
    font-weight: bold;
    padding: 10px 15px;
}
.bloco-insercao {
    transition: all 0.3s ease;
}

.bloco-insercao.oculto {
    display: none !important;
    opacity: 0;
}

#toggleCamposMural i {
    transition: transform 0.3s ease;
}

#toggleCamposMural:hover {
    color: #337ab7; /* Azul padrão do Bootstrap 3 */
}

#divInserirDadosMural {
    background-color: #fafafa;
    border-top: 1px solid #ddd;
    padding-top: 15px;
    display: block;
}

/* Range Button */
/* Estilo do range */
.custom-range {
    -webkit-appearance: none;
    background: linear-gradient(to right, #1976d2 0%, #1976d2 0%, #ddd 0%, #ddd 100%);
    outline: none;
    border-radius: 6px;
    transition: background 0.3s;
}

/* Thumb Chrome/Safari */
.custom-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #1976d2;
    border: 2px solid #fff;
    cursor: pointer;
    box-shadow: 0 0 2px rgba(0,0,0,0.5);
    transition: background 0.3s, transform 0.2s;
}

.custom-range::-webkit-slider-thumb:hover {
    transform: scale(1.2);
}

/* Firefox */
.custom-range::-moz-range-thumb {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #1976d2;
    border: 2px solid #fff;
    cursor: pointer;
    box-shadow: 0 0 2px rgba(0,0,0,0.5);
    transition: background 0.3s, transform 0.2s;
}

.custom-range::-moz-range-track {
    height: 12px;
    border-radius: 6px;
    background: #ddd;
}



/* Menu 2 */
.menu-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 6px;
    max-width: 1600px;
    margin: auto;
    gap: 10px; /* espaçamento mais consistente */
}

.menu-container-usuario {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0px;
    margin: auto;
    gap: 0px;
    max-width: 320px;
    margin-bottom: 5px;
}


.menu-item {
    flex: 1 1 10%;
    min-width: 100px;
    max-width: 100px;
    margin: 2px;
    padding: 5px;
    text-align: center;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
    cursor: pointer;
    transition: all 0.3s;
    font-size: 12px;
    border: 0ch solid #949494;
    color: #363636;
    line-height: 11px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    min-height: 55px;
}

.menu-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.menu-item i {
    font-size: 16px;
    display: block;
    margin-bottom: 2px;
}


.menu-item-usuario {
    flex: 1 1 10%;
    min-width: 90px;
    max-width: 110px;
    min-height: 55px;
    margin: 3px;
    padding: 3px;
    text-align: center;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
    cursor: pointer;
    transition: all 0.3s;
    font-size: 14px;
    border: 0px solid var(--primary);
    color: #363636;
    line-height: normal;
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
    border-radius:8px;
}

.menu-item-usuario:hover {
    transform: translateY(-4px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    border-color: var(--segundary-hover);
}

.menu-item-usuario i {
    font-size: 16px;
    display: block;
    margin-bottom: 2px;
    padding: 2px;
}

.menu-item-usuario h5 {
    font-size: 11px;
    text-transform: uppercase;
    margin: 0px;
}


/* 🧩 Responsividade */
@media (max-width: 1200px) {
    .menu-item-usuario {
        flex: 1 1 20%; /* 5 por linha */
    }
}

@media (max-width: 992px) {

    .menu-item-usuario h5 {
    }
}








.agenda-container {
    background: #f9f9f9;
    border-radius: 8px;
    padding: 10px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
    position: relative;
}

/* Título fixo */
.titulo-horarios {
    position: sticky;
    top: 0;
    background: #f9f9f9;
    z-index: 2;
    padding-bottom: 5px;
    border-bottom: 1px solid #ddd;
    margin-bottom: 8px;
}

.titulo-horarios h5 {
    font-weight: bold;
    color: #333;
    margin: 0;
    font-size: 16px;
}

/* Área rolável (máximo 2 cards visíveis) */
.lista-horarios {
    max-height: 200px; /* Altura ajustável */
    overflow-y: auto;
    padding-right: 5px;
}

/* Card individual */
.card-agenda-mentor {
    display: flex;
    flex-direction: column;
    border-left: 5px solid;
    border-radius: 10px;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    padding: 10px 15px;
    margin-bottom: 5px;
}

/* Scrollbar customizada */
.lista-horarios::-webkit-scrollbar {
    width: 6px;
}
.lista-horarios::-webkit-scrollbar-thumb {
    background-color: rgba(0,0,0,0.2);
    border-radius: 10px;
}

.nav-tabs > li > a {
    text-transform: uppercase;
}
.nav-tabs {
    margin-bottom: 8px;
}

/* Mentoria coletiva custom css */

/* MODAL */
.mentoria-modal {
    border-radius: 8px;
    overflow: hidden;
}

.mentoria-close {
    color: #fff;
    opacity: 1;
}

/* BODY */
.mentoria-body {
    padding: 25px;
}

.mentoria-titulo {
    text-align: center;
    font-weight: 600;
    color: #3f51b5;
    margin-bottom: 20px;
}

/* BOX */
.mentoria-box {
    background: #f8f9fb;
    border-radius: 6px;
    padding: 15px;
    margin-bottom: 15px;
    font-size: 14px;
}

/* INFO */
.mentoria-info div {
    margin-bottom: 10px;
    font-size: 14px;
}

.mentoria-label {
    font-weight: 600;
    color: #555;
}

/* DIVIDER */
.mentoria-divider {
    border-top: 1px solid #e0e0e0;
    margin: 20px 0;
}

/* MENTOR */
.mentor-card {
    text-align: center;
    padding: 20px;
    border: 1px solid #eee;
    border-radius: 8px;
    cursor: pointer;
    transition: box-shadow .2s;
}

.mentor-card:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,.1);
}

.mentor-avatar img {
    width: 110px;
    height: 110px;
    border-radius: 50%;
    object-fit: cover;
    margin-bottom: 10px;
}

.mentor-nome {
    margin: 10px 0 5px;
    font-weight: 600;
}

.mentor-formacao {
    font-size: 13px;
    color: #666;
}

.mentor-badge {
    display: inline-block;
    background: #3f51b5;
    color: #fff;
    font-size: 11px;
    padding: 5px 10px;
    border-radius: 12px;
    margin-top: 5px;
}

.mentor-bio {
    margin-top: 15px;
    font-size: 13px;
    color: #444;
}

.mentor-link {
    display: inline-block;
    margin-top: 10px;
    font-weight: 600;
    color: #3f51b5;
}

/* FORM */
.mentoria-textarea {
    resize: vertical;
}

/* FOOTER */
.mentoria-footer {
    background: #f5f5f5;
}

.mentoria-btn {
    padding: 8px 20px;
}



.modal-footer {
    background-color: #FFFFFF;
    text-align: right !important;
}

.btn-fechar {
    float: left !important;
    background-color: #ffffff;
    border-color: #c1c1c1;
    color: #292929;
}
/* Wrapper do controle (não interfere no layout) */
.carousel-control {
    background: none !important;
    width: auto;
    opacity: 1;
    text-shadow: none;
}

/* Alinha verticalmente com o conteúdo */
.carousel-control.left,
.carousel-control.right {
    top: 35%;
    transform: translateY(-50%);
}

/* Posiciona alinhado à div (ajuste se quiser mais fora) */
.carousel-control.left {
    left: -20px;
}

.carousel-control.right {
    right: 10px;
}

/* BOTÃO CIRCULAR */
.carousel-control .glyphicon {
    width: 40px;
    height: 40px;
    line-height: 40px;          /* centraliza verticalmente */
    border-radius: 80%;
    background: #00000008;
    border: 1px solid #ddd;
    color: #555;
    font-size: 14px;            /* ícone menor */
    text-align: center;
    display: inline-block;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    transition: all 0.2s ease;
}

/* Hover do círculo */
.carousel-control:hover .glyphicon {
    background: #f2f2f2;
    color: #333;
}

/* Garante que nada fique sobre o conteúdo */
.carousel-inner {
    overflow: visible;
}

.modal {
    text-align: center;
    padding: 0 !important;
}

.modal:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.modal-dialog {
    display: inline-block;
    text-align: left;
    vertical-align: middle;
}

/* meu-perfil */
.perfil-completar-corpo { margin: 0 15px; }
.perfil-completar-titulo { font-size: 1.4em; }
.perfil-completar-lista { font-size: 1.3em; }
.perfil-section-titulo { margin-top: 10px; }
.perfil-badges-container { text-align: center; }
.perfil-badge { margin-right: 10px; font-size: 12px; margin-bottom: 5px; }
.perfil-modal-scroll { overflow: auto; }
.campo-obrigatorio-asterisco { color: red; }

/* include_perfil */
.perfil-header-acoes { text-align: right; margin-bottom: 5px; }
.perfil-row-info { margin-bottom: 50px; }
.perfil-avatar-container { width: 20%; float: left; text-align: center; padding-top: 20px; }
.perfil-avatar-img { max-width: 140px; max-height: 140px; width: 100%; border-radius: 8px; }
.perfil-info-table { width: 80%; }
.perfil-nome { margin-bottom: 0; }
.perfil-texto-bio { font-size: 14px; text-align: justify; }
.perfil-obs-bloco { margin-top: 15px; }
.perfil-calendario { width: 320px; }
.perfil-mentor-indisponivel { background-color: #c1c2c3; }
.perfil-prontuario-header { margin-bottom: 20px; }

/* metricas-dashboard */
.metricas-kpi-row { margin-bottom: 5px; }
.metricas-kpi-card { border-radius: 6px; padding: 18px 12px 14px; text-align: center; margin-bottom: 20px; color: #fff; position: relative; overflow: hidden; min-height: 130px; color: var(--primary) }
.metricas-kpi-card::before { content: ''; position: absolute; top: -18px; right: -18px; width: 80px; height: 80px; border-radius: 50%; background: rgba(255,255,255,0.12); }
.metricas-kpi-primary { background: linear-gradient(135deg, #1976D2, #42A5F5); }
.metricas-kpi-success  { background: linear-gradient(135deg, #388E3C, #66BB6A); }
.metricas-kpi-info     { background: linear-gradient(135deg, #0097A7, #26C6DA); }
.metricas-kpi-warning  { background: linear-gradient(135deg, #F57C00, #FFA726); }
.metricas-kpi-star     { background: linear-gradient(135deg, #7B1FA2, #AB47BC); }
.metricas-kpi-trophy   { background: linear-gradient(135deg, #C62828, #EF5350); }
.metricas-kpi-icon { font-size: 26px; opacity: 0.85; margin-bottom: 6px; }
.metricas-kpi-valor { font-size: 32px; font-weight: 700; line-height: 1; }
.metricas-kpi-unidade { font-size: 16px; font-weight: 400; margin-left: 2px; }
.metricas-kpi-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; opacity: 0.9; margin-top: 5px; }
.metricas-kpi-sub { font-size: 11px; opacity: 0.8; margin-top: 3px; }
.metricas-progress { background: rgba(255,255,255,0.3); margin: 6px 0 0; height: 5px; border-radius: 3px; box-shadow: none; }
.metricas-progress-bar { background: rgba(255,255,255,0.85); border-radius: 3px; }
.metricas-chart-container { width: 100%; height: 260px; }
.metricas-sem-dados { padding: 60px 0; font-size: 14px; }
.metricas-status-legenda { text-align: center; padding: 8px 0 4px; font-size: 12px; }
.metricas-legenda-item { display: inline-block; margin: 0 8px; }
.metricas-legenda-concluidas .fa { color: #4CAF50; }
.metricas-legenda-futuras .fa    { color: #2196F3; }
.metricas-legenda-canceladas .fa { color: #f44336; }
.metricas-tabela-sessoes thead th { background: var(--primary); color: #fff; white-space: nowrap; }
.metricas-stars-cell { white-space: nowrap; }
.metricas-star-filled { color: #FFC107; }
.metricas-star-empty  { color: #ccc; }
.metricas-nota-numero { font-size: 11px; color: #888; margin-left: 2px; }

/* dashboard2 admin kpi cards */
.kpi-grid { display: flex; flex-wrap: wrap; margin: 0 -7px 5px; }
.kpi-col { flex: 1 1 18%; min-width: 170px; padding: 0 7px 14px; box-sizing: border-box; }
.kpi-card { cursor: pointer; border-radius: 8px; padding: 16px 18px; background: #fff; border: 1px solid #0420451a; border-left: 5px solid #cbd5e0; box-shadow: 0 1px 3px rgba(0,0,0,.06); transition: box-shadow .15s; display: flex; align-items: center; justify-content: space-between; }
.kpi-card:hover { box-shadow: 0 4px 14px rgba(0,0,0,.11); }
.kpi-card-body { flex: 1; }
.kpi-valor { font-size: 36px; font-weight: 700; line-height: 1; color: #2d3748; }
.kpi-label { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: #718096; margin-top: 5px; }
.kpi-icon { font-size: 22px; color: #d1d9e0; margin-left: 12px; flex-shrink: 0; }
.kpi-sparkline { width: 70px; height: 32px; flex-shrink: 0; margin-left: 10px; }
@media (max-width: 768px) { .kpi-col { flex-basis: 100%; } .kpi-sparkline { display: none; } }

/* ============================================================
   modal_atividade_sessao — faixa de contexto e layout
   ============================================================ */

.atv-modal-context {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #f5f7fa;
    border-bottom: 1px solid #e8edf2;
    padding: 12px 20px;
    margin: 0 -15px 16px;
    min-height: 58px;
}

.atv-modal-avatar {
    width: 44px;
    height: 44px;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0;
    border: 2px solid #eef1f5;
    background: #e8edf2;
}

.atv-modal-context-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.atv-modal-context-name {
    font-size: 15px;
    font-weight: 700;
    color: #1f2d3d;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.atv-modal-context-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.atv-modal-tag {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600;
    background: #eaf1fb;
    color: var(--primary);
    border: 1px solid #c8ddf6;
    white-space: nowrap;
}

.atv-modal-body-inner {
    padding: 4px 0 8px;
}

.atv-modal-titulo {
    font-size: 18px;
    font-weight: 700;
    color: #1f2d3d;
    margin: 0 0 6px;
    line-height: 1.3;
}

.atv-modal-meta {
    margin-bottom: 12px;
}

.atv-modal-prazo {
    font-size: 12px;
    color: #6c757d;
}

.atv-modal-prazo--atrasada {
    color: #e63c3c;
    font-weight: 600;
}

.atv-modal-descricao {
    font-size: 13px;
    color: #3d4a5a;
    line-height: 1.7;
    text-align: justify;
}

.atv-modal-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    padding: 14px 0 4px;
    border-top: 1px solid #f0f2f5;
    margin-top: 14px;
}

.atv-action-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    letter-spacing: 0.3px;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.15s;
    border: 1.5px solid transparent;
}
.atv-action-btn:hover { text-decoration: none; }
.atv-action-btn--primary {
    background: transparent;
    color: var(--primary, #0077cc);
    border-color: var(--primary, #0077cc);
}
.atv-action-btn--primary:hover {
    background: rgba(var(--primary-rgb, 0,119,204), .08);
    border-color: var(--primary, #0077cc);
}
.atv-action-btn--secondary {
    background: transparent;
    color: #5a6473;
    border-color: #dde3ea;
}
.atv-action-btn--secondary:hover {
    background: rgba(0,0,0,.04);
    border-color: #9baab6;
    color: #2d3748;
}
.atv-action-btn--danger   { background: #fdecea; color: #c62828; border: 1px solid #ef9a9a; }
.atv-action-btn--warning  { background: #fff8e1; color: #e65100; border: 1px solid #ffcc80; }

.atv-modal-resposta {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 2px solid #f0f2f5;
}

.atv-modal-resposta-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}

.atv-modal-resposta-header strong {
    font-size: 15px;
}

.atv-modal-file-item {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 8px 12px !important;
    font-size: 13px;
}

.atv-modal-file-link {
    color: #3d4a5a;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
}

.atv-modal-file-link:hover { color: var(--primary); }

.atv-modal-file-download {
    flex-shrink: 0;
    margin-left: 10px;
    color: var(--primary);
    font-size: 15px;
}


/* Dashboard activity pending badge */
.dash-atv-badge {
    position: absolute;
    top: 4px;
    right: 4px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 9px;
    background: #e53935;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 18px;
    text-align: center;
    pointer-events: none;
    z-index: 1;
}

/* ── Modal Resposta Atividade ────────────────────────────── */
.atv-resp-dialog { margin: 40px auto; }

.atv-resp-content {
    border-radius: 12px;
    overflow: hidden;
    border: none;
    box-shadow: 0 8px 32px rgba(0,0,0,.18);
}

.atv-resp-header {
    background: #fff;
    padding: 14px 20px;
    border-bottom: 1px solid #e8ecf0;
    display: flex;
    align-items: center;
    gap: 10px;
}
.atv-resp-header .modal-title { flex: 1; }
.atv-resp-header .close { order: 1; margin: 0; float: none; }

.atv-resp-title {
    color: #2d3748;
    font-size: 14px;
    font-weight: 700;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.atv-resp-subtitle {
    font-size: 12px;
    color: #5a6473;
    font-family: 'Open Sans', sans-serif;
    margin: 4px 0 0 0;
    font-weight: 400;
}
.btn-success.outline {
    color: #27864f;
    background-color: transparent;
    border-color: #27864f;
}
.btn-success.outline:hover,
.btn-success.outline:focus {
    color: #fff;
    background-color: #27864f;
    border-color: #27864f;
}
.btn-warning.outline {
    color: #d68910;
    background-color: transparent;
    border-color: #d68910;
}
.btn-warning.outline:hover,
.btn-warning.outline:focus {
    color: #fff;
    background-color: #d68910;
    border-color: #d68910;
}

.atv-resp-body {
    padding: 20px 24px;
    background: #fff;
}

.atv-resp-section {
    margin-bottom: 20px;
}

.atv-resp-label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    color: #4c5968;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.atv-resp-label i { color: var(--primary, #0077cc); }

.atv-resp-textarea {
    width: 100%;
    border: 1px solid #dde3ea;
    border-radius: 8px;
    padding: 12px 14px;
    font-size: 14px;
    color: #2d3748;
    resize: vertical;
    min-height: 120px;
    transition: border-color .15s, box-shadow .15s;
    line-height: 1.6;
}
.atv-resp-textarea:focus {
    outline: none;
    border-color: var(--primary, #0077cc);
    box-shadow: 0 0 0 3px rgba(0,119,204,.12);
}

.atv-resp-hint {
    font-size: 12px;
    color: #9baab6;
    margin: 0 0 8px;
}

.atv-resp-file { margin-top: 4px; }

.atv-resp-file-table {
    margin-top: 8px;
    font-size: 13px;
    border-radius: 8px;
    overflow: hidden;
}

.atv-resp-footer {
    background: #f7f9fb;
    border-top: 1px solid #eef1f5;
    padding: 12px 20px;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.atv-resp-footer .btn-fechar {
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
    padding: 8px 18px;
}

/* ============================================================
   painel_mentoria_atividade — activity list panel
   ============================================================ */

.atv-panel-content {
    border-radius: 10px;
    overflow: hidden;
}

.atv-panel-body {
    padding: 16px 20px;
    background: #f7f9fb;
    min-height: 220px;
}

.atv-panel-footer {
    background: #fff;
    border-top: 1px solid #eef1f5;
    padding: 12px 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.atv-panel-footer .btn-fechar,
.atv-resp-footer .btn-fechar {
    margin-right: auto;
    margin-left: 0;
    order: -1;
}

.atv-panel-topbar {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 14px;
}

/* Activity list */
.atv-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.atv-list-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border: 1px solid #e4eaf0;
    border-radius: 8px;
    padding: 12px 16px;
    cursor: pointer;
    transition: box-shadow .15s, border-color .15s;
    gap: 12px;
}

.atv-list-item:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,.08);
    border-color: #c8d4df;
}

.atv-list-item-main {
    flex: 1;
    min-width: 0;
}

.atv-list-item-title {
    font-size: 14px;
    font-weight: 600;
    color: #2d3748;
    margin-bottom: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.atv-list-item-deadline {
    font-size: 12px;
    color: #7a8fa6;
}

.atv-list-item-deadline i {
    margin-right: 3px;
}

.atv-list-empty {
    text-align: center;
    color: #9baab6;
    font-size: 14px;
    padding: 32px 0;
}

/* Status badges */
.atv-badge {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
    letter-spacing: 0.3px;
    flex-shrink: 0;
}

.atv-badge--pendente {
    background: #e8f0fb;
    color: #1a56a0;
}

.atv-badge--entregue {
    background: #e6f5ea;
    color: #256f35;
}

.atv-badge--atrasada {
    background: #fdecea;
    color: #c62828;
}

/* ============================================================
   encontrar-mentor — fm-* classes
   ============================================================ */

/* Program bar */
.fm-program-bar {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid #e4eaf0;
    border-radius: 8px;
    padding: 10px 16px;
    margin-bottom: 16px;
}

.fm-program-label {
    font-size: 13px;
    font-weight: 600;
    color: #4c5968;
    white-space: nowrap;
}

.fm-program-form { flex: 1; margin: 0; }

.fm-program-select { max-width: 320px; }

/* Filter card */
.fm-filter-card {
    background: #fff;
    border: 1px solid #e4eaf0;
    border-radius: 10px;
    padding: 18px 20px 14px;
    margin-bottom: 20px;
}

.fm-filter-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 14px;
}

.fm-filter-title {
    font-size: 15px;
    font-weight: 700;
    color: #2d3748;
    margin: 0 0 6px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.fm-filter-pilares {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
}

.fm-filter-pilares-label {
    font-size: 12px;
    color: #7a8fa6;
    margin-right: 4px;
}

.fm-help-btn {
    color: #9baab6;
    font-size: 20px;
    flex-shrink: 0;
    margin-top: 2px;
}

.fm-help-btn:hover { color: var(--primary, #0077cc); }

.fm-filter-form { margin: 0; }

.fm-filter-fields {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-end;
}

.fm-filter-field { flex: 1; min-width: 160px; }

.fm-filter-field--btn { flex: 0 0 auto; }

.fm-label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #4c5968;
    margin-bottom: 5px;
}

.fm-search-btn { margin-top: 0; }

/* Mentor grid */
.fm-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

/* Mentor card */
.fm-card {
    background: #fff;
    border: 1px solid #e4eaf0;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: box-shadow .15s, border-color .15s;
}

.fm-card:hover {
    box-shadow: 0 4px 14px rgba(0,0,0,.09);
    border-color: #c8d4df;
}

.fm-card-header {
    padding: 20px 16px 12px;
    text-align: center;
    cursor: pointer;
    flex: 1;
}

.fm-card-avatar {
    width: 72px;
    height: 72px;
    border-radius: 8px;
    object-fit: cover;
    border: 2px solid #eef1f5;
    margin-bottom: 10px;
}

.fm-card-name {
    font-size: 14px;
    font-weight: 700;
    color: #2d3748;
    margin-bottom: 6px;
    line-height: 1.3;
}

.fm-card-badge-row {
    margin-bottom: 6px;
}

.fm-card-pilares {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px;
    margin-top: 6px;
}

.fm-pilar-extra {
    font-size: 12px;
    color: #7a8fa6;
    align-self: center;
}

.fm-card-footer {
    padding: 10px 12px;
    border-top: 1px solid #f0f3f6;
    background: #f7f9fb;
}

/* Action buttons in card */
.fm-btn {
    display: block;
    width: 100%;
    padding: 7px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    text-align: center;
    border: none;
    cursor: pointer;
    transition: opacity .15s;
}

.fm-btn--solicitar {
    background: var(--primary, #0077cc);
    color: #fff;
}

.fm-btn--solicitar:hover { opacity: 0.88; }

.fm-btn--solicitado {
    background: #e6f5ea;
    color: #256f35;
    border: 1px solid #a5d6a7;
    cursor: default;
}

.fm-btn--indisponivel {
    background: #fff8e1;
    color: #b45309;
    border: 1px solid #fde68a;
    display: block;
    padding: 7px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    text-align: center;
}

/* Badges */
.fm-badge {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
}

.fm-badge--completo {
    background: #e6f5ea;
    color: #256f35;
}

/* Pagination */
.fm-paginacao {
    text-align: center;
    margin: 12px 0 16px;
}

/* Empty state */
.fm-empty-state {
    text-align: center;
    padding: 48px 20px;
    color: #9baab6;
}

.fm-empty-state i { margin-bottom: 12px; display: block; }

.fm-empty-state p { font-size: 15px; margin: 0; }

/* Solicitation modal */
.fm-modal-content {
    border-radius: 10px;
    overflow: hidden;
}

.fm-modal-body {
    padding: 20px 24px;
}

.fm-modal-mentor {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #f7f9fb;
    border: 1px solid #e4eaf0;
    border-radius: 8px;
    padding: 14px 16px;
    margin-bottom: 20px;
    cursor: pointer;
    transition: background .15s;
}

.fm-modal-mentor:hover { background: #eef2f7; }

.fm-modal-avatar {
    width: 56px;
    height: 56px;
    border-radius: 8px;
    object-fit: cover;
    border: 2px solid #eef1f5;
    flex-shrink: 0;
}

.fm-modal-mentor-info { flex: 1; }

.fm-modal-mentor-name {
    font-size: 15px;
    font-weight: 700;
    color: #2d3748;
    margin-bottom: 2px;
}

.fm-modal-mentor-sub {
    font-size: 12px;
    color: #7a8fa6;
    margin-bottom: 4px;
}

.fm-modal-ver-perfil {
    font-size: 12px;
    color: var(--primary, #0077cc);
    font-weight: 600;
}

.fm-modal-form { margin: 0; }

.fm-form-section { margin-bottom: 16px; }

.fm-form-label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #4c5968;
    margin-bottom: 8px;
}

.fm-required { color: #e53e3e; margin-right: 3px; }

.fm-pilar-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.fm-pilar-option {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.fm-pilar-option input[type="radio"] {
    margin-top: 3px;
    flex-shrink: 0;
}

.fm-pilar-option label {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    cursor: pointer;
    font-weight: normal;
    margin: 0;
}

.fm-pilar-descricao {
    font-size: 13px;
    color: #5a6473;
}

.fm-pilar-none {
    color: #e53e3e;
    font-size: 13px;
}

.fm-textarea {
    border-radius: 6px;
    font-size: 13px;
    resize: vertical;
}

.fm-modal-footer {
    background: #f7f9fb;
    border-top: 1px solid #eef1f5;
    padding: 12px 24px;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin: 16px -24px -20px;
}

/* Chat styles: see chat.css */


/* ===============================
   BOTÃO
================================= */
#fm-btn {
    position: fixed;
    top: 52px;
    right: 20px;
    width: 50px;
    height: 50px;

    background: linear-gradient(135deg, #2f80ed, #1c60c7);
    color: #fff;

    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 20px;
    cursor: pointer;
    z-index: 9999;

    box-shadow: 0 8px 25px rgba(0,0,0,0.25);
    transition: 0.3s;
}

#fm-btn:hover {
    transform: scale(1.1) rotate(8deg);
}

/* ===============================
   MENU
================================= */
#fm-menu {
    position: fixed;
    top: 50%;
    right: -300px;
    transform: translateY(-50%);

    width: 260px;
    max-height: 75vh;

    background: #fff;
    border-radius: 16px;
    padding: 15px;

    box-shadow: 0 15px 35px rgba(0,0,0,0.15);
    border: 1px solid #eee;

    overflow-y: auto;
    z-index: 9998;

    transition: 0.35s;
}

#fm-menu.open {
    right: 80px;
}

/* ===============================
   ITEMS
================================= */
.fm-item {
    display: flex;
    align-items: center;
    gap: 12px;

    padding: 12px;
    margin-bottom: 8px;

    border-radius: 10px;
    cursor: pointer;

    background: #f7f9fc;
    transition: 0.25s;
}

/* ICONES */
.fm-item i {
    width: 32px;
    height: 32px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 8px;
    background: #e9f0ff;
    color: #2f80ed;

    font-size: 14px;
}

/* TEXTO */
.fm-item span {
    font-size: 14px;
    font-weight: 500;
}

/* HOVER */
.fm-item:hover {
    background: #eef4ff;
    transform: translateX(6px);
}

.fm-item:hover i {
    background: #2f80ed;
    color: #fff;
}

/* WHATSAPP */
.fm-whatsapp i {
    background: #e9fff3;
    color: #25d366;
}

.fm-whatsapp:hover i {
    background: #25d366;
    color: #fff;
}

/* SCROLL */
#fm-menu::-webkit-scrollbar {
    width: 6px;
}
#fm-menu::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
}

/* MOBILE */
@media(max-width:768px){
    #fm-menu { width: 220px; }
    #fm-menu.open { right: 70px; }
}
@media(max-width:1200px) {
    #fm-btn {
        display: none;
    }
}
/* ============================================================
   MODAL CADASTRAR ATIVIDADE SESSÃO  (.cas-*)
   Integrado com atv-resp-* e var(--primary)
   ============================================================ */
.cas-modal-body {
    padding: 22px 24px 8px;
    background: #fff;
}

.cas-field-group {
    margin-bottom: 18px;
}

.cas-label {
    display: block;
    font-size: 12px;
    font-weight: 700;
    color: #2d3748;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin-bottom: 8px;
    font-family: 'Open Sans', sans-serif;
}

.cas-required {
    color: var(--primary);
    margin-right: 2px;
    font-size: 13px;
    line-height: 1;
}

.cas-input,
#modal_cadastrar_atividade_sessao .form-control {
    border-radius: 7px !important;
    border: 1px solid #dde3ea !important;
    font-size: 13.5px !important;
    padding: 9px 13px !important;
    color: #2d3748 !important;
    background: #f9fafb !important;
    transition: border-color .15s, box-shadow .15s, background .15s !important;
    font-family: 'Open Sans', sans-serif !important;
    box-shadow: none !important;
}
#modal_cadastrar_atividade_sessao .form-control:focus,
.cas-input:focus {
    border-color: var(--primary) !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(0,0,0,.06) !important;
    outline: none !important;
}

.cas-textarea {
    min-height: 110px;
    resize: vertical;
}

.cas-grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.cas-grid-select {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    padding: 16px;
    background: #f7f9fb;
    border-radius: 8px;
    border: 1px solid #eef1f5;
    margin-bottom: 20px;
}

.cas-input-icon {
    position: relative;
}
.cas-input-icon > i {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #9baab6;
    font-size: 13px;
    pointer-events: none;
    z-index: 2;
}
.cas-input-icon .form-control,
.cas-input-icon .cas-input {
    padding-left: 34px !important;
}

.cas-section-divider {
    border: none;
    border-top: 1px solid #eef1f5;
    margin: 4px 0 20px;
}

.cas-file-hint {
    font-size: 11px;
    color: #9baab6;
    margin-bottom: 8px;
    font-family: 'Open Sans', sans-serif;
}


@media (max-width: 600px) {
    .cas-grid-2,
    .cas-grid-select { grid-template-columns: 1fr; }
    .cas-modal-body { padding: 16px 14px 6px; }
}

/* Modais da mentoria coletiva - Minimal Clarity */
.mg-clarity-modal > .modal-dialog {
    width: calc(100% - 32px) !important;
    max-width: 960px;
    margin: 30px auto !important;
}

.mg-clarity-modal--compact > .modal-dialog {
    max-width: 620px;
}

.mg-clarity-modal--confirm > .modal-dialog {
    max-width: 520px;
}

.mg-clarity-modal--agenda > .modal-dialog {
    max-width: 820px;
}

.mg-clarity-modal > .modal-dialog > .modal-content {
    overflow: hidden !important;
}

.mg-clarity-modal > .modal-dialog > .modal-content-scroll {
    max-height: calc(100vh - 60px);
}

.mg-clarity-modal .atv-resp-title > i {
    color: var(--primary);
    margin-right: 8px;
    opacity: .8;
}

.mg-clarity-modal .mc-btn.mc-icon-btn {
    padding: 0;
}

.mg-clarity-modal__title-slot {
    flex: 1;
    min-width: 0;
}

.mg-clarity-modal__form {
    width: 100%;
}

.mg-clarity-modal__grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mg-clarity-modal__languages .nav-tabs {
    margin: 0 !important;
    border-bottom: 1px solid #eef1f5 !important;
}

.mg-clarity-modal__tab-content {
    padding: 18px 0 2px;
}

.mg-clarity-modal input.cas-input,
.mg-clarity-modal select.cas-input {
    height: 40px;
    min-height: 40px;
}

.mg-clarity-modal textarea.cas-input {
    min-height: 110px !important;
}

.mg-clarity-modal .cas-input:disabled {
    background: #f1f5f9 !important;
    color: #64748b !important;
    cursor: not-allowed;
    opacity: .75;
}

.mg-clarity-modal .select2-container {
    display: block;
    width: 100% !important;
    max-width: 100%;
    margin: 0 !important;
    padding: 0 !important;
}

.mg-clarity-modal .select2-container .select2-choice {
    width: 100%;
    height: 40px;
    margin: 0 !important;
    border: 1px solid #dde3ea;
    border-radius: 7px;
    background: #f8fafc;
    box-shadow: none;
    color: #334155;
    line-height: 38px;
}

.mg-clarity-modal .select2-container-disabled .select2-choice {
    background: #f1f5f9;
    color: #64748b;
    cursor: not-allowed;
    opacity: .75;
}

.mg-clarity-modal .select2-container-active .select2-choice {
    border-color: var(--primary);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(74, 137, 220, .08);
}

.mg-clarity-modal .select2-container-multi .select2-choices,
.mg-clarity-modal .select2-container--default .select2-selection--multiple {
    min-height: 42px;
    border: 1px solid #dde3ea !important;
    border-radius: 7px !important;
    background: #f8fafc !important;
    box-shadow: none !important;
}

.mg-clarity-modal .select2-container-multi.select2-container-active .select2-choices,
.mg-clarity-modal .select2-container--focus .select2-selection--multiple {
    border-color: var(--primary) !important;
    background: #fff !important;
}

.mg-clarity-modal__confirm-text {
    margin: 0;
    color: #475569;
    font-size: 14px;
    line-height: 1.6;
}

.mg-clarity-modal__clear-selection {
    margin-top: 12px;
}

.mg-clarity-modal #agendaGrupoErro {
    flex: 1;
    min-width: 0;
}

.mg-clarity-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 18px;
    padding: 12px 14px;
    border: 1px solid #dbeafe;
    border-radius: 8px;
    background: #f8fbff;
    color: #475569;
    font-size: 13px;
    line-height: 1.5;
}

.mg-clarity-note > i {
    flex: 0 0 auto;
    margin-top: 2px;
    color: var(--primary);
}

.mg-agenda-time-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.mg-agenda-time-control {
    display: flex;
    min-width: 0;
}

.mg-agenda-time-control .cas-input {
    min-width: 0;
    border-radius: 7px 0 0 7px !important;
}

.mg-agenda-time-control .mg-agenda-time-button {
    flex: 0 0 42px;
    width: 42px;
    height: 40px;
    border-radius: 0 7px 7px 0 !important;
}

.mg-participant-modal > .modal-dialog > .modal-content > .cas-modal-body {
    padding: 12px 18px;
}

.mg-participant-modal > .modal-dialog > .modal-content > .cas-modal-body:empty {
    min-height: 120px;
}

.mg-session-schedule-modal__heading {
    margin: 0 0 20px;
    padding-bottom: 12px;
    border-bottom: 1px solid #eef1f5;
    color: #334155;
    font-size: 14px;
    font-weight: 700;
    text-align: left;
}

.mg-session-schedule-modal .form-group {
    margin-bottom: 16px;
}

.mg-session-schedule-modal .control-label {
    padding-top: 10px;
    color: #334155;
    font-size: 12px;
    font-weight: 700;
    text-align: left;
}

.mg-session-schedule-modal .form-control {
    min-height: 40px;
    border: 1px solid #dde3ea !important;
    border-radius: 7px !important;
    background: #f8fafc !important;
    color: #334155;
    font-size: 13.5px !important;
    box-shadow: none !important;
}

.mg-session-schedule-modal textarea.form-control {
    min-height: 84px;
    resize: vertical;
}

.mg-session-schedule-modal .form-control:focus {
    border-color: var(--primary) !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(74, 137, 220, .08) !important;
}

.mg-session-schedule-modal .form-control:disabled {
    background: #f1f5f9 !important;
    color: #64748b;
    opacity: .8;
}

.mg-session-schedule-modal .time24hr {
    padding: 0;
}

#painel_atividade_footer:empty,
#modalProntuarioFooter:empty {
    display: none;
}

#painelNovaMensagem ul.token-input-list-pessoa {
    width: 100%;
    min-height: 40px;
    padding: 4px 8px;
    border: 1px solid #dde3ea;
    border-radius: 7px;
    background: #f8fafc;
    color: #334155;
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    box-shadow: none;
}

#painelNovaMensagem ul.token-input-list-pessoa:focus-within {
    border-color: var(--primary);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(74, 137, 220, .08);
}

#painelNovaMensagem li.token-input-token-pessoa {
    margin: 2px 5px 2px 0;
    padding: 5px 8px;
    border: 1px solid #dbeafe;
    border-radius: 6px;
    background: #eff6ff;
    color: #334155;
    font-size: 12px;
}

#painelNovaMensagem li.token-input-input-token-pessoa input {
    min-height: 28px;
    margin: 0;
    padding: 4px 2px;
    background: transparent;
    color: #334155;
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
}

#modal_avaliar_usuario #rating-heart {
    padding: 18px;
    border: 1px solid #eef1f5;
    border-radius: 9px;
    background: #f8fafc;
}

#modal_avaliar_usuario #rating-heart > i {
    transition: color .15s ease, transform .15s ease;
}

#modal_avaliar_usuario #rating-heart > i:hover {
    transform: translateY(-1px) scale(1.06);
}

.swal2-popup.mg-swal-modal {
    width: calc(100% - 32px) !important;
    max-width: 960px !important;
    padding: 0 !important;
    overflow: hidden;
    border: 0;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 32px rgba(0, 0, 0, .18);
}

.mg-swal-modal .mg-swal-modal__title {
    margin: 0 !important;
    padding: 16px 56px 14px 20px !important;
    border-bottom: 1px solid #e8ecf0;
    color: #2d3748;
    font-size: 16px !important;
    font-weight: 700;
    line-height: 1.35;
    text-align: left;
}

.mg-swal-modal .swal2-close {
    top: 8px;
    right: 10px;
    width: 36px;
    height: 36px;
    color: #64748b;
    font-size: 28px;
}

.mg-swal-modal .mg-swal-modal__body {
    max-height: calc(100vh - 210px);
    margin: 0 !important;
    padding: 18px 20px !important;
    overflow: auto;
    color: #475569;
    font-size: 13px;
    text-align: left !important;
}

.mg-swal-modal .swal2-html-container {
    text-align: left;
}

.mg-swal-modal .mg-swal-modal__actions {
    justify-content: flex-end;
    width: 100%;
    margin: 0 !important;
    padding: 12px 16px;
    border-top: 1px solid #eef1f5;
    background: #fff;
}

.mg-swal-table-wrap {
    width: 100%;
    overflow-x: auto;
    border: 1px solid #e5eaf0;
    border-radius: 8px;
}

.mg-swal-table {
    width: 100%;
    min-width: 620px;
    margin: 0 !important;
    border: 0 !important;
    background: #fff;
}

.mg-swal-table th,
.mg-swal-table td {
    padding: 11px 12px !important;
    border: 0 !important;
    border-bottom: 1px solid #eef1f5 !important;
    color: #475569;
    font-size: 13px;
    line-height: 1.45;
    vertical-align: middle !important;
}

.mg-swal-table thead th {
    background: #f8fafc;
    color: #334155;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.mg-swal-table tbody tr:last-child > * {
    border-bottom: 0 !important;
}

.mg-swal-table--details td:first-child {
    width: 210px;
    color: #334155;
    font-weight: 700;
}

.mg-swal-avatar-cell {
    width: 82px;
    cursor: pointer;
}

.mg-swal-avatar-cell:hover {
    background: #f8fafc;
}

.mg-swal-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 150px;
    gap: 10px;
    padding: 24px;
    border: 1px dashed #dbe2ea;
    border-radius: 8px;
    background: #f8fafc;
    color: #64748b;
    text-align: center;
}

.mg-swal-empty > i {
    color: var(--primary);
    font-size: 24px;
    opacity: .75;
}

.mg-swal-empty > p {
    margin: 0;
}

@media (max-width: 760px) {
    .mg-clarity-modal__grid-3 {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .mg-clarity-modal > .modal-dialog {
        width: calc(100% - 20px) !important;
        margin: 10px auto !important;
    }

    .mg-clarity-modal > .modal-dialog > .modal-content-scroll {
        max-height: calc(100vh - 20px);
    }

    .mg-clarity-modal > .modal-dialog > .modal-content > .atv-panel-footer {
        align-items: stretch;
        flex-direction: column !important;
    }

    .mg-clarity-modal > .modal-dialog > .modal-content > .atv-panel-footer .mc-btn {
        width: 100%;
    }

    .mg-agenda-time-grid {
        display: grid;
        grid-template-columns: 1fr;
    }

    .swal2-popup.mg-swal-modal {
        width: calc(100% - 20px) !important;
    }

    .mg-swal-modal .mg-swal-modal__body {
        padding: 14px !important;
    }

    .mg-swal-modal .mg-swal-modal__actions .mc-btn {
        width: 100%;
    }
}

/* ============================================================
   MENTORIAS EM GRUPO  (.mg-*) — alinhado com encontrar-mentor (.fm-*)
   ============================================================ */

/* Seletor de programa */
.mg-program-bar {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid #e4eaf0;
    border-radius: 8px;
    padding: 10px 16px;
    margin-bottom: 16px;
}
.mg-program-label {
    font-size: 13px;
    font-weight: 600;
    color: #4c5968;
    white-space: nowrap;
}
.mg-program-form { flex: 1; margin: 0; }
.mg-program-select { max-width: 320px; font-family: 'Open Sans', sans-serif; font-size: 13px; font-weight: 600; }

/* Card de filtro (header + form num único bloco) */
.mg-filter-card {
    background: #fff;
    border: 1px solid #e4eaf0;
    border-radius: 10px;
    padding: 18px 20px 14px;
    margin-bottom: 20px;
}
.mg-filter-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 14px;
}
.mg-filter-title {
    font-size: 15px;
    font-weight: 700;
    color: #2d3748;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.mg-filter-title i { color: var(--primary); margin-right: 6px; opacity: .8; }
.mg-help-btn { color: #9baab6; font-size: 20px; flex-shrink: 0; margin-top: 2px; transition: color .15s; }
.mg-help-btn:hover { color: var(--primary); }

.mg-filter-form { margin: 0; }
.mg-filter-fields {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-end;
}
.mg-filter-field { flex: 1; min-width: 200px; }
.mg-filter-field--btn { flex: 0 0 auto; }
.mg-label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #4c5968;
    margin-bottom: 5px;
}
.mg-search-btn { margin-top: 0; }

/* Paginação */
.mg-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 0 0 16px;
    margin-bottom: 0;
}
.mg-pagination--bottom { padding: 16px 0 0; }
.mg-page-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #5a6473;
    background: #f7f9fc;
    border: 1px solid #eef1f5;
    text-decoration: none;
    transition: background .12s, color .12s, border-color .12s;
}
.mg-page-btn:hover { background: var(--primary); color: #fff; border-color: var(--primary); text-decoration: none; }
.mg-page-btn.active { background: var(--primary); color: #fff; border-color: var(--primary); }

/* Grid de cards */
.mg-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

/* Card */
.mg-card {
    background: #fff;
    border: 1px solid #eef1f5;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: box-shadow .15s, transform .15s;
}
.mg-card:hover { box-shadow: 0 6px 20px rgba(0,0,0,.1); transform: translateY(-2px); }
.mg-card--inscrito { border-color: var(--primary); border-width: 2px; }

.mg-card-header {
    padding: 14px 14px 10px;
    border-bottom: 1px solid #f0f3f6;
    cursor: pointer;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}
.mg-card-title {
    flex: 1;
    font-size: 13px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #1a2637;
    line-height: 1.4;
}

/* Badges */
.mg-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 10px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    white-space: nowrap;
    flex-shrink: 0;
}
.mg-badge--inscrito { background: #f0fdf4; color: #16a34a; border: 1px solid #bbf7d0; }
.mg-badge--spec     { background: #eff6ff; color: var(--primary); }

/* Mentor no card */
.mg-card-mentor {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    cursor: pointer;
    transition: background .12s;
}
.mg-card-mentor:hover { background: #f7f9fc; }
.mg-mentor-avatar {
    width: 46px;
    height: 46px;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0;
    border: 2px solid #eef1f5;
}
.mg-mentor-info { flex: 1; min-width: 0; }
.mg-mentor-name {
    font-size: 13px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #2d3748;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mg-mentor-role {
    font-size: 11px;
    font-weight: 600;
    color: #7a8fa6;
    font-family: 'Open Sans', sans-serif;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: 2px;
}

/* Infos do card */
.mg-card-infos { padding: 8px 14px; flex: 1; }
.mg-info-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    font-weight: 600;
    font-family: 'Open Sans', sans-serif;
    color: #5a6473;
    padding: 4px 0;
}
.mg-info-icon { color: var(--primary); opacity: .7; width: 14px; text-align: center; flex-shrink: 0; }

/* Barra de vagas */
.mg-vagas-bar {
    height: 4px;
    background: #eef1f5;
    border-radius: 2px;
    margin-top: 8px;
    overflow: hidden;
}
.mg-vagas-fill {
    height: 100%;
    background: var(--primary);
    border-radius: 2px;
    transition: width .4s ease;
}

/* Ações do card */
.mg-card-actions {
    padding: 10px 14px 14px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    border-top: 1px solid #f0f3f6;
}

/* Empty state */
.mg-empty {
    padding: 48px 20px;
    text-align: center;
    color: #9baab6;
}
.mg-empty-icon { font-size: 36px; margin-bottom: 12px; display: block; opacity: .5; }
.mg-empty p { font-size: 14px; font-weight: 600; font-family: 'Open Sans', sans-serif; margin: 0; }

/* ---- Modal de inscrição ---- */
.mg-modal-title {
    font-size: 16px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #1a2637;
    margin: 0 0 10px;
}
.mg-modal-desc {
    font-size: 13px;
    font-weight: 600;
    font-family: 'Open Sans', sans-serif;
    color: #5a6473;
    line-height: 1.6;
    margin-bottom: 14px;
}
.mg-modal-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

/* ============================================================
   PADRONIZACAO GLOBAL — IMAGENS DE USUARIO
   ============================================================ */
.busca_mentor_avatar,
.avatar.img-circle,
.avatar.img-thumbnail,
.inbox-body-img img {
    border: 2px solid #eef1f5 !important;
    border-radius: 8px !important;
}
.mg-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    background: #f0f5ff;
    border: 1px solid #dde3ea;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #2d3748;
}
.mg-chip i { color: var(--primary); }

.mg-section-label {
    font-size: 11px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #9baab6;
    text-transform: uppercase;
    letter-spacing: .08em;
    margin: 16px 0 10px;
}
.mg-section-label i { color: var(--primary); margin-right: 4px; }

/* Encontros no modal */
.mg-encontros { display: flex; flex-direction: column; gap: 8px; }
.mg-encontro-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: #f7f9fc;
    border: 1px solid #eef1f5;
    border-radius: 8px;
}
.mg-encontro-num {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: var(--primary);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.mg-encontro-info { flex: 1; min-width: 0; }
.mg-encontro-titulo {
    font-size: 13px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #2d3748;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mg-encontro-data {
    font-size: 11px;
    font-weight: 600;
    font-family: 'Open Sans', sans-serif;
    color: #7a8fa6;
    margin-top: 2px;
}
.mg-encontro-link { flex-shrink: 0; }
.mg-encontro-presencial { color: #9baab6; font-size: 14px; }

/* Mentor no modal */
.mg-modal-mentor {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px;
    background: #f7f9fc;
    border: 1px solid #eef1f5;
    border-radius: 8px;
    cursor: pointer;
    transition: background .12s;
}
.mg-modal-mentor:hover { background: #eff6ff; }
.mg-modal-avatar {
    width: 56px;
    height: 56px;
    border-radius: 10px;
    object-fit: cover;
    flex-shrink: 0;
    border: 2px solid #eef1f5;
}
.mg-modal-mentor-info { flex: 1; }
.mg-modal-mentor-name { font-size: 14px; font-weight: 700; font-family: 'Open Sans', sans-serif; color: #1a2637; }
.mg-modal-mentor-role { font-size: 12px; font-weight: 600; color: #7a8fa6; font-family: 'Open Sans', sans-serif; margin-top: 2px; }
.mg-modal-mentor-bio { font-size: 12px; font-weight: 600; color: #5a6473; font-family: 'Open Sans', sans-serif; margin-top: 6px; line-height: 1.5; }
.mg-modal-mentor-link { font-size: 12px; font-weight: 700; color: var(--primary); font-family: 'Open Sans', sans-serif; margin-top: 6px; display: inline-block; }

/* Responsive */
@media (max-width: 900px) { .mg-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 580px) { .mg-grid { grid-template-columns: 1fr; padding: 12px; } }

/* ============================================================
   PAINEL ATIVIDADE — modal sessão/atividade  (.pa-*)
   ============================================================ */
#painel_atividade .modal-dialog {  }
#painel_atividade .modal-content { border-radius: 10px; border: none; box-shadow: 0 8px 40px rgba(0,0,0,.14); }
#painel_atividade .modal-header {
    background: #f7f9fc;
    border-bottom: 1px solid #eef1f5;
    border-radius: 10px 10px 0 0;
    padding: 14px 18px;
    display: flex;
    align-items: center;
    gap: 10px;
}
#painel_atividade .modal-title {
    font-size: 15px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #1a2637;
    text-align: left;
    margin: 0;
    flex: 1;
}
#painel_atividade .modal-footer {
    border-top: 1px solid #eef1f5;
    padding: 10px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    flex-wrap: wrap;
}
#painel_atividade .modal-footer > * { margin: 0; }

/* Nav tabs do painel */
.pa-tabs {
    display: flex;
    border-bottom: 2px solid #eef1f5;
    padding: 0 18px;
    background: #fff;
    gap: 0;
}
.pa-tab {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 11px 16px;
    font-size: 12px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #7a8fa6;
    text-transform: uppercase;
    letter-spacing: .05em;
    text-decoration: none;
    border-bottom: 3px solid transparent;
    margin-bottom: -2px;
    cursor: pointer;
    transition: color .15s, border-color .15s;
}
.pa-tab:hover { color: var(--primary); text-decoration: none; }
.pa-tab.active { color: var(--primary); border-bottom-color: var(--primary); }

/* Corpo das informações */
.pa-body { padding: 18px; }

.pa-section-title {
    font-size: 10px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #9baab6;
    text-transform: uppercase;
    letter-spacing: .09em;
    margin: 0 0 12px;
}

.pa-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 9px 0;
    border-bottom: 1px solid #f5f7fa;
}
.pa-row:last-child { border-bottom: none; }

.pa-row-icon {
    width: 32px;
    height: 32px;
    border-radius: 7px;
    background: #f0f4f8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    color: var(--primary);
    flex-shrink: 0;
}
.pa-row-content { flex: 1; min-width: 0; }
.pa-row-label {
    font-size: 11px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #9baab6;
    text-transform: uppercase;
    letter-spacing: .06em;
    margin-bottom: 2px;
}
.pa-row-value {
    font-size: 13px;
    font-weight: 600;
    font-family: 'Open Sans', sans-serif;
    color: #2d3748;
    word-break: break-word;
}
.pa-row-value a { color: var(--primary); word-break: break-all; }

/* Badge de status */
.pa-status {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
}
.pa-status--confirmed { background: #f0fdf4; color: #16a34a; }
.pa-status--pending   { background: #fffbeb; color: #d97706; }
.pa-status--cancelled { background: #fef2f2; color: #dc2626; }
.pa-status--default   { background: #f0f4f8; color: #5a6473; }

/* Contato/usuário linha */
.pa-user-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 0 8px;
    border-bottom: 1px solid #f5f7fa;
    margin-bottom: 4px;
}
.pa-user-name {
    font-size: 14px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    color: #1a2637;
    flex: 1;
}
.pa-user-role {
    font-size: 11px;
    font-weight: 600;
    color: #9baab6;
    text-transform: uppercase;
    letter-spacing: .06em;
    display: block;
    margin-top: 1px;
}
/* ============================================================
   NOTA: estilos de .prf-* (meu-perfil.php / include_perfil.php)
   vivem em extensoes/layout/css/perfil.css — CSS dedicado.
   Estilos de .mural-* (mural_mentoria.js) vivem em
   extensoes/layout/css/mural.css — CSS dedicado.
   ============================================================ */

/* ============================================================
   GLOBAL — modal footer: botão fechar (aparência)
   ============================================================ */
.modal-footer .btn-fechar,
.modal-footer [data-dismiss="modal"].btn,
.modal .btn-fechar {
    background: transparent;
    border: 1.5px solid #dde3ea;
    color: #5a6473;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    border-radius: 6px;
    padding: 7px 16px;
    font-size: 12px;
    cursor: pointer;
    transition: border-color .15s, color .15s;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.modal-footer .btn-fechar:hover,
.modal-footer [data-dismiss="modal"].btn:hover,
.modal .btn-fechar:hover {
    border-color: #9baab6;
    color: #2d3748;
    text-decoration: none;
}


/* ============================================================
   GLOBAL — modal footer: fechar à esquerda, ações à direita
   ============================================================ */


/* Botão fechar sempre à esquerda — os outros botões vão para a direita */
.modal-footer .btn-fechar,
.modal-footer [data-dismiss="modal"]:not(.close) {
    order: -1;
}

/* ============================================================
   GLOBAL — botão close sempre à direita em todos os modais
   ============================================================ */
.modal-header {
    align-items: center !important;
    gap: 10px !important;
}

.modal-header .close {
    order: 1 !important;
    float: right !important;
    margin: 0 !important;
    flex-shrink: 0;
}


.menu-container-flut {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    padding: 20px 10px;
    max-width: 1500px;
    margin: auto;
}

.menu-item-flut {
    background: #ffffff;
    padding: 18px 25px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;

    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: all 0.25s ease;
    border: 1px solid #e6e6e6;

    user-select: none;
}

.menu-item-flut i {
    font-size: 22px;
    color: #444;
}

.menu-item-flut:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 14px rgba(0,0,0,0.12);
    background: #f7f7f7;
}

.menu-item-flut:active {
    transform: scale(0.97);
}


/* BOTÃO FLUTUANTE */
#floatingMenuBtn {
    position: fixed;
    top: 10%;
    right: 15px;
    background: #ffffff;
    color: white;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    cursor: pointer;
    z-index: 9999;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    transition: background .3s ease;
    border: 1px solid var(--primary);
}
#floatingMenuBtn i{
    color: var(--primary);
}
#floatingMenuBtn:hover {
    background: var(--primary-hover);
}

/* MENU LATERAL DROPDOWN */
#floatingMenu {
    position: fixed;
    top: 50%;
    right: -260px; /* escondido inicialmente */
    transform: translateY(-50%);
    width: 230px;
    background: white;
    padding: 15px;
    border-radius: 12px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.15);
    z-index: 9998;
    transition: right .35s ease;
    max-height: 70vh;
    overflow-y: auto;
}

/* Quando aberto */
#floatingMenu.open {
    right: 60px; /* distância perfeita do botão */
}

/* Scrollbar personalizada (Chrome / Edge / Opera) */
#floatingMenu::-webkit-scrollbar {
    width: 8px;
}

#floatingMenu::-webkit-scrollbar-track {
    background: #f0f0f0;
    border-radius: 10px;
}

#floatingMenu::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 10px;
    transition: 0.3s;
}

#floatingMenu::-webkit-scrollbar-thumb:hover {
    background: #a4a4a4;
}

/* Scrollbar personalizada para Firefox */
#floatingMenu {
    scrollbar-width: thin;
    scrollbar-color: #c1c1c1 #f0f0f0;
}


#floatingMenu .menu-item-flut {
    padding: 12px;
    margin-bottom: 8px;
    border-radius: 10px;
    background: #f5f5f5;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    transition: .2s;
}

#floatingMenu .menu-item-flut:hover {
    background: #eaeaea;
    transform: translateX(4px);
}

#floatingMenu .menu-item-flut i {
    font-size: 18px;
}
@media (max-width: 1200px) {
    #floatingMenuBtn{
        display: none;
    }

}

@media (max-width: 768px) {
    #floatingMenuBtn {
        top: 10%;
        right: 10px;
    }

    #floatingMenu {
        width: 200px;
    }

    #floatingMenu.open {
        right: 55px;
    }
}

.menu-container-flut {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    padding: 20px 10px;
    max-width: 1500px;
    margin: auto;
}

.menu-item-flut {
    background: #ffffff;
    padding: 18px 25px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;

    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: all 0.25s ease;
    border: 1px solid #e6e6e6;

    user-select: none;
}

.menu-item-flut i {
    font-size: 22px;
    color: #444;
}

.menu-item-flut:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 14px rgba(0,0,0,0.12);
    background: #f7f7f7;
}

.menu-item-flut:active {
    transform: scale(0.97);
}


/* BOTÃO FLUTUANTE */
#floatingMenuBtn {
    position: fixed;
    top: 10%;
    right: 15px;
    background: #ffffff;
    color: white;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    cursor: pointer;
    z-index: 9999;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    transition: background .3s ease;
    border: 1px solid var(--primary);
}
#floatingMenuBtn i{
    color: var(--primary);
}
#floatingMenuBtn:hover {
    background: var(--primary-hover);
}

/* MENU LATERAL DROPDOWN */
#floatingMenu {
    position: fixed;
    top: 50%;
    right: -260px; /* escondido inicialmente */
    transform: translateY(-50%);
    width: 230px;
    background: white;
    padding: 15px;
    border-radius: 12px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.15);
    z-index: 9998;
    transition: right .35s ease;
    max-height: 70vh;
    overflow-y: auto;
}

/* Quando aberto */
#floatingMenu.open {
    right: 60px; /* distância perfeita do botão */
}

/* Scrollbar personalizada (Chrome / Edge / Opera) */
#floatingMenu::-webkit-scrollbar {
    width: 8px;
}

#floatingMenu::-webkit-scrollbar-track {
    background: #f0f0f0;
    border-radius: 10px;
}

#floatingMenu::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 10px;
    transition: 0.3s;
}

#floatingMenu::-webkit-scrollbar-thumb:hover {
    background: #a4a4a4;
}

/* Scrollbar personalizada para Firefox */
#floatingMenu {
    scrollbar-width: thin;
    scrollbar-color: #c1c1c1 #f0f0f0;
}


#floatingMenu .menu-item-flut {
    padding: 12px;
    margin-bottom: 8px;
    border-radius: 10px;
    background: #f5f5f5;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    transition: .2s;
}

#floatingMenu .menu-item-flut:hover {
    background: #eaeaea;
    transform: translateX(4px);
}

#floatingMenu .menu-item-flut i {
    font-size: 18px;
}
@media (max-width: 1200px) {
    #floatingMenuBtn{
        display: none;
    }

}

@media (max-width: 768px) {
    #floatingMenuBtn {
        top: 10%;
        right: 10px;
    }

    #floatingMenu {
        width: 200px;
    }

    #floatingMenu.open {
        right: 55px;
    }
}

.menu-container-flut {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    padding: 20px 10px;
    max-width: 1500px;
    margin: auto;
}

.menu-item-flut {
    background: #ffffff;
    padding: 18px 25px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;

    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: all 0.25s ease;
    border: 1px solid #e6e6e6;

    user-select: none;
}

.menu-item-flut i {
    font-size: 22px;
    color: #444;
}

.menu-item-flut:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 14px rgba(0,0,0,0.12);
    background: #f7f7f7;
}

.menu-item-flut:active {
    transform: scale(0.97);
}


/* BOTÃO FLUTUANTE */
#floatingMenuBtn {
    position: fixed;
    top: 10%;
    right: 15px;
    background: #ffffff;
    color: white;
    right: 15px; /* sempre fixo na borda direita */
    color: white;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    cursor: pointer;
    z-index: 9999;
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
    transition: background .3s ease;
}

#floatingMenuBtn:hover {
    background: var(--primary-hover);
}

/* MENU LATERAL DROPDOWN */
#floatingMenu {
    position: fixed;
    top: 50%;
    right: -260px; /* escondido inicialmente */
    transform: translateY(-50%);
    width: 230px;
    background: white;
    padding: 15px;
    border-radius: 12px;
    box-shadow: 0 4px 14px rgba(0,0,0,0.15);
    z-index: 9998;
    transition: right .35s ease;
    max-height: 70vh;
    overflow-y: auto;
}

/* Quando aberto */
#floatingMenu.open {
    right: 60px; /* distância perfeita do botão */
}

/* Scrollbar personalizada (Chrome / Edge / Opera) */
#floatingMenu::-webkit-scrollbar {
    width: 8px;
}

#floatingMenu::-webkit-scrollbar-track {
    background: #f0f0f0;
    border-radius: 10px;
}

#floatingMenu::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 10px;
    transition: 0.3s;
}

#floatingMenu::-webkit-scrollbar-thumb:hover {
    background: #a4a4a4;
}

/* Scrollbar personalizada para Firefox */
#floatingMenu {
    scrollbar-width: thin;
    scrollbar-color: #c1c1c1 #f0f0f0;
}


#floatingMenu .menu-item-flut {
    padding: 12px;
    margin-bottom: 8px;
    border-radius: 10px;
    background: #f5f5f5;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    transition: .2s;
}

#floatingMenu .menu-item-flut:hover {
    background: #eaeaea;
    transform: translateX(4px);
}

#floatingMenu .menu-item-flut i {
    font-size: 18px;
}

@media (max-width: 768px) {
    #floatingMenuBtn {
        top: 10%;
        right: 10px;
    }

    #floatingMenu {
        width: 200px;
    }

    #floatingMenu.open {
        right: 55px;
    }

    #floatingMenuBtn{
        display: none;
    }
}

/* Botão principal do roteiro */
.toggle-etapas-roteiro {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 5px;
    padding: 10px 16px;
    text-align: center;
    line-height: 1.5;
}

/* Linha 1 — programa | pilar */
.roteiro-badges {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-bottom: 4px;
}

.badge-programa,
.badge-pilar {
    font-size: 11px;
    font-weight: 500;
    padding: 2px 8px;
    border-radius: 10px;
    white-space: nowrap;
}

.badge-programa {
    background-color: rgba(255,255,255,0.15);
    color: #fff;
}

.badge-pilar {
    background-color: rgba(255,255,255,0.15);
    color: #fff;
}

.badge-separador {
    color: rgba(255,255,255,0.4);
    font-size: 13px;
}

/* Linha 2 — título + chevron */
.roteiro-titulo-texto {
    font-size: 14px;
    font-weight: 600;
    color: inherit; /* herda a cor do botão btn-primary */
    display: flex;
    align-items: center;
    gap: 8px;
}

.roteiro-chevron {
    font-size: 12px;
    transition: transform 0.25s ease;
}

/* Chevron animado ao expandir */
.toggle-etapas-roteiro.aberto .roteiro-chevron {
    transform: rotate(180deg);
}

/* Etapas */
.etapa-item {
    border-left: 3px solid #0d7fc1;
    transition: background 0.15s;
}

.etapa-item:hover {
    background-color: #f0f7ff;
}

.etapa-toggle {
    font-weight: 500;
    color: #1a3a5c;
}

.etapa-details {
    color: #444;
    font-size: 13px;
    margin-top: 6px;
}


.roteiro-badges {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 6px;
}

.roteiro-titulo-texto {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    font-size: 14px;
    font-weight: 600;
    color: inherit;
}

.roteiro-titulo {
    text-align: center;
    padding: 0 25px;
}

.roteiro-chevron {
    float: right;
    right: 0;
    font-size: 12px;
    transition: transform 0.25s ease;
}



/* Permite rolagem geral do modal quando necessário */
.modal {
    overflow-y: auto !important;
}

/* Evita que o modal cole nas bordas da tela */
.modal-dialog {
    margin-top: 20px;
    margin-bottom: 20px;
}

/* Faz o conteúdo respeitar a altura da tela */
.modal-content-scroll {
    max-height: calc(100vh - 40px);
    display: flex;
    flex-direction: column;
}

/* Header e footer ficam sempre visíveis */
.modal-header,
.modal-footer {
    flex: 0 0 auto;
}

/* Apenas o corpo do modal rola */
.modal-body-scroll {
    overflow-y: auto;
    flex: 1 1 auto;
    max-height: calc(100vh - 170px);
}

/* ----- Menu vertical (parametro layout_menu_tipo) -----
   Movido para extensoes/layout/css/menu.css (estrutura + visual). */

.filter-btn-col { padding-top: 25px; }


/* ─── Dashboard Hero (Zona 1) ─────────────────────────────── */
.dashboard-hero {
    background: #ffffff;
    border-radius: 8px;
    border-left: 4px solid var(--primary, #005e8d);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    padding: 18px 22px;
    margin-bottom: 18px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 18px;
}

.dashboard-hero-greeting {
    flex: 1 1 220px;
    min-width: 200px;
}

.dashboard-hero-title {
    margin: 0;
    font-size: 20px;
    font-weight: 500;
    color: #2d3748;
    line-height: 1.3;
}

.dashboard-hero-title strong {
    font-weight: 600;
}

.dashboard-hero-role {
    display: inline-block;
    margin-top: 4px;
    font-size: 13px;
    color: #6b7280;
    font-weight: 500;
    letter-spacing: 0.2px;
}

.dashboard-hero-kpis {
    flex: 2 1 600px;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
    margin-bottom: 10px;
}

.kpi-card {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 8px;
    border-radius: 8px;
    background: #FFFFFF;
    border: 1px solid #e5e7eb;
    border-left: 3px solid #cbd5e1;
    text-decoration: none;
    color: inherit;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
    min-height: 64px;
}

.kpi-card:hover,
.kpi-card:focus {
    text-decoration: none;
    color: inherit;
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.07);
}

.kpi-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 16px;
    background: #e5e7eb;
    color: #475569;
}

.kpi-body {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
    min-width: 0;
}

.kpi-value {
    font-size: 22px;
    font-weight: 700;
    color: #2d3748;
}

.kpi-label {
    font-size: 12px;
    color: #6b7280;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.kpi-card-info       { border-left-color: #0ea5e9; }
.kpi-card-info       .kpi-icon { background: rgba(14, 165, 233, 0.12); color: #0ea5e9; }

.kpi-card-warning    { border-left-color: #f59e0b; background: #fff8eb; }
.kpi-card-warning    .kpi-icon { background: rgba(245, 158, 11, 0.15); color: #b45309; }
.kpi-card-warning    .kpi-value { color: #b45309; }

.kpi-card-danger     { border-left-color: #dc3545; background: #fef2f2; }
.kpi-card-danger     .kpi-icon { background: rgba(220, 53, 69, 0.15); color: #b91c1c; }
.kpi-card-danger     .kpi-value { color: #b91c1c; }

.kpi-card-success    { border-left-color: #28a745; }
.kpi-card-success    .kpi-icon { background: rgba(40, 167, 69, 0.15); color: #15803d; }

.kpi-card-neutral    { border-left-color: #cbd5e1; }

.match-kpis {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 15px;
}

@media (max-width: 991px) {
    .dashboard-hero-kpis {
        grid-template-columns: repeat(2, 1fr);
    }
    .match-kpis {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .dashboard-hero {
        padding: 14px 16px;
    }
    .dashboard-hero-title {
        font-size: 17px;
    }
    .dashboard-hero-kpis {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }
    .kpi-card {
        padding: 10px;
        min-height: 56px;
        gap: 8px;
    }
    .kpi-icon {
        width: 32px;
        height: 32px;
        font-size: 14px;
    }
    .kpi-value {
        font-size: 18px;
    }
    .kpi-label {
        font-size: 11px;
        white-space: normal;
    }
}

h3{
    font-size: 15px;
    font-weight: 700;
    color: #2d3748;
    margin: 0 0 6px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}


/* ========== Dashboard reveal animations ========== */
@keyframes dash-reveal {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
}

.dashboard-reveal .dashboard-hero-greeting,
.dashboard-reveal .kpi-card,
.dashboard-reveal .block.linha-azul,
.dashboard-reveal .card-agenda-mentor {
    opacity: 0;
    animation: dash-reveal 500ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.dashboard-reveal .dashboard-hero-greeting { animation-delay: 0ms; }
.dashboard-reveal .dashboard-hero-kpis .kpi-card:nth-child(1) { animation-delay: 100ms; }
.dashboard-reveal .dashboard-hero-kpis .kpi-card:nth-child(2) { animation-delay: 180ms; }
.dashboard-reveal .dashboard-hero-kpis .kpi-card:nth-child(3) { animation-delay: 260ms; }
.dashboard-reveal .dashboard-hero-kpis .kpi-card:nth-child(4) { animation-delay: 340ms; }

.dashboard-reveal .block.linha-azul { animation-delay: 450ms; }

.dashboard-reveal .card-agenda-mentor { animation-delay: 550ms; }
.dashboard-reveal .card-agenda-mentor:nth-child(n+2) { animation-delay: 610ms; }
.dashboard-reveal .card-agenda-mentor:nth-child(n+3) { animation-delay: 670ms; }
.dashboard-reveal .card-agenda-mentor:nth-child(n+4) { animation-delay: 730ms; }
.dashboard-reveal .card-agenda-mentor:nth-child(n+5) { animation-delay: 790ms; }

@media (prefers-reduced-motion: reduce) {
    .dashboard-reveal .dashboard-hero-greeting,
    .dashboard-reveal .kpi-card,
    .dashboard-reveal .block.linha-azul,
    .dashboard-reveal .card-agenda-mentor {
        animation: none;
        opacity: 1;
        transform: none;
    }
}
.kpi-card-body{
    width: 120px;
}

.navbar.navbar-expand-lg .navbar-nav .nav-link {
    padding-left: 12px;
    padding-right: 12px;
    color: white;
}

veja esse codigo    /* Modern Tabs Styling */
.nav-tabs {
    display: flex;
    gap: 8px;
    padding: 0 4px;
}

.nav-tabs .nav-link {
    border: none;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 12px;
    color: #64748b;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    gap: 8px;
    background: transparent;
}

.nav-tabs .nav-link:hover {
    color: var(--primary-color);
    background: var(--sidebar-hover-bg);
}

.nav-tabs .nav-link.active {
    color: var(--primary-color);
    background: var(--primary-light);
    box-shadow: none !important;
}

.nav-tabs .nav-link i {
    font-size: 1rem;
}



.btn-outline-primary {
    border-color: #e0e7ff;
    color: #4361ee;
    background: #f5f7ff;
}
.btn-sm {
    padding: 6px 12px;
    min-width: 34px;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    transition: all 0.2s;
}

/* Botões estilo Bootstrap 5 sem conflito com Bootstrap 3 */
.btn5 {
    display: inline-block;
    padding: 6px 6px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    border: 1px solid transparent;
    border-radius: 6px;
    user-select: none;
    transition: color .15s ease-in-out,
                background-color .15s ease-in-out,
                border-color .15s ease-in-out,
                box-shadow .15s ease-in-out;
}

.btn5:hover,
.btn5:focus {
    text-decoration: none;
}

.btn5:focus {
    outline: 0;
    box-shadow: 0 0 0 4px rgba(13, 110, 253, .25);
}

.btn5:disabled,
.btn5.disabled {
    pointer-events: none;
    opacity: .65;
}

/* Primário */
.btn5-primary {
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.btn5-primary:hover {
    color: #fff;
    background-color: #0b5ed7;
    border-color: #0a58ca;
}

/* Secundário */
.btn5-secondary {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
}

.btn5-secondary:hover {
    color: #fff;
    background-color: #5c636a;
    border-color: #565e64;
}

/* Sucesso */
.btn5-success {
    color: #fff;
    background-color: #198754;
    border-color: #198754;
}

.btn5-success:hover {
    color: #fff;
    background-color: #157347;
    border-color: #146c43;
}

/* Perigo */
.btn5-danger {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}

.btn5-danger:hover {
    color: #fff;
    background-color: #bb2d3b;
    border-color: #b02a37;
}

/* Warning */
.btn5-warning {
    color: #000;
    background-color: #ffc107;
    border-color: #ffc107;
}

.btn5-warning:hover {
    color: #000;
    background-color: #ffca2c;
    border-color: #ffc720;
}

/* Info */
.btn5-info {
    color: #000;
    background-color: #0dcaf0;
    border-color: #0dcaf0;
}

.btn5-info:hover {
    color: #000;
    background-color: #31d2f2;
    border-color: #25cff2;
}

/* Light */
.btn5-light {
    color: #000;
    background-color: #f8f9fa;
    border-color: #f8f9fa;
}

.btn5-light:hover {
    color: #000;
    background-color: #d3d4d5;
    border-color: #c6c7c8;
}

/* Dark */
.btn5-dark {
    color: #fff;
    background-color: #212529;
    border-color: #212529;
}

.btn5-dark:hover {
    color: #fff;
    background-color: #424649;
    border-color: #373b3e;
}

.btn5-outline-primary {
    color: #0d6efd;
    background-color: transparent;
    border-color: #0d6efd;
}

.btn5-outline-primary:hover {
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.btn5-outline-success {
    color: #198754;
    background-color: transparent;
    border-color: #198754;
}

.btn5-outline-success:hover {
    color: #fff;
    background-color: #198754;
    border-color: #198754;
}

.btn5-outline-danger {
    color: #dc3545;
    background-color: transparent;
    border-color: #dc3545;
}

.btn5-outline-danger:hover {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}

.btn5-outline-warning {
    color: #ffc107;
    background-color: transparent;
    border-color: #ffc107;
}

.btn5-outline-warning:hover {
    color: #000;
    background-color: #ffc107;
    border-color: #ffc107;
}

.btn5-outline-secondary {
    color: #6c757d;
    background-color: transparent;
    border-color: #6c757d;
}

.btn5-outline-secondary:hover {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
}

.btn5-sm {
    padding: 4px 8px;
    font-size: 12px;
    border-radius: 4px;
}

.btn5-lg {
    padding: 8px 16px;
    font-size: 18px;
    border-radius: 8px;
}


.btn5-action {
    min-width: 20px !important;
    min-height: 20px !important;
    padding: 5px 5px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    border: 1px solid transparent;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    margin-bottom: 2px;
    margin-right: 1px;
}

.btn5-action-primary {
    border-color: color-mix(in srgb, var(--primary) 45%, #fff);
    color: var(--primary);
    background: color-mix(in srgb, var(--primary) 8%, #fff);
}

.btn5-action-primary:hover {
    background: var(--primary);
    color: #fff;
    border-color: var(--primary);
}

.btn5-action-danger {
    border-color: #fca5a5;
    color: #ef4444;
    background: #fff1f1;
}

.btn5-action-danger:hover {
    background: #ef4444;
    color: #fff;
    border-color: #ef4444;
}

.btn5-action-warning {
    border-color: #fcd34d;
    color: #f59e0b;
    background: #fffbeb;
}

.btn5-action-warning:hover {
    background: #f59e0b;
    color: #fff;
    border-color: #f59e0b;
}

.btn5-action-info {
    border-color: #7dd3fc;
    color: #0ea5e9;
    background: #f0f9ff;
}

.btn5-action-info:hover {
    background: #0ea5e9;
    color: #fff;
    border-color: #0ea5e9;
}

.btn5-action-success {
    border-color: #86efac;
    color: #15803d;
    background: #f0fdf4;
}

.btn5-action-success:hover {
    background: #15803d;
    color: #fff;
    border-color: #15803d;
}

.actions-column {
    white-space: nowrap;
    width: 1%;
}

.actions-column .btn5-action {
    margin-right: 4px;
}

.avatar{
    width: 45px;
    height: 45px;
    border: 2px solid #ebebeb;
    border-radius: 6px;
}

/* Fallback de avatar com iniciais (usuário sem foto) — ver funcoes/FC_Sistema.php: avatarIniciaisHtml() */
.avatar-name {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    flex-shrink: 0;
    vertical-align: middle;
    opacity: 0.8;
    border-radius: 8px;
}
/* Dentro dos cards mc-avatar/mc-card__avatar o próprio container já define tamanho/sombra/raio */
.mc-avatar .avatar-name,
.mc-card__avatar .avatar-name {
    width: 100%;
    height: 100%;
    border-radius: inherit;
    font-size: inherit;
    line-height: normal;
}
/* Rodapé fixo no fim da tela quando o conteúdo é curto,
   mas empurrado para baixo normalmente quando o conteúdo é maior que a viewport */
#main-container {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
.style-alt #page-content {
    flex: 1 0 auto;
}
/* ─── Acessibilidade: seção no dropdown do perfil ─────────── */
.ac-menu-section         { padding: 6px 14px 10px; cursor: default; }
.ac-menu-section:hover   { background: transparent !important; }
.ac-menu-label           { display: block; font-size: 11px; color: #999; margin-bottom: 6px; text-transform: uppercase; letter-spacing: 0.5px; }
.ac-controls             { display: flex; gap: 4px; align-items: center; }
.ac-btn                  { min-width: 30px; padding: 2px 6px; font-size: 12px; }
.ac-btn.active           { background: #337ab7; color: #fff; border-color: #2e6da4; }

/* Zoom na área de conteúdo — funciona independente de font-size fixo nos filhos */
body.ac-fonte-1 #page-content { zoom: 0.85; }
body.ac-fonte-3 #page-content { zoom: 1.15; }

/* Alto contraste */
body.ac-contraste #page-content                          { background: #000 !important; color: #ffff00 !important; }
body.ac-contraste #page-content a,
body.ac-contraste #page-content th,
body.ac-contraste #page-content td                       { color: #ffff00 !important; }
body.ac-contraste #page-content .panel,
body.ac-contraste #page-content .card,
body.ac-contraste #page-content .well                    { background: #111 !important; border-color: #ffff00 !important; }


#imgMentoradoMentor{
    height: 80px;
    width: 80px;
}

/* voice-textarea: botão de microfone overlay */
.voice-btn {
    position: absolute;
    bottom: 8px;
    right: 8px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid var(--primary, #4a90d9);
    background: #fff;
    color: var(--primary, #4a90d9);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: .65;
    transition: opacity .2s;
    z-index: 2;
    padding: 0;
}
.voice-btn:hover { opacity: 1; }
.voice-btn:disabled { opacity: .25; cursor: not-allowed; border-color: #aaa; color: #aaa; }
.voice-btn--active {
    border-color: #e53e3e;
    color: #e53e3e;
    opacity: 1;
    animation: voice-pulse 1s ease-in-out infinite;
}
@keyframes voice-pulse {
    0%, 100% { opacity: 1; }
    50%       { opacity: .35; }
}

.only-desktop {
    display: none !important;
}

@media (min-width: 992px) {
    .nav-shortcuts-wrapper {
        display: flex !important;
    }
}

.nav-shortcuts-wrapper {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 20px;
    z-index: 10;
    margin-top: 10px;
}

.header-minimenu {
    box-shadow: 0 2px 8px #fd97970d;
    border: 1px solid #FFFFFF;
    height: 40px;
    width: 40px;
    border-radius: 6px;
    padding: 5px;
    cursor: pointer;
    text-align: center;
}


.header-minimenu i {
    margin-top: 6px;
}

.nav-shortcuts-wrapper i {
    font-size: 16px;
    color: #FFFFFF;
}

/* ===================================================================
   BOLINHAS - badges circulares de programa/pilar nas tabelas
   =================================================================== */

.bolinhas-grupo {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 3px;
}

.bolinha-tag {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    box-sizing: border-box;
    border-radius: 50%;
    background-color: color-mix(in srgb, var(--bolinha-cor, #9aa0a6) 14%, #fff);
    border: 1px solid color-mix(in srgb, var(--bolinha-cor, #9aa0a6) 70%, #000);
    color: color-mix(in srgb, var(--bolinha-cor, #9aa0a6) 85%, #000);
    font-weight: 700;
    font-size: 10px;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    flex-shrink: 0;
    cursor: default;
}

.bolinha-tag--more {
    background-color: #f4f6f8;
    border-color: #6b7280;
    color: #4b5563;
}

.bolinha-tag[title]:hover::after {
    content: attr(title);
    position: absolute;
    bottom: calc(100% + 7px);
    left: 50%;
    transform: translateX(-50%);
    background: #2d3748;
    color: #fff;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 400;
    font-family: 'Open Sans', sans-serif;
    text-transform: none;
    letter-spacing: normal;
    white-space: nowrap;
    z-index: 1000;
    pointer-events: none;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

.bolinha-tag[title]:hover::before {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 5px solid transparent;
    border-top-color: #2d3748;
    z-index: 1000;
    pointer-events: none;
}

/* ===================================================================
   BADGE PILAR SOFT - pílula suave (fundo claro + texto na cor do pilar)
   usada nas tabelas de conexões/mentorias. A cor do pilar vem da
   variável inline --pilar-cor.
   =================================================================== */

.badge-pilar-soft {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    font-family: 'Open Sans', sans-serif;
    line-height: 1.4;
    white-space: nowrap;
    text-transform: none;
    background-color: color-mix(in srgb, var(--pilar-cor) 15%, #fff);
    color: color-mix(in srgb, var(--pilar-cor) 80%, #000);
    border: 1px solid color-mix(in srgb, var(--pilar-cor) 28%, #fff);
}
.menu-hover>li>a {
    padding: 15px 10px;
}




.style-alt #page-content {
    width: 100%;
}

/* Suporte — ticket do usuário (app/suporte.php) */
.suporte-status-badge {
    margin-top: 6px;
}

.suporte-btn-responder {
    margin-bottom: 10px;
}

.suporte-form-resposta {
    margin-top: 10px;
}

.suporte-form-resposta .suporte-btn-enviar-resposta {
    margin-top: 10px;
}

.suporte-ticket-fechado {
    padding: 10px;
    margin-bottom: 0;
}
