/* CSS Document */

/* ====================================================== */
/* ======================= RESET ======================== */
/* ====================================================== */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}

*[role=button] {
    cursor: pointer;
}

.hint {
    font-size: .8rem;
    font-style: italic;
}

/*
ol, ul {
	list-style: none;
}
*/
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}


/* =========================================== */
/* ================== BODY =================== */
/* =========================================== */

body {
	background: #f7f8fd url(images/lai_bg.jpg) no-repeat fixed;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 100%;
	color: #000000;
	padding: 35px;
	margin: 0;
}

#wrapper {
	*width: 1000px;
}

/* =========================================== */
/* ================= HEADER ================== */
/* =========================================== */

#header {
	padding-bottom: 40px;
    overflow: auto;
}

#header h1 {
    float: left;
    display: block;
}

#header h1 a {
    display: block;
    width: 95vw;
    max-width: 527px;
    height: 60px;
    background-image: url(images/header.png);
    background-repeat: no-repeat;
    background-size: contain;
    text-indent: -9999px;
}

#pesquisa {
    float: right;
    width: 30%;
}

/* =========================================== */
/* ================== MENU =================== */
/* =========================================== */

#menu {
	float: left;
	padding: 0; 
	margin: 0 0 100px 0; 
	width: 250px;
}
	
#menu ul {
	margin: 0;
	padding: 0;
}

#menu > ul {
	padding-bottom: 20px;
}

#menu li {
	list-style-type: none; 
	margin: 2px 0; 
	clear: both;
	position: relative;
}

#menu li:last-child {
	margin-bottom: 0;
}

#menu li a,
#menu li > span {
	position:relative; 
	display:block; 
	width: 205px; 
	border-left:7px solid #999; 
	border-right:0px solid #f7f8fd; 
	border-top:0px solid #f7f8fd; 
	border-bottom:1px solid #999; 
	font-size: .8rem;
	line-height: 1.1rem;
	font-family: Verdana; 
	color:#333333; 
	padding: 5px 3px; 
	text-decoration:none;
}

#menu li > span {
    cursor: pointer;
    color: #800000;
}

#menu li a span,
#menu li a:visited span {
	display:none;
}

#menu li a:hover,
#menu li > span:hover,
#menu li a:focus,
#menu li > span:focus,
#menu a.ativo {
	color:#333333; 
	background-color:#dddddd; 
	border-left:7px solid #333333; 
	border-right:0px solid #dddddd; 
	border-top:0px solid #dddddd; 
	border-bottom:1px solid #333333; 
	text-decoration:none;
}
	
#menu a:hover span,
#menu a:focus span
 {
	position:absolute; 
	display:block; 
	left:130px; 
	top:0; 
	width:0px; 
	height:0px; 
	border-left:6px solid #c00; 
	border-top:8px solid #fff; 
	border-bottom:8px solid #fff; 
	line-height:0;
}

#menu li ul,
#menu li ul li ul {
	position: relative;
	left: 20px;
	top: 0px;
	z-index: 2;
	width: 210px;
    overflow: hidden;
}

#menu li a,
#menu li span { 
    background-color: #f7f8fd;
}

#menu li.grupo-chave ul {
    transition: max-height .3s ease;
    height: auto;
    max-height: 0;
}

#menu li.grupo-chave.on ul {
    max-height: 5000px;
}

#menu li.grupo-chave.on > ul {
    margin-bottom: 20px;
}

#menu li.exibir ul {
    display: block;
}

#menu li ul a,
#menu li ul li ul a {
	width: 185px;
}

#menu li a > ul,
#menu li ul li a ul {
	display: block;
}

#menu li.grupo-chave {
    font-weight: bold;
}

#menu li.grupo-chave a {
    color: #800000;
}

#menu li.grupo-chave ul li {
    margin-bottom: 2px;
    font-weight: normal;
}

#menu li.grupo-chave ul li a {
    color: #333;
}

#menu li.banner-acesso-a-informacao a {
    display: block;
    width: 211px;
    height: 79px;
    border: 0;
    text-align: center;
    text-indent: -9999px;
    background-color: transparent ;
    background-image: url(images/acessoInformacao.png);
    background-repeat: no-repeat;
    background-position: 30px 13px;
}

#menu li.banner-acesso-a-informacao a:focus,
#menu li.banner-acesso-a-informacao a:hover {
    background-color: #DDD;
}

/* =========================================== */
/* ================ CONTEUDO ================= */
/* =========================================== */

#conteudo {
	margin-left: 250px;
	line-height: 1.5rem;
	font-size: .9rem;
	min-width: 780px;
}

#conteudo ul {
	margin-left: 25px;
}

#conteudo ul li {
	list-style: disc;
}

#conteudo ol {
    margin-left: 60px;
}

#conteudo strong,
#conteudo b {
	font-weight: bold;
}

#conteudo em {
	font-style: italic;
}

#conteudo th {
	padding: 3px;
}

#conteudo td {
	padding: 12px;
}

#conteudo td ul {
	margin-left: 12px;
}

.admin #conteudo {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#conteudo form {
	padding-bottom: 20px;
}

