.mp-bulk-actions{display:flex;flex:none;gap:6px;align-items:center;margin-left:auto}
.mp-bulk-actions [data-mpa="batch"]{background:var(--seed-primary);border-color:var(--seed-primary);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--seed-primary) 22%,transparent)}
.mp-bulk-actions [data-mpa="import"]{background:var(--bg-violet-soft);border-color:color-mix(in srgb,var(--seed-primary) 28%,var(--line));color:var(--seed-primary)}
.mp-bulk-actions [data-mpa="batch"][aria-pressed="true"]{background:color-mix(in srgb,var(--seed-primary) 82%,#000);border-color:var(--seed-primary);color:#fff}
@media(min-width:761px) and (max-width:1150px){#page-monthly-plan .mp-list-toolbar{flex-wrap:wrap;overflow-x:visible}#page-monthly-plan .mp-list-filters{flex:1 1 398px}}
@media(max-width:760px){#page-monthly-plan .mp-list-toolbar{flex-wrap:wrap;overflow-x:visible}#page-monthly-plan .mp-list-filters{flex:1 1 100%;min-width:0;flex-wrap:wrap}#page-monthly-plan .mp-list-filters label{flex:1 1 calc(50% - 6px);min-width:0}#page-monthly-plan .mp-list-filters label:last-of-type{flex:1 1 calc(50% - 6px);min-width:0}}
.mp-batch-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-4px 0 16px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--seed-primary) 24%,var(--line));border-left:3px solid var(--seed-primary);border-radius:12px;background:var(--bg-surface);box-shadow:var(--shadow-sm)}
.mp-batch-summary{display:flex;align-items:center;gap:10px;flex:none}
.mp-batch-summary strong,.mp-batch-summary [data-mpa-selected-count]{display:block;line-height:1.4}
.mp-batch-summary strong{color:var(--txt-1);font-size:13px;font-weight:700}
.mp-batch-summary [data-mpa-selected-count]{color:var(--seed-primary);font-size:12px;font-weight:650;font-variant-numeric:tabular-nums}
.mp-batch-hint{flex:1 1 160px;color:var(--txt-3);font-size:12px}
.mp-batch-bar[data-has-selection="true"] .mp-batch-hint{display:none}
.mp-batch-action-group{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-left:auto}
.mp-batch-action-group .btn{white-space:nowrap;border-radius:9px;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}
.mp-batch-action-group .btn:not(:disabled):hover{box-shadow:0 3px 10px color-mix(in srgb,var(--seed-primary) 12%,transparent)}
.mp-batch-action-group .mp-batch-review,.mp-batch-action-group .mp-batch-performance{background:var(--bg-violet-soft);border-color:color-mix(in srgb,var(--seed-primary) 24%,var(--line));color:var(--seed-primary)}
.mp-batch-action-group .mp-batch-return{background:var(--bg-orange-soft);border-color:color-mix(in srgb,var(--orange) 24%,var(--line));color:var(--orange)}
.mp-batch-action-group .mp-batch-delete{background:var(--bg-red-soft);border-color:color-mix(in srgb,var(--red) 24%,var(--line));color:var(--red)}
.mp-batch-action-group .btn:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}
.mp-batch-exit{flex:none;padding:7px 9px;border:0;border-radius:8px;background:transparent;color:var(--txt-3);font-size:12px;font-weight:600;cursor:pointer}
.mp-batch-exit:hover{background:var(--bg-soft);color:var(--txt-1)}
.mp-batch-bar :focus-visible{outline:2px solid var(--seed-primary);outline-offset:2px}
.mp-month-rows>tr.is-batch-selected{background:var(--bg-violet-soft)}
.mp-month-rows>tr.is-batch-selected:hover{background:color-mix(in srgb,var(--seed-primary) 12%,var(--bg-surface))}
.mp-batch-cell{width:48px;min-width:48px;text-align:center!important}
.mp-batch-cell input{width:16px;height:16px;accent-color:var(--seed-primary);cursor:pointer}
.mp-month-rows.is-collapsed>tr:first-child>.mp-batch-cell>input{visibility:visible!important}
@media(max-width:760px){.mp-batch-bar{align-items:flex-start}.mp-batch-hint{flex-basis:calc(100% - 55px)}.mp-batch-action-group{order:3;width:100%;margin-left:0}.mp-batch-exit{margin-left:auto}}
.mpa-reason{display:grid;gap:6px;margin:12px 0;color:var(--txt-2);font-weight:600}
.mpa-reason textarea{width:100%;resize:vertical;color:var(--txt-1)}
.mp-status.unreported{background:var(--bg-soft);color:var(--txt-3)}
.mp-status.submitted{background:var(--bg-violet-soft);color:var(--violet)}
.mp-status.confirmed{background:var(--bg-green-soft);color:var(--green)}
.mp-status.returned{background:var(--bg-red-soft);color:var(--red)}
.mp-status.modifying{background:var(--bg-orange-soft);color:var(--orange)}
.mp-action-dialog{width:min(680px,calc(100vw - 32px));max-height:85vh;margin:auto;padding:0;border:1px solid var(--line);border-radius:18px;background:var(--bg-surface);color:var(--txt-1);box-shadow:var(--shadow-lg)}
.mp-action-dialog button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.mp-action-dialog::backdrop{background:rgba(20,16,40,.35)}
.mp-action-dialog header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;border-bottom:1px solid var(--line)}
.mp-action-dialog h2{font-size:18px;margin:0}.mp-action-body{padding:20px 22px;font-size:14px;line-height:1.65}.mp-action-body p{margin:0 0 12px}
.mpa-records{max-height:32vh;overflow:auto;margin:12px 0;padding:12px;background:var(--bg-soft);border-radius:10px}.mpa-records label{display:flex;gap:10px;align-items:center;margin:8px 0}
.mpa-file-tools{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.mpa-file-tools input{max-width:220px;font-size:12px}
.mp-action-dialog :focus-visible{outline:2px solid var(--seed-primary);outline-offset:2px}
.mp-action-dialog:has(.mpa-sync){width:min(560px,calc(100vw - 32px))}
.mp-action-dialog:has(.mpa-sync) header{background:linear-gradient(120deg,var(--bg-violet-soft),var(--bg-surface));padding:18px 22px}
.mp-action-dialog:has(.mpa-sync) h2{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:750}
.mp-action-dialog:has(.mpa-sync) h2::before{content:'';width:4px;height:20px;border-radius:3px;background:var(--seed-primary)}
.mpa-sync-status{display:flex;align-items:center;gap:14px;margin:2px 0 22px}
.mpa-sync-icon{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:15px;background:var(--bg-violet-soft);color:var(--seed-primary);font-size:24px;font-weight:700}
.mpa-sync-status strong{font-size:17px;color:var(--txt-1)}.mpa-sync-status p{font-size:12px;color:var(--txt-3);margin:3px 0 0}
.mpa-sync-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
.mpa-sync-stats>div{padding:14px;border-radius:14px;background:var(--bg-soft)}.mpa-sync-stats span{display:block;font-size:12px;color:var(--txt-2)}.mpa-sync-stats strong{display:block;font-size:27px;color:var(--seed-primary);font-variant-numeric:tabular-nums;margin-top:6px;line-height:1.2}.mpa-sync-stats small{font-size:11px;font-weight:400;color:var(--txt-3);margin-left:6px}
.mpa-sync-check{font-size:12px;color:var(--txt-2);margin-bottom:18px}.mpa-sync-note{border-top:1px solid var(--line);padding:12px 0 0;font-size:12px;color:var(--txt-3)}.mpa-sync-note summary{cursor:pointer;color:var(--txt-2)}.mpa-sync-note p{margin:10px 0 0;line-height:1.7}.mpa-sync-note+.mpa-sync-note{margin-top:14px}
@media(max-width:480px){.mp-action-dialog:has(.mpa-sync) .mp-action-body{padding:18px 16px}.mpa-sync-stats{gap:7px}.mpa-sync-stats>div{padding:12px 9px}.mpa-sync-status strong{font-size:16px}}
.mp-import-dialog{width:min(720px,calc(100vw - 28px));max-height:min(760px,calc(100dvh - 28px));overflow:auto;border-radius:22px}
.mp-import-dialog::backdrop{background:rgba(20,16,40,.48)}
.mp-import-dialog header{position:sticky;top:0;z-index:2;padding:22px 28px;background:var(--bg-surface)}
.mp-import-dialog h2{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:700}
.mp-import-dialog h2::before{content:"";width:5px;height:26px;border-radius:8px;background:var(--seed-primary)}
.mp-import-dialog .mp-action-body{padding:24px 28px 0}
.mpa-import-intro{color:var(--txt-2);margin-bottom:20px;line-height:1.75}
.mpa-import-step{display:grid;grid-template-columns:34px minmax(0,1fr);gap:14px;padding:18px;margin:12px 0;border:1px solid var(--line);border-radius:16px;background:var(--bg-soft)}
.mpa-step-no{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--bg-violet-soft);color:var(--seed-primary);font-size:13px;font-weight:700}
.mpa-import-step strong{display:block;font-size:15px;color:var(--txt-1);margin:3px 0 7px}
.mpa-import-step p{font-size:13px;color:var(--txt-3);line-height:1.7}
.mpa-template-btn{color:var(--seed-primary)!important;border-color:var(--seed-primary)!important;background:var(--bg-surface)!important}
.mpa-template-btn:hover{background:var(--bg-violet-soft)!important;transform:translateY(-1px)}
.mpa-upload{display:flex;align-items:center;gap:10px;min-height:56px;padding:8px 10px;border:1px dashed var(--seed-primary);border-radius:12px;background:var(--bg-surface);color:var(--txt-2);cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s}
.mpa-upload:hover,.mpa-upload:focus-within{background:var(--bg-violet-soft);box-shadow:0 0 0 3px var(--bg-violet-soft)}
.mpa-upload input{position:absolute;width:1px;height:1px;opacity:0}
.mpa-upload-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:9px;background:var(--bg-violet-soft);color:var(--seed-primary);font-size:21px}
.mpa-upload [data-mpa-file-name]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mpa-upload-action{margin-left:auto;flex:none;padding:6px 11px;border-radius:8px;background:var(--bg-violet-soft);color:var(--seed-primary);font-weight:600}
.mpa-import-preview{margin:16px 0;padding:16px;border:1px solid var(--line);border-radius:14px}
.mpa-import-preview h3{font-size:14px;margin:0 0 10px}.mpa-preview-counts{display:flex;flex-wrap:wrap;gap:7px}.mpa-preview-counts span{padding:5px 9px;border-radius:8px;background:var(--bg-violet-soft);color:var(--txt-2);font-size:12px}.mpa-import-preview .mpa-records{margin-bottom:0;max-height:100px}
.mpa-import-note{color:var(--txt-3);font-size:12px;margin:16px 0 6px!important}.mpa-import-message{color:var(--seed-primary);min-height:20px;font-size:13px}
.mpa-import-footer{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:10px;margin:16px -28px 0;padding:16px 28px;background:var(--bg-surface);border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(30,26,76,.04)}
@media(max-width:600px){.mp-import-dialog header{padding:16px 18px}.mp-import-dialog .mp-action-body{padding:18px 18px 0}.mpa-import-step{padding:13px;gap:8px}.mpa-import-footer{margin-left:-18px;margin-right:-18px;padding:13px 18px}.mpa-upload-action{display:none}}
@media(prefers-reduced-motion:reduce){.mpa-upload,.mpa-template-btn{transition:none}}
.mp-month-table{min-width:1220px}.mp-month-table th:last-child,.mp-month-table td:last-child{min-width:520px}.mp-month-table .mp-actions{flex-wrap:nowrap}.mp-month-table .mp-actions button{white-space:nowrap}.mp-month-table .mp-actions button:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}

