.flash{display:flex;align-items:center;justify-content:space-between;gap:14px}.flash-action{flex:0 0 auto;font-weight:700;text-decoration:underline}.todo-section{margin:0 0 22px}.todo-section-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 10px}.todo-section-head h2{margin:0;font-size:18px}.todo-section-head span{font-size:13px;color:var(--muted,#64748b)}.todo-card small{display:block;margin-top:8px;color:inherit;opacity:.78}.month-close-checklist{display:grid;gap:10px;margin:14px 0}.month-close-item{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid #dbe7df;border-radius:10px;background:#fff}.month-close-item.block{border-color:#fecaca;background:#fff7f7}.month-close-item.warning{border-color:#fde68a;background:#fffbeb}.month-close-item a{white-space:nowrap}.salary-sheet-wrap{overflow:auto;max-height:68vh;border:1px solid #dbe7df;border-radius:12px;background:#fff}.salary-sheet{border-collapse:separate;border-spacing:0;min-width:2900px;margin:0}.salary-sheet th{position:sticky;top:0;z-index:3;background:#eef7f1;white-space:nowrap}.salary-sheet td,.salary-sheet th{padding:7px 8px;border-right:1px solid #e5eee8;border-bottom:1px solid #e5eee8}.salary-sheet .sticky-name{position:sticky;left:0;z-index:2;background:#fff;min-width:130px}.salary-sheet th.sticky-name{z-index:4;background:#eef7f1}.salary-sheet .sticky-name small{display:block;font-weight:400;color:#64748b}.salary-cell{min-width:92px;width:92px;padding:7px 6px;text-align:right}.salary-batch-form .actions{position:sticky;bottom:0;z-index:5;background:rgba(255,255,255,.96);padding:12px;border-top:1px solid #dbe7df}.compact-bulk-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.compact-bulk-form input{min-width:260px}@media(max-width:900px){.month-close-item{grid-template-columns:1fr}.salary-sheet-wrap{max-height:62vh}.flash{align-items:flex-start;flex-direction:column}}
