:root{
  --color-body:  #1d3561;
  --fundo-primario: #f5f5f5;
  --fundo-secundario: #dedede;
  --fundo-terciaria: #d7d7d7;
  --color-primary: #334970;
  --color-secundaria: #23334e;
  --color-terciaria: #2e4266;
  --color-lb-claro: #f5f5f5;
  --color-btt-primary: #7192e1;
  --bg-mw: #fdfdfd;
  --bd-mg-tp: 0px;
  --body-heigth: calc(100vh - (29px + var(--bd-mg-tp)));
  --red-negacao: #dd0000;
  --green-aceitacao: #009f0d;
  --color-cabecalho: #004577;
  --font-size-label: 15px;
  --color-lb-gen: #444;
  --color-border: #dddddd;
  --color-lb-aba: #3d3d3d;
  --filter-aba: invert(0%);
  --filter-aba-invert: 90%;
  --color-label-destaba: #272727;
  --color-bg-th: #e1e1e1;
  --color-bg-input: #a3ada22b;
  --color-h2-titulo: #274d8cd6;
  --color-bg-titulo: #b2c6e79e;
  --color-input-disab: #6b6b6b;
  --color-box-tema1: #1d3561;
  --color-apl-fav: #3764b53b;
}

body      {background-color: var(--color-body, #1d3561); min-height: 600px; min-width: 1150px;}
body .gen {padding: 10px}

.princbody {margin-top: var(--bd-mg-tp, 0px); background-color: var(--fundo-primario, #f5f5f5); height: var(--body-heigth, 100vh); display: flex; justify-content: center; padding: 15px;flex-direction: column;justify-content: flex-start;}

.cabecalho {position: fixed; top: 0; width: 100%; left: 0; z-index: 99999;}

.dnone {display: none;}

.prelative {position: relative;}
.pabsolute {position: absolute;}

.gen img {width: auto;
          padding: 0px;
          height: 25px;
          margin-inline: 6px;
          margin-block: 6px;}

.gen label {font-family: "Inter";
            font-size: var(--font-size-label, 15px);
            color: var(--color-lb-gen,#444);
            display: inline-block;}

.lme label {font-size:  20px;
            color: white;
            font-weight: normal;
            display: flex;}

.imgbutton {width: 15px !important; height: 15px !important; margin-block: 3px !important; margin-left: 6px !important; margin-right: 3px !important;}

.button {background-color: var(--color-primary, #7192e1);
         border: none;
         cursor: pointer;
         border-radius: 6px;
         width: auto;
         min-width: 80px;
         height: 31px;
         transition: 0.2s;
         margin-inline: 2px;
         padding: 2px;
         display: flex;
         align-items: center;
         justify-content: center;
         font-family: sans-serif;
         font-size: calc(var(--font-size-label,15px) - 2px);
         font-weight: 600;
         position: relative;
        .buttonfe {color: #FFF }
        .buttonfe img{filter: invert(100%)}}
           
.button:hover {background-color: #1a2e6f;
               box-shadow: 0 0 0 1px #5151525f;
               .buttonfe {color: #FFF !important}
               .buttonfe img{filter: invert(100%) !important}}

.buttonfe {width: 100%; 
           display: flex; 
           flex-direction: row;
           gap: 4px;
           justify-content: center}

.buttonfe input {background: transparent;
                 border: transparent;
                 font-family: 'Rubik', sans-serif;
                 font-size: calc(var(--font-size-label, 15px) - 3px);
                 font-weight: 600;
                 cursor: pointer;
                 padding-inline: 4px;}

.buttoninline {display: flex; margin-left: 5px;}
.buttoncenter {display: flex; justify-content: center;}

.gen a      {font-weight:     bolder;
             color:           #025bc9;
             text-decoration: underline;}

.gen select {height:           27px;
             width:            100px;
             border-color:   #000000a1;
             border-radius:    6px;
             background:       var(--color-bg-input);
             box-shadow:       0 0 0 .1vw rgba(160, 177, 184, 0.186)}             

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

.titulo {border: 2px solid #a6badc54;
         border-radius: 6px;
         background-color: var(--color-bg-titulo, #b2c6e79e);
         height: 33px; 
         width: calc(100% - 15px);
         justify-content: center; 
         display: flex;
         font-family: 'Inter', Arial, sans-serif;}

.titulo h2 {margin-top: 0px;
            color: var(--color-h2-titulo, #274d8cd6);}

.aba    {height: 40px;
         min-width: 145px;
         width: auto;
         display: flex;
         justify-content: flex-start;
         flex-direction: column;
         border: 1px solid var(--color-border,#dddddd);
         border-bottom: 0px; 
         background-color: var(--bg-mw, #fdfdfd);
         border-style: groove;}

.dabaexterna {height: 40px; 
             width: 90%; 
             justify-content: center; 
             margin: 10px; 
             margin-bottom: 0px;
             padding: 0px; 
             display: flex; 
             justify-content: flex-start;}

.abaint      {display: flex;
              justify-content: center;
              align-items: center;
              height: 100%;
              padding-right: 4px;}

.abaint:hover {background-color: #fdfdfdde}


.aba label {font-family: "Host Grotesk", serif;
            font-optical-sizing: auto;
            font-weight: 500;
            font-style: normal;
            color: var(--color-lb-aba, #636363);
            font-size: var(--font-size-label, 15px);}

.aba img {height: 20px; filter: var(--filter-aba, invert(0%))}

.indentaba {background-color: rgb(81, 81, 81);
            height: 0.1vw;
            width: 100%;
            margin-top: 0px;}

.indentabainativa {background-color: rgb(81, 81, 81)}
.indentabaativa   {background-color: rgb(41, 76, 141); filter: brightness(1.5);}

.aba:hover .indentaba     {background-color: #39537f; filter: brightness(1.5);}
.aba:hover .abaintinativa label{font-weight: 800; color: #272727;} 
.aba:hover .abaintinativa img {filter: drop-shadow(0 0 1px rgba(0, 0, 0, 0.3))}

.abaintinativa {pointer-events: none;
                background-color: var(--fundo-terciaria, #f5f5f5);}

.destacaaba img {filter: drop-shadow(0 0 1px rgba(0, 0, 0, 0.3))}
.destacaaba label {font-weight: 800; 
                   color: var(--color-label-destaba, #272727);}

.abaativa {border-bottom: 1px solid var(--bg-mw, #fdfdfd); z-index: 999;}

.abaintativa {pointer-events:   visible;
              background-color: none;}

.abaintativa img {filter: var(--filter-aba, invert(0%))}

.aba-round-border-left  {border-top-left-radius: 5px; border-left-width: 2px;
          & .indentaba {border-top-left-radius: 5px;}}
.aba-round-border-right {border-top-right-radius: 5px; border-right-width: 2px;
          & .indentaba {border-top-right-radius: 5px;}}

.if {width: 100%;
     height: 30px;
     display: flex;
     flex-direction: row;
     margin-bottom: 5px;
     align-items: center;
     gap:         6px;}

.dmf {width: 100%; 
      height: auto;
      margin-top: 6px;
      display: flex;
      color: var(--color-lb-gen,#444);
      gap: 3px;}

.container-row {display: flex; flex-direction: row;}
.container-row100 {display: flex; flex-direction: row; width: 100%;}

.dmf div.button {margin-top: 10px;}

.dmf h2 {margin-top: 0px;
         margin-bottom: 50px;}

.dmf label {font-family:Arial, Helvetica}

.closediv {display: flex; justify-content: space-between; align-items: center; height: 35px; border-radius: 5px;}

.bpc {display: flex;
      border: 2px solid #4a4a4ac2;
      margin-inline: 10px;
      align-items: center;
      justify-content: center;
      height: 23px;}

.bpc img {filter: var(--filter-aba, invert(0%))}

.bpc:hover {opacity: 0.4;}

.razao-modal label {margin-inline: 10px;
                    font-weight: 900;
                    font-size: calc(var(--font-size-label,15px) - 2px);
                    color: #7f7f7f;
                    font-family: "Inter";}

.fieldset {margin: 10px;
           display: flex;
           justify-content: flex-start;
           margin-top: 0px;
           background: var(--bg-mw, #fcfcfc);
           border-bottom-right-radius: 8px;
           border-bottom-left-radius: 8px;
           border-color: var(--color-border, #dddddd);}

input {font-family:     "Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;
      font-weight:      180;
      font-size:        calc(var(--font-size-label,15px) - 1px);
      color:            #000;
      background-color: var(--color-bg-input, #a3ada22b);
      border-radius:    0.3vw;
      box-shadow:       0 0 0 .1vw rgba(160, 177, 184, 0.186);
      padding:          2.5px;
      transition:       .2s;}

input:hover {box-shadow: 0 0 .4vw rgba(30, 30, 30, 0.258), 0 0 0 .15vw transparent;}

input:focus {box-shadow: 0 0 0 .05vw #39537f; } /* colocar uma cor do sistema */

input[type="button"] {padding: 0px;}

input[type="button"], 
input[type="submit"], 
input[type="radio"], 
input[type="reset"] {box-shadow: none;}

input:disabled {border-color: rgba(118, 118, 118, 0.3); color: var(--color-input-disab, #6b6b6b); background-color: #a1a1a170;}

select:disabled {border-color: rgba(118, 118, 118, 0.3); color: var(--color-input-disab, #6b6b6b); background-color: #a1a1a170;}

select:not(:-internal-list-box) {color: var(--color-lb-gen, #444); background-color: #a3ada22b;}

textarea {font-family:      "Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;
          font-weight:      180;
          font-size:        calc(var(--font-size-label,15px) - 1px);
          color:            #000000;
          background-color: var(--color-bg-input, #a3ada22b);
          border-radius:    0.3vw;
          box-shadow:       0 0 0 .1vw rgba(135, 207, 235, 0.186);
          padding:          2.5px;
          transition:       .2s;
          resize: none;}

textarea:hover {box-shadow: 0 0 .4vw rgba(30, 30, 30, 0.258), 0 0 0 .15vw transparent;}

textarea:focus {box-shadow: 0 0 0 .05vw #39537f; }

textarea[type="button"], 
textarea[type="submit"], 
textarea[type="reset"] {box-shadow: none;}

textarea:disabled {border-color: rgba(118, 118, 118, 0.3); color: #8a8a8a; background-color: #7575752b;}

.DMF_external {width:  100%;
               height: 100%;
               background-color: #00000096;
               position:         absolute;
               /* backdrop-filter: blur(2.3px); */
               top: 0;
               left: 0;
               display: flex;
               justify-content: center;
               align-items: center;
               /* -webkit-backdrop-filter: blur(2.3px); */
               z-index: 99999;}

.DMF_tema1     {border-radius: 10px;
                background-color: var(--fundo-primario, #f5f5f5);
                box-shadow: 0 0 1.0vw var(--color-box-tema1, #1d3561);}

.DMF_ativa {display: block !important;
            z-index: 999999;
            position: absolute;}

div.grid {display: flex;
          justify-content: center;
          align-items: flex-start;}
       
.div_table_init {display: flex; flex-direction: column; height: 100%; margin-bottom: 20px; margin-top: 5px; border: 1px solid var(--color-bg-th, #e1e1e1); overflow: hidden;}

tr {font-size: calc(var(--font-size-label,15px) + 1px);}

th {background-color: var(--color-bg-th, #e1e1e1);}

td {border-bottom: 0;}

th, td {padding: 8px;
        box-sizing: border-box;}

td {
    white-space: nowrap;
}

table {
     font-size: calc(var(--font-size-label,15px) + 1px);
     width: 100%;
     border: 2px solid var(--color-border, #dddddd); /* #d4d4d4; */
       th {
         color:         var(--color-lb-gen,#444); /* #000 */
         font-weight:   500;
         border-bottom: solid 2px var(--color-border, #dddddd);
         position:      sticky;
         top:           0;
         border:        1px solid #43434354;
         font-family:   'Raleway', sans-serif;
         font-size:     calc(var(--font-size-label,15px) + 1px);
         cursor:        pointer;
       }
       td {
         border:        solid 1px var(--color-border, #dddddd);
         border-left:   0;
         border-right:  0;
         white-space:   nowrap;
         overflow:      hidden;
         text-overflow: ellipsis;
         font-family:   'Raleway', Arial, Helvetica, sans-serif;
         font-size:     var(--font-size-label,15px);
         cursor:        pointer;
         color:         var(--color-lb-gen,#444); /* #000 */;
       }
}

.tablecolun, .tabledata2 {
    table-layout: fixed;
    width: 100%;
    border-collapse: collapse;

}

.h100 {height: 100%;}

.negacao {background: var(--red-negacao, #dd0000)}
.negacao label, .negacao input {color: #161616 !important;}
.negacao img {filter: invert(0%) !important;}

.aceitacao {background: var(--green-aceitacao, #009f0d);}
.aceitacao label, .aceitacao input {color: #161616 !important;}
.aceitacao img {filter: invert(0%) !important;}

.filter-invert img {filter: invert(100%);}

.divtableres {height: calc(100% - 42px); overflow-y: auto;}

.tablecolun {border: 1px solid var(--color-border, #dddddd); border-collapse: collapse;}
.tablecolun th {text-wrap: nowrap; color: var(--color-lb-gen,#444);}

.tdalign-esq          {text-align: left; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
.tdalign-cen          {text-align: center; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
.tdalign-dir          {text-align: right; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
.tdalign-esqoverellip {text-align: left; }

.tabledata2 {overflow-y: scroll;}
.tabledata2 tbody {border-top: hidden; overflow-y: auto; max-height: calc(100% - 40px);}

.mouseovercolor   {background-color: rgba(102, 146, 207, 0.55); filter: brightness(1.4);}
.clicktableborder {border-block: solid #003462 !important;}
.efeitorowclick td{font-weight: bold;}

.img-filtro-grid {display:     flex;
                  align-items: center;
                  justify-content: flex-end;}

.img-filtro-grid img {margin: 0px;}

.itensint li, ul {list-style-type: none}
.itensint ol{padding: 0;}
.itensint {max-height: 100%; overflow-x: hidden; flex-grow: 1; overscroll-behavior-y: none;}

.container-alert {opacity:       1;
                  display:       flex;
                  flex-direction: column;
                  border-radius: 10px;
                  position:      fixed;
                  top:           15px;
                  right:         20px;
                  z-index:       99999;}

.alert-message {width:            300px;
                min-height:       135px;
                opacity:          0;
                padding:          12px;
                background-color: #39527c;
                box-shadow:       0 0 .4vw #1d3561;
                border-radius:    10px;
                transition:       opacity 0.3s ease-out, transform 0.3s ease-out}

.alert-message.entrada {
    transform: translateY(-20px);
    opacity: 0;
}

.alert-message.visible {
    transform: translateX(0);
    opacity: 1;
}

.alert-message.saida {
    opacity: 0;
    transform: translateY(-20px);
}

.olalert    {margin: 0; padding: 0;}

.olalert li {list-style-type: none; margin-bottom: 10px; transition: 3.5s ease-out;}

.title_info   {width: 100%; height: 36px; color: #FFF; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; display: flex;}

.message_info {width: 100%; height: 100px; color: #FFF; text-overflow: ellipsis; overflow: hidden;}

.title_info label {font-weight: bold; font-size: 18px; font-family: system-ui;}

.message_info label {font-family: system-ui; font-size: 15px;}

.sombradestaque {box-shadow: 0 0 .5vw #000000;}

.container-minimodalrow {height: auto; width: auto; border-radius: 7px; border: 3px solid rgba(0, 55, 107, 0.349); background-color: #fffffff8; position: absolute; border-radius: 10px; display: flex; flex-direction: column; justify-content: center; align-items: center; box-shadow: 0 0 4px 1px rgb(0 0 0 / 50%); padding: 8px 6px; display: none;}
.container-minimodalrow label {font-weight: 600; font-size: calc(var(--font-size-label,15px) - 4px); color: #2b2a2a;}
.container-minimodalrow p     {font-size: calc(var(--font-size-label,15px) - 2px); color: #2c2c2c; margin-block: 0px;}
.container-minimodalrow div   {display: flex; align-items: center; margin-top: 0px; gap: 3px;}

/* estilo Legenda */
.gridlegenda {display: flex; justify-content: center; width: calc(100% - 10px);}
.legendaform {display: flex; flex-direction: row; align-items: center; margin-right: 10px; gap: 5px;}
.lgde {padding: 1px; border: 1px solid gray; border-radius: 3px;}
.lgdi {border-radius: 3px; width: 14px; height: 14px;}
.legenprint {display: none;}

/* estilo Carrossel */
.modal-carr-off {opacity: 0;}
.modal-carr-on {opacity: 1;}

.container-carrossel {
    display:         flex;
    flex-direction:  row;
    align-items:     center;
    justify-content: center;
    margin-top:      10px;
    gap:             2px;
    overflow:        hidden;
    input {
      position: absolute;
		  left: -9999px;
      &:checked + label {
          background-color: mix(#fff, #00005c, 84%);
          &:before {
              box-shadow: inset 0 0 0 0.5em #00005c;
              transform: scale(1.1);
          }
        }
    }
    label {
      display: flex;
      align-items: center;
      padding: 4px;
      border-radius: 99em;
      transition: 0.25s ease;
      &:hover {
        background-color: mix(#fff, #00005c, 84%);
      }
      &:before {
        display: flex;
        flex-shrink: 0;
        content: "";
        background-color: #fff;
        width:  11px;
        height: 11px;
        border-radius: 50%;
        transition: 0.25s ease;
        box-shadow: inset 0 0 0 0.125em #00005c;
      }
    }
}

.container-carrossel-interno {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
}

.container-carrossel-interno::-webkit-scrollbar {
    display: none;
}

.container-carrossel-interno {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.efeito-transicao-carrossel {
    flex: 0 0 100%;
    flex-shrink: 0;
    width: 100%;
    scroll-snap-align: start;
    box-sizing: border-box;
    transition: opacity 0.5s;
}

::-webkit-scrollbar {
  width: 12px;
  background-color: #c8cdd6b2;
}

::-webkit-scrollbar-thumb {
  background-color: #5a7cd0c7;
  border-radius: 8px;
}

::-webkit-scrollbar-thumb:hover {
  background-color: #7ea4ff;
}