.tool-switch {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 4px;
  max-width: 690px;
  margin: 0 auto 12px;
  background: #eeeef0;
  padding: 5px;
  border-radius: 14px;
}
.tool-switch button, .workbench button { font: inherit; }
.tool-switch button {
  background: transparent;
  color: var(--muted);
  font-size: 13px;
  padding: 10px 5px;
  border-radius: 10px;
}
.tool-switch button:hover:enabled, .tool-switch button[aria-pressed=true] {
  background: white;
  color: var(--pdf-red-hover);
}
.tool-switch button[aria-pressed=true] { box-shadow: 0 2px 7px #18181b16; font-weight: bold; }
.workbench h2 { margin: 0; }
.workbench > p { font-size: 13px; color: var(--muted); }
#document-pick { border: 1.5px dashed #dfacb4; background: var(--pdf-tint); color: var(--pdf-red-hover); padding: 24px; }
#document-pick:hover:enabled, #document-pick.drag { border-color: var(--pdf-red); background: #ffe6ea; }
.file-queue { padding: 0; list-style: none; }
.file-queue li, .page-actions {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  text-align: start; padding: 8px 0; border-bottom: 1px solid var(--line);
}
.file-queue span { overflow-wrap: anywhere; min-width: 0; font-size: 13px; }
.queue-controls { display: flex; flex: none; gap: 4px; }
.workbench .quiet-action, .queue-controls button, .page-actions button, .page-card button {
  background: #f3f3f5; color: var(--ink); width: auto; padding: 6px 10px; font-size: 12px;
}
.workbench .quiet-action:hover:enabled, .queue-controls button:hover:enabled,
.page-actions button:hover:enabled, .page-card button:hover:enabled { background: var(--pdf-tint); color: var(--pdf-red-hover); }
#page-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(112px, 1fr)); gap: 8px; margin: 12px 0; max-height: 440px; overflow: auto; }
.page-card { display: grid; justify-items: center; gap: 5px; border: 1px solid var(--line); padding: 9px 6px; border-radius: 10px; }
.page-card:has(:checked) { border-color: #f0a6af; }
.page-card label { font-size: 12px; }
.page-card input { accent-color: var(--pdf-red); }
.page-card canvas { width: 80px; height: 80px; object-fit: contain; }
#document-status:empty { margin: 0; }
#document-result { display: flex; gap: 8px; }
#document-result > * { flex: 1; align-content: center; }
@media(max-width:480px) { .tool-switch { grid-template-columns:repeat(2,1fr); } }
