/* Fonte padrao */
body, body .ui-widget, body .ui-widget .ui-widget {
    font-family: Lato, sans-serif !important;
    font-weight: 500;
}

/* Fullscren */
html, body {
    height: 100% !important;
    color: var(--primaryTextColor) !important;
}

.layout-wrapper {
    height: 100% !important;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: start;
}

.main-body {
    overflow-x: hidden !important;
}

.layout-topbar-logo-alt {
    display: none;
}

.layout-static .layout-topbar-logo-alt {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-left: 1.5rem;
}

.layout-static .layout-topbar-logo-alt img {
    height: auto;
    width: 140px;
}

.layout-static .layout-topbar-left {
    display: none !important;
}

.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-right {
    padding: 6px 14px 6px 10px;
}

.topbar-item.user-profile {
    background-color: var(--whiteColor);
    border-radius: 5px;
    -webkit-box-shadow: 5px 5px 15px -10px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 5px 5px 15px -10px rgba(0, 0, 0, 0.75);
    box-shadow: 5px 5px 15px -10px rgba(0, 0, 0, 0.75);
}

@media screen and (max-width: 992px) {
    .layout-static .layout-topbar-logo-alt {
        display: none;
    }

    .layout-static .layout-topbar-left {
        display: flex !important;
    }

    .layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-right .layout-topbar-actions > .topbar-item.user-profile {
        border-radius: 50%;
        height: 36px;
        width: 36px;
        top: 10px;
        right: 16px;
    }

    .layout-wrapper .layout-main {
        padding-top: 115px !important;
    }
}

@media screen and (max-width: 40em) {
    .layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-left {
        display: flex;
    }
}

.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-right .layout-topbar-actions > li.user-profile > a {
    color: var(--primaryTextColor);
}

.layout-menu-dark .menu-wrapper .layout-menu-container .layout-menu > li a,
.layout-menu-dark .menu-wrapper .layout-menu-container .layout-menu > li a i,
.layout-menu-dark .menu-wrapper .layout-menu-container .layout-menu > li > ul li a,
.layout-menu-dark .menu-wrapper .layout-menu-container .layout-menu > li > div .layout-menuitem-text,
.layout-menu-dark.layout-horizontal .menu-wrapper .layout-menu-container .layout-menu > li > ul li a {
    color: var(--primaryTextColor) !important;
}

body .ui-button {
    background: #3C4962;
    color: #f8fafc;
    margin: 0;
    outline: 0 none;
    border-radius: 5px;
    transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s;
}

body a:hover {
    color: var(--whiteColor);
}

.ui-g-12 > .card:first-child {
    margin-top: 0 !important;
}

@media screen and (min-width: 40em) {
    .coluna-detalhes {
    }

    .coluna-edicao {
        text-align: center;
        width: 50px;
    }

    .edit-column {
        width: 50px;
    }

    .display-mobile {
        display: none !important;
    }

    .route-bar {
        margin-top: -1px !important;
        line-height: 20px !important;
    }

    .card {
        margin-top: -7px !important;
        margin-right: -5px !important;
        margin-left: -5px !important;
    }

    .layout-menu-container {
        border-top: none !important;
    }
}

.p-datepicker {
    width: 100% !important;
}

.p-datepicker > input {
    width: 100% !important;
}

@media screen and (min-width: 40em) {
    .coluna-detalhes {
        text-align: center;
        width: 70px;
    }

    .id-column {
        width: 100px !important;
        text-align: center !important;
    }

    .id-column-bigger {
        width: 120px !important;
        text-align: center !important;
    }

    .status-column {
        width: 150px !important;
        text-align: center !important;
    }

    .valor-column {
        width: 300px !important;
        text-align: center !important;
    }

    .id-column {
        width: 20% !important;
        text-align: center !important;
    }

    .simple-column {
        width: 40% !important;
        text-align: center !important;
    }

    .medium-column {
        width: 50% !important;
        text-align: center !important;
    }

    .large-column {
        width: 70% !important;
        text-align: center !important;
    }

    .extra-large-column {
        width: 90% !important;
        text-align: center !important;
    }

    .extra-large-large-column {
        width: 100% !important;
        text-align: center !important;
    }

    .coluna-grande {
        width: 200px !important;
        text-align: center !important;
    }

    .data-column {
        width: 100px !important;
        text-align: center !important;
    }

    .data-hora-column {
        width: 200px !important;
        text-align: center !important;
    }
}

