/* =========================================================
   Fonte Planejamento — Painel do Líder
   Mesma identidade visual do fluxo público (fundo branco,
   texto preto, azul #56ACDE), adaptada para dashboard,
   listagem e formulário de contribuição.
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

.fonte-plan-painel {
	--fpl-ink: #1A1A1A;
	--fpl-primary: #56ACDE;
	--fpl-primary-dark: #3D93C7;
	--fpl-tint: #F4F8FB;
	--fpl-mist: #E7EAEE;
	--fpl-muted: #6B6B6B;
	--fpl-white: #FFFFFF;
	--fpl-success-bg: #EAF6EC;
	--fpl-success-text: #1A7F37;
	--fpl-radius: 16px;
	--fpl-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

	all: initial;
	box-sizing: border-box;
	display: block;
	font-family: var(--fpl-font);
	color: var(--fpl-ink);
	max-width: 780px;
	margin: 0 auto;
	line-height: 1.5;
}

.fonte-plan-painel *,
.fonte-plan-painel *::before,
.fonte-plan-painel *::after {
	box-sizing: border-box;
	font-family: inherit;
}

.fonte-plan-painel button {
	cursor: pointer;
	font-family: inherit;
}

.fonte-plan-painel :focus-visible {
	outline: 2px solid var(--fpl-primary);
	outline-offset: 2px;
}

.fpl-card {
	background: var(--fpl-white);
	border: 1px solid var(--fpl-mist);
	border-radius: var(--fpl-radius);
	padding: 28px 26px;
	margin-bottom: 20px;
	box-shadow: 0 10px 28px -18px rgba(26, 26, 26, 0.2);
}

.fpl-card-estreito {
	max-width: 420px;
	margin: 40px auto;
}

@media (max-width: 480px) {
	.fpl-card {
		padding: 20px 16px;
	}
	.fpl-card-estreito {
		margin: 20px auto;
	}
	.fpl-indicador {
		min-width: 100%;
	}
	.fpl-acoes-form {
		flex-direction: column;
		align-items: flex-start;
	}
	.fpl-titulo {
		font-size: 20px;
	}
}

.fpl-eyebrow {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--fpl-primary-dark);
	margin: 0 0 6px 0;
}

.fpl-titulo {
	font-size: 24px;
	font-weight: 800;
	margin: 0 0 12px 0;
	color: var(--fpl-ink);
}

.fpl-subtitulo {
	font-size: 16px;
	font-weight: 700;
	margin: 20px 0 6px 0;
	color: var(--fpl-ink);
}

.fpl-texto {
	font-size: 14.5px;
	color: var(--fpl-muted);
	margin: 0 0 16px 0;
}

.fpl-texto-preenchido {
	font-size: 14.5px;
	color: var(--fpl-ink);
	background: var(--fpl-tint);
	border-radius: 10px;
	padding: 12px 14px;
	margin: 0 0 4px 0;
}

.fpl-link {
	color: var(--fpl-primary-dark);
	font-weight: 600;
	text-decoration: none;
}

.fpl-link:hover {
	text-decoration: underline;
}

.fpl-voltar {
	display: inline-block;
	margin-bottom: 14px;
	font-size: 14px;
}

.fpl-aviso-sucesso {
	background: var(--fpl-success-bg);
	color: var(--fpl-success-text);
	padding: 12px 16px;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 16px;
}

/* ---------- Indicadores ---------- */

.fpl-indicadores {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 24px;
}

.fpl-indicador {
	flex: 1;
	min-width: 140px;
	background: var(--fpl-tint);
	border-radius: 12px;
	padding: 16px 18px;
}

.fpl-indicador-numero {
	display: block;
	font-size: 28px;
	font-weight: 800;
	color: var(--fpl-primary-dark);
}

.fpl-indicador-rotulo {
	display: block;
	font-size: 12.5px;
	color: var(--fpl-muted);
	margin-top: 2px;
}

