.paleta-de-cores{
--cor-01-01: #AED3E3; 
--cor-01-02: #A3CEEF;
--cor-01-03: #BBD2EC;
--cor-01-04: #DFE9F5;
--cor-01-05: #A7AED3;

--cor-02-01: #86BEDA;
--cor-02-02: #7BB4E3;
--cor-02-03: #90B1DB;
--cor-02-04: #C5D4EB;
--cor-02-05: #838ABD;

--cor-03-01: #009DCF;
--cor-03-02: #4E97D1;
--cor-03-03: #3E77B6;
--cor-03-04: #6C85BD;
--cor-03-05: #5B61A1;

--cor-04-01: #008DC0;
--cor-04-02: #006DB2;
--cor-04-03: #00569D;
--cor-04-04: #003A88;
--cor-04-05: #002D82;

--cor-05-01: #007AA2;
--cor-05-02: #00609C;
--cor-05-03: #004F92;
--cor-05-04: #003B85;
--cor-05-05: #002A7C;

--cor-06-01: #006A89;
--cor-06-02: #00527C;
--cor-06-03: #004987;
--cor-06-04: #003777;
--cor-06-05: #00216D;

--cor-07-01: #004B57;
--cor-07-02: #003F5D;
--cor-07-03: #002F5C;
--cor-07-04: #002A5E;
--cor-07-05: #001A5F;
}

:root {
--cor-btn-ativo: #004F92;  /* --cor-05-03 */
--cor-btn-hover: #002F5C; /* --cor-07-03 */
--cor-btn-select: #3E77B6; /* --cor-03-03 */
--cor-btn-disabled: #90B1DB; /* --cor-02-03 */
--cor-fundo-principal:#3E77B6; /* --cor-03-03 */
--cor-fundo-ativo: #00569D; /* --cor-04-03 */
--cor-fonte-principal:#DFE9F5; /* --cor-01-04 */
--cor-fonte-principal-disabled: #4E97D1; /* --cor-03-02*/
--cor-fonte-principal-select: #FFF;
--cor-fonte-corpo:#002D82; /* --cor-04-05 */          
--cor-fonte-corpo-select: #001A5F;
--cor-fonte-corpo-disabled:#838ABD; /* --cor-02-05 */          
--cor-sombra-principal: #003F5D; /* --cor-07-02*/
--cor-fundo-tb-title: #DFE9F5; /* --cor-01-04 */
--cor-fundo-select: #DFE9F5; /* --cor-01-04 */
--cor-fonte-tb-hover: #DFE9F5; /* --cor-01-04 */
  }  

body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    color: var(--cor-fonte-corpo);
}

