/* Burns Paiute Employment Application — front-end form.
   Designed to inherit the active theme's typography while echoing the
   official paper form (boxed sections, gray/blue section bars). */

.bpa-form {
	--bpa-accent: #2f4b8f;       /* tribe blue, from the seal */
	--bpa-accent-soft: #c5d9f1;  /* light blue section bar */
	--bpa-gray: #e6e6e6;         /* gray section bar */
	--bpa-border: #b9bfc7;
	--bpa-radius: 6px;
	max-width: 920px;
	margin: 0 auto;
	box-sizing: border-box;
}

.bpa-form *,
.bpa-form *::before,
.bpa-form *::after {
	box-sizing: border-box;
}

/* Sections */
.bpa-section {
	border: 1px solid var(--bpa-border);
	border-radius: var(--bpa-radius);
	padding: 0 16px 16px;
	margin: 0 0 18px;
}
.bpa-section > legend {
	display: block;
	width: calc(100% + 32px);
	margin: 0 -16px 14px;
	box-sizing: border-box;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	font-size: 0.95em;
	padding: 7px 16px;
	background: var(--bpa-gray);
	border: 0;
	border-bottom: 1px solid var(--bpa-border);
	border-radius: var(--bpa-radius) var(--bpa-radius) 0 0;
}
.bpa-section-blue > legend {
	background: var(--bpa-accent-soft);
}

/* 12-column grid */
.bpa-grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 12px 14px;
}
.bpa-subrow {
	padding: 12px 0;
	border-bottom: 1px dashed var(--bpa-border);
}
.bpa-subrow:last-child {
	border-bottom: 0;
}

.c2 { grid-column: span 2; }
.c3 { grid-column: span 3; }
.c4 { grid-column: span 4; }
.c5 { grid-column: span 5; }
.c6 { grid-column: span 6; }
.c7 { grid-column: span 7; }
.c8 { grid-column: span 8; }
.c9 { grid-column: span 9; }
.c12 { grid-column: span 12; }

/* Fields */
.bpa-field {
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.bpa-field label {
	font-size: 0.8em;
	font-weight: 600;
	opacity: 0.85;
	margin-bottom: 4px;
}
.bpa-field input,
.bpa-field textarea {
	width: 100%;
	padding: 8px 10px;
	border: 1px solid var(--bpa-border);
	border-radius: 4px;
	background: #fff;
	font: inherit;
	color: inherit;
	line-height: 1.3;
}
.bpa-field input:focus,
.bpa-field textarea:focus {
	outline: none;
	border-color: var(--bpa-accent);
	box-shadow: 0 0 0 2px rgba(47, 75, 143, 0.18);
}
.bpa-field textarea {
	resize: vertical;
	min-height: 44px;
}

/* Yes / No groups */
.bpa-yn {
	flex-direction: column;
	justify-content: center;
}
.bpa-yn-label {
	font-size: 0.8em;
	font-weight: 600;
	opacity: 0.85;
	margin-bottom: 4px;
}
.bpa-radio {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-right: 16px;
	font-size: 0.92em;
	font-weight: 400;
	cursor: pointer;
}
.bpa-radio input {
	width: auto;
	margin: 0;
}

/* Dependent fields hidden until their trigger is set */
.bpa-dep {
	display: none;
}
.bpa-dep.bpa-show {
	display: flex;
}

/* Notes / disclaimer */
.bpa-note {
	font-style: italic;
	margin: 12px 0 4px;
	opacity: 0.85;
}
.bpa-disclaimer {
	font-size: 0.9em;
	line-height: 1.5;
	margin: 14px 0;
}

/* Errors + confirmation */
.bpa-errors {
	border: 1px solid #d98c8c;
	background: #fbeaea;
	border-radius: var(--bpa-radius);
	padding: 12px 16px;
	margin-bottom: 18px;
	color: #7a1f1f;
}
.bpa-errors ul {
	margin: 6px 0 0 18px;
}
.bpa-confirmation {
	border: 1px solid #8cc28c;
	background: #eef7ee;
	border-radius: var(--bpa-radius);
	padding: 22px 24px;
	text-align: center;
}
.bpa-confirmation h3 {
	margin-top: 0;
	color: #1f6b2e;
}

/* Actions */
.bpa-actions {
	margin-top: 8px;
	text-align: center;
}
.bpa-submit {
	background: var(--bpa-accent);
	color: #fff;
	border: 0;
	border-radius: 6px;
	padding: 12px 28px;
	font-size: 1.02em;
	font-weight: 600;
	cursor: pointer;
}
.bpa-submit:hover {
	filter: brightness(1.08);
}
.bpa-actions-note {
	font-size: 0.85em;
	opacity: 0.75;
	margin-top: 10px;
}

/* Honeypot */
.bpa-hp {
	position: absolute;
	left: -9999px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* Responsive: collapse the 12-col grid on small screens */
@media (max-width: 640px) {
	.bpa-grid > [class*="c"] {
		grid-column: span 12 !important;
	}
}
