/* @import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap'); */

@font-face {
    font-family: 'Poppins';
    src: url('../../fonts/Poppins-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    src: url('../../fonts/Poppins-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    src: url('../../fonts/Poppins-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    src: url('../../fonts/Poppins-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    src: url('../../fonts/Poppins-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    src: url('../../fonts/Poppins-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}


.poppins-thin {
    font-family: "Poppins", sans-serif;
    font-weight: 100;
    font-style: normal;
}

.poppins-extralight {
    font-family: "Poppins", sans-serif;
    font-weight: 200;
    font-style: normal;
}

.poppins-light {
    font-family: "Poppins", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.poppins-regular {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.poppins-medium {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-style: normal;
}

.poppins-semibold {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-style: normal;
}

.poppins-bold {
    font-family: "Poppins", sans-serif;
    font-weight: 700;
    font-style: normal;
}

.poppins-extrabold {
    font-family: "Poppins", sans-serif;
    font-weight: 800;
    font-style: normal;
}

.poppins-black {
    font-family: "Poppins", sans-serif;
    font-weight: 900;
    font-style: normal;
}

.poppins-thin-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 100;
    font-style: italic;
}

.poppins-extralight-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 200;
    font-style: italic;
}

.poppins-light-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 300;
    font-style: italic;
}

.poppins-regular-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: italic;
}

.poppins-medium-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-style: italic;
}

.poppins-semibold-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-style: italic;
}

.poppins-bold-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 700;
    font-style: italic;
}

.poppins-extrabold-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 800;
    font-style: italic;
}

.poppins-black-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 900;
    font-style: italic;
}

:root {
    --cor-azul-vsoft: #000F9E;
}

.espaco-grelha-input {
    margin-top: 15px !important;
}

.espaco-titulo-conteudo {
    margin-top: 20px !important;
}

.esp-barra-conteudo-form {
    margin-top: 15px !important;
}

.espacoInputs {
    margin-right: -10px;
}

.espacoInputsAlt {
    max-height: 50px;
}

.espaco-rows-inputs {
    margin-top: 15px;
}

.esp-botao-abrir {
    margin-top: 18px;
    width: 60px;
    margin-left: -15px;
}

.esp-botao-input {
    margin-top: 18px;
    width: max-content;
    /* ver se uso isto*/
}

.content {
    background-color: #FFFFFF;
}

html,
body {
    background-color: #FFFFFF !important;
    /* overflow: hidden; */
    font-family: "Poppins" !important;
}

.right-side {
    background-color: #FFFFFF !important;
}

.classLogo ul li {
    position: fixed;
}

.navbar-left:not(.classLogo) {
    margin-left: 20px !important;
}

.input-group-btn>button>span {
    margin-left: 0px !important;
}


/** CSS PARA GRELHA PHPGRID ****/

.tituloListas {
    /* font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-600) 18px/24px var(--unnamed-font-family-open-sans);*/
    /* letter-spacing: var(--unnamed-character-spacing-0);*/
    text-align: left;
    font: normal normal 600 18px/24px "Poppins" !important;
    letter-spacing: 0px;
    color: #393939;
    /*padding-bottom: 10px;*/
}

.box-graficos-dashboard {
    box-shadow: 0px 3px 6px #00000029;
    border: 1px solid #F3F3F3 !important;
    border-radius: 9px;
}

.box-primary {
    border-top: 0px !important;
}

.box {
    box-shadow: 0px -1px 13px rgb(0 0 0 / 10%) !important;
}


/*************************************************/

.btn-azul {
    border: 1px solid var(--cor-azul-vsoft) !important;
    border-radius: 15px;
    background: #FFFFFF;
    color: var(--cor-azul-vsoft) !important;
    text-transform: uppercase;
    text-align: left;
    height: 30px;
    width: max-content;
    padding-right: 26px;
    padding-left: 21px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: var(--cor-azul-vsoft);
}

.btn-azul:hover:enabled {
    background: var(--cor-azul-vsoft) !important;
    color: #FFFFFF !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: var(--cor-azul-vsoft);
}



/* BTN SUCESSO */
.btn-success {
    border: 1px solid #2071EB !important;
    border-radius: 6px;
    height: 30px;
    width: max-content;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-right: 26px;
    padding-left: 26px;
    background-color: #2071EB !important;
    text-align: left;
    color: #FFF;
    /*text-transform: uppercase;*/
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

}

a.btn-success {
    -webkit-appearance: button;
    appearance: button;
    line-height: 25px;
}


.btn-success:hover,
.btn-success:enabled {
    border: 1px solid #2071EB !important;
    background: #2071EB !important;
    color: #fff !important;
    box-shadow: 0px 3px 6px #00000029;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}


.btn-success-outline {
    border: 1px solid #0258D9 !important;
    border-radius: 6px;
    height: 30px;
    width: max-content;
    padding-right: 26px;
    padding-left: 26px;
    background-color: #fff !important;
    text-align: left;
    color: #0258D9;
    /*text-transform: uppercase;*/
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

}

a.btn-success-outline {
    -webkit-appearance: button;
    appearance: button;
    line-height: 25px;
}

.btn-success-outline:hover {
    border: 1px solid var(--cor-azul-hover) !important;
    background: var(--cor-azul-hover) !important;
    color: #fff !important;
    box-shadow: 0px 3px 6px #00000029;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-link {
    color: #878787;
}

.btn-link:hover,
.btn-link:focus {
    text-decoration: none;
}

#btn-eliminar-img-maq,
#btn-eliminar-img-user {
    color: #F83030;
    background-color: white;
    border-color: #F83030;
    transition: background-color 0.3s ease;
    height: 31px;
    width: 120px;
}

#btn-eliminar-img-maq:hover,
#btn-eliminar-img-user:hover {
    color: white;
    background-color: #F83030;
    border-color: #F83030;
    border: none;
}


