.gi-portal {
	max-width: 1100px;
	margin: 0 auto;
	font-size: 15px;
}
.gi-secao {
	background: #fff;
	border: 1px solid #e3e6ea;
	border-radius: 12px;
	padding: 18px 22px;
	margin-bottom: 20px;
	box-shadow: 0 1px 3px rgba(0,0,0,.05);
}
.gi-secao h2 { margin-top: 0; font-size: 1.25em; }

.gi-tabela {
	width: 100%;
	border-collapse: collapse;
	margin-top: 10px;
}
.gi-tabela th, .gi-tabela td {
	text-align: left;
	padding: 8px 10px;
	border-bottom: 1px solid #eef0f2;
	vertical-align: middle;
}
.gi-tabela thead th { background: #f6f7f8; font-weight: 600; }

.gi-saldo { font-size: 1.05em; }

.gi-pill {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 20px;
	font-size: .85em;
	background: #eef0f2;
	color: #50575e;
	white-space: nowrap;
}
.gi-pill-aprovada, .gi-pill-aprovado, .gi-pill-gozada { background: #d5f5e3; color: #1d8348; }
.gi-pill-negada, .gi-pill-negado, .gi-pill-cancelada { background: #fde8e8; color: #b32d2e; }
.gi-pill-solicitada, .gi-pill-solicitado { background: #fff3cd; color: #8a6d3b; }

.gi-btn {
	display: inline-block;
	background: #2c5a8f;
	color: #fff !important;
	border: 0;
	border-radius: 8px;
	padding: 8px 16px;
	cursor: pointer;
	text-decoration: none !important;
	font-size: .95em;
}
.gi-btn:hover { background: #1f3a5f; }
.gi-btn-sec { background: #6c757d; }
.gi-btn-sec:hover { background: #50575e; }

.gi-form-toggle {
	margin: 10px 0 14px;
	border: 1px dashed #c3c8cd;
	border-radius: 10px;
	padding: 10px 14px;
	background: #fafbfc;
}
.gi-form-toggle summary { cursor: pointer; font-weight: 600; }
.gi-form-front {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: flex-end;
	margin-top: 12px;
}
.gi-form-front label {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: .9em;
}
.gi-form-front label.gi-check { flex-direction: row; align-items: center; }
.gi-form-front input[type=text],
.gi-form-front input[type=date],
.gi-form-front select {
	padding: 7px 10px;
	border: 1px solid #c3c8cd;
	border-radius: 8px;
}
.gi-aviso { width: 100%; font-size: .85em; color: #787c82; margin: 4px 0 0; }

.gi-msg {
	border-radius: 10px;
	padding: 12px 16px;
	margin-bottom: 16px;
	font-weight: 500;
}
.gi-msg-ok { background: #d5f5e3; color: #1d8348; }
.gi-msg-erro { background: #fde8e8; color: #b32d2e; }

/* ===== v1.5.1 — decisões (aprovar/rejeitar) ===== */
.gi-linha-decisao td {
	background: #fafbfc;
	border-bottom: 2px solid #e3e6ea;
}
.gi-form-decisao {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}
.gi-input-comentario {
	flex: 1;
	min-width: 220px;
	padding: 7px 10px;
	border: 1px solid #c3c8cd;
	border-radius: 8px;
}
.gi-btn-perigo { background: #b32d2e; }
.gi-btn-perigo:hover { background: #8f2122; }
.gi-pill-negada small { color: #b32d2e; }