.resp-calendar input.hasDatepicker {
    width: 75%;
}

.layout-wrapper .topbar .topbar-right .topbar-items > li > a .topbar-item-name-mobile {
    display: none !important;
}

.topbar-items {
    padding-top: 0 !important;
}

.topbar-item-name-web span {
    display: block !important;
}

.layout-main {
    min-height: unset !important;
    flex: 1 1 auto;
}

.layout-main-content {
    padding-top: 0 !important;
}

.imagem-capa {
    text-align: center;
}

.coluna-valor {
    text-align: center;
    width: 200px;
}

.coluna-center {
    text-align: center;
}

.resp-dialog {
    min-height: 20vh !important;
    max-height: 70vh !important;
}

/* 	Galleria */
.ui-galleria-frame {
    width: 20% !important;
}

@media screen and (min-width: 993px) {
    .layout-horizontal.layout-wrapper .layout-main {
        padding-top: 7rem;
    }

    .layout-static.layout-wrapper .layout-main {
        padding-top: 4rem;
    }
}

@media screen and (max-width: 1024px) {
    .display-desktop {
        display: none !important;
    }

    .route-bar {
        display: none !important;
    }

    .card {
        margin-top: 30px !important;
    }

    .resp-dialog {
        max-height: 50vh !important;
    }

    .layout-wrapper .topbar .topbar-right .topbar-items > li > a .topbar-item-name-mobile {
        display: inline-block !important;
        vertical-align: middle !important;
    }

    .topbar-item-name-web {
        display: none !important;
    }
}

@media (max-width: 1245px) {
    .resp-calendar input.hasDatepicker {
        width: 75%;
    }

    .layout-wrapper.menu-layout-horizontal .layout-main .route-bar {
        display: none;
    }
}

.edit-column {
    text-align: center;
}

.label {
    font-weight: 700 !important;
}

.label-bolder {
    font-weight: bolder !important;
}

.ui-panelgrid.form-group .ui-panelgrid-cell {
    padding: 4px !important;
}

.botao-pesquisar {
    float: right !important;
}

.mt-5-visualizar {
    display: flex;
    justify-content: center;
}

.botao-visualizar {
    display: block;
    margin: 0 auto;
    text-align: center;
}

.botao-comprar-curso {
    display: block;
    margin: 0 auto;
    text-align: center;
    width: 100% !important;
}

.botao-upload-arquivo {
    float: left !important;
}

.botao-adicionar {
    /* 	background-color: #00ACAC !important; */
}

.botao-fechar {
    background-color: #00ACAC !important;
}

.resp-dialog {
    border: 0 !important;
}

.input-number-resp input {
    width: 97.5% !important;
}

.botao-verde {
    background-color: #46BC6C !important;
}

.botao-vermelho {
    background-color: #F06364 !important;
}

.botao-turquesa {
    background-color: #00ACAC !important;
}

.dashboard-panel .ui-panel-titlebar {
    font-size: 14px !important;
}

.dashboard-panel .ui-widget-content {
    background-color: transparent !important;
    border: none !important;
    font-weight: 700;
}

.dashboard-panel .ui-panel {
    background-color: #fff !important;
    border: 2px solid #f0f3f5 !important;
}

body .ui-trigger-calendar .ui-inputfield {
    border-right: 1px solid #a8acb1 !important;
}

.ui-trigger-calendar .ui-state-disabled {
    width: 97% !important;
}

.ui-state-disabled {
    opacity: .80 !important;
    filter: Alpha(Opacity=80) !important;
}

input[readonly], input[disabled], textarea[readonly], textarea[disabled] {
    opacity: .70 !important;
    filter: Alpha(Opacity=70) !important;
}

input[readonly], input[disabled], textarea[readonly], textarea[disabled], div.ui-state-disabled, div.ui-state-disabled label {
    background-color: #F5F4F4 !important;
}

button[disabled] {
    opacity: .30 !important;
    filter: Alpha(Opacity=30) !important;
    cursor: not-allowed !important;
}

textarea {
    resize: none !important;
}

.ui-inputfield.ui-state-focus[readonly] {
    border: 1px solid var(--primaryColor);
}

.export-buttons {
    font-size: 18px;
}

.ui-selectonemenu {
    min-width: inherit !important;
}

