:root {
  color-scheme: light;
  --color-bg: #f4f6f8;
  --color-surface: #ffffff;
  --color-text: #172033;
  --color-muted: #5b6575;
  --color-accent: #0a3dab;
  --color-accent-strong: #072d80;
  --color-accent-soft: #edf3ff;
  --color-blue: #0a3dab;
  --color-gold: #f9c910;
  --color-gold-soft: #fff8d6;
  --color-warning: #835600;
  --color-warning-bg: #fff6d6;
  --color-warning-border: #d2a523;
  --color-danger: #b42318;
  --color-danger-bg: #fff1f0;
  --color-danger-border: #e88c82;
  --color-success: #176335;
  --color-success-bg: #e2f7e9;
  --color-success-border: #82b99a;
  --color-info: #285c8f;
  --color-info-bg: #e7f1ff;
  --color-border: #d9dee7;
  --color-border-strong: #b8c1cf;
  --color-interactive-border: #9bb1df;
  --color-control-hover: #8794a8;
  --color-soft: #eef1f5;
  --color-focus: #0a3dab;
  --control-height: 44px;
  --radius-control: 4px;
  --radius-panel: 6px;
  --shadow-soft: 0 12px 32px rgba(23, 32, 51, 0.09);
  --shadow-card: 0 3px 12px rgba(23, 32, 51, 0.055);
  font-family: "Avenir Next", "Helvetica Neue", "Segoe UI", sans-serif;
}

.mfa-qr-code {
  display: block;
  width: min(100%, 220px);
  height: auto;
  margin: 1rem auto;
  image-rendering: pixelated;
}

* {
  box-sizing: border-box;
}

[hidden] {
  display: none !important;
}

body {
  margin: 0;
  background: var(--color-bg);
  color: var(--color-text);
  font-size: 16px;
  line-height: 1.5;
}

a {
  color: inherit;
}

button,
input,
select,
textarea,
a {
  overflow-wrap: anywhere;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid rgba(12, 107, 88, 0.28);
  outline-offset: 2px;
}

.app-header {
  align-items: center;
  background: rgba(255, 255, 255, 0.96);
  border-bottom: 1px solid var(--color-border);
  display: flex;
  gap: 24px;
  justify-content: space-between;
  min-height: 64px;
  padding: 0 24px;
  position: sticky;
  top: 0;
  z-index: 10;
}

.brand {
  align-items: center;
  color: var(--color-accent);
  display: inline-flex;
  flex: 0 1 auto;
  font-weight: 700;
  line-height: 1.2;
  max-width: 34ch;
  min-height: 44px;
  overflow-wrap: normal;
  text-decoration: none;
  word-break: normal;
}

.app-nav,
.app-nav form {
  align-items: center;
  display: flex;
  gap: 8px;
}

.stacked-form button,
.button-primary,
.search-form button,
.record-form button,
.compact-form button {
  background: var(--color-accent);
  border: 1px solid var(--color-accent);
  border-radius: 6px;
  color: #ffffff;
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  min-height: 44px;
  padding: 10px 16px;
  text-decoration: none;
}

.app-nav a,
.app-nav button {
  align-items: center;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--color-muted);
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: 0.9375rem;
  font-weight: 750;
  min-height: 40px;
  overflow-wrap: normal;
  padding: 8px 12px;
  text-decoration: none;
  word-break: normal;
}

.app-nav a:hover,
.app-nav button:hover {
  background: var(--color-accent-soft);
  color: var(--color-accent-strong);
}

.button-primary:hover,
.search-form button:hover,
.record-form button:hover,
.compact-form button:hover {
  background: var(--color-accent-strong);
}

.button-secondary,
.button-quiet {
  background: transparent;
  color: var(--color-accent);
}

.button-secondary,
.button-quiet,
.button-danger {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  color: var(--color-accent);
  display: inline-flex;
  font: inherit;
  font-weight: 700;
  justify-content: center;
  min-height: 44px;
  padding: 10px 14px;
  text-decoration: none;
}

.button-secondary:hover,
.button-quiet:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-interactive-border);
}

.button-quiet {
  min-height: 38px;
  padding: 8px 12px;
}

.button-danger {
  background: var(--color-danger-bg);
  border-color: var(--color-danger-border);
  color: var(--color-danger);
  cursor: pointer;
}

.button-danger-quiet {
  min-height: 38px;
  padding: 8px 12px;
}

.page-shell {
  margin: 0 auto;
  max-width: 1120px;
  padding: 36px 24px 56px;
}

.intro {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  padding: 32px;
}

.auth-panel {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  max-width: 480px;
  padding: 32px;
}

.auth-panel,
.intro,
.toolbar-panel,
.data-panel,
.form-section,
.section-band,
.signal-strip,
.profile-hero {
  overflow: hidden;
}

.page-action-menu {
  position: relative;
}

.page-action-menu > summary {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 4px;
  color: var(--color-accent);
  cursor: pointer;
  display: inline-flex;
  font-weight: 700;
  gap: 7px;
  justify-content: center;
  list-style: none;
  min-height: 40px;
  padding: 8px 12px;
}

.page-action-menu > summary::after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid currentColor;
  content: "";
}

.page-action-menu > summary::-webkit-details-marker {
  display: none;
}

.page-action-popover {
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  box-shadow: var(--shadow-soft);
  display: grid;
  min-width: 220px;
  padding: 7px;
  position: absolute;
  right: 0;
  top: calc(100% + 7px);
  z-index: 8;
}

.page-action-popover a {
  border-radius: 4px;
  color: var(--color-text);
  font-weight: 700;
  min-height: 38px;
  padding: 9px 10px;
  text-decoration: none;
}

.page-action-popover a:hover {
  background: var(--color-accent-soft);
  color: var(--color-accent);
}

.auth-panel h1 {
  margin: 0 0 24px;
}

.stacked-form {
  display: grid;
  gap: 18px;
}

.stacked-form label {
  color: var(--color-text);
  display: grid;
  font-weight: 700;
  gap: 8px;
}

.stacked-form input {
  border: 1px solid var(--color-border);
  border-radius: 6px;
  color: var(--color-text);
  font: inherit;
  min-height: 44px;
  padding: 10px 12px;
}

.stacked-form input,
.record-form input,
.record-form select,
.record-form textarea,
.compact-form input,
.compact-form select,
.compact-form textarea,
.search-form input,
.search-form select {
  border: 1px solid var(--color-border);
  border-radius: 6px;
  background: #ffffff;
  color: var(--color-text);
  font: inherit;
  min-height: 44px;
  padding: 10px 12px;
  width: 100%;
}

.record-form textarea,
.compact-form textarea {
  min-height: 92px;
  resize: vertical;
}

.form-error {
  background: var(--color-danger-bg);
  border: 1px solid var(--color-danger-border);
  border-radius: 6px;
  color: #84251c;
  margin: 0 0 18px;
  padding: 12px;
}

.form-error h2 {
  color: #84251c;
  font-size: 1rem;
  margin: 0 0 4px;
}

.form-error p {
  margin: 0;
}

.form-error a {
  color: #64170f;
  display: inline-block;
  font-weight: 750;
  margin-top: 8px;
}

.form-error:focus {
  outline: 3px solid var(--color-focus);
  outline-offset: 3px;
}

.form-success {
  background: var(--color-success-bg);
  border: 1px solid var(--color-success-border);
  border-radius: 6px;
  color: var(--color-success);
  margin: 0 0 18px;
  padding: 12px;
}

.intro h1 {
  font-size: 3rem;
  line-height: 1.08;
  margin: 0 0 16px;
}

.intro p {
  color: var(--color-muted);
  font-size: 1.0625rem;
  line-height: 1.6;
  margin: 0;
  max-width: 720px;
}

.eyebrow {
  color: var(--color-accent) !important;
  font-size: 0.8125rem !important;
  font-weight: 700;
  letter-spacing: 0;
  margin-bottom: 12px !important;
  text-transform: uppercase;
}

.page-heading,
.profile-hero,
.section-heading,
.profile-actions,
.form-actions {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: space-between;
}

.page-heading,
.profile-hero {
  margin-bottom: 24px;
}

.page-heading h1,
.profile-hero h1 {
  font-size: 2.5rem;
  line-height: 1.1;
  margin: 0;
}

.profile-hero p,
.page-heading p {
  color: var(--color-muted);
  margin: 8px 0 0;
}

.toolbar-panel,
.data-panel,
.form-section,
.section-band,
.signal-strip {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  box-shadow: var(--shadow-card);
}

.toolbar-panel,
.data-panel,
.form-section,
.section-band {
  padding: 24px;
}

.toolbar-panel {
  margin-bottom: 18px;
}

.search-form {
  align-items: end;
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(auto-fit, minmax(min(210px, 100%), 1fr));
}

.inline-action {
  display: inline-flex;
  margin: 0;
}

.inline-action button {
  background: var(--color-accent);
  border: 1px solid var(--color-accent);
  border-radius: 6px;
  color: #ffffff;
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  min-height: 44px;
  padding: 10px 16px;
}

.search-form label,
.record-form label,
.compact-form label {
  align-content: start;
  color: var(--color-text);
  display: grid;
  font-weight: 700;
  gap: 8px;
}

.check-row {
  align-items: center !important;
  display: flex !important;
  gap: 10px !important;
  min-height: 44px;
}

.check-row input {
  min-height: auto;
  width: auto;
}

.donor-list {
  display: grid;
  gap: 10px;
}

.donor-row {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 16px;
  grid-template-columns: 72px minmax(0, 1fr) minmax(180px, auto);
  min-height: 76px;
  padding: 14px;
  text-decoration: none;
}

.donor-row:hover {
  border-color: var(--color-interactive-border);
  box-shadow: 0 8px 24px rgba(12, 107, 88, 0.075);
}

.donor-code {
  background: var(--color-soft);
  border-radius: 6px;
  color: var(--color-accent-strong);
  font-weight: 800;
  padding: 8px;
  text-align: center;
}

.donor-main,
.admin-user-main,
.item-main,
.media-main,
.status-stack,
.contact-lines {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.donor-main span,
.donor-main strong,
.admin-user-main span,
.admin-user-main strong,
.contact-lines span,
.info-row span,
.info-row strong,
.muted-copy,
.definition-list dt,
.timeline span {
  min-width: 0;
  color: var(--color-muted);
  overflow-wrap: anywhere;
}

.status-stack {
  justify-items: end;
}

.badge {
  border-radius: 999px;
  display: inline-flex;
  font-size: 0.8125rem;
  font-weight: 800;
  line-height: 1;
  padding: 7px 10px;
}

.badge-warning {
  background: var(--color-warning-bg);
  color: var(--color-warning);
}

.badge-muted {
  background: var(--color-soft);
  color: var(--color-muted);
}

.badge-blue {
  background: var(--color-info-bg);
  color: var(--color-blue);
}

.empty-state {
  padding: 36px 0;
  text-align: center;
}

.empty-state h2 {
  margin: 0 0 8px;
}

.empty-state p {
  color: var(--color-muted);
  margin: 0 0 18px;
}

.record-form {
  display: grid;
  gap: 18px;
}

.form-section h2,
.section-band h2,
.compact-form h3 {
  margin: 0;
}

.section-copy {
  color: var(--color-muted);
  margin: 8px 0 0;
  max-width: 72ch;
}

.form-section h2,
.section-heading {
  margin-bottom: 18px;
}

.form-section-heading {
  align-items: flex-start;
  display: flex;
  gap: 16px;
  justify-content: space-between;
}

.form-section-inner {
  display: grid;
  gap: 16px;
}

.form-section-inner + .form-section-inner {
  border-top: 1px solid var(--color-border);
  padding-top: 22px;
}

.form-grid {
  align-items: start;
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(min(240px, 100%), 1fr));
}

.span-2 {
  grid-column: 1 / -1;
}

.entry-mode-group {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  padding: 14px;
}

.entry-mode-group legend {
  font-weight: 800;
  padding: 0 6px;
}

.entry-mode-card {
  align-items: start;
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  cursor: pointer;
  display: grid !important;
  gap: 12px !important;
  grid-template-columns: auto minmax(0, 1fr);
  min-height: 0;
  padding: 14px;
}

.entry-mode-card:hover {
  border-color: var(--color-interactive-border);
  box-shadow: 0 8px 20px rgba(12, 107, 88, 0.08);
}

.entry-mode-card input {
  margin-top: 2px;
  min-height: auto;
  width: auto;
}

.entry-mode-copy {
  display: grid;
  gap: 4px;
}

.entry-mode-copy strong {
  color: var(--color-text);
}

.entry-mode-copy span {
  color: var(--color-muted);
  font-size: 0.9375rem;
  font-weight: 500;
}

.form-actions {
  flex-wrap: wrap;
  justify-content: flex-start;
}

.form-actions > * {
  min-width: 0;
  max-width: 100%;
}

.inline-editor + .form-actions,
.form-actions + .form-actions {
  margin-top: 16px;
}

.profile-hero {
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 28px;
}

.signal-strip {
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 18px;
  overflow: hidden;
  padding: 0;
}