/* 月度计划行操作：主次、警示及禁用颜色；不改变业务状态。 */
#mpBody .mp-month-table .mp-actions .btn{box-shadow:none;background:var(--bg-surface);color:var(--txt-2);border:1px solid var(--line);transition:background-color .16s ease,border-color .16s ease,color .16s ease}
#mpBody .mp-month-table .mp-actions [data-mp-create],#mpBody .mp-month-table .mp-actions [data-mp-confirm]{background:var(--seed-primary);border-color:var(--seed-primary);color:#fff}
#mpBody .mp-month-table .mp-actions [data-mpa="performance-row"]{background:var(--bg-violet-soft);border-color:color-mix(in srgb,var(--seed-primary) 28%,var(--line));color:var(--seed-primary)}
#mpBody .mp-month-table .mp-actions [data-mp-return]{background:var(--bg-orange-soft);border-color:color-mix(in srgb,var(--orange) 35%,var(--line));color:var(--orange)}
#mpBody .mp-month-table .mp-actions [data-mpa-reset]{background:var(--bg-surface);border-color:color-mix(in srgb,var(--red) 45%,var(--line));color:var(--red);margin-left:6px}
#mpBody .mp-month-table .mp-actions .btn:not(:disabled):hover{filter:brightness(.96);border-color:currentColor;box-shadow:none}
#mpBody .mp-month-table .mp-actions .btn:focus-visible{outline:2px solid var(--seed-primary);outline-offset:3px}
#mpBody .mp-month-table .mp-actions .btn:disabled{background:var(--bg-soft);color:var(--txt-2);border-color:var(--line);opacity:.4;cursor:not-allowed;box-shadow:none;filter:none}