.ui-datatable-empty-message {
    text-align: center;
    font-weight: 700;
    line-height: 30px;
}

body.exception-body .exception-bottom .exception-wrapper .logo-icon {
    width: 100px;
    display: block;
    margin: 0 auto 5px auto;
    height: auto !important;
}

.route-bar {
    margin-top: 15px !important;
    margin-bottom: 5px !important;
    margin-left: 17px !important;
    font-weight: 500 !important;
    line-height: 20px !important;
}


/* Cabecalho das tabelas */
.ui-datatable thead th {
    border-color: #bfbfbfb0 !important;
    background-color: #9198A6 !important;
    color: #fff !important;
}

/* 	Separacao dos botoes de tamanhos */
.ui-selectonebutton {
    background: #fff !important;
}

.ui-selectonebutton .ui-button {
    margin-right: 1em !important;
    width: 5em !important;
}

/* Logotipo logado */
.layout-wrapper.menu-layout-horizontal .topbar .topbar-left .logo, .layout-wrapper .topbar .logo {
    background: transparent url("") !important;
    height: 100% !important;
}

/* Fundo */
body.main-body {
    /*background: #FFFFFF;*/
}

/* Cabecalho */
.topbar-left {
    width: 150px !important;
}

.topbar-left {
    padding: 0 !important;
}

#topbar-menu-button i, #menu-button i {
    color: #fff !important;
}

/* Rodape */
.footer-text-right {
    float: right !important;
}

.footer .card {
    margin-bottom: 5px !important;
}

.layout-wrapper .footer {
    padding-bottom: 0 !important;
}

body .ui-inputfield {
    color: var(--primaryTextColor);
    background: #FDFEFF;
    padding: 0.5rem 0.5rem;
    border: 1px solid #D7D8D9;
    outline: 0 none;
    font-size: 1rem;
    border-radius: 5px;
    transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s;
}

.card h2 {
    margin-top: 0 !important;
    margin-bottom: 5px !important;
    margin-left: 10px !important;
}

.layout-wrapper .topbar-items > li {
    margin-top: 6px;
}

#topbar-menu-button i, #menu-button i {
    color: var(--primaryTextColor) !important;
}

.topbar, .topbar-left {
    color: var(--primaryTextColor) !important;
}

.ui-datatable thead th {
    font-weight: normal !important;
}

h1.topbar-title {
    /* 	width: 230px; */
    position: absolute;
    top: -5px;
    z-index: 9999 !important;
    left: 50%;
    margin-left: -115px;
}

@media screen and (max-width: 780px) {
    h1.topbar-title {
        display: none;
    }
}

.panelGridCenter {
    margin: 0 auto;
}

body .ui-datatable .ui-datatable-data tr td {
    padding: 5px 12px !important;
    color: var(--primaryTextColor);
}

body .ui-datatable .ui-datatable-footer {
    padding: 2px 14px;
    background-color: #ffffff !important;
    color: var(--primaryTextColor) !important;
}

body .ui-datatable .ui-paginator {
    padding: 5px 14px;
}

.layout-wrapper .topbar .logo {
    background-size: 120px 75px !important;
}

.layout-wrapper .topbar .topbar-left {
    padding-top: 5px !important;
    margin-left: 15px;
}

.layout-menu-container .layout-menu > li {
    margin: 0 !important;
    padding: 0 !important;
}

@media ( min-width: 1025px) {
    .layout-wrapper.menu-layout-horizontal .layout-main {
        padding-top: 110px;
    }
}

.layout-wrapper.layout-main.route-bar {
    padding: 0 !important;
}

div.topbar.clearfix {
    height: 60px !important;
}

div.layout-menu-container.menu-bar {
    top: 60px !important;
}

div.topbar-left {
    height: 60px !important;
}

.layout-wrapper .topbar .topbar-right {
    padding: 7px 20px 15px 270px !important;
}

.layout-wrapper .layout-menu li a {
    padding: 5px 14px !important;
}

@media screen and (max-width: 1024px) {
    .layout-wrapper .topbar .topbar-right #menu-button {
        position: absolute;
        left: 20px;
        padding-top: 24px;
    }

    .layout-wrapper .topbar .topbar-right #topbar-menu-button {
        padding-top: 13px;
    }
}

.btn-coluna {
    background-color: transparent !important;
    color: var(--primaryTextColor) !important;
    font-size: 16px !important;
}