.signal-strip div {
  background: var(--color-surface);
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 18px;
}

.signal-strip span {
  color: var(--color-muted);
  font-size: 0.8125rem;
  font-weight: 800;
  text-transform: uppercase;
}

.profile-layout {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(600px, 1fr) minmax(280px, 0.55fr);
  margin-bottom: 18px;
}

.caller-layout {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  margin-bottom: 18px;
}

.pickup-layout {
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}

.item-list {
  display: grid;
  gap: 10px;
}

.label-with-help {
  align-items: center;
  display: inline-flex;
  gap: 8px;
}

.inline-help {
  position: relative;
}

.inline-help summary {
  align-items: center;
  background: var(--color-soft);
  border: 1px solid var(--color-border);
  border-radius: 999px;
  color: var(--color-accent-strong);
  cursor: pointer;
  display: inline-flex;
  font-size: 0.75rem;
  font-weight: 800;
  height: 22px;
  justify-content: center;
  list-style: none;
  width: 22px;
}

.inline-help summary::-webkit-details-marker {
  display: none;
}

.help-popover {
  background: #ffffff;
  border: 1px solid var(--color-border-strong);
  border-radius: 8px;
  box-shadow: var(--shadow-card);
  color: var(--color-text);
  display: grid;
  gap: 8px;
  padding: 12px;
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  max-inline-size: calc(100vw - 32px);
  width: 320px;
  z-index: 5;
}

.help-popover p {
  color: var(--color-muted);
  margin: 0;
}

.info-row {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) minmax(170px, auto) auto;
  padding: 14px;
}

.info-row-stack {
  align-items: start;
  grid-template-columns: minmax(0, 1fr) minmax(170px, auto) auto;
}

.info-row.is-muted {
  opacity: 0.62;
}

.row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.inline-editor {
  width: auto;
}

.inline-editor summary {
  align-items: center;
  background: transparent;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  color: var(--color-accent);
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-weight: 700;
  justify-content: center;
  list-style: none;
  min-height: 38px;
  padding: 8px 12px;
}

.inline-editor summary::-webkit-details-marker {
  display: none;
}

.inline-editor[open] {
  grid-column: 1 / -1;
  width: 100%;
}

.inline-editor[open] summary {
  margin-bottom: 10px;
}

.compact-form {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: 16px;
  margin-top: 22px;
  padding-top: 22px;
}

.definition-list {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(100px, 0.35fr) minmax(0, 1fr);
  margin: 0;
}

.definition-list dt {
  font-weight: 800;
}

.definition-list dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.timeline {
  display: grid;
  gap: 14px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.timeline li {
  border-left: 3px solid var(--color-accent);
  display: grid;
  gap: 4px;
  padding-left: 12px;
}

.item-management {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: 12px;
  padding-top: 16px;
}

.compact-heading {
  margin-bottom: 0;
}

.compact-copy {
  font-size: 0.9375rem;
}

.field-hint {
  color: var(--color-muted);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.45;
}

.field-attention-marker {
  align-items: center;
  background: var(--color-warning-bg);
  border: 1px solid #f0d39c;
  border-radius: 999px;
  color: var(--color-warning);
  display: inline-flex;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1;
  margin-left: 6px;
  padding: 4px 7px;
  vertical-align: middle;
  white-space: nowrap;
}

.field-needs-attention input,
.field-needs-attention select,
.field-needs-attention textarea {
  border-color: #d99d35;
  box-shadow: 0 0 0 3px rgba(217, 157, 53, 0.13);
}

.item-attention-panel {
  background: #fffaf0;
  border: 1px solid #e6c37f;
  border-left: 5px solid var(--color-warning);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  margin-bottom: 18px;
  padding: 14px 16px;
}

.item-attention-panel > div {
  display: grid;
  gap: 2px;
}

.item-attention-panel strong {
  color: var(--color-text);
  font-size: 1rem;
}

.item-attention-panel span {
  color: var(--color-muted);
  font-size: 0.9rem;
}

.item-attention-panel ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.item-issue,
.item-issue-summary {
  align-items: center;
  display: inline-flex;
  font-weight: 800;
  gap: 7px;
}

.item-issue {
  background: var(--color-warning-bg);
  border: 1px solid #f0d39c;
  border-radius: 999px;
  color: var(--color-warning);
  font-size: 0.82rem;
  padding: 6px 9px;
}

.item-issue-danger {
  background: #fff1ef;
  border-color: #efaaa4;
  color: var(--color-danger);
}

.item-issue span,
.item-issue-summary span {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 0.68rem;
  height: 18px;
  justify-content: center;
  line-height: 1;
  width: 18px;
}

.item-issue span {
  background: currentColor;
  color: #fff;
}

.item-issue-summary {
  color: var(--color-warning);
  font-size: 0.76rem;
  line-height: 1.3;
  margin: 2px 0 0;
}

.item-issue-summary span {
  background: var(--color-warning);
  color: #fff;
}

.donated-item-list {
  display: grid;
  gap: 10px;
}

.pickup-task-list,
.pickup-item-list,
.review-item-list {
  display: grid;
  gap: 12px;
}

.review-item-list {
  grid-template-columns: minmax(0, 1fr);
}

.field-grid {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-column: 1 / -1;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  margin: 0;
  padding: 14px;
}

.field-grid legend {
  color: var(--color-muted);
  font-weight: 800;
  padding: 0 6px;
}

.report-preview {
  display: grid;
  gap: 16px;
}

.report-meta {
  align-items: center;
  border-bottom: 1px solid var(--color-border);
  color: var(--color-muted);
  display: flex;
  flex-wrap: wrap;
  font-weight: 700;
  gap: 12px;
  justify-content: space-between;
  padding-bottom: 14px;
}

.report-row-list {
  display: grid;
  gap: 12px;
}

.report-row {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  padding: 16px;
}

.call-sheet-list .report-row {
  min-height: 420px;
}

.report-row-heading {
  align-items: start;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.report-row-heading h2 {
  margin: 0;
}

.report-fields {
  display: grid;
  gap: 10px 14px;
  grid-template-columns: minmax(120px, 0.35fr) minmax(0, 1fr);
  margin: 0;
}

.report-fields dt {
  color: var(--color-muted);
  font-weight: 800;
}

.report-fields dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.stored-choice {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
}

.stored-choice-label {
  color: var(--color-muted);
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
}

.choice-option {
  align-items: center;
  display: inline-flex;
  white-space: nowrap;
}

.choice-box {
  border: 2px solid var(--color-text);
  display: inline-grid;
  font-size: 0.6875rem;
  font-weight: 900;
  height: 18px;
  line-height: 1;
  margin-right: 5px;
  place-items: center;
  width: 18px;
}

.choice-selected {
  color: var(--color-accent);
  font-weight: 800;
}

.choice-selected .choice-box {
  background: var(--color-accent);
  color: #ffffff;
}

.choice-stage {
  color: var(--color-muted);
  flex-basis: 100%;
  font-size: 0.875rem;
}

.report-filter-form {
  grid-template-columns: repeat(4, minmax(150px, 1fr));
}

.report-filter-form .field-grid,
.report-filter-form > button {
  grid-column: 1 / -1;
}

.report-filter-form > button {
  justify-self: start;
}

.report-run-list {
  display: grid;
}

.report-run-row {
  border-top: 1px solid var(--color-border);
  padding: 14px 0;
}

.report-run-row:first-child {
  border-top: 0;
  padding-top: 0;
}

.report-run-row:last-child {
  padding-bottom: 0;
}

.report-run-row p {
  margin: 4px 0 0;
}

.sensitive-note {
  color: var(--color-warning);
  font-weight: 800;
}

.pickup-task-card,
.pickup-item-row,
.review-item-card {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  padding: 16px;
}

.pickup-task-card,
.pickup-item-row,
.review-item-card,
.donated-item-row,
.participation-card,
.task-card,
.media-card,
.admin-user-row,
.note-row,
.duplicate-pair,
.duplicate-donor {
  background: #ffffff;
}

.pickup-item-row {
  align-items: start;
  grid-template-columns: 96px minmax(0, 1fr) auto;
}

.pickup-address {
  display: grid;
  font-style: normal;
  gap: 6px;
}

.pickup-address span {
  color: var(--color-muted);
}

.review-actions-grid {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-top: 16px;
}

.review-status-form {
  border-top: 0;
  margin-top: 0;
  padding-top: 0;
}

.final-review-layout {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(600px, 1fr) minmax(320px, 0.55fr);
}

.final-checklist {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.donated-item-row {
  align-items: start;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  grid-template-columns: 96px minmax(0, 1fr) minmax(220px, auto) auto;
  padding: 14px;
}

.item-number-block {
  display: grid;
  gap: 6px;
}

.item-number-block span {
  color: var(--color-muted);
  font-size: 0.8125rem;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.item-number-block strong {
  background: var(--color-soft);
  border-radius: 6px;
  color: var(--color-accent-strong);
  display: inline-flex;
  font-weight: 800;
  justify-content: center;
  min-height: 38px;
  padding: 9px 10px;
}

.item-main {
  display: grid;
  gap: 5px;
}

.item-main span,
.item-main p,
.field-hint {
  color: var(--color-muted);
}

.item-main p {
  margin: 0;
}

.item-status-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.media-band {
  margin-bottom: 18px;
}

.media-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
}

.media-card {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 14px;
}

.media-preview {
  align-items: center;
  background: var(--color-soft);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  color: var(--color-accent-strong);
  display: flex;
  font-weight: 800;
  justify-content: center;
  min-height: 150px;
  overflow: hidden;
  text-decoration: none;
}

.media-preview img {
  display: block;
  height: 150px;
  object-fit: contain;
  width: 100%;
}

.media-preview.media-unavailable {
  height: auto;
  min-height: 64px;
  padding: 16px;
}

.history-disclosure {
  border-top: 1px solid var(--color-border);
  margin-top: 12px;
  padding-top: 12px;
}

.history-disclosure summary {
  color: var(--color-accent-strong);
  cursor: pointer;
  font-weight: 800;
  margin-bottom: 12px;
}

.media-main {
  display: grid;
  gap: 5px;
}

.media-main span,
.media-main p {
  color: var(--color-muted);
  margin: 0;
}

.media-status-form {
  margin-top: 0;
}

.admin-user-list {
  display: grid;
  gap: 12px;
}

.admin-user-main {
  display: grid;
  gap: 5px;
}

.admin-user-main span {
  color: var(--color-muted);
  overflow-wrap: anywhere;
}

.admin-user-form {
  border-top: 0;
  margin-top: 0;
  padding-top: 0;
}

.admin-user-summary-strip {
  margin-bottom: 18px;
}

.admin-user-summary-strip strong {
  font-size: 1.65rem;
  line-height: 1.1;
}

.admin-user-summary-strip small {
  color: var(--color-muted);
  font-size: 0.9rem;
}

.admin-users-layout {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(600px, 1fr) minmax(320px, 0.55fr);
}

.admin-users-panel,
.admin-user-create-panel,
.admin-user-detail-panel,
.admin-user-side {
  min-width: 0;
}

.admin-user-side {
  display: grid;
  gap: 18px;
  align-content: start;
  align-self: start;
  position: static;
}

.admin-user-create-panel {
  position: static;
}

.admin-user-detail-panel {
  position: static;
}

.admin-users-heading {
  align-items: start;
}

.admin-users-toolbar {
  align-items: end;
  border-bottom: 1px solid var(--color-border);
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 18px;
  padding-bottom: 18px;
}

.admin-users-search {
  display: grid !important;
  gap: 8px !important;
}

.admin-user-toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.filter-toggle {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 999px;
  color: var(--color-muted);
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-weight: 700;
  justify-content: center;
  min-height: 40px;
  padding: 8px 12px;
}

.filter-toggle:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-interactive-border);
  color: var(--color-accent-strong);
}

.filter-toggle.is-active {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: #ffffff;
}

.admin-user-list-row {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 14px 16px;
  text-decoration: none;
}

.admin-user-list-row:hover {
  border-color: var(--color-interactive-border);
  box-shadow: 0 8px 24px rgba(12, 107, 88, 0.075);
}

.admin-user-list-row.is-selected {
  background: #f7fbf8;
  border-color: #8ab8ac;
  box-shadow: 0 0 0 2px rgba(12, 107, 88, 0.08);
}

.admin-user-list-row-main {
  display: grid;
  gap: 4px;
}

.admin-user-title-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-user-title-row strong {
  color: var(--color-text);
}

.admin-user-detail-status {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}

.admin-user-detail-list {
  border-top: 1px solid var(--color-border);
  padding-top: 18px;
}

.admin-user-detail-editor {
  margin-top: 22px;
}

.admin-user-account-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  justify-items: start;
  gap: 12px;
  margin-top: 22px;
}

.admin-user-account-actions > .admin-user-detail-editor,
.admin-user-account-actions > form {
  margin: 0;
  min-width: 0;
}

