.automatic-finalization {
  max-width: 1120px;
  margin: var(--spacing-xl) auto;
  padding: var(--spacing-lg);
  color: var(--text-color);
  font-family: var(--font-family);
}
.automatic-finalization f-finalization-queue { display: grid; gap: var(--spacing-lg); min-width: 0; }
.automatic-finalization f-finalization-queue > *,
.automatic-finalization [data-queue-output] > * { min-width: 0; }
.automatic-finalization .queue-intro { margin-bottom: var(--spacing-lg); }
.automatic-finalization .eyebrow { color: var(--primary-color); font-size: var(--font-size-xs); font-weight: 700; letter-spacing: .12em; }
.automatic-finalization h1 { font-size: var(--font-size-2xl); font-weight: 700; margin: var(--spacing-sm) 0; }
.automatic-finalization h2 { font-size: var(--font-size-lg); font-weight: 700; }
.automatic-finalization p { margin: var(--spacing-md) 0; line-height: 1.6; }
.automatic-finalization .selection-panel,
.automatic-finalization .queue-results { background: var(--bg-color); border: 1px solid var(--border-color); border-radius: var(--radius-lg); padding: var(--spacing-lg); box-shadow: var(--shadow-sm); }
.automatic-finalization fieldset { padding: 0; margin: 0; border: 0; min-width: 0; }
.automatic-finalization fieldset:disabled .selection-list { opacity: .65; }
.automatic-finalization .result-heading,
.automatic-finalization .selection-actions { display: flex; align-items: center; justify-content: space-between; gap: var(--spacing-md); }
.automatic-finalization .selection-actions { margin-top: var(--spacing-lg); }
.automatic-finalization .select-all { display: flex; align-items: center; gap: var(--spacing-sm); padding: var(--spacing-sm) 0; font-size: var(--font-size-sm); }
.automatic-finalization .selection-row { display: flex; align-items: center; gap: var(--spacing-md); padding: var(--spacing-md) 0; border-top: 1px solid var(--border-color); cursor: pointer; }
.automatic-finalization .selection-row:has(input:checked) { background: var(--secondary-bg); }
.automatic-finalization input[type=checkbox] { width: var(--font-size-lg); height: var(--font-size-lg); flex-shrink: 0; accent-color: var(--primary-color); }
.automatic-finalization .queue-number { font-size: var(--font-size-sm); color: var(--text-muted); }
.automatic-finalization .position-name { flex: 1; min-width: 0; }
.automatic-finalization small { display: block; color: var(--text-muted); font-size: var(--font-size-sm); margin-top: var(--spacing-xs); overflow-wrap: anywhere; }
.automatic-finalization .quantity { white-space: nowrap; font-size: var(--font-size-sm); }
.automatic-finalization .muted { color: var(--text-muted); font-size: var(--font-size-sm); }
.automatic-finalization .badge { display: inline-block; padding: var(--spacing-xs) var(--spacing-sm); border-radius: var(--radius-sm); font-size: var(--font-size-xs); font-weight: 600; border: 1px solid var(--border-color); white-space: nowrap; }
.automatic-finalization .badge.success, .automatic-finalization .badge.complete { color: var(--primary-color-dark); background: var(--secondary-bg); }
.automatic-finalization .badge.warning { color: var(--text-color); border-color: var(--warning-color); }
.automatic-finalization .badge.error, .automatic-finalization .queue-error { color: var(--error-color); }
.automatic-finalization .badge.running { color: var(--primary-color); }
.automatic-finalization .metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--spacing-md); margin: var(--spacing-lg) 0; }
.automatic-finalization .metric { background: var(--secondary-bg); border-radius: var(--radius-md); padding: var(--spacing-md); }
.automatic-finalization .metric strong { display: block; font-size: var(--font-size-2xl); }
.automatic-finalization .metric span { color: var(--text-muted); font-size: var(--font-size-sm); }
.automatic-finalization progress { width: 100%; height: var(--spacing-sm); accent-color: var(--primary-color); }
.automatic-finalization .table-wrap { overflow-x: auto; margin: var(--spacing-lg) 0; }
.automatic-finalization table { width: 100%; border-collapse: collapse; }
.automatic-finalization th { color: var(--text-muted); font-size: var(--font-size-xs); font-weight: 500; }
.automatic-finalization th, .automatic-finalization td { text-align: left; padding: var(--spacing-md) var(--spacing-sm); border-bottom: 1px solid var(--border-color); vertical-align: top; }
.automatic-finalization .button { display: inline-flex; justify-content: center; align-items: center; gap: var(--spacing-sm); padding: var(--spacing-sm) var(--spacing-md); border-radius: var(--radius-md); font-size: var(--font-size-sm); font-weight: 600; cursor: pointer; text-decoration: none; border: 1px solid var(--border-color); }
.automatic-finalization .button.primary { color: var(--bg-color); background: var(--primary-color); border-color: var(--primary-color); }
.automatic-finalization .button.secondary { color: var(--primary-color-dark); background: var(--secondary-bg); }
.automatic-finalization .button:disabled { opacity: .5; cursor: default; }
.automatic-finalization .button:focus-visible, .automatic-finalization input:focus-visible { outline: 2px solid var(--primary-color); outline-offset: var(--spacing-xs); }
.automatic-finalization .empty-state { padding: var(--spacing-lg) 0; color: var(--text-muted); }
.automatic-finalization .queue-error { margin-bottom: 0; }
.automatic-finalization .visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width: 700px) {
  body:has(.automatic-finalization) > div { flex-direction: column; }
  body:has(.automatic-finalization) > div > nav { position: static; width: 100%; height: auto; padding: var(--spacing-sm); }
  body:has(.automatic-finalization) > div > nav ul { display: flex; flex-wrap: wrap; gap: var(--spacing-xs); }
  body:has(.automatic-finalization) main { min-width: 0; width: 100%; }
  body:has(.automatic-finalization) main > .sticky nav { overflow-x: auto; }
  body:has(.automatic-finalization) main > .sticky nav > div { flex-shrink: 0; }
  .automatic-finalization { padding: var(--spacing-sm); margin: var(--spacing-md) auto; }
  .automatic-finalization .selection-panel, .automatic-finalization .queue-results { padding: var(--spacing-md); }
  .automatic-finalization .result-heading, .automatic-finalization .selection-actions { align-items: flex-start; flex-direction: column; }
  .automatic-finalization .selection-row { flex-wrap: wrap; gap: var(--spacing-sm); }
  .automatic-finalization .selection-row .badge { margin-left: var(--spacing-xl); }
  .automatic-finalization .metrics { gap: var(--spacing-sm); }
  .automatic-finalization .metric { padding: var(--spacing-sm); }
}
