/* hotbrazil — security & legal UI (sprint 1) */

/* ───── Banner LGPD ───── */
.fa-lgpd {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999;
	background: #111; color: #EDEAE4;
	border-top: 1px solid #2A2A2A;
	padding: 16px 20px;
	box-shadow: 0 -8px 24px rgba(0,0,0,.3);
}
.fa-lgpd-inner {
	max-width: 1200px; margin: 0 auto;
	display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: center;
}
.fa-lgpd-text { font-size: 13px; line-height: 1.5; color: #C9C5BE; }
.fa-lgpd-text strong { color: #EDEAE4; }
.fa-lgpd-text a { color: #C9A24F; text-decoration: underline; }
.fa-lgpd-opts { display: flex; gap: 16px; font-size: 13px; grid-column: 1 / -1; padding-top: 6px; border-top: 1px solid #222; }
.fa-lgpd-opts label { display: flex; gap: 6px; align-items: center; cursor: pointer; }
.fa-lgpd-actions { display: flex; gap: 8px; }
@media (max-width: 720px) {
	.fa-lgpd-inner { grid-template-columns: 1fr; }
	.fa-lgpd-actions { flex-wrap: wrap; }
	.fa-lgpd-actions button { flex: 1; }
}

/* ───── Formulários (verify, report, dpo, register, submit) ───── */
.fa-form { max-width: 640px; margin: 24px auto; display: grid; gap: 12px; }
.fa-form h2 { margin: 0 0 8px; font-size: 22px; }
.fa-form label { display: grid; gap: 4px; font-size: 14px; color: #444; }
.fa-form input[type="text"],
.fa-form input[type="email"],
.fa-form input[type="password"],
.fa-form input[type="number"],
.fa-form input[type="date"],
.fa-form input[type="file"],
.fa-form select,
.fa-form textarea {
	padding: 10px 12px; border: 1px solid #ddd; border-radius: 8px;
	font-size: 14px; font-family: inherit; background: #fff;
}
.fa-form input:focus, .fa-form select:focus, .fa-form textarea:focus {
	outline: 0; border-color: #C9A24F; box-shadow: 0 0 0 3px rgba(201,162,79,.15);
}
.fa-form .fa-check { flex-direction: row; align-items: flex-start; gap: 8px; font-size: 13px; }
.fa-form .fa-check input { margin-top: 3px; }
.fa-form .fa-small { font-size: 12px; color: #888; line-height: 1.5; }
.fa-form .btn-primary {
	padding: 12px 24px; border: 0; cursor: pointer; border-radius: 8px;
	background: #C9A24F; color: #111; font-weight: 600; font-size: 14px;
}
.fa-form .btn-primary:hover { background: #D4B26A; }

.fa-error, .fa-success, .fa-info {
	padding: 12px 16px; border-radius: 8px; font-size: 14px; margin: 0 0 8px;
}
.fa-error   { background: #FCE8E8; color: #A01B1B; border: 1px solid #F5C5C5; }
.fa-success { background: #E7F7EA; color: #1B6B2C; border: 1px solid #C5E5CB; }
.fa-info    { background: #EEF4FA; color: #1E4F8A; border: 1px solid #C5D8EB; }

.fa-row-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.fa-row-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
@media (max-width: 640px) {
	.fa-row-4 { grid-template-columns: 1fr 1fr; }
}

.fa-check-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px; }
.fa-check-grid label { flex-direction: row; gap: 6px; font-size: 13px; }

/* ───── Dashboard ───── */
.fa-verify-cta { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.fa-badge-warn {
	background: #FCE8E8; color: #A01B1B; padding: 3px 8px; border-radius: 4px;
	font-size: 11px; font-weight: 600;
}

/* ───── Report link (single) ───── */
.fa-report-link {
	text-align: center; margin-top: 16px; font-size: 13px;
}
.fa-report-link a { color: #888; text-decoration: underline; }
.fa-report-link a:hover { color: #A01B1B; }

/* ───── Turnstile widget ───── */
.cf-turnstile { margin: 4px 0; }