/* ---------- Tabela ---------- */

.fpl-tabela-wrapper {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.fpl-tabela {
	width: 100%;
	min-width: 480px;
	border-collapse: collapse;
	font-size: 14px;
}

.fpl-tabela th {
	text-align: left;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--fpl-muted);
	padding: 8px 10px;
	border-bottom: 2px solid var(--fpl-mist);
}

.fpl-tabela td {
	padding: 12px 10px;
	border-bottom: 1px solid var(--fpl-mist);
}

.fpl-status-tag {
	display: inline-block;
	background: var(--fpl-tint);
	color: var(--fpl-primary-dark);
	font-size: 12px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 999px;
}

/* ---------- MVV (na tela de detalhe) ---------- */

.fpl-mvv-grid {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 16px 0;
}

.fpl-mvv-item {
	background: var(--fpl-tint);
	border-radius: 10px;
	padding: 14px 16px;
}

.fpl-mvv-rotulo {
	font-size: 13px;
	font-weight: 700;
	color: var(--fpl-primary-dark);
	margin: 0 0 4px 0;
}

.fpl-mvv-texto {
	font-size: 14px;
	color: var(--fpl-ink);
	margin: 0;
}

/* ---------- Formulário de contribuição ---------- */

.fpl-campo {
	margin-bottom: 18px;
}

.fpl-rotulo-campo {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--fpl-ink);
	margin-bottom: 8px;
}

.fpl-input,
.fpl-textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid var(--fpl-mist);
	border-radius: 8px;
	font-size: 14.5px;
	color: var(--fpl-ink);
	background: var(--fpl-white);
}

.fpl-textarea {
	resize: vertical;
	min-height: 80px;
}

.fpl-input:focus,
.fpl-textarea:focus {
	border-color: var(--fpl-primary);
}

.fpl-opcao-inline {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-right: 18px;
	font-size: 14px;
}

.fpl-opcao-bloco {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	padding: 8px 10px;
	border: 1px solid var(--fpl-mist);
	border-radius: 8px;
	margin-bottom: 6px;
	cursor: pointer;
}

.fpl-opcao-bloco:hover {
	border-color: var(--fpl-primary);
}

.fpl-escala {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.fpl-escala-rotulo {
	font-size: 12.5px;
	color: var(--fpl-muted);
	max-width: 90px;
}

.fpl-escala-opcao {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	font-size: 13px;
	cursor: pointer;
}

.fpl-acoes-form {
	display: flex;
	align-items: center;
	gap: 18px;
	flex-wrap: wrap;
	margin-top: 20px;
}

.fpl-checkbox-concluir {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: var(--fpl-muted);
}

.fpl-botao {
	appearance: none;
	border: none;
	border-radius: 999px;
	padding: 12px 24px;
	font-size: 14.5px;
	font-weight: 700;
}

.fpl-botao-primario {
	background: var(--fpl-primary);
	color: var(--fpl-white);
}

.fpl-botao-primario:hover {
	background: var(--fpl-primary-dark);
}

/* ---------- Formulário de login nativo do WordPress ---------- */

.fonte-plan-painel #loginform {
	padding: 0;
	border: none;
	box-shadow: none;
	width: 100%;
}

.fonte-plan-painel #loginform p {
	margin-bottom: 14px;
}

.fonte-plan-painel #loginform label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 6px;
	color: var(--fpl-ink);
}

.fonte-plan-painel #loginform input[type="text"],
.fonte-plan-painel #loginform input[type="password"] {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid var(--fpl-mist);
	border-radius: 8px;
	font-size: 14.5px;
}

.fonte-plan-painel #loginform .button {
	background: var(--fpl-primary);
	color: var(--fpl-white);
	border: none;
	border-radius: 999px;
	padding: 10px 22px;
	font-weight: 700;
	cursor: pointer;
}

.fonte-plan-painel #loginform .button:hover {
	background: var(--fpl-primary-dark);
}