.btn-coluna-pesquisar {
    background-color: rgb(41, 61, 77) !important;
    color: var(--primaryInvertedTextColor) !important;
    font-size: 16px !important;
}

body .ui-button.ui-button-icon-only .ui-icon {
    margin-left: -0.7rem;
}

body .ui-calendar .ui-button.ui-button-icon-only .ui-icon-calendar {
    margin-left: -0.5rem;
}

body .ui-inputfield.ui-state-focus {
    border-color: var(--primaryColor);
    outline: 0 none;
    box-shadow: 0 0 0 0.2em #000000;
}

body .ui-inputwrapper.ui-inputwrapper-focus {
    border-color: var(--primaryColor);
    outline: 0 none;
    box-shadow: 0 0 0 0.2em #000000;
    border-radius: 5px;
}

.btn-white {
    background-color: #FFFFFF;
    color: #000000;
}

.btn-red {
    background-color: #F06364 !important;
}

.btn-roxo {
    background-color: #68388C !important;
}

.btn-login {
    background-color: #3780E7 !important;
}

.btn-cadastrar {
    background-color: #507AB5 !important;
}

.btn-cadastrar:hover {
    text-decoration: none !important;
}

.btn-green-transparent {
    background-color: #6A8AAF !important;
    color: #ffff !important;
    border: 1px solid !important;
    float: right !important;
    border-radius: 5px !important;
    font-size: medium !important;
    font-weight: 500 !important;
}

.btn-green-transparent:hover {
    background-color: transparent !important;
    color: #6A8AAF !important;
    border: 1px solid !important;
    float: right !important;
    border-radius: 5px !important;
    font-size: medium;
    font-weight: 600 !important;
}

.btn-green {
    background-color: #00acac !important;
}

.ui-panelgrid.form-group .ui-panelgrid-cell {
    padding: 3px !important;
}

body .ui-chkbox .ui-chkbox-box {
    width: 15px !important;
    height: 15px !important;
}

.icon-column {
    height: 22px !important;
    vertical-align: middle !important;
}

body .ui-accordion .ui-accordion-header {
    background-color: #91959a !important;
    color: #FFFFFF !important;
}

.dialogLoad {
    background: transparent;
}

div#dialogLoad {
    background: transparent !important;
}

body .ui-paginator {
    background-color: #91959a !important;
}

.xls-column {
    min-width: 150px !important;
}

.ui-datatable-scrollable-body::-webkit-scrollbar-thumb {
    border-radius: 8px !important;
    border: 1px solid #a8acb1 !important;
    background-color: rgb(47, 142, 229) !important;
}

@media ( min-width: 1025px) {
    .layout-wrapper.menu-layout-horizontal .layout-menu-container .layout-menu > li > ul {
        width: 270px !important;
        top: 50px !important;
    }
}

.ui-g-1, .ui-g-2, .ui-g-3, .ui-g-4, .ui-g-5, .ui-g-6, .ui-g-7, .ui-g-8, .ui-g-9, .ui-g-10, .ui-g-11, .ui-g-12 {
    padding: .3em !important;
}

.layout-wrapper.menu-layout-horizontal .layout-menu-container {
    border-top: 1px solid #91959a !important;
}

.ui-selectonemenu {
    border-color: #D7D8D9 !important;
}

/* Components */
.ui-datatable .ui-datatable-header, .ui-datatable .ui-datatable-footer {
    text-align: center !important;
    padding: 2px 5px !important;
}

.ui-datepicker-trigger.ui-button-icon-only .ui-button-text {
    padding: 9px !important;
}

.ui-datatable table {
    border-collapse: collapse !important;
    width: 100% !important;
    table-layout: fixed !important;
}

.ui-fileupload-simple .ui-button .ui-button-text {
    display: inline-flex !important;
    line-height: normal;
}

table {
    border-collapse: separate !important;
    border-spacing: 1px !important;
}

body .ui-datatable .ui-datatable-data > tr > td {
    padding: 0.75rem !important;
    border-style: solid;
    border-color: rgba(0, 0, 0, 0.08) !important;
    border-width: 0 0 1px 0 !important;
}

.input-area {
    width: 99% !important;
}

.dashboard-icon {
    margin-bottom: -15px !important;
}

.dashboard-count {
    color: #3d697e;
    font-size: 36px;
    padding: 17px 5px 0 5px;
    font-weight: 500;
}