h1, h2, h3, h4, p, ul {
	padding-bottom: 10px;
}

h1, h2, h3 {
	color: #800000;
}

#conteudo .item-page h2,
h1 {
	font-size: 1.3rem;
    text-align: left;
    margin-bottom: 20px;
    font-weight: normal;
}

#conteudo .item-page h2,
#conteudo h1 {
    border-bottom: 1px solid #800000;
    margin-bottom: 2rem;
}

.admin #conteudo h1 {
    width: 100%;
}

h2 {
	font-size: 1.2rem;
    text-align: center;
    margin-bottom: 20px;
}

h3 {
	font-size: 1.1rem;
}

h4 {
    font-size: 1rem;
    color: #800000;
}

th {
	background-color: #e1e2e6;
	font-weight: bold;
}

td {
	vertical-align: top;
}

#conteudo table a {
    white-space: normal;
}

a {
	text-decoration: none;
	color: #800000;
    cursor: pointer;
}

a:hover,
a:focus {
	text-decoration: underline;
}

textarea {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: .9rem;
}

form {
	margin: 0;
}

acronym {
	*text-decoration:underline;
}

hr {
	margin-bottom: 30px;
}

table {
	margin-bottom: 20px;
}

fieldset {
    padding: 10px 20px;
    border: 1px solid #800000;
}

legend {
    padding: 0 5px;
    color: #800000;
}

.obs {
	 font-style: italic;
}

span.atencao {
	font-style: italic;
    color: #800000;
}

span.atencao::before {
    content: '(';
}

span.atencao::after {
    content: ')';
}

.msg {
	color: #FF0000;
	font-weight: bold;
}

.total {
	text-align: right;
}

.no-wrap {
	white-space: nowrap !important;
}

.tdCentro td {
	text-align: center;
}

.destaque {
	padding: 20px;
	border: 1px solid #CCC;
	background: #EEE;
	margin: 20px auto;
	font-size: .9rem;
}

.destaque span {
    font-weight: bold; color: #800000;
}

#selo {
	text-align: center;
	margin: 20px 25px 20px auto;
}

.asc,
.desc,
.semOrd {
	padding-left: 16px;
}

.asc {
	background: url(images/asc.png) no-repeat 0 0;
}

.desc {
	background: url(images/desc.png) no-repeat 0 0;
}

.cinza {
	background: #EEE;
}

.flutuante {
	float: left;
	margin-left: 40px;
}

.rodape {
    font-size: .8rem;
    line-height: 1.2rem;
}

/* ====== Tabelas com bordas ====== */
table.comBorda td, table.comBorda th {
	padding: 5px 10px !important;
	border: 1px solid #ccc;
}

.formPDF {
    float: right;
}

/* =========================================== */
/* ============= LISTA DE ARQUIVOS =========== */
/* =========================================== */

#conteudo ul.lista-de-arquivos {
    margin-left: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

#conteudo ul.lista-de-arquivos li {
    display: flex;
    flex-direction: column;
    background-color: #FFF;
    padding: 5px 0;
    margin: 0 0 10px 10px;
    border: 1px solid #FFF;
    box-shadow: 0 1px 3px 0 rgba(0,0,0,.2), 0 1px 1px 0 rgba(0,0,0,.14), 0 2px 1px -1px rgba(0,0,0,.12);
}

#conteudo ul.lista-de-arquivos li:focus,
#conteudo ul.lista-de-arquivos li:hover {
    border: 1px solid #ddd;
}

span.bt-pesquisar,
span.bt-excluir,
span.bt-excluir-registro,
span.bt-desclassificar,
span.bt-reclassificar,
a.bt-editar {
    width: 20px;
    height: 20px;
    text-indent: -9999px;
    cursor: pointer;
    display: inline-block;
    margin: 0 auto;
}

span.bt-excluir-registro,
span.bt-excluir {
    background-image: url(images/trash.png);
}

a.bt-editar {
    background-image: url(images/editar.png);
}

span.bt-desclassificar {
    background-image: url(images/unlock.png);
}

span.bt-reclassificar {
    background-image: url(images/lock.png);
}

span.bt-pesquisar {
    background-image: url(images/search.png);
}


/* =========================================== */
/* ================= VOLTAR ================== */
/* =========================================== */

#voltar,
#centralizada,
.responsavel {
	text-align: center;
	margin: 20px auto;
}

/* =========================================== */
/* ================= MSGBOX ================== */
/* =========================================== */

#msgBox,
.msgBox {
	background: #EEE;
	border: 1px solid #AAA;
	border-radius: 10px;
	text-align: center;
	color: #800000;
	padding: 15px 30px;
	font-weight: bold;
	z-index: 9999;
    margin-top: 240px;
}

/* =========================================== */
/* =============== AUDIENCIAS ================ */
/* =========================================== */

#conteudo div.audiencias ul li ul {
    margin-left: 60px;
}

/* =========================================== */
/* ============== ATUALIZACAO ================ */
/* =========================================== */

.dtAtualizacao {
    display: flex;
    font-size: .7rem;
    align-items: baseline;
}

.dtAtualizacao button {
    margin: 0 16px;
}

