﻿/* */

.main-content {
    background: linear-gradient(359deg, #f2f6f7 0, #dee8ea 100%) !important;
}

.nav-tabs {
    padding: 20px !important;
}
.navbar-brand img {
    height: 64px !important;
    /*background-color: #fff;*/
    max-height: 4rem !important;
}

.bg-navBarLogo {
    background-color: #1d4643;
}

/*Imagem de logo*/

.img-logo-ambiente {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-height: 180px
}

.img-logo-ambiente-200 {
    max-width: 120px;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.img-logo-ambiente-login {
    max-width: 20vh;
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-top: 10px;
}

.img-login {
    border-radius: 50%;
    border: 4px solid #CCCCCC;
    overflow: hidden;
    width: 80% !important;
    margin-top: 30px;
}

.card .img-logo-ambiente-login {
    width: 100%;
}

/*Fim*/

.headroom--not-top.navbar-theme-primary {
    background-color: #1d4643 !important; /*alterar no front.css:6*/
}

.bg-linte {
    background-color: #1d4643 !important;
}

.bg-segundo-modal-linte {
    background-color: #0a3b69 !important;
}

.bg-ambientes {
    background-color: #3d578a !important;
}

.bg-soft {
    background: linear-gradient(359deg, #f2f6f7 0, #dee8ea 100%) !important;
}


/*****************************************************************

   Login

*/
.login-box {
    background-color: #f0fdf4;
    border: 1px solid #95d5b2;
    box-shadow: 0 12px 28px rgba(22, 101, 52, 0.2);
    border-radius: 16px;
    padding: 36px;
    max-width: 420px;
    margin: auto;
}

/*****************************************************************

   Dropdown Ações

********************************************************************/


/* Dropdown Button */
.dropbtn {
    background-color: #999999 !important;
    color: white;
    padding: 10px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    border-radius: 5px;
}

/* The container <div> - needed to position the dropdown content */
.dropdown {
    position: relative;
    display: inline-block;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
    display: none;
    position: absolute;
    min-width: 350px;
    z-index: 100;
    right: 0;
    top: 0;
    text-align: right;
}

.dropdown-content .btn {
    padding: 10px !important;
    font-weight: bold;
    border: none;
    cursor: pointer;
    height: 40px;
    width: 40px;
}

/*tr:last-child .dropdown-content {
    bottom: 0;
}*/

/* Links inside the dropdown */
.dropdown-content a {
    color: black;
    padding: 12px 16px 8px 8px;
    text-decoration: none;
    display: block;
}

/* Change color of dropdown links on hover */
.dropdown-content a:hover {
    background-color: #f1f1f1
}

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {
    display: block;
}

/* Change the background color of the dropdown button when the dropdown content is shown */
.dropdown:hover .dropbtn {
    background-color: #474747;
    opacity: 0;
}

.dropdown-content .btn:not(:last-child) {
    margin-right: .2rem;
}

.dropdown-content .btn:hover {
    transform: translateY(0px);
}

.form-group .dropdown-menu {
    min-width: 100% !important;
}

.form-group .dropdown-menu .dropdown-item {
    white-space: normal;
}

.form-group .dropdown-item.active, .dropdown-item:active {
    background-color: #f7fafc;
}

/* END */

.bg-gradient-ambient {
    background: linear-gradient(359deg, #f2f6f7 0, #dee8ea 100%) !important;
    border-radius: 10px;
}

.footer a, h6 {
    color: #fff;
}

.navbar-brand .title {
    font-weight: 900;
    font-size: large;
    color: #fff;
}

.container .title {
    font-weight: 900;
    font-size: large;
    color: #fff;
}

.just-line-break {
    white-space: pre-line;
}

/* todo : Passar para o css default */
.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
    color: #212529;
    background-color: #e6e6e6;
    border-color: #dee2e6 #dee2e6 #f8f9fe;
}


/* imagem de carregamento (loading) das páginas */
.no-js #loader {
    display: none;
}

.js #loader {
    display: block;
    position: absolute;
    left: 100px;
    top: 0;
}

.se-pre-con {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    background: url('/imagens/livi-preloader-001.svg') center no-repeat #fff;
}


/*!* Fixa botão opções nas tabelas *!*/
/*.table-responsive > .table > thead > tr > th:last-child {*/
/*    text-align: right;*/
/*}*/

/*.table-responsive > .table > tbody > tr > td {*/
/*    vertical-align: middle;*/
/*}*/

/*.table-responsive > .table > tbody > tr > td:last-child {*/
/*    text-align: right;*/
/*}*/

/*.table-responsive .table {*/
/*    margin-bottom: 0;*/
/*    border-bottom: 0 solid;*/
/*}*/

/*.table > thead > tr > th {*/
/*    white-space: nowrap;*/
/*}*/

/*table {*/
/*    !*table-layout: fixed;*!*/
/*    width: 100%;*/
/*}*/

/*tbody > tr > *:nth-last-child(2) ~ * {*/
/*    width: 50%*/
/*}*/

/*tbody > tr > *:nth-last-child(3) ~ * {*/
/*    width: 33.3%*/
/*}*/

/*tbody > tr > *:nth-last-child(4) ~ * {*/
/*    width: 25%*/
/*}*/

/*.table td:nth-last-child(2) {*/
/*    width: 100%;*/
/*}*/

.table tr:last-child {
    border-bottom: 1px solid #e9ecef;
}

.table-responsive > .fixed-column {
    right: 0;
    top: 0;
    background: #ffffff;
    position: absolute;
    display: inline-block;
    width: auto;
    border-top: 0 solid;
    border-left: 1px solid #ddd;
}

.table-responsive > .fixed-column th, .table-responsive > .fixed-column td {
    text-align: center !important;
}

@media (max-width: 768px) {
    .table-responsive > .fixed-column {
        top: 1px;
    }

    .table-responsive > .table > tbody > tr > td {
        white-space: inherit;
    }
}

.table-responsive::-webkit-scrollbar {
    background: lightyellow;
    width: 12px;
}

.table-responsive::-webkit-scrollbar-track {
    background: whitesmoke;
}

.table-responsive::-webkit-scrollbar-thumb {
    background: gray;
}

.table-responsive:hover::-webkit-scrollbar {
    background: yellow;
}

.td-action-hidden {
    visibility: hidden;
}

/* Footer Clone */
.table tfoot th {
    padding-top: .75rem;
    padding-bottom: .75rem;
    font-size: .65rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-bottom: 1px solid #e9ecef;
}


.divider {
    height: 0;
    margin: .5rem 0;
    overflow: hidden;
    border-top: 1px solid #e9ecef;
}

/*
Botão para voltar para o inicio da página
*/
#back2Top {
    width: 40px;
    line-height: 40px;
    overflow: hidden;
    z-index: 999;
    display: none;
    cursor: pointer;
    -moz-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    -o-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg);
    position: fixed;
    bottom: 150px;
    right: 0;
    background-color: #DDD;
    color: #555;
    text-align: center;
    font-size: 30px;
    text-decoration: none;
}