.dashboard-count-min {
    color: #3d697e;
    font-size: 16px;
    padding: 17px 5px 0 5px;
    font-weight: 300;
    margin-bottom: 15px !important;
}

body .ui-datepicker .ui-datepicker-buttonbar button {
    background-color: var(--primaryColor);
    border-color: var(--primaryColor);
}

/* 	Poseidon 2 */
.menu-wrapper .layout-menu-container .layout-menu li > a {
    margin-top: 11px !important;
}

body .ui-dialog .ui-dialog-titlebar {
    background: #FDFEFF;
    color: var(--primaryInvertedTextColor);
    font-weight: 700;
    border-bottom: 0 none;
    padding: 0.5rem;
}

body .ui-button {
    border: none !important;
    background-color: var(--primaryColor);
}

body .ui-button:hover, body .ui-datepicker .ui-datepicker-buttonbar button:not(:disabled):hover {
    border: none !important;
    background-color: #C4C4C4;
}

body .ui-panelgrid .ui-panelgrid-cell {
    background: none;
    color: var(--primaryTextColor);
}

body .ui-datatable thead th {
    background-color: #9198a6 !important;
    border: 1px solid #fff;
}

body .ui-paginator {
    background-color: #9198a6 !important;
}

body .ui-paginator .ui-paginator-first, body .ui-paginator .ui-paginator-prev, body .ui-paginator .ui-paginator-next, body .ui-paginator .ui-paginator-last {
    color: #000000 !important;
}

body .ui-datatable thead th .ui-column-title {
    font-weight: 500;
}

.div-botoes {
    background-color: #9198a6 !important;
    padding: 8px !important;
}

.card h1 {
    font-weight: 700 !important;
    margin-bottom: 10px !important;
    margin-top: 0 !important;
    color: var(--primaryTextColor) !important;
    font-size: 22px !important;
}

h4 {
    margin-bottom: 10px !important;
    margin-top: 0 !important;
    color: #3d697e;
}

body .ui-dialog .ui-dialog-titlebar {
    background-color: #9198a6 !important;
}

.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a {
    background-color: #3C4962 !important;
    color: #fff;
}

.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a {
    color: #fff;
}

body .ui-tabs .ui-tabs-nav li.ui-tabs-header.ui-state-active {
    background-color: #3C4962 !important;
}

.layout-wrapper .layout-main .layout-main-content {
    padding: 10px !important;
    padding-top: 2px !important;
}

body .ui-tabs .ui-tabs-nav li.ui-tabs-header.ui-state-active a {
    color: #fff;
}

.ui-dialog-content .ui-widget-content .divLoading {
    background: transparent !important;
}

body .dialogLoad .ui-dialog-content {
    background: transparent !important;
}

.ui-tabs .ui-tabs-nav li {
    position: initial !important;
}

.layout-menu-container {
    padding-bottom: 10px !important;
}

body .ui-paginator {
    background-color: #e3e9f5 !important;
}

body .ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-active {
    background: var(--primaryColor) !important;
    color: #f8fafc;
}

body .ui-datatable thead th .ui-column-title {
    font-weight: 700 !important;
    vertical-align: middle !important;
    color: var(--primaryTextColor);
}

span.ui-sortable-column-icon.ui-icon.ui-icon-carat-2-n-s {
    color: var(--primaryTextColor);
}

.ui-datatable .ui-sortable-column {
    cursor: pointer !important;
}

body .ui-datatable thead th {
    background: #e3e9f5 !important;
    border: 0 !important;
}

body, body .ui-widget, body .ui-widget .ui-widget {
    border-radius: 5px !important;
}

@media ( min-width: 993px) {
    .layout-wrapper.layout-horizontal .menu-wrapper .layout-menu-container .layout-menu li.active-menuitem > ul {
        width: 260px;
    }

    .layout-menu-dark.layout-horizontal .menu-wrapper .layout-menu-container .layout-menu > li > ul li.active-menuitem {
        background-color: #FFFFFF;
    }

    .layout-wrapper.layout-horizontal .menu-wrapper .layout-menu-container .layout-menu > li > ul > li {
        padding: 0 0;
    }
}

.layout-menu-dark.layout-horizontal .menu-wrapper .layout-menu-container .layout-menu > li > ul {
    border-radius: 4px;
}

.layout-topbar-light .layout-topbar .layout-topbar-wrapper .layout-topbar-left .layout-topbar-logo > img {
    height: 50px !important;
    width: 150px;
}