.admin-user-account-actions > a,
.admin-user-account-actions > form > button,
.admin-user-account-actions > details > summary {
  width: fit-content;
  max-width: 100%;
  min-height: 44px;
  text-align: center;
  justify-content: center;
}

.admin-user-editor summary {
  min-height: 44px;
}

.admin-user-editor[open] summary {
  margin-bottom: 14px;
}

.admin-user-filter-empty {
  border-top: 1px solid var(--color-border);
  margin-top: 12px;
  padding-top: 24px;
}

.admin-user-create-grid {
  grid-template-columns: 1fr;
}

.password-field {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.password-toggle {
  align-items: center;
  align-self: end;
  background: transparent;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  color: var(--color-accent);
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-weight: 700;
  justify-content: center;
  min-height: 44px;
  padding: 10px 12px;
}

.password-toggle:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-interactive-border);
}

.item-signal-strip {
  margin-bottom: 0;
}

.notes-band {
  margin-bottom: 18px;
}

.note-list {
  display: grid;
  gap: 10px;
}

.compact-note-list {
  gap: 8px;
}

.note-row {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 12px;
}

.note-row p {
  margin: 0;
}

.note-meta {
  align-items: center;
  color: var(--color-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 0.875rem;
  gap: 8px;
}

.inline-note-action {
  margin-left: auto;
}

.inline-note-action button {
  min-height: var(--control-height);
  padding: 6px 10px;
}

.embedded-notes {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: 10px;
  padding-top: 14px;
}

.embedded-notes h4 {
  margin: 0;
}

.item-note-strip {
  display: grid;
  gap: 8px;
  grid-column: 1 / -1;
}

.row-edit-form {
  grid-column: 1 / -1;
  margin-top: 4px;
}

.panel-actions {
  margin-top: 16px;
}

.dashboard-grid,
.quality-grid,
.stewardship-layout {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(min(320px, 100%), 1fr));
}

.dashboard-card,
.quality-group {
  display: grid;
  gap: 14px;
}

.dashboard-count {
  color: var(--color-accent);
  display: block;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
  margin-bottom: 8px;
}

.dashboard-card h2,
.quality-group h2 {
  font-size: 1.2rem;
  margin: 0;
}

.dashboard-card p {
  color: var(--color-muted);
  margin: 6px 0 0;
}

.dashboard-hero {
  align-items: start;
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  box-shadow: var(--shadow-card);
  display: grid;
  gap: 20px;
  grid-template-columns: minmax(0, 1fr) minmax(260px, auto);
  margin-bottom: 18px;
  padding: 28px;
}

.dashboard-hero h1 {
  font-size: 2.75rem;
  line-height: 1.08;
  margin: 0;
}

.dashboard-hero p {
  color: var(--color-muted);
  margin: 10px 0 0;
  max-width: 760px;
}

.dashboard-year {
  color: var(--color-accent-strong) !important;
  font-weight: 800;
}

.dashboard-actions {
  align-content: start;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(130px, 1fr));
}

.dashboard-metrics {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-bottom: 18px;
}

.metric-card,
.mini-metric {
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  color: inherit;
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 16px;
  text-decoration: none;
}

.metric-card:hover,
.mini-metric:hover,
.dashboard-link-list a:hover,
.dashboard-task-row:hover,
.dashboard-queue-card:hover {
  border-color: var(--color-interactive-border);
  box-shadow: 0 8px 24px rgba(12, 107, 88, 0.07);
}

.metric-card span,
.mini-metric span {
  color: var(--color-muted);
  font-size: 0.8125rem;
  font-weight: 800;
  text-transform: uppercase;
}

.metric-card strong,
.mini-metric strong {
  color: var(--color-accent);
  font-size: 2rem;
  line-height: 1;
}

.metric-card small,
.mini-metric small {
  color: var(--color-muted);
  line-height: 1.35;
}

.metric-good strong {
  color: #176335;
}

.metric-warning strong {
  color: var(--color-warning);
}

.metric-danger strong {
  color: var(--color-danger);
}

.metric-muted strong {
  color: var(--color-muted);
}

.dashboard-layout {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(600px, 1fr) minmax(300px, 0.5fr);
}

.dashboard-main-column,
.dashboard-side-column {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.dashboard-work-panel {
  border-color: var(--color-border-strong);
}

.dashboard-task-list,
.dashboard-link-list {
  display: grid;
  gap: 10px;
}

.dashboard-task-row {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1fr) minmax(150px, auto) auto;
  padding: 14px;
}

.dashboard-task-row h3 {
  font-size: 1.2rem;
  margin: 0;
}

.dashboard-task-row h3 a {
  color: var(--color-text);
  text-decoration: none;
}

.dashboard-task-row h3 a:hover {
  color: var(--color-accent);
}

.dashboard-task-meta {
  color: var(--color-muted);
  display: grid;
  gap: 8px;
  justify-items: end;
  min-width: 0;
}

.dashboard-row-actions {
  display: flex;
  justify-content: flex-end;
}

.dashboard-empty {
  background: var(--color-soft);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 22px;
}

.dashboard-empty h3,
.dashboard-empty p {
  margin: 0;
}

.dashboard-empty p {
  color: var(--color-muted);
}

.dashboard-empty-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
}

.dashboard-modules {
  display: grid;
  gap: 14px;
}

.dashboard-module {
  border-top: 1px solid var(--color-border);
  margin: 0;
  padding-top: 18px;
}

.dashboard-module .dashboard-metrics {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 0;
}

.dashboard-queue-heading {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.dashboard-queue-heading > div {
  min-width: 0;
}

.dashboard-queue-heading .button-secondary {
  flex: 0 0 auto;
}

.dashboard-admin-alert {
  align-items: center;
  background: var(--color-gold-soft);
  border: 1px solid #d6bd68;
  border-radius: 5px;
  display: grid;
  gap: 10px 24px;
  grid-template-columns: minmax(220px, 0.8fr) minmax(0, 1.2fr);
  padding: 14px 16px;
}

.dashboard-admin-alert h2,
.dashboard-admin-alert p {
  margin: 0;
}

.dashboard-admin-alert h2 {
  font-size: 1rem;
}

.dashboard-admin-alert > p {
  color: var(--color-muted);
}

.dashboard-module-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 12px;
}

.dashboard-donor-tools {
  align-items: center;
  border-top: 1px solid var(--color-border);
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding-top: 14px;
}

.dashboard-donor-tools h2 {
  font-size: 1rem;
  margin: 0;
}

.dashboard-support-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.dashboard-two-column,
.dashboard-queue-grid,
.admin-summary-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dashboard-queue-grid {
  grid-template-columns: repeat(2, minmax(min(280px, 100%), 1fr));
}

.dashboard-queue-card {
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  padding: 16px;
}

.dashboard-queue-card h3 {
  font-size: 1.12rem;
  margin: 0;
}

.dashboard-queue-card p {
  color: var(--color-muted);
  margin: 0;
}

.dashboard-link-list a {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  color: inherit;
  display: grid;
  gap: 4px;
  padding: 12px;
  text-decoration: none;
}

.dashboard-link-list span {
  color: var(--color-muted);
}

.mini-list {
  display: grid;
  gap: 8px;
}

.mini-list a,
.checklist-row,
.builder-row {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  color: inherit;
  display: grid;
  gap: 12px;
  padding: 12px;
  text-decoration: none;
}

.mini-list a {
  grid-template-columns: minmax(0, 1fr);
}

.mini-list a:hover,
.checklist-row:hover,
.builder-row:hover {
  border-color: var(--color-interactive-border);
}

.mini-list span,
.checklist-row span,
.builder-row small {
  color: var(--color-muted);
}

.checklist {
  display: grid;
  gap: 10px;
}

.checklist-row {
  grid-template-columns: auto auto minmax(0, 1fr) auto;
}

.checklist-row > div {
  display: grid;
  gap: 2px;
}

.builder-form,
.builder-list {
  display: grid;
  gap: 12px;
}

.builder-row {
  grid-template-columns: auto 72px minmax(0, 1fr);
}

.builder-row input {
  min-height: auto;
}

.confirm-row {
  border-top: 1px solid var(--color-border);
  margin-top: 8px;
  padding-top: 16px;
}

.operations-filter {
  grid-template-columns: minmax(220px, 320px) minmax(180px, 240px) auto;
}

.operations-dashboard-filter {
  grid-template-columns: repeat(4, minmax(180px, 1fr));
}

.operations-items-filter {
  grid-template-columns: repeat(4, minmax(180px, 1fr));
}

.operations-search-panel {
  padding: 18px 20px;
}

.operations-search-form {
  display: grid;
  gap: 24px;
}

.operations-search-input-row {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.operations-search-input {
  display: grid;
  gap: 8px;
}

.operations-search-input span {
  color: var(--color-text);
  font-weight: 700;
}

.operations-search-input input {
  background: #ffffff;
  border: 1px solid #a8b9af;
  border-radius: 10px;
  box-shadow:
    inset 0 1px 2px rgba(29, 37, 36, 0.04),
    0 1px 0 rgba(255, 255, 255, 0.9);
  min-height: 50px;
  padding: 12px 14px;
}

.operations-search-input input::placeholder {
  color: #70807a;
}

.operations-search-button {
  min-height: 50px !important;
  min-width: 120px;
  padding: 12px 20px !important;
  border-radius: 10px !important;
  box-shadow: 0 8px 20px rgba(12, 107, 88, 0.14);
}

.operations-dashboard-layout {
  align-items: start;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(600px, 1fr) minmax(290px, 0.5fr);
}

.operations-main-column,
.operations-side-column {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.operations-item-list,
.operations-compact-queues,
.auction-admin-list {
  display: grid;
  gap: 12px;
}

.operations-item-row,
.auction-admin-row {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 8px 10px;
}

.operations-item-main,
.auction-admin-main {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.operations-item-state {
  align-items: center;
  display: grid;
  gap: 3px;
  justify-items: center;
  width: 48px;
}

.operations-state-icon {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-size: 0.625rem;
  font-weight: 800;
  height: 22px;
  justify-content: center;
  letter-spacing: 0;
  line-height: 1;
  width: 22px;
}

.state-ready {
  background: #e7f6eb;
  color: #176335;
}

.state-attention {
  background: #fff0da;
  color: #9a5b00;
}

.state-progress {
  background: #eef3ef;
  color: var(--color-muted);
}

.operations-state-label {
  color: var(--color-muted);
  font-size: 0.6875rem;
  line-height: 1.15;
  text-align: center;
}

.operations-item-title-row,
.auction-admin-title-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.operations-item-title-row strong,
.auction-admin-title-row strong {
  min-width: 0;
}

.operations-item-title-row a {
  align-items: center;
  color: var(--color-text);
  display: inline-flex;
  font-size: 0.95rem;
  min-height: 24px;
  text-decoration: none;
}

.operations-item-title-row a:hover {
  color: var(--color-accent);
}

.operations-item-number {
  background: var(--color-soft);
  border-radius: 999px;
  color: var(--color-accent-strong);
  font-size: 0.6875rem;
  font-weight: 800;
  line-height: 1;
  padding: 4px 7px;
  white-space: nowrap;
}

.operations-item-meta,
.auction-admin-meta {
  color: var(--color-muted);
  display: flex;
  flex-wrap: wrap;
  gap: 2px 10px;
  font-size: 0.75rem;
}

.operations-item-actions,
.auction-admin-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.operations-item-actions .button-quiet {
  font-size: 0.75rem;
  min-height: 30px;
  padding: 5px 8px;
}

.auction-admin-actions > details {
  min-width: 200px;
  scroll-margin-top: 90px;
  text-align: left;
}

.auction-admin-actions {
  gap: 12px;
}

@media (max-width: 640px) {
  .auction-admin-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
    width: 100%;
    text-align: left;
  }

  .auction-admin-actions > a,
  .auction-admin-actions > form,
  .auction-admin-actions > form > button,
  .auction-admin-actions > details {
    width: fit-content;
    max-width: 100%;
    min-width: 0;
  }

  .auction-admin-actions > a,
  .auction-admin-actions > form > button,
  .auction-admin-actions > details > summary {
    min-height: 44px;
  }

  .auction-admin-actions > details[open] {
    width: 100%;
  }
}

.operations-queue-row {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  color: inherit;
  display: grid;
  gap: 7px;
  grid-template-columns: 46px minmax(0, 1fr);
  padding: 6px 8px;
  text-decoration: none;
}

.operations-queue-row:hover,
.operations-item-row:hover,
.auction-admin-row:hover,
.operations-workflow-card:hover {
  border-color: var(--color-interactive-border);
  box-shadow: 0 8px 24px rgba(12, 107, 88, 0.07);
}

.operations-queue-row span:last-child,
.compact-mini-list span {
  color: var(--color-muted);
}

.operations-queue-count {
  color: var(--color-accent);
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1;
  text-align: center;
}

.operations-workflow-grid {
  display: grid;
  gap: 6px;
}

.operations-workflow-card {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 7px 8px;
}

.operations-workflow-header {
  align-items: start;
  display: grid;
  gap: 8px;
  grid-template-columns: auto minmax(0, 1fr);
}

.operations-workflow-card h3 {
  font-size: 0.84rem;
  margin: 0;
}

.operations-workflow-card p {
  color: var(--color-muted);
  font-size: 0.7rem;
  line-height: 1.25;
  margin: 0;
}

.operations-workflow-card .dashboard-count {
  font-size: 1.2rem;
  margin-bottom: 0;
}

.operations-workflow-card .button-secondary {
  font-size: 0.75rem;
  min-height: 32px;
  padding: 6px 9px;
  white-space: nowrap;
}

.compact-mini-list a {
  padding: 10px;
}

.operations-tight-panel {
  padding: 9px 11px;
}

.operations-tight-panel .section-heading {
  margin-bottom: 9px;
}

.operations-tight-panel .eyebrow {
  font-size: 0.6875rem !important;
  margin-bottom: 4px !important;
}

.operations-tight-panel h2 {
  font-size: 1rem;
}

.operations-tight-panel .operations-compact-queues {
  gap: 6px;
}

.operations-tight-panel .operations-queue-row strong,
.operations-tight-panel .operations-queue-row span:last-child {
  font-size: 0.75rem;
  line-height: 1.2;
}

.stewardship-layout {
  align-items: start;
  grid-template-columns: minmax(600px, 1fr) minmax(300px, 0.5fr);
}

.duplicate-list {
  display: grid;
  gap: 12px;
}

.duplicate-pair {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  padding: 14px;
}

.duplicate-donor {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  grid-template-columns: 72px minmax(0, 1fr) auto auto;
  padding: 12px;
}

.duplicate-donor a {
  color: var(--color-accent);
  font-weight: 800;
}

.duplicate-action {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-column: 1 / -1;
}

.inline-merge-form {
  border-top: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr)) auto auto;
  margin-top: 0;
  padding-top: 0;
}

