
/* S31.3 — Import upload progress / processing state */
.hrms-import-progress{display:none;margin:0 0 var(--space-3);padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft,var(--surface));box-shadow:0 6px 18px rgba(15,23,42,.05)}
.hrms-import-progress:not([hidden]){display:block;animation:hrmsImportIn .22s ease-out}
.hrms-import-progress-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:10px}
.hrms-import-progress-title{font-size:.94rem;color:var(--text);display:block}
.hrms-import-progress-file{font-size:.78rem;color:var(--text-muted);margin-top:3px;word-break:break-word}
.hrms-import-progress-percent{font-variant-numeric:tabular-nums;color:var(--primary);font-size:.95rem;white-space:nowrap}
.hrms-import-progress-track{height:10px;border-radius:999px;overflow:hidden;background:var(--surface-muted,var(--border));box-shadow:inset 0 1px 2px rgba(15,23,42,.08)}
.hrms-import-progress-bar{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 65%,white));transition:width .18s ease-out;position:relative;overflow:hidden}
.hrms-import-progress.is-uploading .hrms-import-progress-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.32) 45%,transparent 70%);animation:hrmsImportShimmer 1.1s linear infinite}
.hrms-import-progress-status{margin-top:8px;font-size:.78rem;color:var(--text-muted)}
.hrms-import-progress.is-processing .hrms-import-progress-bar{width:100%!important;animation:hrmsImportPulse 1.15s ease-in-out infinite}
.hrms-import-progress.is-success .hrms-import-progress-status{color:var(--success,#16a34a)}
.hrms-import-progress.is-error{border-color:var(--danger,#dc2626)}
.hrms-import-progress.is-error .hrms-import-progress-percent{color:var(--danger,#dc2626)}
@keyframes hrmsImportShimmer{from{transform:translateX(-80%)}to{transform:translateX(120%)}}
@keyframes hrmsImportPulse{0%,100%{opacity:.72}50%{opacity:1}}
@keyframes hrmsImportIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media (max-width:480px){.hrms-import-progress{padding:12px}.hrms-import-progress-head{gap:10px}.hrms-import-progress-title{font-size:.88rem}.hrms-import-progress-file{font-size:.72rem}.hrms-import-progress-percent{font-size:.86rem}}
@media (prefers-reduced-motion:reduce){.hrms-import-progress,.hrms-import-progress-bar{animation:none!important;transition:none!important}}

/* Finished states + completion alert (sa.done) */
.hrms-import-progress.is-success{border-color:var(--success,#16a34a);background:color-mix(in srgb,var(--success,#16a34a) 6%,var(--surface))}
.hrms-import-progress.is-success .hrms-import-progress-bar{background:var(--success,#16a34a)}
.hrms-import-progress.is-success .hrms-import-progress-percent{color:var(--success,#16a34a)}
.hrms-import-progress.is-warning{border-color:var(--warning,#d97706);background:color-mix(in srgb,var(--warning,#d97706) 7%,var(--surface))}
.hrms-import-progress.is-warning .hrms-import-progress-bar{background:var(--warning,#d97706)}
.hrms-import-progress.is-warning .hrms-import-progress-percent{color:var(--warning,#d97706)}
.sa-done-popup{width:min(92vw,460px)!important;padding:1.6rem 1.4rem 1.4rem!important}
.sa-done-body{margin:.4rem 0 0!important;text-align:center}
.sa-done-lead{margin:0 0 12px;color:var(--text-muted);font-size:.92rem;line-height:1.6}
.sa-done-stats{padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-alt,var(--surface-soft,transparent));text-align:left;font-size:.9rem;line-height:1.7;max-height:34vh;overflow:auto}
.sa-done-stats p{margin:0}
.sa-done-stats table{width:100%;border-collapse:collapse;font-size:.85rem}
.sa-done-stats th,.sa-done-stats td{padding:4px 6px;text-align:left;border-bottom:1px solid var(--border)}
.sa-done-errcount{margin-top:6px!important;color:var(--danger,#dc2626)}
.sa-done-popup .swal2-actions{margin-top:1.1rem}
.sa-done-popup .swal2-confirm{min-width:120px}