/* =========================================== */
/* =========== O QUE VEM DO SITE ============= */
/* =========================================== */

.social-share-buttons-share,
.actions {
	display: none;
}

.item-page{
	display: inline-block;
}

/* =========================================== */
/* ========== ÁREA ADMINISTRATIVA ============ */
/* =========================================== */

.admin #conteudo tr:nth-child(odd) {
    background-color: #EEE;
}

.admin #conteudo tr.no-over:nth-child(odd) {
    background-color: transparent;
}

.admin #conteudo tr:focus,
.admin #conteudo tr:hover {
    background-color: papayawhip;
}

.no-over:hover {
    background-color: unset !important;
}

.modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(128, 118, 128, .15);
    z-index: 1;
    display: none;
}

.shadow {
	-webkit-box-shadow: 3px 3px 5px 0 #ccc;
	   -moz-box-shadow: 3px 3px 5px 0 #ccc;
	        box-shadow: 3px 3px 5px 0 #ccc;
}

.absolute-center {
  margin: auto;
  position: fixed;
  top: 0; left: 0; bottom: 0; right: 0;
}

.box,
.box-erro {
    background-color: #FFF;
    padding: 10px;
    box-sizing: border-box;
    z-index: 2;
}

.box {
    display: none;
}

.box h2 ,
.box-erro h2 {
    text-align: center;
    font-size: .8rem;
    font-weight: normal;
}

.box input[type=button] {
    text-align: center;
    margin: 10px auto;
}

.box label {
    font-weight: bold;
}

.box table {
    margin-bottom: 0;
}

.box table td {
    padding: 3px;
    vertical-align: baseline;
}

.botoes {
    text-align: center;
}

#tela-cadastro-suprido {
    height: 175px;
    width: 400px;
}

#tela-incluir-item-adquirido {
    height: 300px;
    width: 500px;
}

#tela-incluir-item {
    height: 300px;
    width: 585px;
}

#tela-incluir-item .msg {
    line-height: 28px;
    text-align: center;
}

#tela-incluir-item table td {
    vertical-align: top;
}

#btn-incluir-item,
#btn-incluir-item-padronizacao,
#btn-incluir-item-plano,
#btn-incluir-empresa,
#btn-incluir-anexo {
    float: right;
}

#tela-incluir-declaracao {
    height: 270px;
    width: 542px;
}

#tela-novo-anexo {
    height: 250px;
    width: 455px;
}

#tela-novo-anexo .msg {
    line-height: 16px;
    text-align: center;
}

#conteudo #tela-novo-anexo form {
    padding-bottom: 0;
}

#tela-nova-empresa {
    height: 250px;
    width: 800px;
}

#tela-nova-empresa .msg {
    line-height: 16px;
    text-align: center;
}
#tela-nova-resposta {
    height: 250px;
}

#conteudo #tela-nova-resposta form,
#conteudo #tela-nota-fiscal form,
#conteudo #tela-busca-contrato form,
#conteudo #tela-nova-empresa form {
    padding-bottom: 0;
}

#tela-nota-fiscal,
#tela-busca-contrato,
#tela-nova-resposta {
    width: fit-content;
    height: fit-content;
}

#tela-novo-item {
    height: 180px;
    width: 480px;
}

#tela-novo-item .msg {
    line-height: 16px;
    text-align: center;
}

#conteudo #tela-novo-item form {
    padding-bottom: 0;
}

.table-header-1,
.table-header-1 th {
    background-color: #ffd800;
    border: 1px solid #000;
}

.table-header-2,
.table-header-2 th {
    background-color: #CCC;
    border: 1px solid #000;
}

.suprimentos td {
    border: 1px solid #000;
}

.seleciona {
    overflow: auto;
    background-color: #FFF;
    padding: 20px;
    border: 1px solid #CCC;
    margin: 20px auto;
    display: block;
}

.seleciona .escolha {
    float: left;
    line-height: 42px;
}

#conteudo .seleciona form {
    padding-bottom:  0;
}

.botao {
    cursor: pointer;
    padding: 5px;
    background-color: #EFEFEF;
    border: 1px solid #AAA;
    margin: 0 2px;
    transition: background .2s ease;
    text-transform: uppercase;
    font-size: .8rem;
    line-height: 1rem;
    display: inline-block;
}

.botao:focus,
.botao:hover {
    background-color: #DFDFDF;
}

a.botao {
    text-decoration: none;
    color: #333;
}

.com-borda {
    border: 1px solid #AAA;
    width: 100%;
}

.com-borda td,
.com-borda th {
    border: 1px solid #AAA;
}

table .itens {
    line-height: 27px;
}

table .itens input {
    line-height: 22px;
}

.invalido {
    border: 1px solid #DD0000;
}

.alert {
    color: #DD0000;
}

#tela-novo-termo {
    width: 555px;
    height: 300px;
}

#tela-novo-termo td {
    vertical-align: top;
}

#lista-de-termos {
    width: 100%;
    line-height: 2rem;
}

#lista-de-termos tbody tr:nth-child(odd) {
    background-color: #FFF;
}

#lista-de-termos tbody tr:nth-child(even) {
    background-color: #EFEFEF;
}

