@import url('https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css');

.tooltip-inner {
	background-color: #a3690b;  /* Cor de fundo */
	color: #000;             /* Cor da fonte */
	font-size: 14px;         /* (opcional) Tamanho da fonte */
	padding: 6px 10px;       /* (opcional) Espaçamento interno */
	border-radius: 8px;      /* (opcional) Borda arredondada */
	/*max-width: 200px;        /* (opcional) Largura máxima */
}

/*.tooltip.bs-tooltip-top .tooltip-arrow::before {
  border-top-color: #009166 !important;
  border-right-color: #009166 !important;
  border-bottom-color: #009166 !important;
  border-left-color: #009166 !important;
}*/

.bs-tooltip-top .tooltip-arrow::before {
  border-top-color: #009166 !important;
}

.bs-tooltip-bottom .tooltip-arrow::before {
  border-bottom-color: #009166 !important;
 }

.bs-tooltip-start .tooltip-arrow::before {
  border-left-color: #009166 !important;
}

.bs-tooltip-end .tooltip-arrow::before {
  border-right-color: #009166 !important;
}

.form {
	text-align: center;
}

.titulo-3d {
	font-size: 3.0rem;
	font-weight: bold;
	color: #00d4c6; /* Cor do título na tela index */
	text-align: center;
	margin-bottom: 20px;
	text-shadow: 
    1px 1px 0 #888,
    2px 2px 0 #777,
    3px 3px 0 #666,
    4px 4px 0 #555,
    5px 5px 0 #444;
}

.titulo-centralizado {
	position: absolute;
	left: calc(50% + 125px); /* metade da largura do menu */
	transform: translateX(-50%);
	margin: 0;
}

.container-tabela {
  max-width: 1100px; /* mesma largura da tabela desejada */
  margin: 0 auto;
}

.custom-pagination .page-link {
  padding: 4px 10px;
  font-size: 0.85rem;
}

.pagination {
  justify-content: center;
}

.pagination .page-item.active .page-link {
  background-color: #0d6efd;
  border-color: #0d6efd;
}

.modal-header {
  padding: 0.3rem 1rem; /* Reduz altura vertical */
  min-height: auto;     /* Remove restrição mínima, se houver */
}
.modal-title {
  font-size: 1rem;      /* Opcional: diminui o tamanho da fonte */
}

/* Estilo do input no modal */
.input-estilizado {
  border: 2px solid #007bff;
  border-radius: 8px;
  transition: all 0.3s;
}

.input-estilizado:focus {
  box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25);
  outline: none;
}

/* Classe reutilizável para tabelas administrativas */
.tabela-admin {
	width: 100%;
	max-width: 1100px; /* largura máxima reduzida */
	margin: auto; /* centraliza horizontalmente */
  border-collapse: separate;
	border-spacing: 0;
  border: 1px solid #ccc;
  border-radius: 10px;
  overflow: hidden;
  font-size: 0.85rem;
}

.tabela-admin thead th {
	background-color: #343a40;
	font-size: 16px;      /* Aumenta o tamanho da fonte */	
	color: #fff;
	text-align: center;
	padding: 8px;
	height: 50px;          /* Aumenta a altura da linha */	
	vertical-align: middle; /* Centraliza verticalmente o texto */	
} 

.tabela-admin tbody td:nth-child(2) {
	text-align: center; /* centraliza os botões na célula de ações */
}

.tabela-admin tbody tr td {		
	height: 10px; /* ou o valor que desejar */
	vertical-align: middle; /* centraliza verticalmente o conteúdo */
}  

.tabela-admin tbody tr:nth-child(even) {
	background-color: #f1f1f1;
}

.tabela-admin tbody tr:nth-child(odd) {
	background-color: #ffffff;
}

.tabela-admin tbody tr td:first-child {
	padding-left: 12px; /* Ajuste o valor conforme necessário */
}

.tabela-admin th:first-child {
	border-top-left-radius: 10px;
}

.tabela-admin th:last-child {
	border-top-right-radius: 10px;
}

.tabela-admin tr:last-child td:first-child {
	border-bottom-left-radius: 10px;
}

.tabela-admin tr:last-child td:last-child {
	border-bottom-right-radius: 10px;	
}

.tabela-admin td:last-child {
  text-align: center;
  vertical-align: middle;
}


/* -- Estilos de Index -- */
* {
	box-sizing: border-box;
}

body {
	margin: 0;
	display: flex;
	flex-direction: column;
	height: 100vh;
	overflow: auto;	
}

header {	
	background: linear-gradient(to right, #222d32, #364952);
	color: white;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	position: relative;
	padding: 10px 0px;	
}

header .logo {
	display: flex;
	align-items: center;
}

header .logo img {
	max-width: 220px !important;
			width: 100% !important;
			height: auto !important;
}

header .titulo {
	flex: 1;
	text-align: center;
	font-size: 1.25rem;
}

main {
	display: flex;
	flex: 1;
}

aside {
	width: 200px;
	background: #333333;
	height: 100%;
	padding: 1rem 0.5rem;
	transition: width 0.3s ease;
	overflow-x: hidden;
}

aside.retraido {
	width: 60px;
}

aside .btn-toggle {
	width: 100%;
	margin-bottom: 1rem;
}

aside .nav-link {
	display: flex;
	align-items: center;
	white-space: nowrap;
}

aside.retraido .nav-link span {
	display: none;
}

aside .nav-link i {
	margin-right: 10px;
}

iframe {
	flex: 1;
	border: none;
	height: 100%;
}

.nav-link {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #ffffff;
	transition: background-color 0.3s;
}

.nav-link:hover {
	background-color: #e0e0e0;
	border-radius: 4px;
}

.nav-link.active {
	background-color: #20c997;
	color: white !important;
	border-radius: 4px;
}

.nav-link i {
	font-size: 1.2rem;
}

aside.retraido .collapse {
	display: none !important;
}

/* -- Estilos de Tipos de Exames -- */
.cabecalho-verde-agua {
	background-color: #20c997 !important; /* Verde água */
	color: white !important;
}

.tabela-compacta th, .tabela-compacta td {
	padding-top: 3px !important;
	padding-bottom: 3px !important;
	vertical-align: middle;
}    

.titulo-exames {
	background: linear-gradient(to right, #001f3f, #003366); /* Gradiente cinza */
	/*background: linear-gradient(to right, #001f3f, #003366); /* Gradiente cinza */
	color: white;
	border-radius: 5px;
	font-weight: bold;
	display: inline-block;
	width: 100%;
	
	.btn-limpar {
		background-color: #6c757d; /* cinza padrão */
		color: white;
		transition: background-color 0.3s ease;
	}
	
	.btn-limpar:hover {
		background-color: #dc3545; /* vermelho */
	}
	
	.btn-limpar i {
		color: white; /* ícone branco */
	}
	
	/* -- Estilos de Cadastro de Exames -- */
	#tabelaResumo tbody tr td {
		padding-top: 4px;
		padding-bottom: 4px;
	}
	
	input, select, textarea {
		border: 2px solid #007bff !important;
		box-shadow: none !important;
		border-radius: 4px;
	}
	
	input:focus, select:focus, textarea:focus {
		border-color: #0056b3 !important;
		outline: none !important;
	}
}

.input-borda-colorida {
	border: 2px solid #007bff; /* Azul Bootstrap */
	border-radius: 5px;
}

hr.custom-hr {
  border: 0;
  height: 2px;
  background-color: #6b6b6b; /* verde bootstrap */
  margin-top: 20px;
  margin-bottom: 15px;
  opacity: 0.8;
}