#back2Top:hover {
    background-color: #DDF;
    color: #000;
}

/*
END
 */

/* footer fixed on bottom */
.footerFixed {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: red;
    color: white;
    text-align: center;
}

input.currency {
    text-align: right;
    padding-right: 15px;
}

.input-group-text {
    font-size: .75rem !important;
    font-weight: bold;
}

/*Efeitos para os selects tipo selectpicker*/
.btn-light {
    background-color: #fff;
    color: #8898aa;
    font-size: .875rem;
    transition: all .15s ease-in-out;
    height: calc(1.5em + 1.25rem + 5px);
    box-shadow: none;
    font-weight: 400;
}

.btn-light:hover {
    box-shadow: none;
    transform: none;
    background-color: #fff;
    color: #8898aa;
}

.btn-light:not(:disabled):not(.disabled).active, .btn-light:not(:disabled):not(.disabled):active, .show > .btn-light.dropdown-toggle {
    color: #8898aa;
    background-color: #fff;
    border-color: #adb5bd;
}

.dropdown-item:focus, .dropdown-item:hover {
    color: #16181b;
    text-decoration: none;
    background-color: #dee2e6;
}

.bootstrap-select .dropdown-toggle:focus, .bootstrap-select > select.mobile-device:focus + .dropdown-toggle {

    outline-offset: 0;
}

.filter-option-inner-inner {
    letter-spacing: 0;
    font-weight: 400;
}

.post-it {

    display: block;
    padding: 5px 0;
    font-weight: bold;
    margin: 0 auto;
    border: 1px solid rgba(128, 128, 128, 0.5);

}