#lista-de-termos tbody tr:focus,
.tabOver tbody tr:focus,
#lista-de-termos tbody tr:hover,
.tabOver tbody tr:hover {
    background-color: beige;
}

#sofsegep li span {
    cursor: pointer;
    transition: all .2s ease;
    border-bottom: 1px solid transparent;
}

#sofsegep li span:focus,
#sofsegep li span:hover {
    border-bottom: 1px solid #000;
}

#sofsegep .upload {
    height: 140px;
    width: 433px;
    padding: 20px;
}

#sofsegep .upload .msg {
    line-height: 16px;
    text-align: center;
}

.card {
    background: #FFF;
    padding: 16px;
    box-shadow: 0px 1px 2px 1px rgba(0, 0, 0, 0.25);
    margin-bottom: 64px;
}

.bt-ods,
.bt-pdf {
    border: 1px solid #DDD;
    display: block;
    height: 44px;
    font-size: 1rem;
    color: #666;
    padding: 9px 10px 6px 49px;
    cursor: pointer;
    border-radius: 4px;
    box-sizing: border-box;
}

.bt-ods {
    background: #FFF url(images/ods.png) no-repeat 4px 4px;
}

.bt-pdf {
    background: #FFF url(images/pdf.png) no-repeat 4px 4px;
}

.bt-ods:focus,
.bt-ods:hover,
.bt-pdf:focus,
.bt-pdf:hover {
    color: #333;
    border: 1px solid #999;
}

/* =================== */
/* ==== PAGINAÇÃO ==== */
/* =================== */

#paginacao {
    text-align: center;
    margin: 40px auto;
}

#paginacao span {
    padding: 0 40px;
}

#paginacao ul {
    padding: 0;
    margin: 10px 0 0 0;
}

#paginacao li {
    display: inline-block;
    padding: 2px 10px;
    margin: 0 6px;
    border: 1px solid #AAA;
    height: 20px;
    line-height: 20px;
    width: auto;
    background: #EFEFEF;
    color: #AAA;
}

#paginacao li:focus,
#paginacao li:hover {
    background: #FFF;
}

#paginacao li.inativo:focus,
#paginacao li.inativo:hover {
    background: #EFEFEF;
}

#paginacao ul li a {
    display: block;
    width: 100%;
    height: 100%;
    color: #666;
}

#paginacao ul li a:focus,
#paginacao ul li a:hover {
    text-decoration: none;
    color: #000;
}

/* ============== */
/* ==== CNMP ==== */
/* ============== */

.cnmp {
    width: 100%;
    overflow-y: auto;
}

.cnmp table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 10pt;
    background-color: #f9f9fd;
}

.cnmp td,
.cnmp th {
    border: .05pt solid #000;
    font-size: .8rem;
    line-height: 1rem;
}

.cnmp td {
    padding: 2mm;
    vertical-align: top;
}

.cnmp .table-header-1 {
    background-color: #ffd800;
    vertical-align: middle;
}

.cnmp .table-header-1 th {
    vertical-align: middle;
}

.cnmp .table-header-2 {
    background-color: #CCC;
}

.cnmp .fonte,
.cnmp .atualizacao {
    padding: 0;
    margin: 0;
    font-size: .8rem;
    font-style: italic;
    line-height: 1.2rem;
}

.cnmp .legendas {
    margin-top: 10pt;
    font-size: 14px;
    line-height: 21px;
}

/* ============================ */
/* ==== BOTÃO VISUALIZAÇÃO ==== */
/* ============================ */

.visualizacao {
    display: flex;
    flex-direction: row;
    margin-bottom: 2rem;
}

.visualizacao div {
    align-self: center;
    display: flex;
}

.visualiza-tabela a,
.visualiza-lista a {
    display: block;
    height: 48px;
    line-height: 48px;
    width: 90px;
    background-position: 25px center;
    background-repeat: no-repeat;
    background-color: transparent;
    padding-left: 70px;
    font-size: 1.2rem;
    opacity: .5;
    text-decoration: none;
    color: #333333;
    transition: all .5s;
    border-bottom: 3px solid #bbbbbb;
}

.visualiza-tabela.ativa a,
.visualiza-lista.ativa a {
    opacity: 1;
    border-bottom: 3px solid #800000;
}

.visualiza-tabela a:focus,
.visualiza-lista a:focus,
.visualiza-tabela a:hover ,
.visualiza-lista a:hover {
    opacity: 1;
    background-color: #DDDDDD;
    border-bottom: 3px solid #999999;
}

.visualiza-tabela a {
    background-image: url(images/table-large.png);
}

.visualiza-lista a {
    background-image: url(images/list.png);
}


/* ======================= */
/* ==== SCROLL TO TOP ==== */
/* ======================= */

#back-top {
    position: fixed;
    bottom: 20px;
    right: 10px;
        left: auto;
        top: auto;
    background: url(images/arrow.png);
}
 
#back-top a {
     
    width: 35px;
    height: 35px;
    display: block;
    text-indent: -9999px;
 
    /* transition */
    -webkit-transition: 1s;
    -moz-transition: 1s;
    transition: 1s;
}

#back-top a:focus,
#back-top a:hover {
    color: #000;
}