.custom-fileupload-content .ui-fileupload-content {
    visibility: visibility;
    display: flex !important;
    border: none !important;
    padding: 0 !important;
    flex-wrap: wrap !important;
}

.custom-fileupload-content .ui-fileupload-preview {
    display: none !important;
}

.custom-fileupload-content .ui-fileupload-content .ui-fileupload-filename{
    display: flex;
}

.custom-fileupload-content .ui-messages {
    width: 100% !important;
}

.contato-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.contato-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 2px;
}

.contato-title {
    margin-top: 2rem;
    margin-bottom: 2rem;
    font-size: 6rem;
    font-weight: bold;
}

.contato-info {
    margin-bottom: 2rem;
    font-weight: bold;
    font-size: 2rem;
}

/*responsividade tela contato*/
@media (max-width: 424px) {
    .contato-title {
        margin-top: 4rem;
        font-size: 3rem;
    }

    .contato-info {
        font-size: 1rem;
    }
}

/*home*/
.home {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.home-message-container {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    padding: 2rem 2rem;
    border-radius: 8px;
    background-color: var(--whiteColor);
    -webkit-box-shadow: 6px 0 30px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 6px 0 30px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 6px 0 30px 0 rgba(0, 0, 0, 0.2);
}

.home-message {
    text-align: center;
    font-weight: bold;
    font-size: 1.75rem;
}

@media screen and (max-width: 992px) {
    .home-message-container {
        padding: 2rem 4rem;
    }

    .home-message {
        font-size: 22px;
    }
}

@media screen and (max-width: 40em) {
    .home-message-container {
        padding: 2rem;
    }

    .home-message {
        font-size: 18px;
    }
}

.home-subtitle {
    font-size: 2rem;
    font-weight: bold;
    margin-top: 2rem;
    color: var(--primaryColor);
}

.home-services {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 2rem;
    padding-top: 2rem;
}

.home-help {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 2rem;
    padding-top: 2rem;
}

.home-link {
    text-decoration: none !important;
    padding: 1rem;
    color: var(--primaryColor) !important;
    height: 100%;
    width: 300px;
}

body .ui-widget.home-link {
    border-radius: 10px !important;
}

.home-link.ativo, body .ui-widget.home-link.ativo {
    background: white;
    border: 1px solid var(--secundaryColor);
}

.home-link.ativo:hover {
    background: #f9f9f9 !important;
    box-shadow: 0 0 10px var(--primaryColor);
}

.home-link.inativo {
    background: #e1e1e1;
    pointer-events: none;
}

.perfil-link {
    text-decoration: none !important;
    margin-left: 2rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--primaryColor);
    border-radius: 20px;
    padding: 1rem;
    color: var(--primaryTextColor) !important;
    height: 100%;
    width: 300px;
}

.home-link:hover {
    background-color: #e8f1f8;
}

.perfil-link-ativo:hover {
    background-color: #e8f1f8;
}

.home-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 4rem;
    width: 100%;
}

.perfil-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 2rem;
    width: 100%;
}

.home-card-title {
    display: flex;
    align-items: center;
    flex-grow: 1;
}