.post-it span {

    float: left;
    margin-top: -5px;
    margin-right: 5px;
    width: 29px;
    height: 29px;
    display: block;

}

.post-it-task {

    display: block;
    padding: 5px 0;
    font-weight: bold;
    margin: 0 auto;
    border: 0;

}

.post-it-task span {

    float: left;
    margin-top: -2px;
    margin-right: 5px;
    width: 25px;
    height: 25px;
    display: block;

}

.status-prospeccao-cancelada {
    background-color: #332900;
    color: whitesmoke;
}

.status-entrada-lead {
    background-color: #c0ab7c;
    color: black;
}

.status-prospeccao-iniciada {
    background-color: #8bb2f5;
    color: black;
}

.status-prospeccao-cancelada {
    background-color: #332900;
    color: whitesmoke;
}

.status-contato {
    background-color: #2d74f3;
    color: whitesmoke;
}

.status-analise {
    background-color: #f5365c;
    color: #e6e6e6;
}

.status-elaboracao-proposta {
    background-color: #175cd2;
    color: white;
}


.status-negociacao {
    background-color: #64e15d;
    color: white;
}

.status-validacao {
    background-color: #3cd05b;
    color: white;
}

.status-assinatura {
    background-color: #25a13a;
    color: whitesmoke;
}

.status-fechamento {
    background-color: #067507;
    color: white;
    font-weight: bold;
}

.sidenav-toggler-line {
    background-color: #fff;
}

.sidenav .navbar-brand {
    padding: 0 !important;
}

/* Style the header: fixed position (always stay at the top) */
.header-page-load {
    position: fixed;
    top: 0;
    z-index: 101;
    width: 100%;
    background-color: #267196;
}

/* The progress container (grey background) */
.progress-container-page-load {
    width: 100%;
    height: 4px;
    background: #1d4643;
}

/* The progress bar (scroll indicator) */
.progress-bar-page-load {
    height: 4px;
    background: #f5b759;
    width: 0;
}


.bg-livi {
    background: #2c749d;
}

.btn-primary {
    background-color: #016F9C !important;
    border-color: #016F9C !important;
}

.btn-primary:hover {
    background-color: #016F9C !important;
    border-color: #016F9C !important;
}

/* Financeiro */
.conta-pagar-baixado {
    color: red;
}

.conta-pagar-pendente {
    font-weight: bold;
    color: red;
    background-color: #ff00000a;
}

.conta-receber-baixado {
    color: green;
}

.conta-receber-pendente {
    font-weight: bold;
    color: green;
    background-color: #00800021;
}


.button-a {
    background: none !important;
    border: none;
    padding: 0 !important;
    /*optional*/
    font-family: arial, sans-serif;
    /*input has OS specific font-family*/
    color: #069;
    text-decoration: underline;
    cursor: pointer;
}

.footer ul.links-vertical li a {
    padding: 1px;
}


html,
body {
    position: relative;
}

.main-content {
    min-height: 95vh; /* will cover the 100% of viewport */
    overflow: hidden;
    display: block;
    position: relative;
    padding-bottom: 100px; /* height of your footer */
}

footer {
    position: absolute;
    bottom: 0;
    width: 100%;
}

.modal-footer {
    border-top: 1px solid #e9ecef;
}

.custom-checkbox .custom-control-input.custom-control-label {
    height: 1.3rem;
    padding-top: 2px;
}

.custom-control-label span {
    top: 0;
}

.fill-linte {
    fill: #f8f9fe;
}

.btn-en {
    font-size: .875rem;
    line-height: 1.5;
    border-radius: 0.3rem;
    color: #000;
    background-color: #f1ad45;
    border-color: #000;
}

.btn-linted {
    color: #fff;
    background-color: #000 !important;
    border-color: #f5b759 !important;
}

@media only screen and (max-width: 1024px) {

    .section-nucleo-icons {
        --gutter: 6rem;
    }
}


@media only screen and (max-width: 890px) {

    .section-nucleo-icons {
        --gutter: 5rem;
    }
}

@media only screen and (max-width: 770px) {

    .section-nucleo-icons {
        --gutter: 4rem;
    }
}


@media only screen and (max-width: 604px) {

    .section-nucleo-icons {
        --gutter: 3rem;
    }
}

@media only screen and (max-width: 504px) {

    .section-nucleo-icons {
        --gutter: 2rem;
    }
}

.navbar-vertical .navbar-nav .nav-link[data-toggle=collapse]:after {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
}