/* ============================= */
/* ==== DISPOSITIVOS MÓVEIS ==== */
/* ============================= */

span.icone-menu {
	display: none;
}

span.icone-menu {
    position: relative;
    z-index: 1;
    background: #d71e24 url(images/mobile_ico-menu.png) no-repeat 10px 12px;
    background-size: 15px 10px;
    color: #FFF;
    font: 0.75rem/0.75rem Arial, Helvetica, Sans-serif;
    text-transform: uppercase;
    padding: 12px 10px 9px 30px;
    border-radius: 2px;
    cursor: pointer;
    left: 0;
    top: 0;
    width: 2.2rem;
}

.th-mobile,
.tr-mobile,
.so-tela-pequena {
    display: none;
}

.so-tela-grande {
    display: block;
}

.cnmp td.item {
    display: table-cell;
}

.cnmp .lista-itens.item-0 {
    display: none;
}

/* ========================= */
/* ==== ADMIN. USUÁRIOS ==== */
/* ========================= */

.usuarios tr:nth-child(odd) {
    background-color: #EEE;
}

.usuarios .inativo {
    color: #CCC;
}

.ordem {
    cursor: pointer;
}

/* ============================= */
/* ==== ÍCONES DOS ARQUIVOS ==== */
/* ============================= */

.icone {
    display: flex;
    flex-direction: column;
    text-align: center;
    padding-top: 40px;
    box-sizing: border-box;
    color: #666;
    margin: 10px;
    min-width: 80px;
    cursor: pointer;
}

.icone:focus,
.icone:hover {
    color: #333;
    text-decoration: none;
}

.PDF {
    background: url(images/pdf_off.png) no-repeat top center;
}

.PDF:focus,
.PDF:hover {
    background: url(images/pdf.png) no-repeat top center;
}

.ODS {
    background: url(images/ods_off.png) no-repeat top center;
}    

.ODS:focus,
.ODS:hover {
    background: url(images/ods.png) no-repeat top center;
}

.ODT {
    background: url(images/odt_off.png) no-repeat top center;
}    

.ODT:focus,
.ODT:hover {
    background: url(images/odt.png) no-repeat top center;
}

.arquivos {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
}


@media screen and (max-width: 27.1875rem){
    
    body {
        padding: .5rem;
    }
    
    #header {
        padding: 1rem 0 0 .2rem;
    }
    
    #header h1 a img {
        width: 100%;
        height: auto;
        margin: 0 auto;
    }
    
    span.icone-menu {
        display: block;
    }
    
    #menu {
        background: #FFF;
        width: 100%;
    }
    
    #menu > ul > li > ul,
    #menu a, #menu li > span,
    #menu li ul, #menu li ul li ul,
    #menu li ul a, #menu li ul li ul a {
        width: auto;
    }
    
    #menu {
        position: absolute;
        left: .5rem;
        top: 3rem;
        display: none;
    }
    
    #conteudo {
        margin-left: 0;
        min-width: inherit;
    }
    
    .cnmp thead tr,
    .card thead tr {
        display: none;
    }
    
    .cnmp td {
        display: block;
        border: 1px solid #AAA;
        word-break: break-word;
    }
    
    span.th-mobile {
        display: inline-block;
        font-weight: bold
    }
    
    div.th-mobile {
        display: block;
        font-weight: bold
    }
    
    .th-mobile::after {
        content: '\00a0';
    }
        
    .cnmp tbody tr.tr-mobile:nth-child(odd),
    .cnmp tbody tr.tr-mobile:nth-child(even) {
        display: flex;
    }

    .cnmp tbody tr.tr-mobile:not(:first-child) {
        margin-top: 32px;
    }

    .cnmp tbody tr.tr-mobile td,
    .cnmp tbody tr.tr-mobile th {
        background-color: #ffd800;
        font-weight: bold;
        text-align: center;
        speak: none;
        width: 100%;
        box-sizing: border-box;
    }
    
    .cnmp tbody tr td,
    .cnmp tbody tr td {
        text-align: left !important;
    }
        
    .separador-mobile {
        background-color: #ffd800;
        font-weight: bold;
        text-align: center;
        padding: 1rem;
    }
    
    .cnmp tbody tr.tr-mobile.item {
        background-color: #DDD;
        display: table-row;
    }
    
    .cnmp td.item {
        display: none;
    }
    
    .cnmp .lista-itens td.item,
    .cnmp .tr-mobile.item td {
        display: block;
    }
    
    .cnmp .lista-itens.item-0 {
        display: block;
    }

    .so-tela-pequena {
        display: block;
    }
    
    .so-tela-grande {
        display: none;
    }
        
    .card td,
    .card th {
        display: inline-block;
    }
    
    .card td {
        word-break: break-word;
    }
    
    .card td table td {
        display: block;
    }
    
    .mobile-block {
        display: block;
    }
        
    .cnmp tbody tr:nth-child(even) {
        background-color: #FFF;
    }

    .cnmp tbody tr:nth-child(odd) {
        background-color: #EFEFEF;
    }
    
    .cnmp .suprimentos thead tr.mobile-block {
        display: block;
    }
    
    #pesquisa {
        float: none;
        width: 100%;
        margin: 4rem 0 1rem 0;
    }

    .td-align-center {
        text-align: left !important;
    }

    .hide-mobile {
        display: none !important;
    }

    .no-wrap {
        white-space: normal;
    }

    .large-column {
        min-width: unset;
    }
}

