.report-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:20px; }
.report-summary-card { padding:18px; display:grid; gap:6px; border:1px solid #dfe7eb; border-radius:17px; text-align:left; color:#10233a; background:#fff; box-shadow:0 7px 24px rgba(16,35,58,.045); }
.report-summary-card:hover { border-color:#9ccbc7; transform:translateY(-1px); }
.report-summary-card span { color:#607487; font-size:12px; font-weight:750; }
.report-summary-card strong { font-size:30px; letter-spacing:-.04em; }
.report-summary-card small { color:#8796a4; font-size:10px; }
.report-center-toolbar { grid-template-columns:minmax(280px,1fr) 220px; }
.report-center-table td:last-child { min-width:260px; }
.report-center-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.report-center-status { display:inline-flex; padding:6px 9px; border-radius:999px; font-size:10px; font-weight:800; white-space:nowrap; }
.status-review { color:#8a4b08; background:#fff3d9; }
.status-not_sent { color:#7a3e00; background:#fff0e2; }
.status-prepared { color:#285f87; background:#eaf5ff; }
.status-overdue { color:#a3261d; background:#fff0ef; }
.status-sent { color:#146b48; background:#e8f7ef; }
.status-missing { color:#7c2d12; background:#fef0e8; }
.report-sent-meta { margin-top:6px; display:block; color:#718394; font-size:10px; }
.report-center-empty { min-height:240px; display:grid; place-content:center; justify-items:center; gap:7px; color:#718394; text-align:center; }
.report-center-empty strong { color:#223b50; }
.report-center-help { margin-top:18px; padding:17px 20px; border:1px solid #cfe5e3; border-radius:15px; color:#49687a; background:#eef9f8; }
.report-center-help strong { display:block; margin-bottom:5px; color:#0b6d69; }
.report-center-help p { margin:0; font-size:12px; line-height:1.55; }
.report-center-loading { min-height:55vh; display:grid; place-content:center; justify-items:center; gap:12px; color:#617487; }
.report-center-loading span { width:38px; height:38px; border:4px solid #d9e5e7; border-top-color:#0f827e; border-radius:50%; animation:report-center-spin .8s linear infinite; }
@keyframes report-center-spin { to { transform:rotate(360deg); } }
#report-center-toast { position:fixed; z-index:500; right:20px; bottom:20px; display:grid; gap:8px; }
.report-center-toast { max-width:380px; padding:13px 16px; border-radius:12px; color:#fff; background:#0b6d69; box-shadow:0 16px 42px rgba(16,35,58,.24); font-size:12px; font-weight:700; }
.report-center-toast.error { background:#9f2d25; }
.report-dashboard-summary { margin:18px 0 22px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.report-dashboard-summary button { min-height:72px; padding:14px 16px; display:flex; align-items:center; justify-content:space-between; gap:12px; border:1px solid #dce6e9; border-radius:15px; color:#173248; background:#fff; }
.report-dashboard-summary button:hover { border-color:#86c1bd; }
.report-dashboard-summary button.attention { border-color:#f1b6b0; background:#fff7f6; }
.report-dashboard-summary span { font-size:11px; font-weight:750; }
.report-dashboard-summary strong { color:#0f827e; font-size:22px; }
.worktime-section { scroll-margin-top:110px; }
.worktime-labels,.worktime-row { display:grid; grid-template-columns:1.15fr .82fr .58fr .58fr .55fr .55fr 1fr 38px; gap:7px; }
.worktime-labels { margin-bottom:7px; padding:0 5px; color:#718394; font-size:9px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.worktime-list { display:grid; gap:8px; }
.worktime-row input { min-width:0; min-height:41px; padding:0 9px; border:1px solid #d9e2e7; border-radius:10px; color:#10233a; background:#fff; }
.worktime-row input:focus { border-color:#20a6a0; outline:none; box-shadow:0 0 0 4px rgba(32,166,160,.12); }
.worktime-row button { border:0; border-radius:10px; color:#b42318; background:#fff2f1; font-size:18px; }
.worktime-footer { margin-top:14px; padding:14px; display:flex; align-items:center; justify-content:space-between; gap:16px; border-radius:13px; background:#f6f9fa; }
.worktime-totals { display:flex; flex-wrap:wrap; gap:10px 22px; color:#607487; font-size:11px; }
.worktime-totals strong { margin-left:4px; color:#10233a; }
@media (max-width:1100px) { .report-summary-grid,.report-dashboard-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } .worktime-labels { display:none; } .worktime-row { grid-template-columns:repeat(4,minmax(0,1fr)) 38px; } }
@media (max-width:720px) { .report-summary-grid,.report-dashboard-summary,.report-center-toolbar { grid-template-columns:1fr; } .report-center-actions { justify-content:flex-start; } .worktime-row { grid-template-columns:1fr 1fr; padding:12px; border:1px solid #dfe7eb; border-radius:13px; } .worktime-row button { min-height:38px; } .worktime-footer { align-items:stretch; flex-direction:column; } .worktime-footer .doc-btn { width:100%; } }
