.scheduleImportEntry { margin-top: 2.4rem; padding: 2rem; border: 1px solid #bfd7ff; border-radius: 1.6rem; background: #f4f8ff; }
.scheduleImportEntry strong { font-size: 1.8rem; color: #17243c; }
.scheduleImportEntry p, .scheduleImportHelp { margin: 1rem 0; color: #586579; font-size: 1.3rem; line-height: 1.7; }
.scheduleImportOpen { width: 100%; min-height: 4.4rem; margin-top: 1rem; padding: 1rem; border: 0; border-radius: .8rem; color: #fff; background: #147bff; font-size: 1.5rem; font-weight: 700; cursor: pointer; }
.scheduleModalBody select { width: 100%; min-height: 4.4rem; padding: 0 1.2rem; border: 1px solid #d8e1ee; border-radius: .8rem; background: #fff; color: #111; font: inherit; font-weight: 500; }
.scheduleImportBody { padding: 2.4rem; color: #26334a; font-size: 1.4rem; }
.scheduleImportModal .scheduleModalBox { display: flex; flex-direction: column; overflow: hidden; }
.scheduleImportModal .scheduleModalHead, .scheduleImportModal .scheduleModalFoot { flex: 0 0 auto; }
.scheduleImportModal .scheduleImportBody { min-height: 0; overflow-y: auto; }
.scheduleImportBody, .scheduleImportTableWrap { overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
.scheduleImportModal .scheduleModalFoot button { padding: 0 1.4rem; }
.scheduleImportBody > p { overflow-wrap: anywhere; }
[data-import-filename] { font-weight: 700; margin-bottom: .8rem; }
[data-import-message] { line-height: 1.6; }
.scheduleImportCounts { display: flex; gap: 1rem; flex-wrap: wrap; margin: 2.4rem 0; }
.scheduleImportCounts > div { flex: 1 1 10rem; text-align: center; padding: 1.2rem; background: #f5f8fc; border-radius: 1rem; }
.scheduleImportCounts strong { display: block; font-size: 2.2rem; margin-bottom: .5rem; }
.scheduleImportCounts span { color: #586579; }
.scheduleImportTableWrap { max-height: 36vh; overflow: auto; border-bottom: 1px solid #e7edf5; }
.scheduleImportTable { width: 100%; border-collapse: collapse; table-layout: fixed; text-align: left; font-size: 1.3rem; }
.scheduleImportTable th { position: sticky; top: 0; background: #fff; z-index: 1; }
.scheduleImportTable th, .scheduleImportTable td { padding: 1.2rem .8rem; border-bottom: 1px solid #e7edf5; vertical-align: top; overflow-wrap: anywhere; line-height: 1.6; }
.scheduleImportTable th:first-child { width: 6rem; }
.scheduleImportTable th:last-child { width: 35%; }
.scheduleImportTable small { display: block; color: #586579; font-size: 1.2rem; }
.scheduleImportRow-error td:last-child, .scheduleImportRow-failed td:last-child { color: #c42b36; font-weight: 700; }
.scheduleImportRow-registered td:last-child { color: #137344; font-weight: 700; }
.scheduleImportModal button:disabled { cursor: wait; opacity: .5; }
.scheduleImportModal button[hidden] { display: none !important; }
.scheduleImportModal .scheduleModalBox:focus { outline: none; }
.scheduleDeleteEntry { margin-top: 1.6rem; padding: 2rem; border: 1px solid #ffc250; border-radius: 1.6rem;}
.scheduleDeleteEntry strong { font-size: 1.8rem; color: #e74c10; }
.scheduleDeleteEntry p, [data-delete-details] { margin: 1rem 0; color: #586579; font-size: 1.3rem; line-height: 1.7; }
.scheduleDeleteEntry button { width: 100%; min-height: 4.4rem; padding: 1rem; border: 1px solid #f7a50c;; border-radius: .8rem; background: #fff; color: #d6692b; font-size: 1.4rem; font-weight: 700; cursor: pointer; }
.scheduleDeleteConfirm { display: flex; align-items: flex-start; gap: .8rem; margin: 2rem 0 .5rem; line-height: 1.7; }
.scheduleDeleteConfirm input { flex-shrink: 0; margin-top: .5rem; }
.scheduleDeleteConfirm[hidden] { display: none; }
.scheduleModalFoot .scheduleBulkDeleteBtn { background: #147bff; color: #fff; }
.scheduleDeleteToolbar { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.2rem 0; }
.scheduleDeleteToolbar label { display: flex; align-items: center; gap: .8rem; cursor: pointer; }
.scheduleDeleteTable th:last-child { width: 6rem; }
.scheduleDeleteTable input { width: 1.6rem; height: 1.6rem; cursor: pointer; }
@media (max-width: 600px) {
    .scheduleImportBody { padding: 1.6rem; }
    .scheduleImportCounts { gap: .5rem; }
    .scheduleImportCounts > div { flex-basis: 35%; }
    .scheduleImportTable th:first-child { width: 4.8rem; white-space: nowrap; font-size: 1.2rem; }
    .scheduleImportTable th:last-child { width: 38%; }
    .scheduleDeleteTable th:last-child { width: 4.8rem; }
    .scheduleImportModal .scheduleModalFoot { padding: 1.2rem 1.6rem 1.6rem; }
}