.large-column {
    min-width: 300px;
}

/* ======================== */
/* ==== ACESSIBILIDADE ==== */
/* ======================== */

.conteudo-escondido {
    position: absolute; left: -999em;
}

.acessibilidade {
    margin: 0 2rem 1rem 0;
    overflow: auto;
    padding: 5px;
    background-color: #FFF;
}

.acessibilidade h2 {
    font-size: 12px;
    padding-bottom: 7px;
    margin-bottom: 0;
    text-align: left;
}

.acessibilidade-itens {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
}

.acessibilidade-linha {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

.vlibras,
.tamanho-da-fonte {
    display: inline-block;
}

.tamanho-da-fonte span:focus,
.acessibilidade .texto a:focus,
.tamanho-da-fonte span:hover,
.acessibilidade .texto a:hover {
    background-color: #04549d;
}

.acessibilidade span,
.acessibilidade a,
body.alto-contraste .acessibilidade a,
#alto-contraste {
    display: inline-block;
    height: 28px;
    line-height: 28px;
    border-radius: 2px;
    background-color: #AAA;
    text-align: center;
    color: #FFF;
    cursor: pointer;
    margin-top: 1px;
    transition: all .2s ease;
}

.acessibilidade span {
    font-size: .8rem;
    width: 28px;
}

.acessibilidade a,
#alto-contraste {
    font-size: .7rem;
    padding: 0 5px;
    text-decoration: none;
}

.mod-vlibras-div-vlibras {
    position: absolute;
    background: #FFF;
    width: 220px;
    height: 225px;
    z-index: 2;
    padding: 5px;
    border: 1px solid #DDD;
    box-shadow: 0 1px 3px 0 rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 2px 1px -1px rgba(0,0,0,.12);
}

.mod-vlibras-div-vlibras p {
    padding-top: 5px;
    color: #666;
    font-size: 0.9rem;
    line-height: 1.1rem;    
}

.mod-vlibras-div-vlibras a {
    color: #666;
}

.mod-vlibras-bt-vlibras {
    cursor: pointer;
    width: 30px;
    height: 30px;
    transition: all .2s ease;
    background: url(images/bt-vlibras.png) no-repeat 0 0;
}

.mod-vlibras-bt-vlibras:focus,
.mod-vlibras-bt-vlibras:hover {
    background: url(images/bt-vlibras-on.png) no-repeat 0 0;
}

table.table-form {
    min-width: 850px;
}

/* ======================== */
/* ==== PARA IMPRESSÃO ==== */
/* ======================== */

@media print {
    
    @page {
        size: landscape;
    }
    
	body,
	table,
	td,
	th {
		font-size: 9pt;
		line-height: 11pt;
	}
	
	.legendas {
		font-size: 8pt;
		line-height: 10pt;
	}
	
    #menu,
    #header,
    #centralizada,
    .seleciona,
    .visualizacao,
	.no-print,
    form {
        display: none;
    }
    
    #conteudo {
        margin-left: 0;
    }
    
    .bt-ods {
        display: none;
    }
    
}

/* ============== */
/* ==== LGPD ==== */
/* ============== */

div.mod-lgpd {
    position: fixed;
    left: 0;
    top: 0;
    padding: 32px;
    display: flex;
    flex-direction: column;
    background-color: rgba(0, 0, 0, .8);
    color: #FFF;
    z-index: 999;
    align-items: baseline;
    width: 100%;
    justify-content: space-between;
    box-sizing: border-box;
}

div.mod-lgpd h3 {
    color: #FFF;
}

div.mod-lgpd-container {
    max-width: 1000px;
    margin: 0 auto;
}

button.mod-lgpd-bt span {
    position: absolute;
    right: 9999px;
}

button.mod-lgpd-bt:hover span {
    right: 55px;
    color: #FFF;
    top: 18px;
    background-color: #000;
    padding: 4px 8px;
}

button.mod-lgpd-bt {
    position: relative;
    background-color: transparent;
    padding: 4px 8px;
    border: 1px solid #FFF;
    border-radius: 4px;
    display: block;
    text-align: center;
    color: #FFF;
    text-transform: uppercase;
    cursor: pointer;
    margin: 0 4px;
}

div.mod-lgpd-html {
    font-size: 14px;
    line-height: 20px;
}

div.mod-lgpd.mod-lgpd-cabecalho {
    top: 0;
}

div.mod-lgpd.mod-lgpd-rodape {
    bottom: 0;
}

div.mod-lgpd-botoes {
    width: 100%;
    margin-top: 16px;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}

.carregando {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
    z-index: 1;
}

.carregando .absolute-center {
    width: 50px;
    height: 50px;
}

.carregando .absolute-center img {
    width: 50px;
}

.contador {
    font-size: 12px;
    color: rgba(0, 0, 0, .8);
}

.td-align-center {
    text-align: center;
}