.btn-cinza {
    border: 1px solid #828282;
    border-radius: 6px;
    height: 30px;
    width: max-content;
    padding-right: 26px;
    padding-left: 21px;
    background: #FFFFFF;
    text-align: left;
    color: #828282;
    text-transform: uppercase;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-cinza:hover:enabled {
    background: #828282;
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-cinza-sem-texto>i {
    margin-left: 0em;
    margin-right: 0em;
}

.btn-cinza-sem-texto {
    border: 1px solid #828282 !important;
    border-radius: 15px !important;
    height: 30px !important;
    width: 30px;
    background: #FFFFFF;
    color: #828282;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-cinza-sem-texto:hover:enabled {
    background: #828282;
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-cinza-linha-grelha {
    border: 1px solid #828282 !important;
    border-radius: 15px !important;
    height: 31px !important;
    background: #FFFFFF;
    color: #828282;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-cinza-linha-grelha:hover:enabled {
    background: var(--cor-azul-vsoft) !important;
    border: 1px solid var(--cor-azul-vsoft) !important;
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.vs-check-box {
    display: none;
}

.vs-radio-btn {
    display: none;
}

.remove-click-chk {
    pointer-events: none;
}

.vs-check-box+label:before {
    content: '\002E';
    font-size: 1.7em;
    display: inline-block;
    padding: 0 0 0 0px;
}

.vs-check-box:checked+label:before {
    content: '\002D';
    font-size: 1.7em;
    display: inline-block;
    padding: 0 0 0 0px;
    color: #2071EB;
}

.vs-radio-btn+label:before {
    content: '\002E';
    font-size: 33px;
    display: inline-block;
    padding: 0 0 0 0px;
}

.vs-radio-btn:checked+label:before {
    content: '\0072';
    font-size: 33px;
    display: inline-block;
    padding: 0 0 0 0px;
    color: var(--cor-azul-vsoft);
}

.lst-nec-todos {
    border-radius: 15px;
    background: #DFF1FF 0% 0% no-repeat padding-box;
    color: var(--cor-azul-vsoft);
    padding: 5px 15px 5px 15px !important;
}

.lst-nec-em-producao {
    border-radius: 15px;
    background: #EBF9EB 0% 0% no-repeat padding-box;
    color: #6CCF6B;
    padding: 5px 15px 5px 15px !important;
}

.lst-nec-produzir {
    border-radius: 15px;
    background: #FFFFE4 0% 0% no-repeat padding-box;
    color: #C9C903;
    padding: 5px 15px 5px 15px !important;
}

.lst-nec-em-pausa {
    border-radius: 15px;
    background: #FDEBEB 0% 0% no-repeat padding-box;
    color: #F37070;
    padding: 5px 15px 5px 15px !important;
}

.lst-nec-esp-radiobtn {
    width: fit-content;
    margin-top: -2px;
    margin-left: -10px;
}


/********** MODAL *************/

.modal {
    overflow-y: hidden;
}

.modal-title {
    margin-left: 0px !important;
    color: #000000;
}

.modal-content {
    border-top-left-radius: 6px !important;
    border-top-right-radius: 6px !important;
    border-bottom-left-radius: 6px !important;
    border-bottom-right-radius: 6px !important;
}

.modal-header {
    /*background-color: var(--cor-azul-vsoft)!important;*/
    border-top-left-radius: 7px !important;
    border-top-right-radius: 7px !important;
    color: #FFFFFF !important;
    text-transform: none;
    background: transparent linear-gradient(176deg, #00109e13 0%, #0030C700 100%) 0% 0% no-repeat padding-box;
}

.modal-header .close i {
    color: #000000 !important;
}

.modal-header>button {
    color: #FFFFFF !important;
    font-size: 25px;
    opacity: .6;
}

.modal-header>button:hover {
    opacity: 1;
}

.esp-btn-rodape-modal {
    margin-right: 18px;
}

.modal-footer {
    padding: 12px 17px 12px;
    margin-top: 0px;
    text-align: right;
    border-radius: 17px !important;
    background: #fff 0% 0% no-repeat padding-box;
    box-shadow: 0px 3px 6px #0000001F;
    border-top: 0px;
}

.modal-footer-form-procura {
    margin-top: -15px !important;
}


/******* FIM MODAL ******************/

.btn-modal-nec {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 3px 6px #00000021;
    border: 1px solid #F3F3F3;
    border-radius: 8px;
    width: 181px;
    height: 42px;
    color: #818181;
    text-align: center;
    text-transform: uppercase
}

.btn-modal-nec-active {
    background-color: var(--cor-azul-vsoft);
    border: 1px solid var(--cor-azul-vsoft);
    color: #FFFFFF !important;
}

.btn-modal-nec:hover:not(.btn-modal-nec-active) {
    background-color: #c8ddee;
    border: 1px solid #c8ddee;
}

.esp-btn-modal-nec {
    margin-top: 22px;
}

.listContainer {
    padding-left: 15px;
    padding-right: 15px;
}

.listSpacing {
    padding-top: 0px;
    padding-bottom: 15px;
}

.btn-vermelho {
    border: 1px solid #D00000;
    border-radius: 15px;
    height: 30px;
    width: max-content;
    padding-right: 26px;
    padding-left: 21px;
    background-color: transparent !important;
    text-align: left;
    color: #D00000 !important;
    text-transform: uppercase;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-vermelho:hover:enabled {
    background-color: #D00000 !important;
    color: white !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-vermelho-sem-texto>i {
    margin-left: 0em;
    margin-right: 0em;
}

.btn-vermelho-sem-texto {
    border: 1px solid #D00000 !important;
    border-radius: 15px !important;
    height: 30px !important;
    width: 30px;
    background-color: transparent !important;
    color: #D00000 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-vermelho-sem-texto:hover:enabled {
    background: #D00000;
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-vermelho-linha-grelha {
    border: 1px solid #D00000 !important;
    border-radius: 15px !important;
    height: 31px !important;
    background-color: transparent !important;
    color: #D00000 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-vermelho-linha-grelha:hover:enabled {
    background: var(--cor-azul-vsoft) !important;
    border: 1px solid var(--cor-azul-vsoft) !important;
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-vermelho-cinza {
    border: 1px solid #878787;
    border-radius: 15px;
    height: 30px;
    width: max-content;
    padding-right: 26px;
    padding-left: 21px;
    background-color: transparent !important;
    text-align: left;
    color: #878787 !important;
    text-transform: uppercase;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-vermelho-cinza:hover {
    border: 1px solid #D00000 !important;
    color: #D00000 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-azul {
    border: 1px solid rgb(60 141 188);
    border-radius: 15px;
    height: 30px;
    width: max-content;
    padding-right: 26px;
    padding-left: 21px;
    background-color: transparent !important;
    text-align: left;
    color: rgb(60 141 188);
    text-transform: uppercase;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-azul:hover:enabled {
    background-color: var(--cor-azul-vsoft) !important;
    color: rgb(60 141 188);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-azul-sem-texto>i {
    margin-left: 0em;
    margin-right: 0em;
}

.btn-azul-sem-texto {
    border: 1px solid rgb(60 141 188) !important;
    border-radius: 15px !important;
    height: 30px !important;
    width: 30px;
    background-color: transparent !important;
    color: rgb(60 141 188);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-azul-sem-texto:hover:enabled {
    background: rgb(60 141 188);
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-azul-linha-grelha {
    border: 1px solid rgb(60 141 188) !important;
    border-radius: 15px !important;
    height: 31px !important;
    background-color: transparent !important;
    color: #D00000;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-azul-linha-grelha:hover:enabled {
    background: var(--cor-azul-vsoft) !important;
    border: 1px solid var(--cor-azul-vsoft) !important;
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-verde {
    border: 1px solid #ffffff;
    border-color: #27a709 !important;
    border-radius: 15px;
    height: 30px;
    width: max-content;
    padding-right: 26px;
    padding-left: 21px;
    background: #27a709 !important;
    text-align: left;
    color: #ffffff;
    text-transform: uppercase;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-verde:hover:enabled {
    background: #27a709 !important;
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-verde-sem-texto>i {
    margin-left: 0em;
    margin-right: 0em;
}

.btn-verde-sem-texto {
    border: 1px solid #27a709 !important;
    border-radius: 15px !important;
    height: 30px !important;
    width: 30px;
    background-color: transparent;
    color: #27a709 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-verde-sem-texto:hover:enabled {
    background: #27a709 !important;
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-verde-linha-grelha {
    border: 1px solid #27a709 !important;
    border-radius: 15px !important;
    height: 31px !important;
    background: transparent;
    color: #27a709 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-verde-linha-grelha:hover:enabled {
    background: var(--cor-azul-vsoft) !important;
    border: 1px solid var(--cor-azul-vsoft) !important;
    color: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-default {
    border-radius: 15px;
    height: 30px;
    width: max-content;
    padding-right: 26px;
    padding-left: 21px;
    text-transform: uppercase;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-modal-action {
    background: #2071EB 0% 0% no-repeat padding-box;
    border-radius: 6px;
    opacity: 1;
    font: normal normal normal 12px/18px Poppins;
    letter-spacing: 0px;
    color: #FFFFFF !important;
    height: 38px;
    padding-left: 21px;
    padding-right: 21px;
}

.btn-modal-action:hover {
    color: #FFFFFF !important;
}

.btn-modal-secondary-action {
    box-shadow: inset 0px 0px 0px 0px rgba(0, 0, 0, 1) !important;
    background-color: unset;
    color: #878787;
    height: 38px;
    padding-left: 21px;
    padding-right: 21px;
    font: normal normal normal 12px/18px Poppins;
    letter-spacing: 0px;
    border-radius: 6px;
}

.btn-modal-secondary-action:hover {
    background-color: #F2F2F2;
    color: #878787;
}

.btn-modal-alternative-action {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border-radius: 6px;
    opacity: 1;
    font: normal normal normal 12px/18px Poppins;
    letter-spacing: 0px;
    color: #2071EB !important;
    height: 38px;
    padding-left: 21px;
    padding-right: 21px;
    border-color: #2071EB;
}

.btn-modal-alternative-action:hover {
    color: #FFFFFF !important;
    background-color: var(--cor-azul-vsoft);
    border-color: var(--cor-azul-vsoft);
}

.btn-modal-action-nao {
    border-radius: 6px !important;
    border: 1px solid #D00000;
    height: 38px;
    width: max-content;
    padding-right: 21px;
    padding-left: 21px;
    background-color: transparent !important;
    text-align: left;
    color: #D00000 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.btn-modal-action-nao:hover:enabled {
    background-color: #D00000 !important;
    color: white !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.my_modal_error_dinamico .modal-header,
.my_modal_erro .modal-header {
    background-color: #D00000 !important;
}

.my_modal_sucesso .modal-header {
    background-color: #27A709 !important;
}

.modal-title i {
    font-size: 27pt !important;
}

.modal-title h4 {
    font-size: 20px !important;
}

.nav-tabs>li.active>a,
.nav-tabs>li.active>a:hover,
.nav-tabs>li.active>a:focus {
    border-top: 1px solid rgb(221 221 221) !important;
    border-left: 1px solid rgb(221 221 221) !important;
    border-right: 1px solid rgb(221 221 221) !important;
    font-size: 15px;
    font-weight: 600 !important;
    color: #393939;
    text-transform: none;
}

.nav-tabs>li:not(.active)>a {
    font-size: 13px !important;
    color: #818181;
}

.nav-tabs>li {
    margin-bottom: -4px !important;
}

.modal .form-group .form-control {
    border: 1px solid rgb(217 217 217) !important;
    border-radius: 6px !important;
}

.form-control {
    border: 1px solid #878787 !important;
    border-radius: 15px !important;
}

.input-group-sm>.form-control {
    padding: 0px 10px !important;
    height: 32px !important;
    /*border-radius: 6px !important;*/
}

.input-group span button {
    border: 1px solid #878787 !important;
    border-radius: 50% !important;
    background-color: white !important;
    color: rgb(129 129 129);
    height: 30px !important;
    width: 30px !important;
    margin-left: 5px !important;
    font-size: 1.2em !important;
}


.input-group span button i {
    margin-top: -1px !important;
    margin-left: 0px !important;
}

.input-group input:focus {
    border-color: #878787 !important;
}

.input-group span button:hover {
    background: #004584 0% 0% no-repeat padding-box !important;
    border-color: #004584 !important;
    color: white !important;
}

.input-group label {
    text-transform: none;
}

.form-control {
    color: rgb(129 129 129);
}

.control-label,
.form-group>label {
    color: rgb(57 57 57);
    padding-bottom: 2px;
}

.espacamento-lateral-input {
    /*  espaçamento de 15px entre inputs  */
    padding-left: 7.5px !important;
    padding-right: 7.5px !important;
}

input:disabled,
button:disabled,
textarea:disabled,
div:disabled {
    opacity: 0.4 !important;
}

.btn-fundo-azul {
    background: #000F9E 0% 0% no-repeat padding-box;
    border: 1px solid #000F9E;
    border-radius: 6px;
    opacity: 1;
    text-align: center;
    font: normal normal 300 12px/17px Poppins;
    letter-spacing: 0px;
    color: #FFFFFF !important;
    text-transform: uppercase;
    height: 29px;
}

.btn-fundo-azul:hover {
    background: #002F5A 0% 0% no-repeat padding-box;
    color: #FFFFFF;
    text-transform: uppercase;
}

.btn-cinza-azul {
    background: #FFFFFF;
    border: 1px solid #878787;
    border-radius: 44px;
    opacity: 1;
    text-align: center;
    font: normal normal 300 12px/17px Poppins;
    letter-spacing: 0px;
    color: #393939;
    text-transform: uppercase;
    opacity: 1;
}

.btn-cinza-azul:hover {
    background: #878787 0% 0% no-repeat padding-box;
    border: 1px solid #878787;
    color: #FFFFFF;
    text-transform: uppercase;
}

.btn-cinza-azul:disabled {
    border: 1px solid #D4D4D4;
    color: #D4D4D4;
}

.btn-acao-grelha {
    border: 1px solid #6A6C6F;
    /* border-radius: 44px; */
    background-color: transparent;
    text-align: left;
    font: normal normal 300 12px/17px Poppins;
    letter-spacing: 0px;
    color: #6A6C6F;
    text-transform: uppercase;
}

.btn-acao-grelha:hover:not(:disabled) {
    background: #000F9E;
    border: 1px solid #000F9E;
    /* font: normal normal 300 12px/17px Open Sans; */
    color: #FFFFFF;
}

.btn-acao-grelha:disabled {
    /* font: normal normal 300 12px/17px Open Sans; */
    color: #D4D4D4;
    border: 1px solid #D4D4D4;
}

.ui-state-highlight .btn-acao-grelha:not(:disabled) {
    background-color: #000F9E;
    color: #FFFFFF;
    border: 1px solid #000F9E;
}

.modal .modal-header button {
    font-size: 12pt;
}

.modal .modal-body {
    padding-bottom: 0px !important;
}

.skin-blue .navbar {
    background-color: var(--cor-azul-vsoft) !important;
}

.barra-menu-topo-popup {
    margin-left: 0;
    min-height: 44px !important;
    height: 44px;
}

.btn-menu-topo-popup {
    padding-bottom: 4px !important;
    padding-top: 4px !important;
    margin-left: 15px !important;
    margin-top: 7px !important;
    color: #FFFFFF !important;
}

.btn-menu-topo-popup>i {
    font-size: 13px !important;
}

.navbar-nav>li>a {
    font-weight: normal !important;

}

/************ Página LOGIN **********/

.btn-login {
    background: #2071EB 0% 0% no-repeat padding-box !important;
    border-radius: 11px !important;
    opacity: 1;
    height: 52px !important;
    width: 443px;
    text-transform: none !important;
    margin-top: 25px !important;
    margin-bottom: 33% !important;
}

.btn-login:hover {
    background: #020D78 0% 0% no-repeat padding-box !important;
}

.instrucao-login {
    text-align: center;
    font-style: normal;
    font-variant: normal;
    font-weight: 600;
    font-size: 20px;
    line-height: 25px;
    letter-spacing: 0px;
    color: #393939;
    opacity: 1;
    padding: 20px;
}

.login-header {
    margin-top: 100px;
}

.login-form-group {
    justify-content: center;
    display: flex;
    margin-top: 50px;
    height: 50px;
    position: relative;
}

.login-form-input {
    padding: 1px 0px 0px;
    color: #272B30 !important;
    text-align: left;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 21px;
    letter-spacing: 0px;
    opacity: 1;
    width: 435px;
    height: 25px;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;

}

.login-form-input::placeholder {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease;
    color: #000000 !important;
}

.login-error-message {
    color: #F83030 !important;
    background: rgba(255, 60, 60, 0.07) no-repeat padding-box;
    border-radius: 4px;
    opacity: 1;
    width: 435px;
    height: 50px;
    text-align: left;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 auto;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    font-size: 11px;
    line-height: 21px;
    letter-spacing: 0px;
}

.icon-login-error-message {
    width: 28px;
    height: 26px;
    font-size: 50px !important;
    display: flex;
    align-items: center;
    line-height: 0.6em !important;
}

input.form-control.login-form-input {
    padding-right: 30px;
    border-bottom: 1px solid #00000029 !important;
}

input.form-control.login-form-input:focus {
    padding-right: 30px;
    border-bottom: 1px solid #3AAEFB !important;
}

.password-container {
    position: relative;
}

#password-icon,
#password-icon-off {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: #A5A5A5;
    font-size: 18px;
    display: none;
}

#loginform-password {

    padding-right: 40px;
}

#password-icon,
#password-icon-off {
    position: absolute !important;
    right: 3.3em !important;
    /* top: 2.05em !important; */
    transform: translateY(-58%) !important;
    cursor: pointer !important;
    z-index: 10 !important;
}

/* Faz o ícone "olho fechado" não ser exibido por padrão */
#password-icon-off {
    display: none;
}

.footer-login {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    width: 100%;
}

/* Fim Página LOGIN */

/********** Sidebar e Header **********/

.sidebar .sidebar-menu-vsoft {
    list-style: none;
    margin: 0;
    padding: 0;
    min-height: 80vh;
}

.sidebar-menu li a {
    display: flex !important;
    align-items: center !important;
    line-height: normal;
}

.sidebar-menu li a i {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;

}

.sidebar-menu li a span {
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
}

.sidebar .sidebar-menu>li>a {
    text-transform: none !important;
    color: #B3B7E2 !important;
}

.sidebar .sidebar-menu>li.active {
    border-right: none !important;
    margin-right: 6px;
}

.sidebar-menu-vsoft {
    margin-top: 1em !important;
}

.sidebar .sidebar-menu>.active {
    border-radius: 10px 10px 10px 10px !important;
}

.sidebar .sidebar-menu>li.active>a i,
.sidebar .sidebar-menu>li.active>a span,
.sidebar .sidebar-menu>li.active>a {
    color: #FFFFFF !important;
}

#liTicketsReportados.active {
    text-wrap: nowrap;
}

#liTicketsReportados.active>a span {
    margin-right: 0.07em;
}

.sidebar-items-text {
    text-align: left !important;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 21px;
    letter-spacing: 0px !important;
    color: #B3B7E2 !important;
    opacity: 1;
    text-wrap: nowrap;
}

.sidebar-items-arrow {
    color: #B3B7E2 !important;
}

.dashboard-icon {
    color: #B3B7E2;
    margin-right: 0.5em !important;
    font-size: 1.2em !important;
    margin-top: auto;
}

.sidebar-submenu-items-text {
    text-align: left !important;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    font-size: 12px !important;
    line-height: 21px !important;
    letter-spacing: 0px !important;
    color: #B3B7E2 !important;
    opacity: 1;
}

.treeview-menu a.sidebar-submenu-items-text {
    color: #B3B7E2 !important;
}

/* Submenus ativos */
.treeview-menu .active-submenu a.sidebar-submenu-items-text {
    color: #FFFFFF !important;
}

.userAuth {
    height: 66px;
}

.user-icon {
    background: rgba(0, 15, 158, 0.05) 0% 0% no-repeat padding-box;
    border-radius: 11px;
    background-size: 32px;
    color: #000F9E;
    font-size: 19px !important;
    padding: 0.3em;
}

.user-info {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.user-name {
    text-align: left;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 25px;
    letter-spacing: 0px;
    color: #393939;
    opacity: 1;
}

.user-level {
    text-align: left;
    font-style: normal;
    font-variant: normal;
    font-weight: 300;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0px;
    color: #ABABAB;
    opacity: 1;
}

.navbar .navbar-right {
    height: 66px !important;
}

/*.navbar-right ul {
    display: flex;
    align-items: center;
    height: 66px;
}*/

.navbar-right-item {
    padding-bottom: 0;
}

.tickets-reportados-navbar {
    height: 66px;
    display: flex !important;
    align-items: center;
    position: relative;
}

/* Traço divisório do user e dos tickets */
.tickets-reportados-navbar::before {
    content: "";
    display: block;
    width: 1px;
    height: 60%;
    background-color: #ABABAB;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.tickets-reportados-navbar:hover .tickets-reportados-navbar-span {
    color: #2071EB !important;
}

.tickets-reportados-navbar-span {
    text-align: left;
    font-style: normal;
    font-weight: normal;
    font-size: 14px;
    line-height: 21px !important;
    letter-spacing: 0px;
    color: #F83030;
    border-radius: 6px;
}

.icon-tickets-reportados {
    width: 15px;
    height: 15px;
    color: #F83030;
}

.tickets-reportados-navbar:hover .icon-tickets-reportados {
    color: #2071EB !important;
}

.user-session-dropdown {
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border: 1px solid #E7EAEB;
    opacity: 1;
    width: 148px !important;
    height: 91px;
    margin-left: 4em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-radius: 4px !important;
    margin-top: -0.4em !important;
    display: none;
    border-top: 1px solid #dddddd !important;
    box-shadow: none !important;
}

.user-dropdown-item {
    text-align: left;
    font-style: normal;
    font-weight: normal;
    font-size: 13px;
    line-height: 20px !important;
    letter-spacing: 0px;
    color: #878787 !important;
    background-color: unset !important;
}

.end-session-dropdown-item {
    text-align: left;
    font-style: normal;
    font-weight: normal;
    font-size: 13px;
    line-height: 20px !important;
    letter-spacing: 0px;
    color: #2071EB !important;
    background-color: unset !important;
}

.user-session-dropdown::before {
    content: "";
    position: absolute;
    top: -10px;
    left: 7%;
    transform: translateX(-50%);
    border-width: 5px;
    border-style: solid;
    border-color: transparent transparent #FFFFFF transparent;
}

.user-session-dropdown::after {
    content: "";
    position: absolute;
    top: -6px;
    left: 30%;
    transform: translateX(-50%);
    border-width: 1px;
    border-style: solid;
    border-color: transparent transparent #E7EAEB transparent;
}

.dropdown.open .user-session-dropdown {
    display: flex !important;
}

/* Fim Sidebar e Header */

/* Títulos das views */
aside section.content-header {
    background: #F8FAFB !important;
}

/**********  Inputs Gerais **********/

.asterisco-obrigatorio {
    color: #2071EB;
}

.div-estado-input {
    border: 1px solid #E3E3E3;
    border-radius: 6px;
    height: 32px;
}

.inputs-filtragem-grid {
    border-radius: 6px !important;
    border: 1px solid #E3E3E3 !important;
    height: 32px !important;
    color: #000000;
}

.inputs-filtragem-grid:focus {
    border-color: #878787 !important;
}

.input-group span button.btn-three-dots-inputs-filtragem {
    height: 32px !important;
    margin-left: 10px !important;
    margin-top: 18px !important;
    width: 32px !important;
    border: 1px solid #F1F3F3 !important;
    border-radius: 6px !important;
    background: #F1F3F3 0% 0% no-repeat padding-box !important;
}

.input-group span .icon.btn-three-dots {
    border: 1px solid #878787 !important;
    border-radius: 50% !important;
    background-color: white !important;
    color: rgb(129 129 129);
    height: 30px !important;
    width: 30px !important;
    margin-left: 5px !important;
    font-size: 1.2em !important;
}

.input-group span button.btn-three-dots-inputs-filtragem:hover {
    background-color: var(--cor-azul-vsoft) !important;
}

.input-group span button.btn-three-dots-inputs-popup {
    height: 32px !important;
    margin-left: 10px !important;
    margin-top: 24px !important;
    width: 32px !important;
    border: 1px solid #D9D9D9 !important;
    border-radius: 6px !important;
    background: white 0% 0% no-repeat padding-box !important;
    color: black;
    opacity: 0.8;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
}

.input-group span button.btn-three-dots-inputs-filtragem>span,
.input-group span button.btn-three-dots-inputs-popup>span,
.input-group span button.btn-three-dots-inputs-filtragem i,
.input-group span button.btn-three-dots-inputs-popup i {
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

.input-group span button.btn-three-dots-inputs-popup:hover {
    background-color: var(--cor-azul-vsoft) !important;
    border-color: var(--cor-azul-vsoft) !important;
    color: white !important;
}

/* Classe simples e reutilizavel: replica visual do popup para botao de 3 pontos */
.vsoft-three-dots-btn {
    height: 32px !important;
    width: 32px !important;
    margin-left: 10px !important;
    margin-top: 18px !important;
    border: 1px solid #D9D9D9 !important;
    border-radius: 6px !important;
    background: #FFFFFF 0% 0% no-repeat padding-box !important;
    color: rgb(129 129 129) !important;
    font-size: 1.2em !important;
    opacity: 0.8;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
}

.vsoft-three-dots-btn:hover {
    background: #004584 0% 0% no-repeat padding-box !important;
    border-color: #004584 !important;
    color: #FFFFFF !important;
}

.vsoft-three-dots-btn>span,
.vsoft-three-dots-btn i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    margin-top: -1px !important;
    margin-left: -4px !important;
}

.modal .form-group .form-control.inputs-filtragem-grid {
    border-radius: 6px !important;
    border: 1px solid #E3E3E3 !important;
    height: 32px !important;
}

.input-valor-auto {
    background-color: #F0F0F0 !important;
}

/* Labels dos filtros de Estado */
.estado-label {
    white-space: nowrap;
    font-weight: 400;
}

.estado-atrasado-label,
.estado-avariado-label,
.estado-em-atraso-label,
.estado-cancelado-label {
    color: #F83030;
}

.estado-pendente-label,
.estado-inativo-label,
.estado-encomendar-label {
    color: #F7A325;
}

.estado-planeado-label,
.estado-agendado-label,
.estado-encomendado-label,
.estado-aceite-label {
    color: #2071EB;
}

.estado-em-curso-label,
.estado-ativo-label,
.estado-conforme-label {
    color: #00C569;
}

.estado-standby-label,
.estado-manutencao-label {
    color: #891BC9;
}

.estado-concluido-label,
.estado-rececionado-label {
    color: #176C5B;
}

.estado-fechado-label {
    color: #000000;
}

.btn-grelha {
    border: 1px solid #2071EB;
    background-color: transparent;
    color: #2071EB !important;
    border-radius: 6px;
    font-size: 13px;
}

.btn-grelha:hover {
    background-color: #2071EB;
    color: white !important;
}

.btn-grelha:active,
.activated {
    border: 1px solid #2071EB;
    background-color: #2071EB;
    color: white !important;
}

/* Checkboxes */
.vs-check-box:checked+label.icon-check-ok::before {
    color: #00C569;
}

.vs-check-box:checked+label.icon-check-notok::before {
    color: #F83030;
}


#div-container:hover {
    #div-main {
        opacity: 0.2;
    }

    #div-btn-delete {
        opacity: 1;
    }

    #div-btn-delete-user {
        opacity: 1;
    }

}

#div-btn-delete:hover,
#div-btn-delete-user:hover {
    opacity: 1;
    z-index: 1000;
}

#div-btn-delete-user {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-70%, -50%);
    max-width: 135px;
    opacity: 0;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}



/* =====================================================
   VSoft UI - classes standard reutilizaveis
   ===================================================== */

.vsoft-field {
    border-radius: 6px !important;
    border: 1px solid #E3E3E3 !important;
    height: 32px !important;
    color: #000000 !important;
    padding: 0 10px !important;
}

.vsoft-field:focus {
    border-color: #878787 !important;
}

.vsoft-field--readonly,
.vsoft-field[readonly] {
    background-color: #F8FAFB !important;
    cursor: not-allowed;
}

.vsoft-select {
    border-radius: 6px !important;
    height: 32px !important;
}

.vsoft-btn-action {
    height: 30px !important;
    width: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px;
    border-radius: 15px !important;
    text-transform: uppercase;
    text-align: center !important;
}

.vsoft-btn-action--primary {
    border: 1px solid var(--cor-azul-vsoft) !important;
    background: #FFFFFF !important;
    color: var(--cor-azul-vsoft) !important;
}

.vsoft-btn-action--primary:hover:enabled {
    background: var(--cor-azul-vsoft) !important;
    color: #FFFFFF !important;
}

.vsoft-btn-action--danger {
    border: 1px solid #F83030 !important;
    background: #FFFFFF !important;
    color: #F83030 !important;
}

.vsoft-btn-action--danger:hover:enabled {
    background: #F83030 !important;
    color: #FFFFFF !important;
}

.vsoft-btn-icon-picker,
.vsoft-three-dots-btn {
    height: 32px !important;
    width: 32px !important;
    margin-left: 10px !important;
    border: 1px solid #D9D9D9 !important;
    border-radius: 6px !important;
    background: #FFFFFF 0% 0% no-repeat padding-box !important;
    color: rgb(129 129 129) !important;
    font-size: 1.2em !important;
    opacity: 0.8;
    display: inline-flex !important;
    padding: 0 !important;
}

.vsoft-btn-icon-picker:hover,
.vsoft-three-dots-btn:hover {
    background: #004584 0% 0% no-repeat padding-box !important;
    border-color: #004584 !important;
    color: #FFFFFF !important;
}

.vsoft-btn-icon-picker>span,
.vsoft-btn-icon-picker i,
.vsoft-three-dots-btn>span,
.vsoft-three-dots-btn i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    margin-top: -1px !important;
    margin-left: -4px !important;
}

.btn-vsoft-primario {
    background: var(--cor-azul-vsoft);
    border: 1px solid var(--cor-azul-vsoft);
    color: #FFFFFF;
    border-radius: 6px;
}

.btn-vsoft-primario:hover:enabled {
    background: var(--cor-azul-vsoft);
    border: 1px solid var(--cor-azul-vsoft);
    color: #FFFFFF;
}

.btn-vsoft-secundario {
    background: #FFFFFF;
    border: 1px solid #2071EB !important;
    color: #2071EB;
    border-radius: 6px;

}

.btn-vsoft-secundario:hover:enabled {
    background: #FFFFFF;
    border: 1px solid #2071EB !important;
    color: #2071EB;
}

.btn-vsoft-eliminar {
    background: #FFFFFF;
    border: 1px solid #F83030;
    color: #F83030;
    border-radius: 6px;
}

.btn-vsoft-eliminar:hover:enabled {
    background: #FFFFFF;
    border: 1px solid #F83030;
    color: #F83030;
}

.vsoft-btn-action--secondary {
    border: 1px solid #2071EB !important;
    background: #FFFFFF !important;
    color: #2071EB !important;
}

.vsoft-btn-action--secondary:hover:enabled {
    background: #0E3DAB !important;
    border-color: #0E3DAB !important;
    color: #FFFFFF !important;
}

.btn-vsoft-filtro {
    height: 32px !important;
    width: 90% !important;
}

/* =====================================================
   Mapa de intervencao - filtros no topo da grelha
   ===================================================== */

.vsoft-mapa-datepicker-wrapper {
    position: sticky;
    top: 12px;
}

.vsoft-mapa-datepicker-wrapper #datepicker-first {
    width: 90%;
}

.vsoft-mapa-datepicker-wrapper .datepicker--nav {
    background-color: #A2D4F5;
}

.vsoft-mapa-datepicker-wrapper .datepicker--cell.-range-from-,
.vsoft-mapa-datepicker-wrapper .datepicker--cell.-range-to- {
    background: var(--cor-azul-vsoft);
    color: #FFFFFF;
}

.vsoft-mapa-datepicker-wrapper .datepicker--cell.-in-range- {
    background: #DFF1FF;
}

@media (max-width: 991px) {
    .vsoft-mapa-datepicker-wrapper {
        position: static;
        margin-top: 12px;
    }
}

.vsoft-mapa-intervencao .listSpacing {
    padding-bottom: 8px;
}

.mapa-calendario-col {
    width: 82.5%;
}

.mapa-eventos-col {
    width: 17.5%;
}

.vsoft-mapa-filtros {
    margin-bottom: 12px;
}

.vsoft-mapa-filtros .box-body {
    padding: 12px 16px 10px;
}

.vsoft-mapa-filtros-row {
    display: flex;
    flex-wrap: wrap;
    row-gap: 10px;
    margin-bottom: 2px;
}

.vsoft-mapa-filtro-label {
    display: block;
    margin-bottom: 3px;
    white-space: nowrap;
}

.vsoft-mapa-form-group {
    margin-bottom: 0;
}

.vsoft-mapa-input-group {
    margin-right: 0;
    float: none;
    width: 100%;
}

.vsoft-mapa-datepicker {
    min-height: 36px;
    width: 100%;
    border: 1px solid #E3E3E3;
    border-radius: 6px;
    display: inline-block;
}

.vsoft-mapa-actions-row {
    margin-top: 22px;
}

.vsoft-mapa-actions-row .col-xs-4 {
    padding-left: 4px;
    padding-right: 4px;
}

.vsoft-mapa-actions-row .vsoft-btn-action {
    font-size: 12px;
    padding-left: 6px;
    padding-right: 6px;
}

.vsoft-mapa-calendar-wrapper {
    margin-bottom: 0;
}

.vsoft-mapa-intervencao #divGrelha {
    overflow: hidden;
    margin-bottom: 0;
    margin-top: 0;
    padding-right: 10px;
}

.vsoft-mapa-intervencao #calendar {
    background: #FFFFFF;
    border: 1px solid #D9E2EC;
    border-radius: 12px;
    box-shadow: 0 8px 22px rgba(22, 63, 90, 0.08);
    overflow: hidden;
    height: 100%;
}

.vsoft-mapa-intervencao .fc .fc-toolbar.fc-header-toolbar {
    margin-bottom: 10px;
    padding: 12px 14px 6px;
}

.vsoft-mapa-intervencao .fc .fc-toolbar-title {
    font-size: 16px;
    font-weight: 600;
    color: #2071EB;
}

.vsoft-mapa-intervencao .fc .fc-button-primary {
    background-color: #EEF5FB;
    border-color: #C8DCEB;
    color: #2071EB;
    border-radius: 6px;
    font-weight: 600;
    box-shadow: none;
}

.vsoft-mapa-intervencao .fc .fc-button-primary {
    border-radius: 6px;
}

.vsoft-mapa-intervencao .fc .fc-button-primary:hover,
.vsoft-mapa-intervencao .fc .fc-button-primary:focus {
    background-color: #DFEEF8;
    border-color: #B4D1E5;
    color: #2071EB;
}

.vsoft-mapa-intervencao .fc .fc-button-primary:not(:disabled).fc-button-active,
.vsoft-mapa-intervencao .fc .fc-button-primary:not(:disabled):active {
    background-color: #2071EB;
    border-color: #2071EB;
    color: #FFFFFF;
}

.vsoft-mapa-intervencao .fc .fc-col-header-cell {
    background-color: #EEF5FB;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    height: 40px;
    vertical-align: middle;
}

.vsoft-mapa-intervencao .fc .fc-col-header-cell-cushion,
.vsoft-mapa-intervencao .fc .fc-col-header-cell-cushion:link,
.vsoft-mapa-intervencao .fc .fc-col-header-cell-cushion:visited,
.vsoft-mapa-intervencao .fc .fc-col-header-cell-cushion:hover,
.vsoft-mapa-intervencao .fc .fc-col-header-cell-cushion:focus {
    color: #2071EB !important;
}

.vsoft-mapa-intervencao .fc .fc-day-today,
.vsoft-mapa-intervencao .fc .fc-timegrid-col.fc-day-today,
.vsoft-mapa-intervencao .fc .fc-daygrid-day.fc-day-today {
    background-color: #F8FAFB;
}

.vsoft-mapa-intervencao .fc .fc-timegrid-axis,
.vsoft-mapa-intervencao .fc .fc-timegrid-axis-frame,
.vsoft-mapa-intervencao .fc .fc-timegrid-slot-label-cushion {
    font-size: 11px;
    color: #5D7488;
}

.vsoft-mapa-intervencao .fc .fc-timegrid-slot {
    height: 24px;
}

.vsoft-mapa-intervencao .fc .fc-timegrid-slot-minor {
    border-top-style: dotted;
    border-top-color: #E7EEF5;
}

/* Vista semana/dia — eventos verticais no timegrid */
.vsoft-mapa-intervencao .fc .fc-timegrid-event {
    border-radius: 10px !important;
    color: #FFFFFF !important;
    box-shadow: 0 4px 12px rgba(50, 118, 165, 0.2);
}

/* Vista mês — eventos em bloco no daygrid */
.vsoft-mapa-intervencao .fc .fc-daygrid-event,
.vsoft-mapa-intervencao .fc .fc-daygrid-block-event {
    border-radius: 10px !important;
    color: #FFFFFF !important;
    box-shadow: 0 4px 12px rgba(50, 118, 165, 0.2);
}

.vsoft-mapa-intervencao .fc .fc-event-main {
    padding: 3px 6px;
    font-size: 11px;
    line-height: 1.25;
}

.vsoft-mapa-intervencao .fc .fc-daygrid-dot-event {
    display: block;
    padding: 2px 6px;
}

.vsoft-mapa-intervencao .fc .fc-daygrid-dot-event .fc-event-dot {
    display: none;
}


.fc-popover {
    border-radius: 10px;
    box-shadow: 0 8px 22px rgba(22, 63, 90, 0.15);
    border: 1px solid #D9E2EC;
}

.vsoft-mapa-intervencao .datepicker--day-name {
    color: #2071EB !important;
}

.vsoft-mapa-intervencao .datepicker--nav {
    background-color: #EEF5FB;
    color: #2071EB;
}

.vsoft-mapa-intervencao .datepicker--nav-title,
.vsoft-mapa-intervencao .datepicker--nav-title i {
    color: #2071EB !important;
    font-weight: 600;
    font-family: 'Poppins';
}

.datepicker--nav-action path {
    fill: none;
    stroke: #2071EB !important;
    stroke-width: 2px
}

@media (max-width: 1199px) {
    .vsoft-mapa-actions-row {
        margin-top: 0;
    }
}

.vsoft-mapa-more-events-panel {
    margin-top: 12px;
    border: 1px solid #E6EAF2;
    border-radius: 8px;
    background: #FFFFFF;
    max-height: 421px;
    overflow-y: auto;
    padding: 10px;
}

.vsoft-mapa-more-events-titulo {
    font-size: 12px;
    font-weight: 600;
    color: #2D2D2D;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.vsoft-mapa-more-events-item {
    padding: 8px 10px;
    border: 1px solid #EDF0F5;
    border-radius: 6px;
    margin-bottom: 8px;
    cursor: pointer;
    background: #FAFBFD;
}

.vsoft-mapa-more-events-item:last-child {
    margin-bottom: 0;
}

.vsoft-mapa-more-events-hora {
    display: block;
    font-size: 11px;
    font-weight: 600;
    color: #6A6C6F;
    margin-bottom: 2px;
}

.vsoft-mapa-more-events-texto {
    display: block;
    font-size: 12px;
    color: #2D2D2D;
    word-break: break-word;
}

.vsoft-mapa-more-events-item {
    border: 1px solid #E7EAF0;
    border-radius: 6px;
    margin-bottom: 8px;
    padding: 8px 10px;
    background: #FFFFFF;
    cursor: default;
}

.vsoft-mapa-more-events-item:last-child {
    margin-bottom: 0;
}

.vsoft-mapa-more-events-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.vsoft-mapa-more-events-cor {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex: 0 0 10px;
}

.vsoft-mapa-more-events-numero {
    font-size: 12px;
    font-weight: 600;
    color: #2D2D2D;
}

.vsoft-mapa-more-events-hora {
    display: block;
    font-size: 11px;
    font-weight: 600;
    color: #6A6C6F;
    margin-bottom: 2px;
}

.vsoft-mapa-more-events-texto {
    display: block;
    font-size: 12px;
    color: #2D2D2D;
    white-space: pre-line;
}

.vsoft-mapa-fullscreen-btn {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 1050;
    height: 36px;
    width: 36px;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 6px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
    text-transform: none;
}

.vsoft-mapa-fullscreen-btn i {
    margin: 0 !important;
}

body.vsoft-mapa-fullscreen .wrapper {
    margin-left: 0 !important;
}

body.vsoft-mapa-fullscreen .content {
    padding: 0 !important;
}

body.vsoft-mapa-fullscreen .vsoft-mapa-intervencao {
    min-height: 100vh;
}