/* Central admin page (/admin/). Builds on archive.css; text colours meet WCAG AA. */
.panel { margin: 16px 0; padding: 16px; border: 1px solid var(--line); border-radius: 8px; background: var(--soft); }
.field { margin: 0 0 12px; }
.field label { display: block; font-weight: 600; margin-bottom: 4px; }
.field input { width: 100%; max-width: 24rem; min-height: 44px; padding: 8px 10px; font: inherit; border: 1px solid #6b7280; border-radius: 6px; background: #fff; color: var(--ink); }
.field input:focus, .choice input:focus-visible, td input:focus-visible { outline: 3px solid var(--brand); outline-offset: 2px; }
button { min-height: 44px; padding: 10px 18px; border: 0; border-radius: 6px; background: var(--brand); color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
button:hover { background: var(--brand-dark); }
button:focus-visible { outline: 3px solid var(--brand); outline-offset: 2px; }
.note { padding: 12px 16px; border-radius: 6px; border-left: 6px solid; }
.note.error { border-color: #b42318; background: #fef3f2; }
.note.ok { border-color: #067647; background: #ecfdf3; }
.note.status { border-color: var(--notice-line); background: var(--notice); }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; margin: 0 0 16px; background: #fff; }
caption { text-align: left; font-weight: 700; padding: 0 0 8px; }
th, td { padding: 8px 10px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
td input[type="checkbox"], .choice input { width: 24px; height: 24px; }
.badge { display: inline-block; padding: 0 6px; border-radius: 4px; background: var(--brand); color: #fff; font-size: .85rem; }
fieldset { border: 1px solid var(--line); border-radius: 8px; padding: 12px 16px; margin: 0 0 16px; }
legend { font-weight: 700; padding: 0 4px; }
.choice { display: flex; align-items: center; gap: 8px; margin: 8px 0; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
code { background: #eef2f7; padding: 0 4px; border-radius: 4px; }
.person h2 { margin: 0 0 4px; font-size: 1.25rem; }
.meta, .hint { margin: 0 0 12px; color: #374151; }
.tag-off, .tag-none { display: inline-block; padding: 0 6px; border-radius: 4px; font-size: .85rem; border: 1px solid; }
.tag-off { color: #b42318; background: #fef3f2; }
.tag-none { color: #92400e; background: #fffbeb; }
td a { display: inline-block; min-height: 24px; padding: 2px 0; }
.actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
