/* State Government additions (October 2026). Same tokens, same plain .gov look. */
.sa-quote { margin: 0 0 var(--sa-space-5); padding: var(--sa-space-3) var(--sa-space-4); border-left: 4px solid var(--sa-blue); background: var(--sa-blue-lightest); max-width: var(--sa-measure); }
.sa-quote p { margin: 0; font-size: 1.125rem; }
.sa-prose blockquote.sa-quote p { font-style: normal; }

.sa-officials { list-style: none; margin: 0 0 var(--sa-space-6); padding: 0; display: grid; gap: var(--sa-space-4); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 640px) { .sa-officials { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.sa-official-card { display: flex; gap: var(--sa-space-3); align-items: flex-start; border: 1px solid var(--sa-border); padding: var(--sa-space-4); height: 100%; background: #fff; }
.sa-official-card--vacant { background: var(--sa-bg-grey); }
.sa-official-card__title { font-size: 1.0625rem; margin: 0 0 var(--sa-space-1); }
.sa-official-card__holder { margin: 0 0 var(--sa-space-1); font-weight: 700; }
.sa-official-card__text { margin: 0; font-size: 0.9375rem; color: var(--sa-text-muted); }
.sa-avatar { flex: none; width: 64px; height: 64px; display: inline-flex; align-items: center; justify-content: center; background: var(--sa-blue); color: #fff; font-weight: 700; font-size: 1.25rem; letter-spacing: 0.02em; border: 1px solid var(--sa-blue-dark); }
.sa-avatar--vacant { background: #fff; color: var(--sa-text-muted); border: 1px dashed var(--sa-border-dark); font-size: 0.8125rem; font-weight: 600; }
.sa-avatar--lg { width: 160px; height: 160px; font-size: 2.75rem; }
img.sa-avatar { object-fit: cover; padding: 0; }

.sa-progress { display: block; width: 100%; max-width: 24rem; height: 12px; margin: var(--sa-space-1) 0 var(--sa-space-2); appearance: none; -webkit-appearance: none; border: 1px solid var(--sa-border); background: var(--sa-bg-grey); color: var(--sa-blue); }
.sa-progress::-webkit-progress-bar { background: var(--sa-bg-grey); }
.sa-progress::-webkit-progress-value { background: var(--sa-blue); }
.sa-progress::-moz-progress-bar { background: var(--sa-blue); }
.sa-progress--complete::-webkit-progress-value { background: var(--sa-green); }
.sa-progress--complete::-moz-progress-bar { background: var(--sa-green); }

.sa-tag--draft, .sa-tag--unpublished, .sa-tag--vacant, .sa-tag--not_started, .sa-tag--planning, .sa-tag--closed, .sa-tag--superseded { background: var(--sa-bg-grey); color: #3d4551; }
.sa-tag--issued, .sa-tag--received, .sa-tag--in_progress, .sa-tag--acting, .sa-tag--requires_attention { background: var(--sa-blue-lightest); color: var(--sa-blue); }
.sa-tag--responded, .sa-tag--answered, .sa-tag--upheld, .sa-tag--partly_upheld, .sa-tag--complete, .sa-tag--filled, .sa-tag--satisfactory, .sa-tag--good, .sa-tag--in-force, .sa-tag--repealed-not { background: var(--sa-success-bg); color: var(--sa-green-dark); }
.sa-tag--improvement_required, .sa-tag--not_complete, .sa-tag--paused, .sa-tag--overdue, .sa-tag--not-yet { background: var(--sa-warning-bg); color: #5c4400; }
.sa-tag--unsatisfactory, .sa-tag--repealed, .sa-tag--refused, .sa-tag--not_upheld, .sa-tag--withdrawn { background: var(--sa-error-bg); color: #8b0a03; }

.sa-doc { max-width: 52rem; border: 1px solid var(--sa-border); padding: var(--sa-space-5); margin: 0 0 var(--sa-space-6); background: #fff; }
.sa-doc__head { border-bottom: 3px solid var(--sa-blue); padding-bottom: var(--sa-space-3); margin-bottom: var(--sa-space-4); }
.sa-doc__issuer { margin: 0; font-size: 0.875rem; text-transform: uppercase; letter-spacing: 0.06em; color: var(--sa-text-muted); font-weight: 600; }
.sa-doc__title { margin: var(--sa-space-2) 0 0; }
.sa-doc__preamble { font-size: 1.0625rem; max-width: var(--sa-measure); }
.sa-doc h2 { margin-top: var(--sa-space-6); padding-top: var(--sa-space-2); border-top: 1px solid var(--sa-border); }
.sa-doc h3 { margin-top: var(--sa-space-5); font-size: 1.0625rem; }
.sa-doc__signatures { display: grid; gap: var(--sa-space-4); grid-template-columns: minmax(0, 1fr); margin-top: var(--sa-space-6); padding-top: var(--sa-space-4); border-top: 1px solid var(--sa-border); }
@media (min-width: 640px) { .sa-doc__signatures { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.sa-doc__signature p { margin: 0; }
.sa-doc__sig-name { font-weight: 700; }
.sa-doc__copies { font-size: 0.875rem; color: var(--sa-text-muted); margin-top: var(--sa-space-4); }
.sa-watermark { border: 2px dashed var(--sa-warning-border); background: var(--sa-warning-bg); padding: var(--sa-space-2) var(--sa-space-3); font-weight: 700; margin: 0 0 var(--sa-space-4); }

.sa-findings { list-style: none; padding: 0; margin: 0 0 var(--sa-space-5); }
.sa-findings > li { border-top: 1px solid var(--sa-border); padding: var(--sa-space-3) 0; }
.sa-findings h3 { margin: 0 0 var(--sa-space-2); font-size: 1.0625rem; }
.sa-findings ul { margin: 0; }

.sa-rowset { border: 1px solid var(--sa-border); padding: var(--sa-space-3) var(--sa-space-4); margin: 0 0 var(--sa-space-4); background: #fff; }
.sa-rowset legend { font-weight: 700; padding: 0 var(--sa-space-1); }
.sa-split { display: grid; gap: var(--sa-space-4); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 1024px) { .sa-split { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); } }
.sa-actions-bar { display: flex; flex-wrap: wrap; gap: var(--sa-space-3); align-items: flex-start; margin: 0 0 var(--sa-space-5); }
.sa-actions-bar form { margin: 0; }
.sa-note-log { white-space: pre-wrap; font-size: 0.9375rem; background: var(--sa-bg-grey); padding: var(--sa-space-3); border: 1px solid var(--sa-border); max-width: 50rem; }
.sa-markup-help { font-size: 0.875rem; color: var(--sa-text-muted); }
.sa-perm-list { columns: 2; font-size: 0.875rem; }
@media (max-width: 640px) { .sa-perm-list { columns: 1; } }