.font-linear-gradient{
    background-image: linear-gradient(to bottom right, #002d82, #3e77b6);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.font-linear-gradient:hover{
    color: var(--cor-fonte-corpo-select);
}

header {
    background-image: linear-gradient(to bottom right, #003a88, #3e77b6);
    background-repeat: no-repeat;
    color:var(--cor-fonte-principal);
    padding: 10px;
}

.painel {
    max-width: 1600px;
    margin: 20px auto;
    padding: 20px;
    color: var(--cor-fonte-corpo);    
}

table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    margin: 0 auto;
    border: 1px solid var(--cor-fundo-principal);
    color: var(--cor-fonte-corpo);
}

tbody {
    display: block;
    overflow-y: scroll;
    height: calc(100vh - 400px);
}

th,
td {
    border: 1px solid #ddd;
    padding: 4px;
    text-align: left;    
}

td a{
    text-decoration: none;
    color: var(--cor-fonte-corpo);
}

th {
    background-color: var(--cor-fundo-tb-title);
}

textarea {
    width: 100%;
    height: auto;  
    resize: none;  
    border: 1px solid #ccc;
    box-sizing: border-box;
    color: var(--cor-fonte-corpo);     
}

textarea:disabled,
input:disabled {
    color: var(--cor-fonte-corpo-disabled)!important;     
}

textarea:focus,
input:focus {  
  outline: none;
}

img{
    user-select: none;
}

.sel a{
    display: block;
}

.sel:hover{
    background-color: var(--cor-fundo-select);
    cursor: pointer;
}

.menu {
    background-color: var(--cor-fundo-principal);
    font-family: Arial, sans-serif;
    text-align: center;
    box-shadow: 0px 4px 8px var(--cor-sombra-principal);        
    margin-bottom: none;    
}

.menu ul {
    display: flex;
    justify-content: center;
    padding: 0 0;
    list-style: none;
    margin-bottom: none!important;
}

.menu li.active {
    background-color: var(--cor-fundo-ativo);
    color: var(--cor-fonte-principal);
    border: 1px solid var(--cor-fundo-principal);
    box-shadow: inset 0px 2px 4px var(--cor-sombra-principal);        
}

.menu li {
    border: 1px solid var(--cor-fundo-principal);
}

.menu li:hover {
    background-color: var(--cor-fundo-ativo);
    border: 1px solid var(--cor-fundo-ativo);
    color:var(--cor-fonte-principal-select);
}

.menu a {
    color: var(--cor-fonte-principal);
    text-decoration: none;
    transition: color 0.3s;
    display: block;
    margin: 10px auto ;    
    width: 150px;
}

.submenu {
    background-color: var(--cor-fundo-principal);
    font-family: Arial, sans-serif;
    text-align: center;
    display: none!important;
    position: absolute;
}

.has-submenu:hover .submenu {
    display: block!important;
    box-shadow: 0px 4px 8px var(--cor-sombra-principal);
    width: 150px;  
}

.container-flex {
    display: flex;
    flex-wrap: wrap;
}

.container-flex input[type="file"] {
    display: none;
}

.group-flex{
    flex: 1; 
    min-width: 420px; 
    margin: 5px 10px 5px 0;   
    vertical-align: middle; 
}

.group-flex-m{
    flex: 1; 
    min-width: 200px; 
    margin: 5px 10px 5px 0;    
}

.group-fix{
    width: 130px; 
    margin: 5px;    
}

.title {
    background-color: var(--cor-fundo-principal);
    color: var(--cor-fonte-principal);
    padding: 3px;
}

.group-title{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;    
} 

.group-title button  {
    background-color: var(--cor-btn-ativo);
    width: 100px;
    height: 30px;
    border-radius: 3px;
    border: none;
    color: var(--cor-fonte-principal);
    padding: 4px;   
    margin: 5px;   
}

.group-title button img,
.title-a-btn img {
    height: 100%;
    margin: auto;
}

.group-btn-xl {
    width: 300px!important; 
    height: 40px!important; 
}

.group-title button:hover,
.title-a-btn:hover {
    background-color: var(--cor-btn-hover);
    color: var(--cor-fonte-principal);
    box-shadow: none;
}

.group-title button:active,
.title-a-btn:active {    
    background-color: var(--cor-btn-select);
    box-shadow: inset 0px 2px 4px var(--cor-sombra-principal);    
}

.title-a-center{
    flex: 1; 
    min-width: 200px;
    color: var(--cor-fonte-principal);
    margin: 5px;
    text-align: center; 
    display: inline-block;
    text-decoration: none;
    cursor: default;
}

.title-a-btn{
    background-color: var(--cor-btn-ativo);
    width: 100px;
    height: 30px;   
    border-radius: 3px;
    border: none;    
    text-align: center; 
    display: inline-block;
    color: var(--cor-fonte-principal);
    text-decoration: none;    
    margin: 5px;   
    padding: 4px;
}

.group-fix select{    
    padding: 4px;
}

.ml-0{
    margin-left: 0 !important;
}

.mr-1{
    margin-right: 10px !important;
}

.group-fix label,
.group-fix select,
.group-fix input,
.group-flex label,
.group-flex input,
.group-flex-m label,
.group-flex-m input
{    
    display: block;
    width: 100%;
    color: var(--cor-fonte-corpo);            
}

.btn-left {
    float: left;
}
  
.btn-right {
    float: right;
}

.btn-link,
.btn-img,
.btn-reg {
    border-radius: 3px;
    background-color: var(--cor-btn-ativo);
    color: var(--cor-fonte-principal);
    border: none;
    cursor: pointer;
    box-shadow: 0px 2px 4px var(--cor-sombra-principal);        
    text-decoration: none;
    text-align: center;
}

.btn-link {
    width: 100px;    
    padding: 10px 15px;    
    margin: 5px;
}

.btn-link-l {
    width: 150px;    
}

.btn-img  {
    width: 100px;
    height: 50px;
    margin: 5px 10px; 
    padding: 10px 35px;  
}

.btn-reg {
    width: 40px;
    height: 25px;
}

.btn-reg  img {
    width: 70%;
}


.btn-img img,
.btn-img label {
    width: 100%;
}

.btn-link:hover,
.btn-img:hover,
.btn-reg:hover {    
    background-color: var(--cor-btn-hover);
    color: var(--cor-fonte-principal);
    box-shadow: none;
}

.btn-link:active,
.btn-img:active,
.btn-reg:active {    
    background-color: var(--cor-btn-select);
    box-shadow: inset 0px 2px 4px var(--cor-sombra-principal);    
}

.btn-disabled
 {    
    background-color: var(--cor-btn-disabled);
    color: var(--cor-fonte-principal-disabled);
    box-shadow: none;
    cursor: auto;            
}

.btn-disabled:hover
 {    
    background-color: var(--cor-btn-disabled);
    color: var(--cor-fonte-principal-disabled);
    box-shadow: none;
    cursor: auto;            
}


.btn-img input[type="file"] {
    display: none;
}
  
.two-columns{
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.left-title{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}

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

.left-title img{
    height: 30px;
    margin-right: 5px;
}

.right-title{
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
}

.right-title button:hover{
    color: var(--cor-fonte-corpo-select);
}

.modal {
    display: none;
    position: fixed;
    z-index: 1;
    padding-top: 100px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
  }
  
  .modal-content {
    background-color: #fefefe;
    margin: auto;
    padding: 20px;
    border: 1px solid #888;
    width: 50%;
    min-width: 400px;
  }
  
  .close {
    color: #aaaaaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
  }
  
  .close:hover,
  .close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
  }

  @keyframes hide {
    from { opacity: 1 }
    to   { opacity: 0 }
  }

  .msg-box {
    animation: hide 5s linear forwards;
    position: fixed;    
    z-index: 1;
    width: 100%;
    text-align: center;
    font-weight: bold;
    font-size: large;
    top: 10%;
  }

  .modal-exclusao {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
  }

  .modal-exclusao-content {
    background-color: #fefefe;
    margin: auto;
    padding: 20px;
    border: 1px solid #888;
    width: 50%;
    min-width: 400px;
    text-align: center;
}

.close-exclusao {
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close-exclusao:hover {
    cursor: pointer;
}

.modal-exclusao button{
    border-radius: 3px;
    background-color: var(--cor-btn-ativo);
    color: var(--cor-fonte-principal);
    border: none;
    cursor: pointer;
    box-shadow: 0px 2px 4px var(--cor-sombra-principal);        
    text-decoration: none;
    text-align: center;
    margin: 5px;
    padding: 10px 15px; 
}

.modal-exclusao button:hover {
    background-color: var(--cor-btn-hover);
}

.modal-exclusao button:active {
    background-color: var(--cor-btn-select);
    box-shadow: inset 0px 2px 4px var(--cor-sombra-principal);        
}

.tabela-ordena th.asc span{
    background-image: url('../img/ico-up.png');
    background-size: contain;
    width: 16px;
    height: 16px;
    display: inline-block;
}

.tabela-ordena th.desc span{
    background-image: url('../img/ico-down.png');
    background-size: contain;    
    width: 16px;
    height: 16px;
    display: inline-block;
}

@media (max-width: 615px) {
    .menu ul {
        display: inline-block;
        width: 100%;  
        height: auto;      
    }
    .menu li {
        width: 100%;
    }
    .menu a {
        width: 100%;
        margin: 5px auto;            
    }

    .has-submenu:hover .submenu {
        width: 100%;  
    }     
}