.stewardship-link {
  margin-top: 14px;
}

.stewardship-status-form {
  margin-bottom: 22px;
}

.participation-band {
  margin-bottom: 18px;
}

.participation-list {
  display: grid;
  gap: 14px;
}

.task-list {
  display: grid;
  gap: 14px;
}

.task-filter-panel {
  display: grid;
  gap: 12px;
}

.task-bucket-nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
}

.task-bucket-nav a {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--color-border);
  color: var(--color-text);
  display: flex;
  font-size: 0.9rem;
  font-weight: 800;
  justify-content: center;
  min-height: 44px;
  padding: 8px 12px;
  text-align: center;
  text-decoration: none;
}

.task-bucket-nav a + a {
  border-left: 0;
}

.task-bucket-nav a:first-child {
  border-radius: 6px 0 0 6px;
}

.task-bucket-nav a:last-child {
  border-radius: 0 6px 6px 0;
}

.task-bucket-nav a:hover {
  background: var(--color-soft);
  color: var(--color-accent-strong);
}

.task-bucket-nav a[aria-current="page"] {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: #ffffff;
}

.task-advanced-filters {
  margin-top: 0;
}

.participation-card {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 16px;
  padding: 18px;
}

.task-card {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: grid;
  gap: 16px;
  padding: 18px;
}

.participation-summary {
  align-items: start;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto;
  justify-content: space-between;
}

.task-main {
  align-items: start;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto;
  justify-content: space-between;
}

.participation-summary h3 {
  margin: 0;
}

.task-main h2 {
  font-size: 1.25rem;
  margin: 0;
}

.task-details {
  border-top: 1px solid var(--color-border);
  padding-top: 14px;
}

.task-update-form {
  align-items: end;
  grid-template-columns: minmax(180px, 240px) auto;
}

.task-action-link {
  justify-self: start;
}

.caller-actions {
  margin-bottom: 18px;
}

.caller-form {
  border-top: 0;
  margin-top: 0;
  padding-top: 0;
}

.quick-actions {
  border: 0;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(min(160px, 100%), 1fr));
  margin: 0;
  padding: 0;
}

.quick-actions legend {
  font-weight: 800;
  margin-bottom: 8px;
}

.quick-actions label {
  align-items: center;
  background: var(--color-soft);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  display: flex;
  gap: 8px;
  min-height: 52px;
  padding: 10px;
}

.quick-actions input {
  accent-color: var(--color-accent);
  flex: 0 0 auto;
  height: 18px;
  min-height: auto;
  width: 18px;
}

.status-pill {
  border-radius: 999px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 800;
  line-height: 1.15;
  padding: 8px 11px;
  white-space: normal;
}

.status-green {
  background: var(--color-success-bg);
  color: var(--color-success);
}

.status-orange {
  background: #fff0d7;
  color: #8a4b00;
}

.status-yellow {
  background: var(--color-warning-bg);
  color: var(--color-warning);
}

.status-blue {
  background: var(--color-info-bg);
  color: var(--color-info);
}

.status-red {
  background: var(--color-danger-bg);
  color: var(--color-danger);
}

.status-muted {
  background: var(--color-soft);
  color: var(--color-muted);
}

.archive-form {
  border-top: 1px solid var(--color-border);
  margin-top: 22px;
  padding-top: 22px;
}