dialog.bulk-delete-dialog{width:min(620px,calc(100vw - 32px));max-height:min(760px,calc(100dvh - 32px));border:1px solid var(--line);border-radius:18px;background:var(--bg-surface);color:var(--txt-1);box-shadow:var(--shadow-lg)}
dialog.bulk-delete-dialog[open]{display:flex;flex-direction:column}
dialog.bulk-delete-dialog>header{flex:none;padding:18px 24px;background:linear-gradient(120deg,var(--bg-red-soft),var(--bg-surface));border-bottom:1px solid var(--line)}
dialog.bulk-delete-dialog>header h2{display:flex;align-items:center;gap:10px;font-size:18px}
dialog.bulk-delete-dialog>header h2::before{content:"";width:4px;height:22px;border-radius:4px;background:var(--red,var(--danger))}
dialog.bulk-delete-dialog .mp-action-body,dialog.bulk-delete-dialog .ms-action-body{overflow-y:auto;min-height:0;padding:22px 24px 0}
.bulk-delete-intro{display:flex;gap:14px;align-items:flex-start;padding:16px;border:1px solid color-mix(in srgb,var(--red,var(--danger)) 24%,var(--line));border-radius:14px;background:var(--bg-red-soft)}
.bulk-delete-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;background:var(--bg-surface);color:var(--red,var(--danger));font-size:20px;font-weight:800}
.bulk-delete-intro strong{display:block;margin:1px 0 4px;font-size:16px;line-height:1.4}.bulk-delete-intro p{margin:0!important;color:var(--txt-2);font-size:13px;line-height:1.55}
.bulk-delete-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}
.bulk-delete-stats>div{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--bg-soft)}
.bulk-delete-stats span{display:block;color:var(--txt-2);font-size:12px}.bulk-delete-stats strong{display:block;margin-top:4px;color:var(--txt-1);font-size:22px;line-height:1.2;font-variant-numeric:tabular-nums}.bulk-delete-stats>div:nth-child(2) strong{color:var(--red,var(--danger))}
.bulk-delete-section{margin:16px 0}.bulk-delete-section h3{margin:0 0 9px;font-size:13px;color:var(--txt-1)}
.bulk-delete-records{max-height:178px;overflow-y:auto;border:1px solid var(--line);border-radius:12px;background:var(--bg-surface)}
.bulk-delete-record{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 13px}.bulk-delete-record+.bulk-delete-record{border-top:1px solid var(--line)}
.bulk-delete-record strong{display:block;font-size:13px}.bulk-delete-record span:not(.bulk-delete-tag){display:block;margin-top:2px;color:var(--txt-3);font-size:11px}
.bulk-delete-tag{flex:none;padding:4px 8px;border-radius:999px;background:var(--bg-red-soft);color:var(--red,var(--danger));font-size:11px;font-weight:700}
.bulk-delete-section.is-skipped .bulk-delete-tag{background:var(--bg-soft);color:var(--txt-2)}
.bulk-delete-warning{margin:16px 0 0!important;color:var(--txt-2);font-size:12px;line-height:1.6}.bulk-delete-message{margin:10px 0 0!important;color:var(--red,var(--danger));font-size:12px}.bulk-delete-message:empty{display:none}
.bulk-delete-footer{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:10px;margin:18px -24px 0;padding:14px 24px;background:var(--bg-surface);border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(30,26,76,.04)}
.bulk-delete-footer .btn{min-width:100px}
.bulk-delete-footer .btn.danger,.bulk-delete-footer .btn.ms-danger{display:inline-flex;align-items:center;justify-content:center;background:var(--red);border-color:var(--red);color:#fff}
@media(max-width:600px){dialog.bulk-delete-dialog>header{padding:16px 18px}dialog.bulk-delete-dialog .mp-action-body,dialog.bulk-delete-dialog .ms-action-body{padding:18px 18px 0}.bulk-delete-footer{margin-left:-18px;margin-right:-18px;padding:13px 18px}.bulk-delete-footer .btn{min-width:0}}