.form-check .form-check-label::after {
    font-family: 'Font Awesome 6 Pro';
}

.h-35 {
    height: 35% !important;
}

/* Separador de funcionalidades */

.divisor {
    position: relative;
}

.divisor .section {
    width: 220px;
    background: #d3dee5;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border: 10px solid #ffffff; /* borda branca em volta */
    margin-bottom: 20px;
    text-align: center; /* centraliza o texto */
    padding: 12px 12px; /* respiro em volta do texto */
    font-family: arial, sans-serif;
    font-size: 1rem;
    font-weight: bold;
    color: #666666; /* texto cinza escuro */
    z-index: 2; /* na frente da linha */
    position: relative; /* exigido pelo z-index */

}

.divisor:before {
    position: absolute; /* posição relativa ao container */
    top: 50%; /* posição vertical: bem na metade */
    content: "";
    display: block;
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    z-index: 1; /* atrás do box do mês */
}

.panel-title {
    margin-bottom: 1.5rem;
}

/* fim */

.btn-whatsapp-pulse {
    background-color: #25d366;
    color: white;
    bottom: 40px;
    right: 40px;
    font-size: 45px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    padding: 40px;
    text-decoration: none;
    border-radius: 50%;
    animation-name: pulse;
    animation-duration: 1.5s;
    animation-timing-function: ease-out;
    animation-iteration-count: infinite;
    z-index: 1000;
    border-bottom: rgba(37, 211, 102, 0.5);
}

.card-existent {
    padding: 1.25rem 1.5rem;
    background-color: #fff;
    border-bottom: 1px solid rgba(0, 0, 0, .05);
}

.dados-cadastrais {
    border-radius: .375rem;
}

/* Código novo que veio do Athena */

.form-check {
    padding-left: 0;
}

.linha-separacao-formulario {
    margin: 1.5rem 1.8rem;
    border: 0;
    border-top: 1px solid #001f410f;
}

.linha-separacao-formulario::after {
    background: radial-gradient(ellipse at center, #dae6f0, rgba(255, 255, 255, 0) 60%);
}

[data-toggle="collapse"] .fa:before {
    content: "\f146";
}

[data-toggle="collapse"].collapsed .fa:before {
    content: "\f0fe";
}

.panel-title {
    margin-bottom: 10px;
}

.ordenacao-icon {
    margin-left: 8px; /* Espaçamento à esquerda para separar do texto */
    display: inline-block;
}

.seta-asc::after {
    content: "\2191"; /* Caractere Unicode para seta para cima */
}

.seta-desc::after {
    content: "\2193"; /* Caractere Unicode para seta para baixo */
}

@media (min-width: 375px) {
    .mt-sm-0, .my-sm-0 {
        margin-top: 0 !important;
    }
}

/* Kanban */

.kanban-container {
    position: relative;
    box-sizing: border-box;
    width: auto;
    overflow: scroll;
}

.kanban-container * {
    box-sizing: border-box;
}

.kanban-container:after {
    clear: both;
    display: block;
    content: "";
}

.kanban-board {
    position: relative;
    float: left;
    background: #e9ecef;
    transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
    border-radius: 0.75rem;
}

.kanban-board.disabled-board {
    opacity: 0.3;
}

.kanban-board.is-moving.gu-mirror {
    transform: rotate(3deg);
}

.kanban-board.is-moving.gu-mirror .kanban-drag {
    overflow: hidden;
    padding-right: 50px;
}

.kanban-board header {
    font-size: 16px;
    padding: 20px;
}

.kanban-board header .kanban-title-board {
    font-weight: 600;
    margin: 0;
    padding: 0;
    display: inline;
    color: #344767;
}

.kanban-board header .kanban-title-button {
    float: right;
}

.kanban-board .kanban-drag {
    min-height: 200px;
    padding: 20px;
}

.kanban-board:after {
    clear: both;
    display: block;
    content: "";
}

.kanban-item {
    background: #fff;
    padding: 15px;
    margin-bottom: 20px;
    transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);
}

.kanban-item img.w-100 {
    border-radius: 0.375rem;
}

.kanban-item:hover {
    cursor: move;
}

.kanban-item:last-child {
    margin: 0;
}

.kanban-item.is-moving.gu-mirror {
    transform: rotate(3deg);
    height: auto !important;
}

