.worker-archive-form, .worker-archive-form fieldset { padding: 0; margin: 0; min-width: 0; border: 0; }
.worker-archive-form .archive-certificates legend, .worker-archive-form .archive-specialties legend { font-size: 14px; margin-bottom: 8px; }
.worker-archive-form #certificateOptions, .worker-archive-form .archive-specialty-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 16px; }
.worker-archive-form .archive-specialties { margin-bottom: 16px; }
.worker-archive-form .archive-required { color: #b42318; }
.worker-archive-form .archive-duplicate-message:empty { display: none; }
.mobile-page .worker-archive-form .certificate-option { display: flex; align-items: center; gap: 8px; min-height: 44px; overflow-wrap: anywhere; }
.mobile-page .worker-archive-form .certificate-option input { width: 20px; min-height: 20px; height: 20px; flex-shrink: 0; accent-color: var(--green); }
.daily-page #externalWorkerForm { display: block; }
.daily-page #externalWorkerFields { padding: 0; margin: 0; min-width: 0; border: 0; }
.daily-page #externalWorkerFormMessage { margin-top: 16px; }
.daily-page #externalWorkerDialog .dialog-actions { position: sticky; bottom: -20px; background: #fff; padding: 12px 0; margin-top: 16px; border-top: 1px solid var(--line); }
.daily-page #externalWorkerDialog .dialog-actions button { height: auto; }
.archive-upload { margin-top: 20px; min-width: 0; }
.archive-upload h3 { font-size: 15px; margin: 0 0 12px; }
.archive-upload > .muted { font-size: 13px; margin: 8px 0; }
.archive-file { display: flex; align-items: center; gap: 8px; min-width: 0; padding: 12px 0; border-bottom: 1px solid var(--line); }
.archive-file-content, .archive-file > .archive-file-name { flex: 1; min-width: 0; }
.archive-file-name { display: block; font-size: 14px; overflow-wrap: anywhere; white-space: normal; }
a.archive-file-name { color: var(--green); }
.archive-file small { display: block; font-size: 12px; color: var(--muted); margin-top: 4px; overflow-wrap: anywhere; }
.archive-file small.warn { color: #b42318; }
.archive-file progress { display: block; height: 6px; width: 100%; margin-top: 8px; accent-color: var(--green); }
.archive-file-actions { display: flex; flex-shrink: 0; gap: 4px; }
.mobile-page .archive-file .icon-button { flex: 0 0 44px; width: 44px; min-height: 44px; height: 44px; padding: 10px; }
.archive-upload-message { white-space: pre-line; overflow-wrap: anywhere; }
@media (hover: hover) and (pointer: fine) {
  .worker-archive-form .archive-upload { border: 1px dashed var(--line); border-radius: 8px; padding: 16px; }
  .worker-archive-form .archive-upload.is-dragging { border-color: var(--green); background: #eef8f2; }
}
