.work-queues { margin: 16px 0; min-width: 0; }
/* Keep the frame's decorative border outside the scrolling contents. */
:is(.research-layout, .manufacturing-layout) > .work-queues.tactical-frame:not([hidden]) { display: flex; flex-direction: column; overflow: hidden; }
.work-queues > .work-queue-scroll { flex: 1; min-height: 0; min-width: 0; overflow: auto; }
@media (max-width: 767px) {
    .work-queues > .work-queue-scroll { flex: none; overflow: visible; }
}
.work-queues .work-queue-heading { font-size: 1.15rem; }
.work-queues .work-queue-card { padding: 16px; margin: 12px 0; min-width: 0; container: work-queue-card / inline-size; }
.work-queues .work-queue-builder { display: grid; gap: 12px; padding: 16px; margin: 16px 0; min-width: 0; }
.work-queue-builder h3 { margin: 0; }
.work-queues .work-queue-builder input,
.work-queues .work-queue-builder select { width: 100%; }
.work-queue-builder > button { justify-self: start; }
.work-queue-summary { cursor: pointer; overflow-wrap: anywhere; }
.work-queue-summary span { display: block; margin: 6px 0 0 18px; font-size: 0.9rem; }
.work-queue-summary:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
.work-queue-plan { flex-basis: 100%; min-width: 0; overflow-wrap: anywhere; }
.work-queue-plan p { margin: 0 0 8px; }
.work-queue-plan ol { margin: 0; padding-left: 24px; }
.work-queues .work-queue-controls { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; margin: 10px 0; }
.work-queues label { display: grid; gap: 4px; min-width: 0; max-width: 100%; }
.work-queues input { max-width: 100%; width: 160px; box-sizing: border-box; }
.work-queues select { max-width: 100%; width: 280px; }
.work-queues .work-queue-jobs { padding-left: 24px; overflow-wrap: anywhere; }
.work-queues .work-queue-jobs li { padding: 10px 0; border-bottom: 1px solid #ffffff20; }
.work-queues .work-queue-job-details { min-width: 0; }
@container work-queue-card (min-width: 640px) {
    .work-queues .work-queue-job-row { display: grid; grid-template-columns: minmax(0, 1fr) max-content; align-items: center; gap: 16px; }
    .work-queues .work-queue-job-actions { flex-wrap: nowrap; margin: 0; }
}
.work-queue-completion { position: fixed; right: 16px; bottom: 16px; z-index: 10050; padding: 16px; width: min(380px, calc(100vw - 32px)); max-height: 60vh; overflow: auto; box-sizing: border-box; background: #171b20; }
.work-queue-completion button { margin: 8px 8px 0 0; }
@media (max-width: 767px) {
    .work-queues .work-queue-card { padding: 12px; }
    .work-queues .work-queue-controls > label { width: 100%; }
    .work-queues .work-queue-controls input, .work-queues .work-queue-controls select { width: 100%; }
}
