*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{color:#1a1a2e;background:#f4f6f8;font-family:Inter,Segoe UI,system-ui,sans-serif}input,select,button,textarea{font-family:inherit}.page-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.page-header h2{color:#1a1a2e;font-size:1.4rem}.stat-bar{flex-wrap:wrap;gap:14px;display:flex}.report-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:20px 22px}.section-heading{text-transform:uppercase;color:#999;letter-spacing:.6px;margin-bottom:12px;font-size:.82rem;font-weight:700}.table-wrap{border-radius:12px;overflow-x:auto;box-shadow:0 1px 4px #0000000f}table{border-collapse:collapse;background:#fff;width:100%;font-size:.95rem}th{text-align:left;color:#666;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;background:#f5f7fa;border-bottom:2px solid #e8ecf0;padding:13px 16px;font-size:.78rem;font-weight:700}td{color:#222;vertical-align:middle;border-bottom:1px solid #f0f2f5;padding:12px 16px}.t-row:hover{cursor:pointer;background:#f0f7f0}.t-row:last-child td{border-bottom:none}.empty{text-align:center;color:#aaa;background:#fff;border:1px solid #eee;border-radius:12px;padding:72px 40px;font-size:1rem}.modal-bg{z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f14288c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:18px;width:95vw;max-width:500px;max-height:90vh;padding:36px 36px 28px;animation:.18s popIn;overflow-y:auto;box-shadow:0 20px 60px #0003}.modal.wide{max-width:660px}@keyframes popIn{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal h2{color:#1a1a2e;margin-bottom:24px;font-size:1.25rem}.modal-top-bar{justify-content:flex-end;margin-bottom:-8px;display:flex}.modal-close-btn{cursor:pointer;color:#666;background:#f5f5f5;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;line-height:1;transition:background .15s;display:flex}.modal-close-btn:hover{color:#222;background:#e0e0e0}.form-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:28px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field.span2{grid-column:span 2}.field label{color:#666;letter-spacing:.2px;font-size:.8rem;font-weight:600}.field input,.field select{color:#1a1a2e;background:#fff;border:1.5px solid #e0e0e0;border-radius:9px;outline:none;padding:10px 13px;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus{border-color:#2e7d32;box-shadow:0 0 0 3px #2e7d321a}.modal-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.save-btn{color:#fff;cursor:pointer;background:#2e7d32;border:none;border-radius:9px;padding:11px 26px;font-size:.95rem;font-weight:600;transition:background .15s}.save-btn:hover{background:#1b5e20}.cancel-btn{color:#555;cursor:pointer;background:#f0f0f0;border:none;border-radius:9px;padding:11px 18px;font-size:.95rem;transition:background .15s}.cancel-btn:hover{background:#e0e0e0}.delete-btn{color:#c62828;cursor:pointer;background:#fff0f0;border:1.5px solid #f5c6c6;border-radius:9px;margin-left:auto;padding:10px 18px;font-size:.95rem;transition:all .15s}.delete-btn:hover{color:#fff;background:#c62828;border-color:#c62828}
