/* SM NJA Membership portal: layout only; colours and type come from the theme. */
.nja-form fieldset { border: 1px solid #e3e3e3; border-radius: 12px; padding: 16px 20px; margin: 0 0 24px; }
.nja-form legend { font-weight: 600; padding: 0 6px; }
.nja-form label, .nja-label { display: block; font-weight: 600; margin-bottom: 4px; }
.nja-form input[type="text"], .nja-form input[type="email"], .nja-form input[type="url"], .nja-form input[type="tel"], .nja-form input[type="date"], .nja-form textarea { width: 100%; }
.nja-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 0 16px; }
.nja-checks { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-bottom: 16px; }
.nja-check { font-weight: 400 !important; display: inline-flex !important; align-items: center; gap: 6px; }
.nja-images { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; margin-bottom: 16px; }
.nja-images img { display: block; max-width: 100%; height: auto; margin-bottom: 8px; border-radius: 8px; }
.nja-gallery { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 12px; }
.nja-gallery label { font-weight: 400; text-align: center; }
.nja-gallery img { width: 96px; height: 96px; object-fit: cover; border-radius: 8px; display: block; }
.nja-hours th { text-align: left; padding-right: 12px; font-weight: 600; }
.nja-hours td { padding: 4px 8px 4px 0; }
.nja-hours label { font-weight: 400; display: inline; }
.nja-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.nja-offer-actions { display: flex; gap: 12px; align-items: center; }
.nja-offer-actions form { margin: 0; }
.nja-status { font-weight: 600; }
.nja-status--active { color: #1b7a3a; }
.nja-status--lapsed { color: #a15c00; }
.nja-status--inactive { color: #a00; }
@media (max-width: 600px) {
	.nja-hours, .nja-hours tbody, .nja-hours tr { display: block; }
	.nja-hours tr { margin-bottom: 8px; }
}