.flex-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: start;
    align-items: center;
    gap: 8px;
}

.flex-row-end {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
}

pre.xdebug-var-dump {
    white-space: break-spaces;
}

#conteudo .lista-suspensa {
    position: absolute;
    background: #FFF;
    box-shadow: 0 2px 1px -1px rgb(0 0 0 / 20%), 0 1px 1px 0 rgb(0 0 0 / 14%), 0 1px 3px 0 rgb(0 0 0 / 12%);
    border: 1px solid #DDD;
    top: 24px;
}

#conteudo .lista-suspensa ul {
    margin: 0;
    padding: 0;
}

#conteudo .lista-suspensa ul li {
    list-style: none;
    padding: 4px 8px;
    cursor: pointer;
}

#conteudo .lista-suspensa ul li:hover {
    background-color: #EFEFEF;
}

.caminho-externo {
    align-self: flex-start;
    padding-bottom: 32px;
    font-size: 16px;
}

a.open-in-new::before {
    content: url('images/open-in-new.svg');
    display: block;
    width: 20px;
    height: 16px;
}

.com-icone-a-direita {
    display: flex;
    flex-direction: row;
    justify-content: start;
    align-items: flex-start;
    gap: 8px;
}

/* LOADING */

.lds-roller {
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
  }
  .lds-roller div {
    animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    transform-origin: 40px 40px;
  }
  .lds-roller div:after {
    content: " ";
    display: block;
    position: absolute;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #fff;
    margin: -4px 0 0 -4px;
  }
  .lds-roller div:nth-child(1) {
    animation-delay: -0.036s;
  }
  .lds-roller div:nth-child(1):after {
    top: 63px;
    left: 63px;
  }
  .lds-roller div:nth-child(2) {
    animation-delay: -0.072s;
  }
  .lds-roller div:nth-child(2):after {
    top: 68px;
    left: 56px;
  }
  .lds-roller div:nth-child(3) {
    animation-delay: -0.108s;
  }
  .lds-roller div:nth-child(3):after {
    top: 71px;
    left: 48px;
  }
  .lds-roller div:nth-child(4) {
    animation-delay: -0.144s;
  }
  .lds-roller div:nth-child(4):after {
    top: 72px;
    left: 40px;
  }
  .lds-roller div:nth-child(5) {
    animation-delay: -0.18s;
  }
  .lds-roller div:nth-child(5):after {
    top: 71px;
    left: 32px;
  }
  .lds-roller div:nth-child(6) {
    animation-delay: -0.216s;
  }
  .lds-roller div:nth-child(6):after {
    top: 68px;
    left: 24px;
  }
  .lds-roller div:nth-child(7) {
    animation-delay: -0.252s;
  }
  .lds-roller div:nth-child(7):after {
    top: 63px;
    left: 17px;
  }
  .lds-roller div:nth-child(8) {
    animation-delay: -0.288s;
  }
  .lds-roller div:nth-child(8):after {
    top: 56px;
    left: 12px;
  }
  @keyframes lds-roller {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }  

#loading-container {
    display: flex;
    justify-content: center;
    align-items: center;
    top: 0;
    left: 0;
    position: fixed;
    width: 100vw;
    height: 100vh;
    min-width: 100vw;
    min-height: 100vh;
    background-color: rgba(0, 0, 0, .3);
    z-index: 3;
}

/* ==================== */
/* == Alto contraste == */
/* ==================== */

body.alto-contraste {
    background-color: #FFF;
    background-image: none;
}

body.alto-contraste .acessibilidade span,
body.alto-contraste .acessibilidade a,
body.alto-contraste #alto-contraste {
    background-color: #000;
}

body.alto-contraste a {
    color: #00F;
}

body.alto-contraste #menu li a,
body.alto-contraste #menu li > span {
	border-left:7px solid #000; 
	border-right:0px solid #f7f8fd; 
	border-top:0px solid #f7f8fd; 
	border-bottom:1px solid #000; 
	color:#FFF; 
}

body.alto-contraste #menu li > span {
    color: #00F;
}

body.alto-contraste #menu li a:hover,
body.alto-contraste #menu li > span:hover,
body.alto-contraste #menu li a:focus,
body.alto-contraste #menu li > span:focus,
body.alto-contraste #menu a.ativo {
    color: #FFF !important;
    background-color: #000;
    border-left: 7px solid #999;
    border-right: 0px solid #FFF;
    border-top: 0px solid #FFF;
    border-bottom: 1px solid #999;
}
	
body.alto-contraste #menu a:hover span,
body.alto-contraste #menu a:focus span
 {
	border-left:6px solid #c00; 
	border-top:8px solid #fff; 
	border-bottom:8px solid #fff; 
}

body.alto-contraste #menu li a,
body.alto-contraste #menu li span { 
    background-color: #FFF;
}

body.alto-contraste #menu li.grupo-chave a {
    color: #00F;
}

body.alto-contraste #menu li.grupo-chave ul li a {
    color: #00F;
}

body.alto-contraste #menu li.banner-acesso-a-informacao a:focus,
body.alto-contraste #menu li.banner-acesso-a-informacao a:hover {
    background-color: #FFF;
}

