﻿@font-face { font-family: 'Montserrat'; src: url('../../assets/fonts/montserrat/Montserrat-Regular.ttf'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'Montserrat'; src: url('../../assets/fonts/montserrat/Montserrat-Medium.ttf'); font-weight: 500; font-style: normal; }
@font-face { font-family: 'Montserrat'; src: url('../../assets/fonts/montserrat/Montserrat-SemiBold.ttf'); font-weight: 600; font-style: normal; }
@font-face { font-family: 'Montserrat'; src: url('../../assets/fonts/montserrat/Montserrat-Bold.ttf'); font-weight: 700; font-style: normal; }

:root {
    --romma-azul: #006991;
    --romma-azul-rgb: 0, 105, 145;
    --romma-azul-escuro: #015f83;
    --romma-azul-acento: #026185;
    --romma-verde: #67b821;
    --romma-verde-rgb: 103, 184, 33;
    --romma-verde-escuro: #589c1c;
    --romma-gradiente-marca: linear-gradient(135deg, var(--romma-azul), var(--romma-verde));

    --romma-azul-suave: #1f8aab;
    --romma-verde-suave: #93d15c;

    --romma-radius-sm: 8px;
    --romma-radius-md: 14px;
    --romma-radius-pill: 999px;

    --romma-shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);
    --romma-shadow-md: 0 4px 16px rgba(0, 0, 0, .12);
    --romma-shadow-lg: 0 8px 30px rgba(0, 0, 0, .18);
}

body {overflow: hidden !important; margin: 0 !important; padding: 0 !important; font-family: Montserrat, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;}
html, body { height: 100% !important; overflow: hidden !important;}
#divUpdProgress { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.7); z-index: 99999999;}
#divUpdProgressClean { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 99999999; background-color: #FFF !important;}
#divUpdProgressClean > div { position: absolute; width: 100%; height: 135px; top: 0; right: 0; bottom: 0; left: 0; margin: auto; text-align: center; padding: 10px 10px 10px 30px;}
#divUpdProgressClean > div > img { height: 85px; margin-top: 10px; margin-bottom: 10px;} 
#divUpdProgressClean > div > i { color: #539aaf !important; font-size: 19pt; position: absolute; margin-top: 29px; margin-left: -30px; }

.form-control-required { border-color: red !important; background-color: rgba(255, 0, 0, 0.05) !important; }

.btn-pill { border-radius: var(--romma-radius-pill) !important; }
.form-control,
.form-select { box-shadow: none !important; }
.form-floating label,
.form-floating > .form-control-plaintext ~ label, .form-floating > 
.form-control:focus ~ label, .form-floating > 
.form-control:not(:placeholder-shown) ~ label, .form-floating > 
.form-select ~ label 

{ background: transparent !important; }

@keyframes autofill {
    from { background: transparent; }
    to { background: transparent; }
}
input:-webkit-autofill { -webkit-animation-name: autofill; -webkit-animation-fill-mode: both; background: transparent !important; }
input, select { margin-bottom: 3px !important; }
input, select, textarea { text-transform: uppercase !important; }

