@CHARSET "ISO-8859-1";

@media (max-width: 768px) {
	.bank-option-container__reembolso {
		flex-direction: column;
	}

	.bank-option-button__reembolso {
		width: 100% !important;
	}
}

/**
	para quando a tela tem menos que 800px de largura:
**/
@media (max-width : 800px) {
	/** ocultar corpo do login em tela muito estreita **/
	div.corpo-login {
	    display: none;
	}
}

/**
	para quando a tela tem menos que 960px de largura:
**/
@media (max-width : 960px) {

	body {
		overscroll-behavior-y: contain;
		font-size: 13px;
	}

	html {
		width: 100%;
		height: 100%;
		background: #F5F5F5;
		padding: 0;
		margin: 0;
		border: 0;
		min-height: 100px;
		min-width: 100px;
		overflow-x: hidden !important;
		overscroll-behavior: none;
		-webkit-overflow-scrolling: touch;
	}

	div.menu {
		display: none;
	}

	.sidebar-mobile {
		position: fixed !important;
		top: 0 !important;
		bottom: 0 !important;
		height: auto !important;
		padding: 0 !important;
		display: flex;
		flex-direction: column;
	}
	.sidebar-header {
		flex: 0 0 auto;
		padding: 10px;
		text-align: center;
		border-bottom: 1px solid #ddd;
		background: #fff;
	}
	.sidebar-logo {
		height: 50px;
		width: 95%;
		margin: 0;
		max-width: 95%;
		max-height: 50px;
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
	}
	.sidebar-identificacao {
		margin-top: 4px;
		font-size: 8.5pt;
		color: #555;
		font-weight: 600;
		line-height: 1.2;
		max-width: 100%;
		word-break: break-word;
	}
	.sidebar-content-scroll {
		flex: 1 1 auto;
		overflow-y: scroll !important;
		overflow-x: scroll !important;
		-webkit-overflow-scrolling: touch;
		padding: 10px;
		margin-left: 15px;
		height: calc(100vh - 300px);
		margin-left: 15px;
	}

	div.corpo {
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 5px !important;
		right: 5px;
		min-height: 10px;
		min-width: 10px;
	}

	.panel {
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		background: white;
		box-shadow: 5px 5px 8px #888;
		border-radius: 5px;
		min-height: calc(100vh - 34px) !important;
		height: auto !important;
		margin-top: 34px !important;
		margin-left: 0 !important;
		width: 100% !important;
	}

	.panel .ui-panel-content {
		flex: 1 1 auto;
		overflow-y: auto;
		overflow-x: hidden;
		width: 100%;
		box-sizing: border-box;
	}

	.logo {
		max-width: 90% !important;
		max-height: 40% !important;
		background-size: contain !important;
	}

	div.conteudo {
		bottom: 100px !important;
	}

	.ui-panel .ui-widget-header {
		text-align: center !important;
	}

	.ui-dialog.dialog35 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog45 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog50 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog55 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog65 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog66 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog75 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog80 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog83 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog96 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog99 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-dialog.dialog100 {
		width: 98% !important;
		height: 98% !important;
	}

	.ui-growl {
		width: 95% !important;
		left: 2.5% !important;
	}

	.dlg {
		width: 92% !important;
	}

	.ui-datatable-reflow .ui-datatable-data .ui-expanded-row td[role="gridcell"]:not(.ui-helper-hidden) {
		width: max-content !important;
	}

	.rowToggler td[role="gridcell"] {
		width: max-content !important;
	}

	.botoes {
		position: absolute !important;
		right: 10px !important;
		bottom: 60px !important;
	}

	.botoesdlg {
		position: absolute !important;
		right: 30px !important;
		bottom: 5px !important;
	}

	.ocultar-mobile {
		display: none !important;
		visibility: hidden !important;
	}

	.exibir-mobile {
		display: block !important;
		visibility: visible !important;
	}

	.ui-inputfield {
		height: 25px;
		font-size: 13px;
		line-height: 20px;
	}

	.ui-inputtext {
		height: 25px;
		font-size: 13px !important;
		line-height: 20px;
	}

	.ui-inputmask {
		height: 25px;
		font-size: 13px !important;
		line-height: 20px;
	}

	.ui-datatable-reflow .ui-datatable-data .ui-expanded-row td[role="gridcell"]:not(.ui-helper-hidden)
	{
		width: max-content !important;
	}
	.rowToggler td[role="gridcell"] {
		width: max-content !important;
	}
	.informacoes-modulo {
		font-size: 8pt;
	}
	.ambiente-homologacao{
		font-size: 8pt;
	}

	.item span,
    .item a,
    .item label {
        font-size: 16px !important;
        line-height: 25px !important;
    }

    .exibir-desktop {
        display: none !important;
        visibility: hidden !important;
    }

	.meus-dependentes {
		height: calc(100vh - 12px);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	.meus-dependentes .ui-panel-content {
		box-sizing: border-box;
		max-height: calc(100vh - 54px);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	.meus-dependentes__tabela {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.meus-dependentes__tabela .ui-datatable-tablewrapper {
		overflow-x: visible;
	}

	.meus-dependentes__tabela table {
		min-width: 680px;
	}

	.meus-dependentes__dialog {
		width: 100% !important;
		max-width: 100% !important;
		top: 0 !important;
		left: 0 !important;
		margin: 0 !important;
	}

	.ui-dialog.meus-dependentes__dialog {
		box-sizing: border-box;
		left: 8px !important;
		max-height: calc(100vh - 16px);
		top: 8px !important;
		width: calc(100vw - 16px) !important;
	}

	.ui-dialog.meus-dependentes__dialog .ui-dialog-content {
		box-sizing: border-box;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch;
		max-height: calc(100dvh - 100px) !important;
	}

	.meus-dependentes__dialog-conteudo {
		max-width: 100%;
	}

	.meus-dependentes__card {
		margin-bottom: 12px;
		padding: 12px;
	}

	.meus-dependentes__card-titulo {
		font-size: 18px;
		line-height: 23px;
	}

	.meus-dependentes__card-texto {
		font-size: 13px;
		line-height: 18px;
	}

	.meus-dependentes__campo {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.meus-dependentes__vazio {
		padding: 28px 14px;
	}

	.botaolimpar,
	.botaosalvar {
		font-size: 11px !important;
		padding: 2px 10px !important;
		height: auto !important;
		white-space: normal !important;
		word-break: break-word !important;
		min-width: 0 !important;
		width: 100% !important;
		flex: 1 !important;
		box-sizing: border-box !important;
	}

	.meus-dependentes__btn-adicionar {
		width: 100% !important;
	}

	.sol-accordion-wrapper {
		height: calc(100vh - 320px);
	}

	.sol-botoes {
		flex-direction: column;
	}

	.sol-botoes .ui-button {
		width: 100% !important;
	}

	.sc-panel.ui-panel .ui-panel-content {
		padding: 12px 10px 16px !important;
	}

	.sc-page {
		padding: 0 0 12px;
	}

	.sc-card.ui-fieldset .ui-fieldset-legend {
		align-items: flex-start !important;
		flex-direction: column;
		gap: 3px !important;
		padding: 12px !important;
	}

	.sc-card.ui-fieldset .ui-fieldset-content {
		margin-left: 0 !important;
		padding: 12px !important;
	}

	.sc-col-label {
		padding-right: 0 !important;
		padding-bottom: 2px !important;
	}

	.sc-page .ui-outputlabel.titulo,
	.sc-page .titulo {
		font-size: 11pt !important;
		line-height: 18px !important;
	}

	.sc-field-row {
		margin-bottom: 14px !important;
	}
	.sc-resumo-head,
	.sc-resumo-row {
		grid-template-columns: 1fr 55px 80px;
		padding: 8px 10px;
	}

	.sc-resumo-head span {
		font-size: 10px;
	}

	.sc-resumo-desc {
		font-size: 12px;
		line-height: 1.3;
	}

	.sc-resumo-qty-wrap input {
		width: 40px !important;
		font-size: 12px;
	}

	.sc-resumo-valor {
		font-size: 12px;
	}

	.sc-resumo-total {
		padding: 8px 10px;
	}

	.sc-resumo-total-valor {
		font-size: 13px;
	}

	.sc-botoes {
		flex-direction: column;
	}

	.sc-botoes .ui-button {
		width: 100% !important;
	}

	.sc-col-field {
		overflow: hidden !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
	}

	.sc-col-field .ui-selectonemenu,
	.sc-col-field .ui-selectonemenu.ui-widget {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
		padding-right: 0 !important;
		position: relative !important;
	}

	.sc-col-field .ui-selectonemenu .ui-selectonemenu-label {
		display: block !important;
		width: 320px !important;
		box-sizing: border-box !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		white-space: nowrap !important;
	}

	.sc-col-field .ui-selectonemenu .ui-selectonemenu-trigger {
		position: absolute !important;
		right: 0 !important;
		top: 0 !important;
		bottom: 0 !important;
		width: 26px !important;
	}

	.ui-selectonemenu-panel {
		max-width: calc(100vw - 30px) !important;
		box-sizing: border-box !important;
	}

	.ui-selectonemenu-panel .ui-selectonemenu-item {
		white-space: normal !important;
		word-break: break-word !important;
		overflow-wrap: break-word !important;
	}

	.ui-selectonemenu-panel .ui-selectonemenu-filter-container {
		width: 100% !important;
		box-sizing: border-box !important;
	}

	.sc-col-field .ui-inputtext {
		height: auto;
	}

	.sc-card .ui-fieldset-content,
	.sc-card .ui-g {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	.cabecalho {
		display: flex;
		flex-direction: column;
		align-items: center;
		width: 100%;
		padding: 12px 0;
		box-sizing: border-box;
		position: relative;
		height: auto;
	}

	.logo {
		position: relative;
		width: 120px;
		height: 80px;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		margin-bottom: 10px;
	}

	.login {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.container {
		position: relative;
		width: 100%;
		box-sizing: border-box;
		padding: 0 10px 60px;
	}

	.corpo {
		position: relative;
		width: 100%;
		box-sizing: border-box;
		padding: 10px;
	}

	.rc-secao {
		padding: 8px 10px;
		margin-bottom: 6px;
	}

	.rc-lista {
		max-height: 42vh;
	}

	.rc-btn-busca {
		height: 36px !important;
	}

	.rc-item-linha {
		flex-direction: column;
		gap: 4px;
	}

	.rc-resultados-barra {
		flex-wrap: wrap;
		gap: 6px;
	}

	.plano-card {
		border: 1px solid #e0e0e0;
		border-radius: 4px;
		padding: 10px 12px;
		margin-bottom: 8px;
	}

	.plano-card-linha {
		display: flex;
		gap: 6px;
		padding: 3px 0;
		font-size: 0.875rem;
		border-bottom: 1px solid #f0f0f0;
	}

	.plano-card-linha:last-child {
		border-bottom: none;
	}

	.plano-card-label {
		font-weight: bold;
		white-space: nowrap;
		min-width: 130px;
		color: #555;
	}

	.pagamento-alerta {
		flex-direction: column;
		gap: 8px;
	}
	.proc-card__row {
		flex-direction: column;
		gap: 2px;
	}
	.proc-card__label {
		min-width: unset;
	}
	.protocolo-botoes {
		flex-direction: column;
	}
	.protocolo-botoes .ui-button {
		width: 100% !important;
	}

	.dlg-download {
		width: calc(100vw - 20px) !important;
		left: 10px !important;
		right: 10px !important;
	}

	.hide-desktop {
		display: block;
	}

	.hide-mobile {
		display: none;
	}

	.menu-mobile {
		position: fixed;
		top: 8px;
		left: 6px;
		z-index: 9999;
		width: auto;
		height: auto;
		display: inline-flex;
	}

	/* Apenas o cabeçalho do Panel */
	.ui-panel > .ui-panel-titlebar {
		position: fixed !important;
		top: 0;
		left: 0;
		right: 0;
		z-index: 99;
		height: 34px;

		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 !important;
	}

	/* Compensa o header fixo */
	.ui-panel > .ui-panel-content {
		padding-top: 34px !important;
	}

	/* Garante que as abas não subam */
	.ui-panel .ui-tabs {
		margin-top: 0 !important;
	}

	.ui-panel .ui-tabs-nav {
		margin-top: 0 !important;
	}

	.menu-mobile {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 100 !important;
		height: 34px;
		display: inline-flex;
		align-items: center;
		padding-left: 6px;
	}

	.botao-menu {
		display: inline-flex;
		align-items: center;
		gap: 4px;
		padding: 2px 7px;
		border: 1px solid rgba(255, 255, 255, 0.4);
		border-radius: 6px;
		font-size: 12px;
		letter-spacing: 0.08em;
		cursor: pointer;
		color: #ffffff !important;
		font-family: "LiberationSans-Regular", sans-serif;
		margin-top: 0 !important;
		margin-left: 0 !important;
	}

	.botao-menu i {
		font-size: 11px;
	}

	.sc-proc-table .ui-datatable-tablewrapper {
		overflow: visible !important;
	}

	.sc-proc-table thead {
		display: none !important;
	}

	.sc-proc-table tbody tr {
		background: #ffffff !important;
		border: 1px solid #e0e6ee !important;
		border-radius: 8px !important;
		display: block !important;
		margin-bottom: 8px !important;
		padding: 2px 0 !important;
	}

	.sc-proc-table tbody td {
		align-items: center !important;
		border: none !important;
		display: flex !important;
		gap: 12px !important;
		justify-content: space-between !important;
		padding: 7px 12px !important;
		text-align: right !important;
		width: auto !important;
		word-break: break-word;
	}

	.sc-proc-table tbody td::before {
		color: #6f7b87;
		flex: 0 0 auto;
		font-size: 11px;
		font-weight: bold;
		text-align: left;
		text-transform: uppercase;
	}

	.sc-proc-table tbody td:nth-of-type(1)::before { content: "C\0000f3digo"; }
	.sc-proc-table tbody td:nth-of-type(2)::before { content: "Descri\0000e7\0000e3o"; }
	.sc-proc-table tbody td:nth-of-type(3)::before { content: "Valor Unit."; }
	.sc-proc-table tbody td:nth-of-type(4)::before { content: "Qtd."; }
	.sc-proc-table tbody td:nth-of-type(5)::before { content: ""; }
	.sc-proc-table--total tbody td:nth-of-type(5)::before { content: "Valor"; }

	.sc-proc-table tbody tr.ui-datatable-empty-message td {
		display: block !important;
		text-align: center !important;
	}

	.sc-proc-table tbody tr.ui-datatable-empty-message td::before {
		content: "" !important;
		display: none !important;
	}

	.sc-proc-table .sc-btn-remover.ui-button {
		height: 32px !important;
		min-height: 32px !important;
		width: 44px !important;
	}

	.fatura__fieldset {
		padding: 10px 12px 12px;
	}

	.fatura__resumo-label,
	.fatura__resumo-value {
		display: block;
		margin-right: 0;
	}

	.fatura__resumo-value {
		margin-bottom: 8px;
	}

	.fatura__table-scroll {
		max-height: 55vh;
	}

	.fatura__table-scroll--dialog {
		max-height: 40vh;
	}

	.fatura__table.ui-datatable table,
	.fatura__table.ui-datatable thead,
	.fatura__table.ui-datatable tbody,
	.fatura__table.ui-datatable tr,
	.fatura__table.ui-datatable td {
		display: block;
	}

	.fatura__table.ui-datatable thead tr {
		position: absolute;
		top: -9999px;
		left: -9999px;
	}

	.fatura__table.ui-datatable tbody tr {
		border: 1px solid #e2e6ec;
		border-radius: 8px;
		margin-bottom: 12px;
		padding: 8px 12px;
	}

	.fatura__table.ui-datatable td {
		border: none;
		padding: 6px 0;
		text-align: left !important;
	}

	.fatura__table.ui-datatable td::before {
		content: attr(data-title);
		display: block;
		font-size: 11px;
		text-transform: uppercase;
		color: #8a94a6;
		margin-bottom: 2px;
	}

	.fatura__table.ui-datatable tbody tr.ui-datatable-empty-message td {
		display: block !important;
		text-align: center !important;
	}

	.fatura__table.ui-datatable tbody tr.ui-datatable-empty-message td::before {
		content: "" !important;
		display: none !important;
	}

	.fatura__table .fatura__col-acoes {
		text-align: left;
	}

	.fatura__table .fatura__col-acoes .fatura__btn,
	.fatura__table .fatura__col-acoes .fatura__btn-detalhes {
		margin-left: 0;
		margin-top: 8px;
		width: 100%;
		justify-content: center;
	}

	.fatura__dialog.ui-dialog {
		width: 96vw !important;
		left: 2vw !important;
	}

	.fatura__dialog .ui-dialog-content {
		max-height: 80vh;
	}

	.fatura__table .ui-datatable-data tr.ui-widget-content {
		display: block;
		border-radius: 6px;
		margin-bottom: 10px;
		overflow: hidden;
	}

	.fatura__table .ui-datatable-data td[role="gridcell"]:not(.ui-helper-hidden) {
		display: flex !important;
		align-items: center;
		float: none !important;
		width: 100% !important;
		box-sizing: border-box;
		padding: 7px 10px !important;
		border: 0 none !important;
		border-bottom: 1px solid #eef1f5 !important;
	}

	.fatura__table .ui-datatable-data td[role="gridcell"]:last-child {
		border-bottom: 0 none !important;
	}

	.fatura__table .ui-datatable-data td[role="gridcell"] .ui-column-title {
		flex: 0 0 42%;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 8px 0 0 !important;
		font-weight: 600 !important;
		color: #55606e !important;
	}

	.fatura__table .ui-datatable-data td[role="gridcell"].fatura__col-acoes {
		display: block !important;
		text-align: center !important;
	}

	.fatura__table .ui-datatable-data td[role="gridcell"].fatura__col-acoes .ui-column-title {
		display: none !important;
	}

	.fatura__table td[role="gridcell"].fatura__col-acoes .fatura__btn-detalhes.ui-button,
	.fatura__table td[role="gridcell"].fatura__col-acoes .fatura__btn-detalhes {
		width: 100% !important;
	}
}

/**
	para quando a tela tem mais que 960px de largura:
**/
@media (min-width : 960px) {
	.menu-mobile {
		display: none;
	}

	.exibir-mobile {
		display: none !important;
		visibility: hidden !important;
	}
}