table.dataTable thead th.sorting,
table.dataTable thead th.sorting_asc,
table.dataTable thead th.sorting_desc {
    cursor: pointer;
}

.card-footer-hover .card-footer {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
    pointer-events: none; /* Impede clique enquanto invisível */
}

.card-footer-hover:hover .card-footer {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.dropdown-menu-up {
    top: auto !important;
    /*bottom: 100% !important;*/
    bottom: 50px !important;
    margin-bottom: .5rem;
    z-index: 9;
}

.description-box {
    transition: all 0.3s ease-in-out;
}

.bg-separador-pesquisa {
    background-color: #fefefec2 !important;
    border-radius: 0.300rem;
}

.tab-box {
    position: relative;
    margin-top: 2rem;
    margin-bottom:  2rem;
    border: 1px solid #e1e4ea;
    border-radius: 10px;
    background: #fff;
    padding: 2rem;
}

.tab-label {
    position: absolute;
    top: -36px;
    left: 20px;
    background: #f1f4f9;
    color: #1a2b50;
    padding: 6px 16px;
    font-weight: 600;
    border-radius: 8px 8px 0 0;
    font-size: 15px;
    border: 1px solid #e1e4ea;
    border-bottom: none;
    box-shadow: 0px -2px 5px rgba(0,0,0,0.05);
}

.chart-wrapper { position: relative; }
.chart-canvas { width: 100% !important; height: 320px; }
@media (min-width: 768px) { .chart-canvas { height: 380px; } }
@media (min-width: 1200px){ .chart-canvas { height: 430px; } }

/* ícone fixo, nunca encolhe */
.icon-circle{
    width:48px; height:48px; flex:0 0 48px;
    border-radius:50%;
    display:inline-flex; align-items:center; justify-content:center;
    font-size:22px; line-height:1;
}

/* header flexível, permite quebra quando faltar espaço */
.card-header .header-wrap{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    /*gap:.5rem 1rem;*/
}

/* área à esquerda: ícone + badge; pode encolher, sem empurrar o ícone */
.card-header .header-left{
    display:flex; align-items:center; flex:1 1 auto; min-width:0;
    gap:.75rem;
}

/* badge do segmento: quebra no mobile, trunca no desktop */
.seg-badge{
    display:inline-block;
    padding:.35rem .6rem; border-radius:.6rem;
    font-weight:600;
    max-width:100%;
    line-height:1.1;
    white-space:normal;             /* permite quebra em telas pequenas */
}
@media (min-width: 992px){
    .seg-badge{
        white-space:nowrap;           /* em telas grandes preferimos 1 linha */
        overflow:hidden;
        text-overflow:ellipsis;
    }
}

/* área à direita (tendência) não invade o ícone */
.card-header .header-right{
    margin-left:auto;               /* empurra pro canto direito quando couber */
    flex:0 0 auto;
}


.bg-pink    { background-color: #e83e8c !important; }
.badge-pink { background-color: #e83e8c !important; }

.bg-purple    { background-color: #6f42c1 !important; }
.badge-purple { background-color: #6f42c1 !important; }

.header-wrap {
    display: flex;
    justify-content: space-between; /* Deixa um à esquerda e outro à direita */
    align-items: center;            /* Centraliza verticalmente */
    gap: 8px;                        /* Espaço entre elementos se necessário */
}

.header-left {
    display: flex;
    align-items: center;
}

.header-right {
    flex-shrink: 0; /* Impede de quebrar o texto para baixo */
}

.seg-badge {
    display: inline-block;
    max-width: 180px; /* ajuste conforme o espaço disponível */
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    vertical-align: middle;
}

.badge {
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
}

/* Radios em linha que quebram bonito no mobile */
.radio-group-wrap{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.radio-group-wrap .custom-control{
    /* usa mr-3 mb-2 do BS; nada mais necessário */
}

/* Ajuste de densidade em telas pequenas */
@media (max-width: 575.98px){
    .tab-box .form-control-label{ font-size: .95rem; }
}

/* Selectpicker ocupar 100% */
.bootstrap-select{ width:100% !important; }

.linha-suave {
    width: 80%;
    height: 1px;
    margin: 0 auto;
    background: linear-gradient(to right, transparent, #dae6f0, transparent);
    opacity: 0.4;
}

.line-bottom::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 10%;
    width: 80%;
    height: 1px;
    background: linear-gradient(to right, transparent, #dae6f0, transparent);
    opacity: 0.4;
}