body.alto-contraste h1,
body.alto-contraste h2,
body.alto-contraste h3 {
	color: #000;
}

body.alto-contraste #conteudo .item-page h2,
body.alto-contraste #conteudo h1 {
    border-bottom: 1px solid #000;
}

body.alto-contraste #header h1 a {
    background-image: url(images/header-alto-contraste.png);
}

body.alto-contraste .mod-vlibras-bt-vlibras,
body.alto-contraste .mod-vlibras-bt-vlibras:focus,
body.alto-contraste .mod-vlibras-bt-vlibras:hover {
    background: url(images/bt-vlibras-alto-contraste.png) no-repeat 0 0;
}

body.alto-contraste #menu li.banner-acesso-a-informacao a {
    background-image: url(images/acessoInformacao-alto-contraste.png);
}

body.alto-contraste .table-header-1,
body.alto-contraste .table-header-1 th {
    background-color: #000;
    border: 1px solid #000;
    color: #FFF;
}

body.alto-contraste .bt-ods {
    border: 1px solid #000;
    background: #FFF url(images/ods-alto-contraste.png) no-repeat 4px 4px;
    color: #000;
    background-size: 34px;
}

body.alto-contraste .icone {
    background-size: 38px !important;
}

body.alto-contraste .PDF,
body.alto-contraste .PDF:focus,
body.alto-contraste .PDF:hover {
    background: url(images/pdf-alto-contraste.png) no-repeat top center;
}

body.alto-contraste .ODS,
body.alto-contraste .ODS:focus,
body.alto-contraste .ODS:hover {
    background: url(images/ods-alto-contraste.png) no-repeat top center;
}

body.alto-contraste .ODT,
body.alto-contraste .ODT:focus,
body.alto-contraste .ODT:hover {
    background: url(images/odt-alto-contraste.png) no-repeat top center;
}

body.alto-contraste .table-header-2,
body.alto-contraste .table-header-2 th {
    background-color: #EEE;
}

body.alto-contraste .icone:focus,
body.alto-contraste .icone:hover {
    color: #00F;
    text-decoration: underline;
}

body.alto-contraste .destaque {
	border: 1px solid #000;
	background: #FFF;
}

body.alto-contraste .destaque span {
    color: #000;
}

body.alto-contraste .visualiza-tabela.ativa a,
body.alto-contraste .visualiza-lista.ativa a {
    border-bottom-color: #000;
}

body.alto-contraste #paginacao li {
    border-color: #EFEFEF;
    background: #333;
    color: #EFEFEF;
}

body.alto-contraste #paginacao li:focus,
body.alto-contraste #paginacao li:hover {
    background-color: #000;
    color: #FFF;
}

body.alto-contraste #paginacao li.inativo {
    border-color: #CCC;
    background: #FFF;
    color: #CCC;
}

body.alto-contraste #paginacao li.inativo:focus,
body.alto-contraste #paginacao li.inativo:hover {
    background: #FFF;
}

body.alto-contraste #paginacao ul li a {
    color: #DDD;
}

body.alto-contraste #paginacao ul li a:focus,
body.alto-contraste #paginacao ul li a:hover {
    color: #FFF;
}

#declaracao {
    margin: 1cm 1.5cm;
}

#declaracao img {
    width: 8.92cm;
    height: 1.02cm;
    margin-bottom: 1.5cm;
}

#declaracao h3,
#declaracao p {
    text-align: center;
}

#declaracao h3 {
    font-size: 12pt;
    margin-bottom: 15pt;
}

#declaracao p {
    font-size: 10pt;
    line-height: 15pt;
    font-weight: normal;
    margin-bottom: 15pt;
}

@media print {
    .bt-declaracao {
        display: none;
    }
}
/* ================= */
/* == Breadcrumbs == */
/* ================= */

#breadcrumbs {
    background-color: #FFF;
    padding: 6px;
    margin-bottom: 16px;
    display: flex;
    color: #800000;
    line-height: 20px;
}

.breadcrumbs-home {
    display: flex;
    width: 20px;
    height: 20px;
    background-image: url(images/home.png);
    background-size: contain;
}

.breadcrumbs-home span {
    text-indent: -9999px;
}

.feito,
.unidade {
    padding: 2px 4px;
    background-color: #FFF;
    border-radius: 4px;
    border: 1px solid #AAA;
    display: flex;
    align-items: center;
    gap: 4px;
}

#bt-inclui-feito,
.bt-remove-feito,
#bt-inclui-unidade,
.bt-remove-unidade {
    background-color: #DDD;
    border: 1px solid #EEE;
    width: 24px;
    height: 24px;
    display: block;
    text-align: center;
    border-radius: 50%;
    font-size: 16px;
    line-height: 22px;
}

pre {
    max-width: fit-content;
    white-space: break-spaces;
}

#error-container {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2);
    z-index: 1000;
    justify-content: center;
    align-items: flex-start;
    padding: 240px;
    box-sizing: border-box;
}

#error-container #error-msg {
    background-color: #FFF;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    text-align: center;
}

#error-container #error-msg p {
    color: #F00;
    line-height: 24px;
}