.home-icon-container {
    border-radius: 100%;
    margin-right: 1rem;
    padding: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.home-chev {
    margin-left: 1rem;
}

.checkbox-aceito {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.image-logo-cadastro {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 80px;
    width: 100%;
}

.image-logo-cadastro-img {
    width: 100%;
    height: 80px;
}

.button-sticky {
    position: sticky;
    bottom: 5px;
}

.pwa-container {
    position: fixed;
    bottom: 1rem;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}

@keyframes fade {
    0% {
        opacity: 0
    }
    100% {
        opacity: 1
    }
}

.pwa-container.hidden {
    display: none;
}

.pwa-suggesting-container {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: center;
    color: #FFFFFF;
    background-color: var(--primaryColor);
    padding: 1rem;
    animation: fade 300ms ease-in-out;
    border-radius: 6px;
    -webkit-box-shadow: 6px 0 30px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 6px 0 30px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 6px 0 30px 0 rgba(0, 0, 0, 0.2);
}

.pwa-suggesting-icon, .pwa-suggesting-close {
    flex-grow: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;

    padding: 1rem;
}

.pwa-suggesting-icon img {
    width: 62px;
    height: auto;
}

.pwa-suggesting-button .button, .pwa-suggesting-close .button {
    border: none;
    outline: none;
    box-shadow: none;
    cursor: pointer;
    border-radius: 6px;
    padding: 0.5rem;
}

.pwa-suggesting-button .button:hover {
    background-color: rgba(255, 255, 255, 0.8);
}

.pwa-suggesting-button .button:active {
    background-color: rgba(255, 255, 255, 0.7);
}

.pwa-suggesting-button .button {
    background-color: #FFFFFF;
    color: var(--primaryTextColor);
    font-weight: bold;
    font-size: 1.2rem;
    padding-left: 1rem;
    padding-right: 1rem;
}

.pwa-suggesting-close .button {
    background-color: transparent;
    color: var(--primaryInvertedTextColor);
}

.pwa-suggesting-close .button:hover {
    background-color: rgba(199, 199, 199, 0.2);
}

.pwa-suggesting-close .button:active {
    background-color: rgba(199, 199, 199, 0.4);
}

.pwa-suggesting-description {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 4px;
}

.pwa-suggesting-description .title {
    font-size: 1.2rem;
    font-weight: bold;
    padding: 0.5rem;
}

.pwa-suggesting-button {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
}

.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-icon {
    overflow: hidden !important;
}

.ui-dialog .ui-dialog-footer {
    text-align: center !important;
}

.password-column *:nth-child(2) {
    width: 21px;
}

.pd-0 {
    padding: 0 !important;
}

.ui-password {
    width: 100%;
}

.ui-password > input {
    width: 100%;
    padding-right: 2rem;
}

.ui-password-icon {
    font: normal normal normal 1rem / 1 FontAwesome !important;
    color: var(--primaryTextColor) !important;
    display: inline-block !important;
    vertical-align: baseline !important;
}

.ui-password-masked .ui-password-icon:before {
    content: '\f06e';
}

.ui-password-unmasked .ui-password-icon:before {
    content: '\f070';
}

.password-button {
    cursor: pointer;
    background-color: transparent;
    border: none;
    width: 21px;
    align-self: center;
}

.profile-menu {
    border-radius: 10px;
}

.fileupload-container {
    display: flex;
    flex-direction: row-reverse;
    gap: 4px;
    padding: 0 !important;
}

@media screen and (max-width: 992px) {
    .fileupload-container {
        flex-direction: column;
    }
}

@media screen and (max-width: 40em) {
    .fileupload-container {
        flex-direction: row-reverse;
    }
}

.fileupload-container .ui-g-12 {
    padding: 0 !important;
}

.fileupload-container .ui-widget-header {
    background-color: var(--whiteColor) !important;
    border: 0 !important;
    padding: 0 !important;
}

.fileupload-container .ui-fileupload-content {
    display: flex !important;
    border: none !important;
    padding: none !important;
}

.fileupload-container .ui-fileupload .ui-fileupload-buttonbar .ui-button {
    margin-right: 0 !important;
}

.fileupload-container .fileupload {
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: flex-start;
    flex-grow: 0;
}

/* LOGIN */
.login-body {
    overflow: hidden;
    background-color: var(--whiteColor) !important;
    width: 100% !important;
    background-size: cover;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.login-panel {
    width: 30%;
    padding: 1rem 2rem 2rem 2rem;
    border-radius: 8px;
    background-color: var(--primaryColor);
}

.login-panel .login-content-container {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: center;
}

.login-panel .title {
    color: var(--primaryInvertedTextColor);
    font-size: 1.5rem !important;
    text-align: center;
}

.login-panel .forgot-password {
    width: 100%;
    text-align: center;
    margin: 8px 0;
    color: var(--primaryInvertedTextColor);
}

.login-panel .forgot-password a {
    color: var(--primaryInvertedTextColor);
}

.login-panel .feedback-message {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.2rem;
    color: var(--primaryInvertedTextColor);
    margin-top: 2rem;
    margin-bottom: 2rem;
}

@media (max-width: 1025px) {
    .login-panel {
        width: 75%;
    }
}

@media screen and (max-width: 40em) {
    .login-panel {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        border-radius: 0;
    }
}

.logo-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem 0 !important;
}

.logo-container img {
    height: calc(98px * 0.95);
}

.custom-container {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    height: 100vh;
}

.custom-container-content {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.cadastro-panel {
    background-color: var(--whiteColor) !important;
    color: var(--primaryColor);
}

.cadastro-title {
    width: 100%;
    text-align: center;
    color: white;
    font-weight: bold;
    font-size: 2rem !important;
}

@media (max-width: 1345px) {
    .cadastro-panel {
        padding: 4rem 1rem 0 1rem;
    }
}

.access-container {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.primary-color, .primary-color label {
    color: var(--primaryColor) !important;
}

.ui-selectonemenu.ui-state-error .ui-selectonemenu-label {
    border: 1px solid red;
}

.btn-login {
    background-color: #3780E7 !important;
}

.auditoria-container {
    border: 1px solid #E4E5E5;
    background: #F6F9FE;
    color: #515C66;
    padding: 1rem;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.product-item .product-item-content {
    border: 1px solid var(--surface-d);
    border-radius: 3px;
    margin: .3rem;
    text-align: center;
    padding: 2rem 0;
}

.dialog-comprar-curso {
    overflow: auto;
    top: 10%;
    bottom: 3%;
    margin-top: 3%;
    margin-left: 5%;
    margin-right: 5%;
}

.cursos-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.curso-item {
    background-color: #ffffff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-align: center;
}

body .ui-button.ui-button-icon-only .ui-icon {
    margin-left: -0.50rem !important;
    margin-right: 0 !important;
    display: inline-block !important;
    transform: none !important;
}

.quadros{
    background-color: #fff;
    width: 400px;
    margin-right: 20px;
    display: flex;
    flex-direction: column;

}

.quadro-aeroporto{
    margin-top: 20px;
    margin-bottom: 20px;
    padding-right: 5px;
    padding-left: 5px;
}

.quadro-card{
    margin-top: 40px;
    margin-left: 40px;
    margin-right: 40px;
}

.quadro-valor{
    text-align: center;
    background-color: #e2e6f0;
    color: #061d30;
    font-weight: bold;
    font-size: 4rem;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #ccc;
}

.quadro-card h6{
    text-align: center;
    color: #061d30;
    font-size: 1rem;
    font-weight: bold;
}

.graficos{
    width: 100%;
    display: flex;
    flex-direction: column;
}

.grafico-semanal{
    background-color: #fff;
    padding-bottom: 20px;
}

.graficos-pie{
    margin-top: 30px;
    display: flex;
    justify-content: space-around;
}

.grafico-mensal{
    background-color: #fff;
    padding-bottom: 20px;
}

.grafico-anual{
    background-color: #fff;
    padding-bottom: 20px;
}

.grafic-filter{
    background-color: #fff;
    width: 400px;
    margin-left: 20px;
}

.home h5 {
    color: #fff;
    background-color: #061d30;
    text-align: center;
    font-weight: bold;
    padding: 5px;
}

@media (max-width: 995px) {
    .home {
        flex-wrap: wrap;
    }
    .quadros {
        width: 100%;
        margin-top: 40px;
        margin-right: 0px;
        margin-bottom: 40px;
    }
    .quaro-aeroporto{
        flex-direction: row;
    }
    .graficos-pie {
        flex-direction: column;
    }
    .grafic-filter{
        width: 100%;
        margin-left: 0px;
    }
}

.content-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding: 20px;
}

.filter-panel {
    border-radius: 6px;
    overflow: hidden;
    padding-bottom: 20px;
    height: fit-content;
}

.charts-container {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.panel-header {
    background-color: #061d30;
    color: #ffffff;
    text-align: center;
    font-weight: bold;
    padding: 12px;
    font-size: 1.1rem;
    margin-bottom: 15px;
    border-radius: 5px;
    height: 45px;
}

.panel-content {
    padding: 0 15px;
}

.chart-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.chart-card {
    flex: 1;
    min-width: 300px;
    border-radius: 6px;
    overflow: hidden;
    padding-bottom: 20px;
    margin-bottom: 0 !important;
}

@media (max-width: 1200px) {
    .filter-panel {
        flex: 0 0 300px;
    }
}

@media (max-width: 995px) {
    .content-container {
        flex-direction: column;
        gap: 20px;
    }
    .filter-panel {
        flex: 1 1 auto;
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }
    .charts-container {
        flex: 1 1 auto;
        width: 100%;
    }
    .chart-row {
        flex-direction: column;
        gap: 20px;
    }
    .chart-card {
        width: 100%;
        margin: 0;
    }
}