@media (max-width: 640px) {
  .app-header {
    align-items: stretch;
    flex-direction: column;
    gap: 8px;
    padding: 12px 16px;
    position: static;
  }

  .brand {
    max-width: none;
  }

  .app-nav,
  .app-nav form {
    align-items: stretch;
  }

  .app-nav {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .app-nav a,
  .app-nav button {
    background: var(--color-soft);
    justify-content: center;
    min-height: 44px;
    text-align: center;
  }

  .page-shell {
    padding: 24px 14px 42px;
  }

  .intro,
  .auth-panel,
  .toolbar-panel,
  .data-panel,
  .form-section,
  .section-band,
  .profile-hero,
  .dashboard-hero {
    padding: 18px;
  }

  .page-heading,
  .profile-hero {
    margin-bottom: 18px;
  }

  .page-heading h1,
  .profile-hero h1 {
    font-size: 1.75rem;
  }

  .button-primary,
  .button-secondary,
  .button-quiet,
  .button-danger,
  .record-form button,
  .compact-form button,
  .stacked-form button,
  .inline-action button,
  .task-action-link {
    width: 100%;
  }

  .definition-list,
  .report-fields {
    grid-template-columns: 1fr;
  }

  .definition-list dt,
  .report-fields dt {
    margin-top: 4px;
  }

  .media-preview,
  .media-preview img {
    min-height: 120px;
    height: 120px;
  }
}

/* Shared list and filter contract. */
.list-filter-form {
  display: grid;
  gap: 12px;
}

.list-primary-filters {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(240px, 1fr) minmax(220px, 300px) auto;
}

.list-primary-filters button {
  min-height: var(--control-height);
}

.list-search-field {
  min-width: 0;
}

.list-more-filters {
  border-top: 1px solid var(--color-border);
  padding-top: 2px;
}

.active-filter-bar {
  align-items: center;
  border-top: 1px solid var(--color-border);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 12px;
}

.filter-chip {
  align-items: center;
  background: var(--color-accent-soft);
  border: 1px solid var(--color-interactive-border);
  border-radius: 4px;
  color: var(--color-accent-strong);
  display: inline-flex;
  gap: 8px;
  min-height: 36px;
  padding: 6px 9px;
  text-decoration: none;
}

.filter-chip span {
  font-size: 1.15rem;
  line-height: 1;
}

.clear-filters-link {
  align-items: center;
  display: inline-flex;
  min-height: 44px;
  padding-inline: 6px;
}

.compact-list-heading {
  margin-bottom: 14px;
}

.donor-contact-summary {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.donor-contact-summary span,
.donor-contact-summary strong {
  overflow-wrap: anywhere;
}

.list-field-label {
  color: var(--color-muted);
  font-size: 0.75rem;
  font-weight: 700;
}

.row-actions-disclosure {
  position: relative;
}

.row-actions-disclosure > summary {
  align-items: center;
  color: var(--color-accent);
  cursor: pointer;
  display: inline-flex;
  font-weight: 750;
  min-height: 44px;
  padding: 6px 8px;
}

.row-actions-disclosure > .button-quiet,
.row-actions-disclosure > form {
  margin-top: 6px;
}

.task-main h3 {
  font-size: 1.05rem;
  margin: 0;
}

.task-state-summary {
  color: var(--color-muted);
  font-size: 0.85rem;
  margin: 0;
}

.operations-primary-filter-row > * {
  min-width: 0;
}

.operations-primary-filter-row input,
.operations-primary-filter-row select {
  max-width: 100%;
  width: 100%;
}

.list-primary-filters input,
.list-primary-filters select,
.operations-primary-filter-row select {
  border-radius: var(--radius-control);
  min-height: var(--control-height);
}

.audit-filter-form {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.audit-filter-form > label {
  align-items: stretch;
  display: grid;
  gap: 6px;
}

.audit-filter-actions {
  align-items: end;
  display: flex;
  gap: 8px;
}

.audit-table-wrap {
  overflow-x: auto;
}

.audit-table {
  border-collapse: collapse;
  min-width: 980px;
  width: 100%;
}

.audit-table th,
.audit-table td {
  border-bottom: 1px solid var(--color-border);
  padding: 12px;
  text-align: left;
  vertical-align: top;
}

.audit-table td > strong,
.audit-table td > small,
.audit-table td > span,
.audit-table td > code,
.audit-table td > a {
  display: block;
}

.audit-table code {
  overflow-wrap: anywhere;
  white-space: normal;
}

.audit-table details {
  margin-top: 8px;
}

.audit-table details small {
  display: block;
  margin-top: 6px;
}

@media (max-width: 900px) {
  .audit-filter-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 540px) {
  .audit-filter-form {
    grid-template-columns: 1fr;
  }

  .audit-filter-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .audit-filter-actions > * {
    justify-content: center;
    min-width: 0;
    width: 100%;
  }
}

@media (max-width: 1023px) {
  .app-header,
  .page-heading,
  .profile-hero,
  .dashboard-hero,
  .section-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .app-nav {
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .search-form,
  .operations-filter,
  .operations-dashboard-filter,
  .operations-items-filter,
  .form-grid,
  .entry-mode-group,
  .dashboard-grid,
  .dashboard-metrics,
  .dashboard-layout,
  .operations-dashboard-layout,
  .dashboard-actions,
  .dashboard-task-row,
  .dashboard-two-column,
  .dashboard-queue-grid,
  .admin-summary-grid,
  .admin-users-layout,
  .quality-grid,
  .stewardship-layout,
  .profile-layout,
  .caller-layout,
  .pickup-layout,
  .signal-strip,
  .donor-row,
  .info-row,
  .donated-item-row,
  .participation-summary,
  .task-update-form,
  .quick-actions,
  .pickup-item-row,
  .review-actions-grid {
    grid-template-columns: 1fr;
  }

  .report-filter-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-admin-alert {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .dashboard-donor-tools {
    align-items: stretch;
    display: grid;
  }

  .final-review-layout {
    grid-template-columns: 1fr;
  }

  .duplicate-pair,
  .duplicate-donor,
  .inline-merge-form {
    grid-template-columns: 1fr;
  }

  .admin-user-create-panel {
    position: static;
  }

  .admin-users-toolbar,
  .admin-user-list-row,
  .password-field {
    grid-template-columns: 1fr;
  }

  .admin-user-toolbar-actions {
    justify-content: flex-start;
  }

  .admin-user-side {
    position: static;
  }

  .participation-summary,
  .task-main {
    display: grid;
    grid-template-columns: 1fr;
  }

  .status-stack {
    justify-items: start;
  }

  .row-actions {
    justify-content: flex-start;
  }

  .item-status-grid {
    justify-content: flex-start;
  }

  .checklist-row,
  .builder-row,
  .operations-item-row,
  .auction-admin-row,
  .report-row-heading {
    grid-template-columns: 1fr;
  }

  .operations-item-state {
    justify-items: start;
    width: auto;
  }

  .operations-state-label {
    text-align: left;
  }

  .operations-search-input-row {
    grid-template-columns: 1fr;
  }

  .operations-workflow-card {
    grid-template-columns: 1fr;
  }

  .help-popover {
    box-shadow: none;
    left: auto;
    margin-top: 8px;
    max-inline-size: 100%;
    position: static;
    right: auto;
    width: 100%;
  }

  .label-with-help {
    flex-wrap: wrap;
    width: 100%;
  }

  .inline-help summary {
    height: 44px;
    width: 44px;
  }

  .inline-help[open] {
    flex-basis: 100%;
    min-width: 0;
    width: 100%;
  }
}

@media print {
  .app-header,
  .toolbar-panel,
  .profile-actions,
  .caller-actions,
  .task-action-link {
    display: none !important;
  }

  body {
    background: #ffffff;
  }

  .page-shell {
    max-width: none;
    padding: 0;
  }

  .section-band,
  .profile-hero,
  .data-panel {
    box-shadow: none;
    break-inside: avoid;
  }
}

/* Keep operational screens focused while leaving advanced work available. */
.operations-page-actions {
  align-items: stretch;
  flex-wrap: wrap;
  gap: 8px;
}

.operations-primary-filter-row {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(220px, 320px) minmax(0, 1fr) auto;
}

.operations-primary-filter-row .operations-search-input {
  min-width: 0;
}

.operations-primary-filter-row .operations-search-button {
  min-width: 112px;
}

.operations-advanced-filters {
  border-top: 1px solid var(--color-border);
  margin-top: 2px;
  padding-top: 2px;
}

.operations-advanced-filters > summary {
  align-items: center;
  color: var(--color-accent);
  cursor: pointer;
  display: flex;
  font-size: 0.86rem;
  font-weight: 800;
  justify-content: space-between;
  list-style: none;
  min-height: 38px;
  padding: 6px 2px;
}

.operations-advanced-filters > summary::after {
  content: "+";
  font-size: 1.15rem;
  font-weight: 500;
}

.operations-advanced-filters[open] > summary {
  margin-bottom: 10px;
}

.operations-advanced-filters[open] > summary::after {
  content: "-";
}

.operations-advanced-filters > summary::-webkit-details-marker {
  display: none;
}

.operations-advanced-filters .search-form {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.quality-group:not([open]) {
  gap: 0;
}

.quality-group-summary {
  align-items: center;
  cursor: pointer;
  list-style: none;
  margin: 0;
}

.quality-group-summary::after {
  color: var(--color-accent);
  content: "+";
  font-size: 1.2rem;
  font-weight: 500;
  margin-left: 8px;
}

.quality-group[open] .quality-group-summary::after {
  content: "-";
}

.quality-group-summary::-webkit-details-marker {
  display: none;
}

.quality-group-title {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.quality-group-title h2 {
  margin: 0;
}

.quality-group-status {
  color: var(--color-muted);
  font-size: 0.8rem;
  font-weight: 600;
}

.quality-group-body {
	border-top: 1px solid var(--color-border);
	padding-top: 14px;
}

.quality-review-sections,
.quality-category {
	display: grid;
	gap: 18px;
}

.quality-grid {
	column-count: 2;
	column-gap: 18px;
	display: block;
}

.quality-grid .quality-group {
	break-inside: avoid;
	margin-bottom: 18px;
}

.quality-category-heading {
	margin: 0;
}

.quality-group-title h3 {
	font-size: 1.05rem;
	margin: 0;
}

.quality-group-actions,
.active-filter-context {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.quality-group-actions {
	border-top: 1px solid var(--color-border);
	margin-top: 12px;
	padding-top: 12px;
}

.active-filter-context {
	color: var(--color-muted);
	margin: 0;
}

@media (max-width: 1023px) {
	.quality-grid {
		column-count: 1;
	}
}

@media (max-width: 640px) {

  .report-filter-form {
    grid-template-columns: 1fr;
  }
  .operations-page-actions {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .operations-page-actions > * {
    min-width: 0;
    width: auto;
  }

  .operations-page-actions .button-primary,
  .operations-page-actions .button-secondary,
  .operations-page-actions .page-action-menu > summary {
    font-size: 0.88rem;
    min-height: var(--control-height);
    padding-inline: 8px;
    width: 100%;
  }

  .operations-page-actions .page-action-menu {
    grid-column: 1 / -1;
  }

  .operations-primary-filter-row {
    grid-template-columns: 1fr;
  }

  .operations-primary-filter-row .operations-search-button {
    width: 100%;
  }

  .operations-search-panel {
    padding: 12px 14px;
  }

  .operations-advanced-filters .search-form {
    grid-template-columns: 1fr;
  }

  .operations-item-row {
    align-items: start;
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .operations-item-state {
    width: 34px;
  }

  .operations-item-actions {
    grid-column: 2;
    justify-content: flex-start;
  }

  .operations-item-actions .button-quiet {
    flex: 1 1 0;
  }

  .operations-item-meta {
    font-size: 0.72rem;
    gap: 2px 7px;
  }

	.quality-grid {
		gap: 10px;
	}

	.quality-group {
		margin-bottom: 10px;
		padding: 14px;
	}

  .quality-group-title h2 {
    font-size: 1rem;
  }
}

/* Lions visual system and compact application shell. */
html {
  background: var(--color-bg);
  scroll-padding-top: 76px;
}

body {
  font-size: 1rem;
  line-height: 1.45;
  min-width: 320px;
}

h1,
h2,
h3,
h4,
strong {
  color: var(--color-text);
}

h1,
h2,
h3,
h4,
p {
  overflow-wrap: break-word;
}

.skip-link {
  background: var(--color-accent);
  color: #ffffff;
  font-weight: 800;
  left: 12px;
  padding: 10px 14px;
  position: fixed;
  top: 0;
  transform: translateY(-120%);
  transition: transform 140ms ease;
  white-space: nowrap;
  width: max-content;
  z-index: 100;
}

.skip-link:focus {
  transform: translateY(12px);
}

@media (prefers-reduced-motion: reduce) {
  .skip-link {
    transition: none;
  }
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 3px solid var(--color-focus);
  outline-offset: 2px;
}

.app-header {
  background: rgba(255, 255, 255, 0.98);
  border-bottom: 1px solid var(--color-border);
  display: block;
  min-height: 60px;
  padding: 0;
  position: sticky;
  top: 0;
}

.app-header-inner {
  align-items: center;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1328px;
  min-height: 60px;
  padding: 0 24px;
  width: 100%;
}

.brand {
  gap: 10px;
  max-width: none;
  min-height: 52px;
}

.brand-mark {
  display: block;
  flex: 0 0 auto;
  height: 42px;
  object-fit: contain;
  width: 42px;
}

.brand-copy {
  display: grid;
  gap: 0;
  line-height: 1.15;
  white-space: nowrap;
}

.brand-copy strong {
  color: var(--color-accent-strong);
  font-size: 0.95rem;
  font-weight: 800;
}

.brand-copy small {
  color: var(--color-muted);
  font-size: 0.7rem;
  font-weight: 650;
}

.app-nav,
.nav-primary-links {
  align-items: center;
  display: flex;
  gap: 2px;
}

.app-nav {
  justify-content: flex-end;
  min-width: 0;
}

.app-nav form {
  display: block;
}

.app-nav a,
.app-nav button,
.nav-menu summary {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 4px;
  color: #465166;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: 0.84rem;
  font-weight: 750;
  justify-content: center;
  min-height: 36px;
  overflow-wrap: normal;
  padding: 7px 9px;
  text-decoration: none;
  white-space: nowrap;
}

.app-nav a:hover,
.app-nav button:hover,
.nav-menu summary:hover,
.app-nav .is-active {
  background: var(--color-accent-soft);
  color: var(--color-accent-strong);
}

.app-nav a[aria-current="page"],
.nav-menu summary.is-active {
  box-shadow: inset 0 -2px 0 var(--color-accent);
  color: var(--color-accent);
}

.nav-menu {
  position: relative;
}

.nav-menu summary {
  gap: 6px;
  list-style: none;
}

.nav-menu summary::after {
  border-bottom: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid currentColor;
  content: "";
  margin-top: 2px;
}

.nav-menu summary::-webkit-details-marker {
  display: none;
}

.nav-menu[open] summary::after {
  transform: rotate(180deg);
}

.nav-popover {
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 2px;
  min-width: 210px;
  padding: 8px;
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 20;
}

.nav-popover a,
.nav-popover button {
  justify-content: flex-start;
  min-height: 38px;
  padding: 8px 10px;
  text-align: left;
  width: 100%;
}

.nav-popover a[aria-current="page"] {
  background: var(--color-accent-soft);
  box-shadow: inset 3px 0 0 var(--color-accent);
}

.nav-popover-label {
  color: var(--color-muted);
  font-size: 0.68rem;
  font-weight: 800;
  padding: 5px 10px 3px;
  text-transform: uppercase;
}

.nav-account-popover {
  min-width: 230px;
}

.account-summary {
  border-bottom: 1px solid var(--color-border);
  display: grid;
  gap: 2px;
  margin: 0 4px 4px;
  padding: 7px 6px 10px;
}

.account-summary strong {
  font-size: 0.88rem;
}

.account-summary span {
  color: var(--color-muted);
  font-size: 0.76rem;
}

.nav-toggle {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 4px;
  color: var(--color-accent-strong);
  cursor: pointer;
  display: none;
  font: inherit;
  font-weight: 750;
  gap: 8px;
  min-height: 40px;
  padding: 7px 10px;
}

.public-login-link {
  color: #ffffff !important;
  min-height: 38px !important;
}

.app-nav .public-login-link {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: #ffffff !important;
}

.app-nav .public-login-link:hover {
  background: var(--color-accent-strong);
  border-color: var(--color-accent-strong);
  color: #ffffff !important;
}

.page-shell {
  margin: 0 auto;
  max-width: 1280px;
  padding: 24px 24px 42px;
  width: 100%;
}

.page-heading,
.profile-hero {
  margin-bottom: 18px;
}

.page-heading h1,
.profile-hero h1,
.dashboard-hero h1,
.intro h1 {
  font-size: 2rem;
  line-height: 1.15;
}

.page-heading p,
.profile-hero p,
.dashboard-hero p {
  margin-top: 5px;
}

.eyebrow {
  color: var(--color-accent) !important;
  font-size: 0.7rem !important;
  font-weight: 800;
  margin: 0 0 5px !important;
}

.section-heading {
  align-items: flex-start;
  margin-bottom: 14px;
}

.section-band h2,
.form-section h2,
.section-heading h2 {
  font-size: 1.15rem;
  line-height: 1.25;
}

.section-copy {
  margin-top: 4px;
}

.toolbar-panel,
.data-panel,
.form-section,
.section-band,
.signal-strip,
.profile-hero,
.intro,
.auth-panel {
  border-color: var(--color-border);
  border-radius: 6px;
  box-shadow: none;
}

.toolbar-panel,
.data-panel,
.form-section,
.section-band {
  padding: 18px;
}

.page-shell > .section-band + .section-band {
  margin-top: 14px;
}

.stacked-form button,
.button-primary,
.search-form button,
.record-form button,
.compact-form button,
.inline-action button {
  background: var(--color-accent);
  border-color: var(--color-accent);
  border-radius: 4px;
  min-height: 40px;
  padding: 8px 13px;
}

.button-secondary,
.button-quiet,
.button-danger,
.inline-editor summary,
.password-toggle,
.filter-toggle {
  border-radius: 4px;
  min-height: 38px;
  padding: 7px 11px;
}

.button-primary:hover,
.search-form button:hover,
.record-form button:hover,
.compact-form button:hover,
.inline-action button:hover {
  background: var(--color-accent-strong);
  border-color: var(--color-accent-strong);
}

.button-secondary:hover,
.button-quiet:hover,
.inline-editor summary:hover,
.password-toggle:hover,
.filter-toggle:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-interactive-border);
  color: var(--color-accent-strong);
}

.record-form input,
.record-form select,
.record-form textarea,
.compact-form input,
.compact-form select,
.compact-form textarea,
.search-form input,
.search-form select,
.stacked-form input,
.admin-users-search input {
  border-color: var(--color-border-strong);
  border-radius: 4px;
  min-height: 40px;
  padding: 8px 10px;
}

.record-form input:hover,
.record-form select:hover,
.record-form textarea:hover,
.compact-form input:hover,
.compact-form select:hover,
.compact-form textarea:hover,
.search-form input:hover,
.search-form select:hover,
.stacked-form input:hover,
.admin-users-search input:hover {
  border-color: var(--color-control-hover);
}

.search-form,
.form-grid,
.record-form,
.compact-form,
.stacked-form {
  gap: 13px;
}

.search-form label,
.record-form label,
.compact-form label,
.stacked-form label {
  gap: 5px;
}

.toolbar-panel {
  margin-bottom: 14px;
}

.form-error,
.form-success {
  border-radius: 4px;
  margin-bottom: 14px;
  padding: 10px 12px;
}

.badge,
.status-pill,
.field-attention-marker,
.item-issue {
  border-radius: 999px;
}

.badge {
  font-size: 0.72rem;
  padding: 5px 8px;
}

.status-pill {
  font-size: 0.74rem;
  padding: 5px 8px;
}

.field-attention-marker {
  justify-self: start;
  margin-left: 0;
  padding: 5px 9px;
}

.item-issue > span {
  background: var(--color-warning);
}

.item-issue-danger > span {
  background: var(--color-danger);
}

.badge-blue,
.status-blue {
  background: var(--color-accent-soft);
  color: var(--color-accent-strong);
}

.status-yellow {
  background: var(--color-gold-soft);
  color: #6b5200;
}

.filter-toggle.is-active {
  background: var(--color-accent);
  border-color: var(--color-accent);
}

.signal-strip {
  border-top: 3px solid var(--color-gold);
  margin-bottom: 14px;
}

.signal-strip div {
  padding: 12px 14px;
}

.signal-strip span {
  font-size: 0.68rem;
}

.admin-user-summary-strip strong {
  font-size: 1.35rem;
}

.admin-user-summary-strip small {
  font-size: 0.78rem;
}

.dashboard-hero {
  align-items: center;
  border: 0;
  border-bottom: 1px solid var(--color-border);
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 14px;
  padding: 0 0 18px;
  grid-template-columns: minmax(280px, 1fr) minmax(0, auto);
}

.dashboard-hero p {
  margin-top: 5px;
}

.dashboard-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  min-width: 0;
}

.dashboard-actions a {
  min-width: 0;
}

.dashboard-metrics {
  gap: 8px;
  margin-bottom: 14px;
}

.metric-card,
.mini-metric {
  border-radius: 5px;
  gap: 4px;
  padding: 12px;
}

.metric-card:hover,
.mini-metric:hover,
.dashboard-link-list a:hover,
.dashboard-task-row:hover,
.dashboard-queue-card:hover,
.admin-user-list-row:hover,
.donor-row:hover,
.operations-item-row:hover,
.operations-queue-row:hover,
.operations-workflow-card:hover {
  border-color: var(--color-interactive-border);
  box-shadow: 0 3px 12px rgba(10, 61, 171, 0.07);
}

.metric-card span,
.mini-metric span {
  font-size: 0.67rem;
}

.metric-card strong,
.mini-metric strong {
  font-size: 1.55rem;
}

.metric-card small,
.mini-metric small {
  font-size: 0.75rem;
}

.dashboard-layout,
.dashboard-main-column,
.dashboard-side-column,
.dashboard-two-column,
.dashboard-queue-grid,
.admin-summary-grid,
.admin-users-layout,
.admin-user-side,
.operations-dashboard-layout {
  gap: 14px;
}

.dashboard-task-list,
.dashboard-link-list,
.admin-user-list,
.operations-item-list,
.operations-compact-queues,
.operations-workflow-grid,
.donor-list,
.item-list,
.note-list {
  gap: 7px;
}

.dashboard-task-row,
.dashboard-queue-card,
.dashboard-link-list a,
.admin-user-list-row,
.donor-row,
.info-row,
.note-row,
.operations-item-row,
.operations-queue-row,
.operations-workflow-card,
.pickup-task-card,
.pickup-item-row,
.review-item-card,
.donated-item-row,
.task-card,
.participation-card,
.media-card {
  border-radius: 5px;
}

.dashboard-task-row,
.admin-user-list-row,
.donor-row,
.operations-item-row,
.info-row,
.donated-item-row {
  padding: 11px 12px;
}

.dashboard-task-row h3 {
  font-size: 1.05rem;
}

.dashboard-count {
  font-size: 1.6rem;
}

.dashboard-empty {
  border-radius: 5px;
  padding: 16px;
}

.admin-users-layout {
  grid-template-columns: minmax(600px, 1fr) minmax(300px, 0.5fr);
}

.admin-users-toolbar {
  gap: 10px;
  margin-bottom: 12px;
  padding-bottom: 12px;
}

.admin-user-toolbar-actions {
  gap: 5px;
}

.admin-user-list-row.is-selected {
  background: var(--color-accent-soft);
  border-color: var(--color-interactive-border);
  box-shadow: inset 3px 0 0 var(--color-accent);
}

.admin-user-detail-list {
  padding-top: 14px;
}

.admin-user-form .form-grid {
  grid-template-columns: 1fr;
}

.compact-disclosure {
  padding: 0;
}

.compact-disclosure > summary {
  align-items: center;
  color: var(--color-accent);
  cursor: pointer;
  display: flex;
  font-size: 0.95rem;
  font-weight: 800;
  justify-content: space-between;
  list-style: none;
  min-height: 48px;
  padding: 10px 16px;
}

.compact-disclosure > summary::after {
  content: "+";
  font-size: 1.25rem;
  font-weight: 500;
}

.compact-disclosure[open] > summary::after {
  content: "−";
}

.compact-disclosure > summary::-webkit-details-marker {
  display: none;
}

.compact-disclosure-body {
  border-top: 1px solid var(--color-border);
  padding: 16px;
}

.operations-search-panel {
  border-top: 3px solid var(--color-accent);
  padding: 14px 16px;
}

.operations-search-form {
  gap: 14px;
}

.operations-search-input input,
.operations-search-button {
  border-radius: 4px !important;
  min-height: 42px !important;
}

.operations-search-button {
  background: var(--color-accent);
  border: 1px solid var(--color-accent);
  color: #ffffff;
  cursor: pointer;
  font: inherit;
  font-weight: 750;
  box-shadow: none;
}

.operations-search-button:hover {
  background: var(--color-accent-strong);
  border-color: var(--color-accent-strong);
}

.operations-item-number {
  background: var(--color-accent-soft);
  color: var(--color-accent-strong);
}

.operations-state-icon {
  border-radius: 4px;
}

.operations-queue-count {
  color: var(--color-accent);
}

.profile-hero {
  border-left: 4px solid var(--color-gold);
  padding: 18px 20px;
}

.definition-list {
  gap: 7px 12px;
}

.timeline {
  gap: 10px;
}

.timeline li {
  border-left-color: var(--color-accent);
}

.auth-panel {
  border-top: 4px solid var(--color-gold);
  max-width: 410px;
  padding: 26px;
  width: 100%;
}

.auth-panel h1 {
  font-size: 1.65rem;
  margin-bottom: 6px;
}

.auth-intro {
  color: var(--color-muted);
  margin: 0 0 20px;
}

.is-public .page-shell {
  align-items: start;
  display: grid;
  justify-content: center;
  min-height: calc(100vh - 60px);
  padding-top: clamp(44px, 9vh, 96px);
}

.is-public .intro {
  border-top: 4px solid var(--color-gold);
  max-width: 680px;
  padding: 28px;
}

.intro-actions {
  display: flex;
  gap: 8px;
  margin-top: 20px;
}

.field-hint,
.muted-copy,
.section-copy {
  color: var(--color-muted);
}

@media (max-width: 1040px) {
  .brand-copy small {
    display: none;
  }

  .app-header-inner {
    gap: 10px;
  }

  .app-nav a,
  .nav-menu summary {
    padding-inline: 7px;
  }

  .dashboard-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1023px) {
  html {
    scroll-padding-top: 68px;
  }

  .app-header {
    align-items: initial;
    flex-direction: initial;
    padding: 0;
    position: sticky;
  }

  .app-header-inner {
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0;
    min-height: 60px;
    padding: 0 16px;
  }

  .brand {
    margin-right: auto;
  }

  .brand-copy small {
    display: block;
  }

  .nav-toggle {
    display: inline-flex;
  }

  .app-nav {
    align-items: stretch;
    border-top: 1px solid var(--color-border);
    display: none;
    flex-basis: calc(100% + 32px);
    flex-direction: column;
    margin: 0 -16px;
    max-height: calc(100vh - 60px);
    overflow-y: auto;
    padding: 8px 16px 14px;
    width: calc(100% + 32px);
  }

  .app-nav.is-open {
    display: flex;
  }

  body.is-public .app-nav {
    align-items: center;
    border-top: 0;
    display: flex;
    flex-basis: auto;
    flex-direction: row;
    margin: 0;
    max-height: none;
    overflow: visible;
    padding: 0;
    width: auto;
  }

  body.is-public .public-login-link {
    justify-content: center;
    min-height: 44px !important;
    width: auto;
  }

  body.nav-open {
    overflow: hidden;
  }

  .nav-primary-links {
    align-items: stretch;
    display: grid;
    gap: 2px;
  }

  .app-nav a,
  .app-nav button,
  .nav-menu summary {
    background: transparent;
    justify-content: flex-start;
    min-height: 44px;
    padding: 9px 10px;
    width: 100%;
  }

  .app-nav a[aria-current="page"],
  .nav-menu summary.is-active {
    box-shadow: inset 3px 0 0 var(--color-accent);
  }

  .nav-menu {
    width: 100%;
  }

  .nav-menu summary {
    justify-content: space-between;
  }

  .nav-popover {
    border: 0;
    border-left: 1px solid var(--color-border);
    border-radius: 0;
    box-shadow: none;
    margin: 0 0 4px 14px;
    min-width: 0;
    padding: 2px 0 2px 8px;
    position: static;
  }

  .page-shell {
    padding: 18px 16px 34px;
  }

  .page-heading,
  .profile-hero,
  .dashboard-hero,
  .section-heading {
    align-items: flex-start;
  }

  .dashboard-hero {
    display: grid;
    grid-template-columns: 1fr;
  }

  .dashboard-actions {
    justify-content: flex-start;
  }

  .dashboard-layout,
  .operations-dashboard-layout,
  .admin-users-layout,
  .profile-layout,
  .caller-layout,
  .pickup-layout,
  .final-review-layout {
    grid-template-columns: 1fr;
  }

  .admin-user-side {
    grid-row: auto;
  }
}

@media (max-width: 359px) {
  .app-header-inner {
    flex-wrap: nowrap;
    gap: 8px;
    padding: 0 12px;
  }

  .brand {
    gap: 8px;
    min-width: 0;
  }

  .brand-mark {
    height: 36px;
    width: 36px;
  }

  .brand-copy {
    min-width: 0;
    white-space: normal;
  }

  .brand-copy strong {
    font-size: 0.78rem;
    line-height: 1.25;
  }

  .brand-copy small {
    display: none;
  }

  .nav-toggle {
    flex: 0 0 auto;
    min-height: 44px;
    padding: 7px 8px;
  }

  .app-nav.is-open {
    background: #ffffff;
    flex-basis: auto;
    left: 0;
    margin: 0;
    max-height: calc(100vh - 60px);
    padding: 8px 12px 14px;
    position: fixed;
    right: 0;
    top: 60px;
    width: 100%;
    z-index: 1;
  }
}

@media (pointer: coarse) {
  .operations-item-title-row a,
  .app-nav a,
  .app-nav button,
  .nav-menu summary,
  .nav-toggle,
  .inline-help summary,
  .row-actions-disclosure > summary,
  .page-action-menu > summary,
  .pagination-link,
  .button-primary,
  .button-secondary,
  .button-danger,
  .button-quiet,
  .filter-toggle,
  .password-toggle,
  button,
  input,
  select {
    min-height: 44px;
  }
}

@media (max-width: 640px) {
  .brand-mark {
    height: 38px;
    width: 38px;
  }

  .brand-copy strong {
    font-size: 0.88rem;
  }

  .brand-copy small {
    font-size: 0.65rem;
  }

  .page-heading h1,
  .profile-hero h1,
  .dashboard-hero h1,
  .intro h1 {
    font-size: 1.65rem;
  }

  .toolbar-panel,
  .data-panel,
  .form-section,
  .section-band,
  .profile-hero,
  .auth-panel,
  .intro {
    padding: 15px;
  }

  .task-bucket-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .task-bucket-nav a,
  .task-bucket-nav a + a {
    border: 1px solid var(--color-border);
    border-radius: 0;
  }

  .task-bucket-nav a:nth-child(2n) {
    border-left: 0;
  }

  .task-bucket-nav a:nth-child(n+3) {
    border-top: 0;
  }

  .task-bucket-nav a:first-child {
    border-radius: 6px 0 0 0;
  }

  .task-bucket-nav a:nth-child(2) {
    border-radius: 0 6px 0 0;
  }

  .task-bucket-nav a:nth-child(3) {
    border-radius: 0 0 0 6px;
  }

  .task-bucket-nav a:last-child {
    border-radius: 0 0 6px 0;
  }

  .compact-disclosure {
    padding: 0;
  }

  .dashboard-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-module .dashboard-metrics {
    grid-template-columns: 1fr;
  }

  .dashboard-queue-heading {
    display: grid;
  }

  .dashboard-module-footer,
  .dashboard-support-actions {
    display: grid;
  }

  .signal-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .signal-strip div {
    padding: 10px 12px;
  }

  .button-primary,
  .button-secondary,
  .button-quiet,
  .button-danger,
  .record-form button,
  .compact-form button,
  .stacked-form button,
  .inline-action button,
  .task-action-link {
    min-height: 44px;
  }

  .button-primary,
  .button-secondary,
  .button-danger,
  .record-form button,
  .compact-form button,
  .stacked-form button,
  .inline-action button,
  .task-action-link {
    width: 100%;
  }

  .dashboard-actions,
  .profile-actions,
  .form-actions,
  .dashboard-empty-actions {
    display: grid;
    width: 100%;
  }

  .page-action-menu,
  .page-action-menu > summary {
    width: 100%;
  }

  .page-action-popover {
    left: 0;
    right: auto;
    width: 100%;
  }

  .is-public .page-shell {
    padding-top: 28px;
  }
}

@media print {
  .app-header,
  .skip-link,
  .nav-toggle {
    display: none !important;
  }

  body,
  html {
    background: #ffffff;
  }

  .page-shell {
    max-width: none;
    padding: 0;
  }
}

@media (max-width: 640px) {
  .dashboard-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-actions > :last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }

  .dashboard-actions > a {
    min-width: 0;
    width: 100%;
  }
}

.quality-group-summary {
  align-items: center;
  display: flex;
  flex-direction: row;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 0;
}

.quality-group-summary > .quality-group-title {
  flex: 1 1 auto;
  min-width: 0;
}

.quality-group-summary > .badge,
.quality-group-summary::after {
  flex: 0 0 auto;
}

.donor-profile-hero {
  align-items: flex-start;
  overflow: visible;
}

.donor-profile-hero .profile-actions {
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.donor-actions-disclosure {
  min-width: 132px;
}

.donor-actions-disclosure > summary {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--color-border);
  border-radius: 4px;
  color: var(--color-accent);
  cursor: pointer;
  display: flex;
  font-weight: 750;
  justify-content: center;
  list-style: none;
  min-height: 44px;
  min-width: 44px;
  padding: 8px 13px;
}

.donor-actions-disclosure > summary::-webkit-details-marker {
  display: none;
}

.donor-actions-disclosure[open] {
  flex-basis: 100%;
  width: min(520px, 100%);
}

.donor-actions-body {
  border-top: 1px solid var(--color-border);
  margin-top: 10px;
  padding-top: 2px;
}

.donor-actions-body h2 {
  font-size: 1rem;
}

.donor-overview {
  border-top: 3px solid var(--color-accent);
  margin-bottom: 14px;
}

.donor-subview-nav {
  align-items: stretch;
  border-bottom: 1px solid var(--color-border);
  border-top: 1px solid var(--color-border);
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin: -2px 0 14px;
}

.donor-subview-nav a {
  align-items: center;
  border-bottom: 3px solid transparent;
  color: var(--color-muted);
  display: inline-flex;
  font-size: 0.86rem;
  font-weight: 750;
  min-height: 44px;
  padding: 8px 14px 5px;
  text-decoration: none;
}

.donor-subview-nav a:hover,
.donor-subview-nav a:focus-visible {
  color: var(--color-ink);
}

.donor-subview-nav a[aria-current="page"] {
  border-bottom-color: var(--color-accent);
  color: var(--color-ink);
}

.donor-subview-section {
  border-top: 3px solid var(--color-accent);
  margin-bottom: 14px;
}

.donor-subview-section > .compact-disclosure-body {
  padding: 0;
}

.donor-subview-section .media-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(340px, 100%), 1fr));
}

.donor-subview-section .media-card {
  align-items: start;
  grid-template-columns: 96px minmax(0, 1fr);
}

.donor-subview-section .media-preview,
.donor-subview-section .media-preview img {
  height: 84px;
  min-height: 84px;
}

.donor-subview-section .media-card > .media-preview {
  grid-row: 1 / span 2;
}

.donor-subview-section .media-card > .item-status-grid {
  justify-content: flex-start;
}

.donor-subview-section .media-card > .donor-command-list {
  grid-column: 1 / -1;
}

.donor-history-list {
  display: grid;
  gap: 10px;
}

.donor-history-year {
  padding: 0;
}

.history-year-summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(150px, 0.7fr) minmax(0, 1.3fr) auto;
  list-style: none;
  padding: 16px;
}

.history-year-summary::-webkit-details-marker {
  display: none;
}

.history-year-summary::after {
  content: "+";
  font-size: 1.2rem;
  font-weight: 800;
  grid-column: 3;
  grid-row: 1;
}

.donor-history-year[open] > .history-year-summary::after {
  content: "−";
}

.history-year-summary h3,
.history-year-summary .eyebrow {
  margin: 0;
}

.history-year-metrics {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
}

.history-year-body {
  border-top: 1px solid var(--color-border);
  padding: 18px;
}

.donor-anchor-forwarder {
  display: none;
}

.donor-anchor-forwarder:target {
  align-items: center;
  background: var(--color-gold-soft);
  border-left: 4px solid var(--color-gold);
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 14px;
  padding: 12px 14px;
}

.donor-anchor-forwarder a {
  color: var(--color-accent);
  font-weight: 750;
}

.donor-overview-grid {
  display: grid;
  gap: 0 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.donor-overview-block {
  border-top: 1px solid var(--color-border);
  min-width: 0;
  padding: 16px 0;
}

.donor-overview-block h3 {
  font-size: 0.92rem;
  margin-bottom: 8px;
}

.donor-overview-name {
  font-weight: 750;
  margin: 0 0 3px;
}

.donor-contact-links,
.donor-overview-address {
  display: grid;
  font-style: normal;
  gap: 5px;
  overflow-wrap: anywhere;
}

.donor-contact-links a,
.donor-next-action a,
.text-link {
  color: var(--color-accent);
  font-weight: 750;
}

.donor-current-status-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.donor-next-action {
  border-left: 3px solid var(--color-gold);
  display: grid;
  gap: 3px;
  margin-top: 12px;
  padding-left: 10px;
}

.donor-next-action > span {
  color: var(--color-muted);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.donor-note-preview {
  display: grid;
  gap: 8px;
}

.donor-note-preview p {
  margin: 0;
}

.owner-identity {
  overflow-wrap: anywhere;
}

#selected-user,
#user-accounts {
  scroll-margin-top: 90px;
}

.user-list-return {
  margin-bottom: 14px;
}

.operations-item-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.operations-item-actions > a {
  width: auto;
  min-height: 44px;
}

.export-technical {
  margin-top: 12px;
}

.legacy-export code {
  overflow-wrap: anywhere;
}

.legacy-export .list-row {
  padding: 14px;
}

.legacy-export .list-row p:last-child {
  margin-bottom: 0;
}

.legacy-export .signal-strip {
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}

.legacy-export details > summary {
  cursor: pointer;
}

.export-correction-list {
  margin: 12px 0;
  padding-left: 22px;
}

.export-correction-list li + li {
  margin-top: 8px;
}

.donor-overview-definition {
  grid-template-columns: minmax(0, 1fr);
}

.donor-overview-definition dt {
  overflow-wrap: normal;
  word-break: normal;
}

.donor-overview-definition dd + dt {
  margin-top: 8px;
}

.donor-overview-timeline {
  margin-bottom: 10px;
}

.donor-secondary-disclosure {
  margin-bottom: 14px;
}

.donor-secondary-disclosure > summary > .badge,
.donor-secondary-disclosure > summary > .status-pill {
  margin-left: auto;
  margin-right: 12px;
}

.donor-auction-summary-list,
.donor-media-recognition {
  margin-bottom: 18px;
}

.donor-command-list {
  align-items: flex-start;
  border-top: 1px solid var(--color-border);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
  padding-top: 16px;
}

.donor-command-list > .donor-command-editor > summary {
  min-height: var(--control-height);
}

.donor-command-editor[open],
.donor-contact-management .inline-editor[open] {
  flex-basis: 100%;
}

.donor-contact-management {
  display: grid;
  gap: 28px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.donor-contact-management .info-row {
  grid-template-columns: minmax(0, 1fr);
}

.donor-contact-management .info-row > div:first-child {
  display: grid;
  gap: 4px;
}

.donor-contact-management .inline-editor {
  justify-self: start;
}

.donor-contact-management .inline-editor > summary {
  min-height: 44px;
}

.donor-contact-management > section > .inline-editor {
  margin-top: 14px;
}

.donor-contact-management .form-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
}

.donor-contact-management :is(label, input, select, textarea, .inline-editor) {
  min-width: 0;
  max-width: 100%;
}

.donor-command-list.donor-commands-enhanced {
  display: block;
  padding-bottom: 16px;
}

.donor-command-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.donor-command-toolbar > button {
  width: auto;
}

.donor-commands-enhanced > details:not([open]),
.donor-commands-enhanced > details > summary {
  display: none;
}

.donor-commands-enhanced > details[open] {
  width: 100%;
}

.button-secondary,
.inline-editor > summary {
  background: var(--color-accent-soft);
  border-color: var(--color-interactive-border);
}

.donor-row-editor,
.donor-destructive-actions {
  display: grid;
  gap: 12px;
}

.donor-destructive-actions {
  border-top: 1px solid var(--color-border);
  margin-top: 16px;
  padding-top: 16px;
}

.donor-delete-form {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: 10px;
  margin-top: 16px;
  padding-top: 16px;
}

.pagination {
  align-items: center;
  border-top: 1px solid var(--color-border);
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin-top: 20px;
  padding-top: 16px;
}

.pagination-range,
.pagination-position {
  color: var(--color-muted);
  margin: 0;
}

.pagination-range strong {
  color: var(--color-text);
}

.pagination-controls {
  align-items: center;
  display: flex;
  gap: 12px;
}

.pagination-link {
  align-items: center;
  display: inline-flex;
  min-height: 44px;
  padding-inline: 8px;
}

.pagination-link.is-disabled {
  color: var(--color-muted);
  opacity: 0.55;
}

.duplicate-warning {
  background: #fff7db;
  border: 1px solid #d2a523;
  border-left: 4px solid #a87500;
  display: grid;
  gap: 14px;
  margin-block: 16px;
  padding: 16px;
}

.duplicate-warning h2,
.duplicate-warning p {
  margin: 0;
}

.duplicate-confirmation {
  border: 1px solid var(--color-border);
  margin-block: 16px;
  padding: 12px;
}

.setup-step {
  align-items: center;
  background: var(--color-surface-subtle);
  border: 1px solid var(--color-border);
  border-radius: 50%;
  display: inline-flex;
  flex: 0 0 28px;
  font-weight: 700;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.builder-review {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: 4px;
  padding-top: 14px;
}

.builder-review span {
  color: var(--color-muted);
}

.item-media-panel {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: 12px;
  grid-column: 1 / -1;
  min-width: 0;
  padding-top: 14px;
}

.item-media-heading {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.item-media-heading h3,
.item-media-main p {
  margin: 0;
}

.item-media-list {
  display: grid;
}

.item-media-row {
  align-items: start;
  border-bottom: 1px solid var(--color-border);
  display: grid;
  gap: 12px;
  grid-template-columns: 96px minmax(0, 1fr) auto;
  padding: 10px 0;
}

.item-media-row:first-child {
  padding-top: 0;
}

.item-media-preview {
  align-items: center;
  background: var(--color-soft);
  border: 1px solid var(--color-border);
  border-radius: 6px;
  color: var(--color-muted);
  display: flex;
  height: 72px;
  justify-content: center;
  overflow: hidden;
  text-align: center;
  text-decoration: none;
  width: 96px;
}

.item-media-preview img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.item-media-preview.media-unavailable {
  font-size: 0.75rem;
  padding: 8px;
}

.item-media-main {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.item-media-main > strong,
.item-media-main > span,
.item-media-main > p {
  overflow-wrap: anywhere;
}

.item-media-main > span,
.item-media-main > p {
  color: var(--color-muted);
  font-size: 0.8125rem;
}

.item-media-main .item-status-grid {
  justify-content: start;
}

.item-media-editor {
  justify-self: end;
}

.item-media-editor[open] {
  grid-column: 1 / -1;
  justify-self: stretch;
}

.item-media-upload {
  justify-self: start;
  max-width: 100%;
  min-width: 0;
}

.item-media-upload .compact-form,
.item-media-upload .form-grid,
.item-media-upload label,
.item-media-upload input,
.item-media-upload select {
  min-width: 0;
}

@media (max-width: 1023px) {
  .donor-overview-grid,
  .donor-contact-management {
    grid-template-columns: 1fr;
  }

  .donor-profile-hero,
  .donor-profile-hero .profile-actions {
    width: 100%;
  }
}

@media (max-width: 640px) {

  .item-media-row {
    grid-template-columns: 84px minmax(0, 1fr);
  }

  .item-media-preview {
    height: 64px;
    width: 84px;
  }

  .item-media-editor {
    grid-column: 1 / -1;
    justify-self: stretch;
  }

  .item-media-editor > summary,
  .item-media-upload,
  .item-media-upload > summary {
    width: 100%;
  }

  .checklist-row {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }

  .checklist-row > div {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .pagination {
    align-items: stretch;
    flex-direction: column;
  }

  .pagination-controls {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  }

  .pagination-link:last-child {
    justify-self: end;
  }

  .donor-subview-nav {
    flex-wrap: nowrap;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
  }

  .donor-subview-nav a {
    border-bottom-width: 2px;
    flex: 0 0 auto;
    padding-inline: 10px;
    white-space: nowrap;
  }

  .history-year-summary {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .history-year-metrics {
    grid-column: 1 / -1;
  }

  .history-year-summary::after {
    grid-column: 2;
  }
  .donor-profile-hero {
    display: grid;
    grid-template-columns: 1fr;
  }

  .donor-profile-hero .profile-actions,
  .donor-actions-disclosure,
  .donor-actions-disclosure > summary,
  .donor-command-list > .inline-editor,
  .donor-command-list > .inline-editor > summary {
    width: 100%;
  }

  .donor-profile-hero .profile-actions {
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .donor-profile-hero .donor-actions-disclosure:last-child {
    grid-column: 1 / -1;
  }

  .donor-secondary-disclosure > summary {
    align-items: flex-start;
    gap: 8px;
  }

  .donor-secondary-disclosure > summary > .badge,
  .donor-secondary-disclosure > summary > .status-pill {
    margin-left: 0;
    margin-right: 0;
  }
}

/* Shared compact primitives used by queue, record, and administration pages. */
.page-shell {
  padding: 20px 24px 36px;
}

.filter-bar {
  border-top: 3px solid var(--color-accent);
  padding: 14px 16px;
}

.filter-bar-inline {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-top: 3px solid var(--color-accent);
  border-radius: var(--radius-panel);
  padding: 12px;
}

.content-band {
  background: transparent;
  border: 0;
  border-top: 1px solid var(--color-border);
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
  padding: 16px 0 0;
}

.list-stack {
  display: grid;
  gap: 7px;
}

.list-row {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 5px;
}

a.list-row:hover,
a.list-row:focus-visible,
.list-row:focus-within {
  border-color: var(--color-interactive-border);
}

.disclosure > summary,
.audit-table details > summary {
  align-items: center;
  cursor: pointer;
  display: inline-flex;
  min-height: var(--control-height);
}

.queue-segments {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 12px;
}

.queue-segments a {
  align-items: center;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-control);
  color: var(--color-text);
  display: inline-flex;
  font-weight: 800;
  min-height: var(--control-height);
  padding: 8px 14px;
  text-decoration: none;
}

.queue-segments a:hover,
.queue-segments a:focus-visible {
  border-color: var(--color-interactive-border);
}

.queue-segments a.is-active {
  background: var(--color-accent);
  border-color: var(--color-accent);
  color: #fff;
}

.review-row-summary {
  align-items: start;
}

.focused-review-workspace {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: 14px;
  padding-top: 14px;
}

.focused-review-workspace > .section-heading {
  margin: 0;
}

.focused-review-workspace .review-status-form {
  max-width: 620px;
}

.focused-secondary-action {
  border-top: 1px solid var(--color-border);
  padding-top: 8px;
}

.focused-secondary-action > summary {
  font-weight: 800;
}

.focused-review-workspace .inline-editor > summary {
  align-items: center;
  display: inline-flex;
  min-height: var(--control-height);
}

.queue-context-notice {
  align-items: center;
  background: var(--color-info-bg);
  border-left: 4px solid var(--color-info);
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin: 0 0 14px;
  padding: 12px 14px;
}

.queue-context-notice p {
  margin: 3px 0 0;
}

@media (max-width: 640px) {
  .queue-context-notice {
    align-items: stretch;
    flex-direction: column;
  }
}

.stacked-form button,
.button-primary,
.search-form button,
.record-form button,
.compact-form button,
.inline-action button,
.button-secondary,
.button-danger,
.filter-toggle,
.password-toggle,
.page-action-menu > summary,
.page-action-popover a,
.nav-toggle,
.app-nav a,
.app-nav button,
.nav-menu summary {
  min-height: var(--control-height);
}

.public-login-link {
  min-height: var(--control-height) !important;
}

.record-form input,
.record-form select,
.compact-form input,
.compact-form select,
.search-form input,
.search-form select,
.stacked-form input,
.admin-users-search input,
.operations-search-input input,
.operations-search-button {
  min-height: var(--control-height) !important;
}

.button-primary,
.button-secondary,
.button-danger,
.filter-toggle,
.password-toggle,
.page-action-menu > summary,
.record-form input,
.record-form select,
.compact-form input,
.compact-form select,
.search-form input,
.search-form select,
.stacked-form input {
  border-radius: var(--radius-control);
}

.form-error,
.form-success,
.empty-state {
  border-radius: var(--radius-control);
}

@media (max-width: 1023px) {
  .page-shell {
    padding: 16px 16px 30px;
  }
}

@media (max-width: 640px) {
  .content-band {
    padding: 14px 0 0;
  }

  .filter-bar {
    padding: 12px 14px;
  }

  .nav-toggle {
    min-width: var(--control-height);
  }
}

/* Final cascade for the shared list layouts. */
.operations-primary-filter-row {
  grid-template-columns: minmax(180px, 250px) minmax(240px, 1fr) minmax(180px, 230px) auto;
}

.donor-row {
  grid-template-columns: 64px minmax(220px, 1fr) minmax(180px, 0.8fr) minmax(160px, auto);
}

@media (max-width: 1024px) {
  .operations-primary-filter-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .donor-row {
    align-items: start;
    grid-template-columns: 64px minmax(0, 1fr) auto;
  }

  .donor-contact-summary {
    grid-column: 2;
  }

  .donor-row > .status-stack {
    grid-column: 3;
    grid-row: 1 / span 2;
  }
}

@media (max-width: 700px) {
  .list-primary-filters,
  .operations-primary-filter-row {
    grid-template-columns: 1fr;
  }

  .list-primary-filters > button,
  .operations-primary-filter-row .operations-search-button {
    width: 100%;
  }

  .donor-row {
    grid-template-columns: 56px minmax(0, 1fr);
  }

  .donor-contact-summary,
  .donor-row > .status-stack {
    grid-column: 2;
    grid-row: auto;
    justify-items: start;
  }
}

/* Focused caller and pickup task flow. */
.task-essentials-strip {
  background: var(--color-border);
  border: 1px solid var(--color-border);
  border-radius: 6px;
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 14px;
  overflow: hidden;
}

.task-essentials-strip > div {
  background: var(--color-surface);
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 13px 14px;
}

.task-essentials-strip span {
  color: var(--color-muted);
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
}

.task-essentials-strip strong {
  overflow-wrap: anywhere;
}

.field-task-flow {
  display: grid;
  gap: 14px;
}

.field-task-flow > .section-band,
.pickup-context-grid > .section-band {
  margin: 0;
}

.pickup-context-grid {
  align-items: stretch;
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.field-contact-summary {
  display: grid;
  gap: 8px;
}

.field-contact-summary > strong {
  font-size: 1.05rem;
}

.field-contact-lines {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 16px;
}

.field-contact-lines > a,
.field-contact-lines > span,
.field-task-link {
  align-items: center;
  display: inline-flex;
  min-height: 44px;
  overflow-wrap: anywhere;
}

.field-contact-lines > span {
  color: var(--color-muted);
}

.field-task-link {
  color: var(--color-accent);
  font-weight: 750;
  padding: 6px 2px;
}

.field-task-objective-copy {
  font-size: 1.05rem;
  margin: 0 0 16px;
}

.field-task-definition-list {
  max-width: 680px;
}

.field-task-update {
  scroll-margin-top: 76px;
}

.field-task-update h2:focus-visible {
  outline: 3px solid var(--color-focus);
  outline-offset: 4px;
}

.field-task-history .history-disclosure > summary {
  align-items: center;
  display: inline-flex;
  min-height: 44px;
}

.field-task-items .pickup-item-row {
  grid-template-columns: 96px minmax(0, 1fr) auto;
}

@media (max-width: 1023px) {
  .pickup-context-grid {
    grid-template-columns: 1fr;
  }

  .field-task-items .pickup-item-row {
    grid-template-columns: 88px minmax(0, 1fr);
  }

  .field-task-items .pickup-item-row > .status-pill {
    grid-column: 2;
    justify-self: start;
  }
}

@media (max-width: 640px) {
  .task-essentials-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .task-essentials-strip > div {
    padding: 11px 12px;
  }

  .field-task-header-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .field-task-header-actions > .button-primary {
    grid-column: 1 / -1;
  }

  .field-task-header-actions > .field-task-link {
    justify-content: center;
    min-width: 0;
  }

  .field-task-items .pickup-item-row {
    grid-template-columns: 1fr;
  }

  .field-task-items .pickup-item-row > .status-pill {
    grid-column: auto;
  }
}

/* Guided report selection, setup, and bounded preview. */
.report-chooser {
  margin-bottom: 18px;
}

.report-choice-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.report-choice-card {
  border: 1px solid var(--color-border);
  border-left: 4px solid var(--color-gold);
  border-radius: 6px;
  color: var(--color-ink);
  display: grid;
  gap: 8px;
  min-height: 132px;
  padding: 18px;
  text-decoration: none;
}

.report-choice-card:hover {
  border-color: var(--color-accent);
}

.report-choice-card > strong {
  font-size: 1.1rem;
}

.report-choice-card > span:not(.report-choice-action) {
  color: var(--color-muted);
}

.report-choice-action {
  align-self: end;
  color: var(--color-accent);
  font-weight: 800;
}

.report-scope-strip {
  background: var(--color-border);
  border: 1px solid var(--color-border);
  border-radius: 6px;
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 14px;
  overflow: hidden;
}

.report-scope-strip > div {
  background: var(--color-surface);
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 13px 14px;
}

.report-scope-strip span {
  color: var(--color-muted);
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
}

.report-scope-strip strong {
  overflow-wrap: anywhere;
}

.report-setup {
  margin-bottom: 14px;
}

.report-filter-form {
  grid-template-columns: 1fr;
}

.report-primary-settings,
.report-option-grid {
  display: grid;
  gap: 12px;
}

.report-primary-settings {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.report-option-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 12px;
}

.report-filter-customizer,
.report-field-customizer {
  border-bottom: 1px solid var(--color-border);
  border-top: 1px solid var(--color-border);
}

.report-filter-customizer + .report-field-customizer {
  border-top: 0;
}

.report-filter-customizer > summary,
.report-field-customizer > summary {
  align-items: center;
  color: var(--color-accent);
  cursor: pointer;
  display: flex;
  font-weight: 800;
  min-height: 48px;
  padding: 2px 0;
}

.report-field-customizer .field-grid {
  border: 0;
  border-radius: 0;
  margin-bottom: 12px;
  padding: 0;
}

.report-filter-form > button {
  min-width: 180px;
}

.report-preview-heading {
  align-items: center;
}

.report-preview-heading .inline-action,
.report-preview-heading button {
  margin: 0;
}

.report-meta {
  align-items: start;
  display: grid;
  gap: 6px;
  justify-content: stretch;
}

.report-meta strong {
  color: var(--color-ink);
}

.report-preview-limit {
  background: var(--color-surface-subtle);
  border-left: 4px solid var(--color-gold);
  margin: 0;
  padding: 12px 14px;
}

.report-row-heading h3 {
  margin: 0;
}

.report-empty-state {
  align-items: start;
  justify-items: start;
  text-align: left;
}

@media (max-width: 1023px) {
  .report-option-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .report-choice-grid,
  .report-primary-settings,
  .report-option-grid,
  .report-scope-strip {
    grid-template-columns: 1fr;
  }

  .report-choice-card {
    min-height: 0;
  }

  .report-preview-heading {
    align-items: stretch;
  }

  .report-preview-heading .inline-action,
  .report-preview-heading button,
  .report-filter-form > button {
    width: 100%;
  }
}

/* Keep routine work prominent and secondary settings compact. */
.dashboard-hero {
  padding: 18px;
}

.donated-item-details {
  grid-column: 1 / -1;
}

.donated-item-details .note-row {
  border: 0;
  border-top: 1px solid var(--color-border);
  border-radius: 0;
  background: transparent;
}

.dashboard-queue-card {
  align-content: start;
  gap: 8px;
  padding: 14px;
}

.dashboard-queue-card .mini-list {
  gap: 0;
}

.dashboard-queue-card .mini-list a {
  background: transparent;
  border: 0;
  border-top: 1px solid var(--color-border);
  border-radius: 0;
  gap: 2px;
  padding: 8px 0;
}

.dashboard-queue-card > p {
  font-size: 0.9rem;
}

.operations-dashboard-layout .operations-item-row {
  grid-template-columns: minmax(0, 1fr) auto;
}

.operations-dashboard-layout .operations-item-meta,
.operations-dashboard-layout .item-issue-summary {
  font-size: 0.875rem;
  font-weight: 400;
}

.operations-follow-up > summary,
.item-processing > summary,
.access-details > summary {
  cursor: pointer;
  min-height: 44px;
  padding: 10px 0;
  font-weight: 700;
}

.operations-follow-up[open] > summary,
.item-processing[open] > summary {
  margin-bottom: 10px;
}

.admin-user-detail-list {
  grid-template-columns: 1fr;
  gap: 4px;
}

.admin-user-detail-list dd {
  margin: 0 0 8px;
}

.access-summary {
  margin: 8px 0;
}

.access-details .form-grid {
  grid-template-columns: 1fr;
}

.task-essentials-strip {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.field-task-flow > .section-band,
.pickup-context-grid > .section-band {
  background: transparent;
  border: 0;
  border-top: 1px solid var(--color-border);
  border-radius: 0;
  padding: 14px 0;
}

.field-task-flow .section-heading {
  margin-bottom: 8px;
}

.field-task-flow .section-heading .eyebrow {
  display: none;
}

.caller-flow {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
  gap: 12px 24px;
}

.caller-flow .field-task-update,
.caller-flow .field-task-history {
  grid-column: 1 / -1;
}

.caller-flow .quick-actions label {
  min-height: 44px;
  padding: 10px;
}

.entry-mode-group {
  border: 0;
  padding: 0;
}

.entry-mode-card {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 8px 0;
}

@media (max-width: 1023px) {
  .caller-flow {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .operations-dashboard-layout .operations-item-row {
    grid-template-columns: 1fr;
  }

  .task-essentials-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