.objHidden { display: none !important; }
.asterisk_input::after { content: " *"; color: #e32; position: absolute; margin: 0 0 0 -20px; font-size: xx-large; padding: 0 5px 0 0; }
.marginLeft8 { margin-left: 8px !important; }

.swal2-popup.swal2-toast .swal2-title { font-size: 11pt !important; }
.swal2-popup.swal2-toast { padding: 10px 15px 10px 15px !important; } 
.swal2-popup.swal2-toast h2 { font-weight: 500 !important; font-size: 10pt !important; }
.swal2-popup.swal2-modal .swal2-icon { font-size: 12pt !important; }
.swal2-popup.swal2-toast .swal2-icon { font-size: 11pt !important; }
.swal2-popup.swal2-modal .swal2-title { font-size: 16pt !important; }
.swal2-popup.swal2-modal .swal2-html-container { font-size: 12pt !important; }
.swal2-popup.swal2-modal { padding-bottom: 25px !important; }

.oculta-pc { display: none; }
.oculta-mobile { display: initial; }

td.oculta-mobile, th.oculta-mobile { display: table-cell; }

a { box-shadow: none !important; outline: none !important; }

.spinner-border { font-size: 7pt !important; height: 16px; width: 16px; margin-top: 2px !important; }

.form-control { color: #000; }
.form-floating label { color: #999; }
.form-floating > .form-control-plaintext ~ label, .form-floating > 
.form-control:focus ~ label, .form-floating > 
.form-control:not(:placeholder-shown) ~ label, .form-floating > 
.form-select ~ label { color: #888; top: -2px; font-size: 10pt; }

nav.bg-dark { background-color: #006991 !important; }
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show { font-size: 10pt; color: #FFF;   }
.navbar-nav .nav-link, .navbar-nav .nav-link.show { color: #c2dde8; font-size: 10pt; }
#divDadosLogado { text-align: right; padding-right: 10px; padding-left: 10px; padding-top: 2px; }
#dropdownUserDiv .dropdown-menu.show { left: -110px; }
#BodyPage { height: calc(100% - 0px); }
#BodyPage[device="ios"] { min-height: calc(100% - 40px) !important; height: calc(100% - 40px) !important; max-height: calc(100% - 40px) !important; margin-top: 35px !important; }

.rodape-creditos {
    margin: 5px 0 0 0;
    text-align: center;
    font-size: 7.5pt;
    letter-spacing: .3px;
}

.rodape-creditos .rodape-creditos-rotulo { color: var(--romma-azul-acento); opacity: .45; }
.rodape-creditos .rodape-creditos-marca { color: var(--romma-azul-acento); opacity: .75; font-weight: 600; }

.login-card {
    background: rgba(255, 255, 255, .55);
    -webkit-backdrop-filter: blur(16px) saturate(150%);
    backdrop-filter: blur(16px) saturate(150%);
    border: 1px solid rgba(255, 255, 255, .6);
    border-radius: var(--romma-radius-md);
    box-shadow: var(--romma-shadow-lg);
    padding: 26px 22px 18px 22px;
    margin-bottom: 18px;
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .login-card {
        background: rgba(255, 255, 255, .88);
    }
}

.login-creditos {
    margin: 20px 0 0 0;
    text-align: center;
    font-size: 8.5pt;
    letter-spacing: .4px;
}

.login-creditos .login-creditos-rotulo { color: #026185; opacity: .45; }
.login-creditos .login-creditos-marca { color: #026185; opacity: .75; font-weight: 600; }
#divDetector { position: absolute; width: 100%; height: 100%; top: 0; left: 0; background-color: rgba(0,0,0,0.8) !important; display: flex; align-items: center; justify-content: center; }
#ifrDetector { width: 100%; height: 100%; max-width: 650px; max-height: 488px; border: 4px solid #000; padding: 0 !important; margin: 0 !important; border-radius: 4px; }
.modal-header, .modal-footer { background-color: #F6F6F6; }
.modal-footer button, .modal-footer a { min-width: 115px; }

#modalRecuperacaoSenha .modal-title { color: var(--romma-azul); }
#modalRecuperacaoSenha .modal-body p { color: var(--romma-azul-acento); opacity: .8; text-align: center; }

/*div:where(.swal2-container).swal2-backdrop-show, 
    div:where(.swal2-container).swal2-noanimation { background: rgba(0,0,0,.7) !important; }*/

button.swal2-close { outline: none !important; box-shadow: none !important; }
.table { font-size: 10pt; }
.table tbody tr { cursor: pointer; }
.table-striped thead tr, .table.dataTable { margin: 0 !important; margin-top: -1px !important; top: -1px !important; }
.table thead tr th, .table-striped thead tr th { position: sticky !important; top: -1px !important; background-color: #FFF; text-shadow: none !important; }
.table-striped td { font-size: 9pt; vertical-align: middle; }
.table-striped th { font-size: 10pt; vertical-align: middle; }
.table-striped td .btn { font-size: 9pt; padding: 4px 8px 4px 8px; font-weight: 500; border-radius:4px; }
.table-striped .selected, .selected, .selected td, .selected th { background-color: #E1F4FF !important; --bs-table-bg-type: #E1F4FF !important; color: #3C8DBC !important; }
.table-striped .dropdown, .table-striped .dropdown-center, 
.table-striped .dropend, .table-striped .dropstart, .table-striped .dropup, 
.table-striped .dropup-center 

{ position: initial; }

input[type="search"] { text-transform: capitalize !important; }
.badge { padding-top: 4px; min-height: 18px; font-size: 8pt !important; font-weight: bold !important; text-transform: uppercase; }
.form-control, .form-select{ font-size: 10pt; }

@media (max-width: 767px) {
    .form-control, .form-select { font-size: 16px !important; }
}

/* .dataTables_wrapper div { padding: 0px !important; margin: 0px !important; }
.dataTables_length, .dataTables_filter, .dataTables_info { font-size: 9pt; }
.dataTables_info { color: #01adf6; }
.dataTables_wrapper { height: 100%; }

    .dataTables_wrapper th, .dataTables_wrapper td { font-size: 10pt !important; }
    .dataTables_wrapper .row.dt-row { height: calc(100% - 90px) !important; overflow: hidden !important; }
    .dataTables_wrapper > .row:first-child { background-color: #f8f9fa; padding: 10px 8px 8px 0px !important; border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important; }
    .dataTables_wrapper .row.dt-row > div { height: calc(100% - 0px) !important; overflow-y: auto !important; overflow-x: hidden !important; margin-top: -1px !important; }
    .dataTables_wrapper div.dataTables_length, 
    .dataTables_wrapper div.dataTables_info 
    { padding-left: 8px !important; }

    .dataTables_wrapper .pagination a { font-size: 10pt; }
    .dataTables_wrapper div.dataTables_paginate { padding-right: 10px !important; }
    .dataTables_wrapper div.dataTables_info { padding-top: 10px !important; }

table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control, table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control 

{ position: initial; padding-left: 4px; }

    table.dataTable.dtr-inline.collapsed > tbody > tr > 
    td.dtr-control:before, table.dataTable.dtr-inline.collapsed > tbody > tr > 
    th.dtr-control:before 
    
    { height: 13px !important; width: 14px !important; position: initial; margin-right: 5px; display: inline-block; padding-top: 1px !important; }*/

    #divBotoes a{ font-size: 10pt; }

.form-label{ margin: 0 0 2px 0; font-size: 9pt; font-weight: 600; }
#divBotoes .btn { min-width: 130px; }
.btn-primary { background: linear-gradient(135deg, var(--romma-azul), var(--romma-azul-suave)) !important; border-color: var(--romma-azul-escuro) !important; }

.btn-success { background: linear-gradient(135deg, var(--romma-verde), var(--romma-verde-suave)) !important; border-color: var(--romma-verde-escuro) !important; }

@media(max-width: 767px) { #divBotoes .btn { min-width: 90px; }

.dataTables_wrapper .row.dt-row { height: calc(100% - 117px) !important; overflow: hidden !important; }
.dataTables_wrapper > .row:first-child > div:last-child { display: none !important; }
#dropdownUserDiv .dropdown-menu.show { left: 0; }
.oculta-pc { display: initial; }
th.oculta-pc { display: table-cell; }
td.oculta-pc { display: table-cell; }
.oculta-mobile { display: none !important; }
#divDadosLogado { text-align: left; }
footer ul { margin-top: -10px; }
#ifrDetector { max-width: 100%; max-height: 100%; border: none; }}
.swal2-toast{ margin-top: 50px !important; }

.modal-conheca-titulo {
    text-align: center;
    color: var(--romma-azul-acento);
    opacity: .85;
    font-size: 9pt;
    margin: 0 0 14px 0;
}

.modal-conheca-lista {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.modal-conheca-link {
    text-decoration: none;
    display: block;
    border-radius: var(--romma-radius-md);
    overflow: hidden;
    box-shadow: var(--romma-shadow-sm);
    transition: transform .18s ease, box-shadow .18s ease;
}

.modal-conheca-link:hover, .modal-conheca-link:focus-visible {
    transform: translateY(-2px);
    box-shadow: var(--romma-shadow-md);
}

.modal-conheca-img {
    display: block;
    width: 100%;
    aspect-ratio: 950 / 300;
    border: thin solid rgba(var(--romma-azul-rgb), .18);
}