.week-ledger[data-v-0b0d4e4c]{padding:0;background:#f5f7fa;min-height:100%}.report-header[data-v-0b0d4e4c]{position:relative;padding:20px 32px 20px;overflow:hidden}.header-bg[data-v-0b0d4e4c]{position:absolute;inset:0;background:linear-gradient(135deg,#1e2d4a,#2a3a5e);z-index:0}.header-content[data-v-0b0d4e4c]{position:relative;z-index:1;color:#fff}.header-subtitle[data-v-0b0d4e4c]{font-size:12px;letter-spacing:2px;color:hsla(0,0%,100%,.65);font-weight:500}.header-title[data-v-0b0d4e4c]{font-size:26px;font-weight:600;margin:8px 0 6px;color:#fff}.header-desc[data-v-0b0d4e4c]{font-size:13px;color:hsla(0,0%,100%,.7);margin:0}.toolbar[data-v-0b0d4e4c]{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:14px 10px;margin:16px 0;border-radius:6px;box-shadow:0 1px 4px rgba(0,0,0,.04)}.toolbar-left[data-v-0b0d4e4c]{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:1}.toolbar-right[data-v-0b0d4e4c]{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:16px}.mode-label[data-v-0b0d4e4c]{font-size:13px;color:#888}.mode-btn[data-v-0b0d4e4c]{padding:4px 14px;font-size:12px;color:#555;background:#fff;border:1px solid #dcdfe6;border-radius:4px;cursor:pointer;user-select:none}.mode-btn.active[data-v-0b0d4e4c]{background:#1e2d4a;color:#fff;border-color:#1e2d4a}.mode-btn[data-v-0b0d4e4c]:hover:not(.active){background:#f0f2f5}.week-list[data-v-0b0d4e4c]{padding:0 0 24px}.week-card[data-v-0b0d4e4c]{background:#fff;border-radius:6px;margin-bottom:12px;box-shadow:0 1px 4px rgba(0,0,0,.04);overflow:hidden;transition:box-shadow .2s}.week-card[data-v-0b0d4e4c]:hover{box-shadow:0 2px 10px rgba(0,0,0,.08)}.week-header[data-v-0b0d4e4c]{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;cursor:pointer}.week-info[data-v-0b0d4e4c]{flex:1;min-width:0}.week-title[data-v-0b0d4e4c]{font-size:15px;font-weight:600;color:#1e2d4a;margin-bottom:4px}.week-meta[data-v-0b0d4e4c]{font-size:12px;color:#888;display:flex;align-items:center;gap:6px}.week-meta .divider[data-v-0b0d4e4c]{color:#ccc}.week-stats[data-v-0b0d4e4c]{display:grid;grid-template-columns:84px 84px 220px auto;align-items:center;column-gap:18px}.stat-cell[data-v-0b0d4e4c]{display:flex;align-items:baseline;font-size:13px;color:#555}.stat-cell .stat-value[data-v-0b0d4e4c]{font-size:16px;font-weight:600;color:#1e2d4a;margin-right:4px;display:inline-block;min-width:28px;text-align:right;font-variant-numeric:tabular-nums}.stat-cell.benefit-stat[data-v-0b0d4e4c]{align-items:center;gap:6px}.stat-cell.benefit-stat .benefit-label[data-v-0b0d4e4c]{color:#1e2d4a;font-weight:500}.stat-cell.benefit-stat .record-link[data-v-0b0d4e4c]{color:#1e2d4a;text-decoration:none;margin-left:8px;cursor:pointer;white-space:nowrap}.stat-cell.benefit-stat .record-link[data-v-0b0d4e4c]:hover{text-decoration:underline}.status-tags[data-v-0b0d4e4c]{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.status-tag[data-v-0b0d4e4c]{display:inline-block;min-width:62px;box-sizing:border-box;text-align:center;padding:2px 10px;border-radius:12px;font-size:12px;white-space:nowrap}.status-tag.danger[data-v-0b0d4e4c]{background:#ffebee;color:#c62828}.status-tag.warning[data-v-0b0d4e4c]{background:#fff4e6;color:#e65100}.status-tag.success[data-v-0b0d4e4c]{background:#e8f5e9;color:#2e7d32}.status-tag.info[data-v-0b0d4e4c]{background:#e3f2fd;color:#1565c0}.status-tag.revise[data-v-0b0d4e4c]{background:#fde0ea;color:#c2185b}.status-tag.neutral[data-v-0b0d4e4c]{background:#eceff1;color:#607d8b}.status-tag.primary[data-v-0b0d4e4c]{background:#d9ecff;color:#2d8cf0}.status-tag.delay[data-v-0b0d4e4c]{background:#fff4e6;color:#e65100}.status-tag.normal[data-v-0b0d4e4c]{background:#e8f5e9;color:#2e7d32}.empty-tip[data-v-0b0d4e4c]{padding:32px 0;text-align:center;color:#909399;font-size:13px;background:#fff;border-radius:6px}.week-content[data-v-0b0d4e4c]{border-top:1px solid #f0f2f5;padding:14px 18px;background:#fafbfc}.empty-projects[data-v-0b0d4e4c]{color:#888;font-size:13px;padding:8px 4px}.week-remark[data-v-0b0d4e4c]{margin-top:10px;padding:12px 14px;background:#fff;border:1px dashed #dcdfe6;border-radius:4px}.week-remark-label[data-v-0b0d4e4c]{font-size:12px;color:#909399;margin-bottom:6px}.week-remark-content[data-v-0b0d4e4c]{font-size:13px;color:#333;line-height:1.7;white-space:pre-wrap}.project-card[data-v-0b0d4e4c]{background:#f7f8fa;border-radius:4px;padding:12px 14px;margin-bottom:10px;box-shadow:0 1px 2px rgba(0,0,0,.03)}.project-card[data-v-0b0d4e4c]:last-child{margin-bottom:0}.project-header[data-v-0b0d4e4c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.project-title-wrap[data-v-0b0d4e4c]{display:flex;align-items:center;gap:8px;min-width:0}.project-index[data-v-0b0d4e4c]{background:#1e2d4a;color:#fff;padding:2px 8px;border-radius:3px;font-size:12px;flex-shrink:0}.project-name[data-v-0b0d4e4c]{font-size:14px;font-weight:600;color:#1e2d4a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-meta[data-v-0b0d4e4c]{display:flex;align-items:center;gap:14px;font-size:12px;color:#888;flex-shrink:0}.project-meta .cat-tag[data-v-0b0d4e4c]{padding:1px 8px;border-radius:10px;color:#409eff;background:#ecf5ff;border:1px solid #d9ecff}.project-meta .project-hours[data-v-0b0d4e4c]{color:#555;font-weight:500;font-variant-numeric:tabular-nums}.project-meta .project-status[data-v-0b0d4e4c]{padding:1px 10px;border-radius:10px;font-size:12px}.project-meta .project-status.danger[data-v-0b0d4e4c]{background:#ffebee;color:#c62828}.project-meta .project-status.warning[data-v-0b0d4e4c]{background:#fff4e6;color:#e65100}.project-meta .project-status.success[data-v-0b0d4e4c]{background:#e8f5e9;color:#2e7d32}.project-meta .project-status.info[data-v-0b0d4e4c]{background:#e3f2fd;color:#1565c0}.project-meta .project-status.primary[data-v-0b0d4e4c]{background:#d9ecff;color:#2d8cf0}.project-meta .project-status.delay[data-v-0b0d4e4c]{background:#fff4e6;color:#e65100}.project-meta .project-status.normal[data-v-0b0d4e4c]{background:#e8f5e9;color:#2e7d32}.project-body[data-v-0b0d4e4c]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.project-col[data-v-0b0d4e4c]{min-width:0}.project-col .col-label[data-v-0b0d4e4c]{font-size:12px;color:#888;margin-bottom:4px}.project-col .col-content[data-v-0b0d4e4c]{font-size:13px;color:#333;line-height:1.55;word-break:break-word}.main-feedback[data-v-0b0d4e4c]{margin-top:12px;padding:10px 14px;background:#fdecec;border:1px solid #fad5d5;border-radius:4px;display:flex;align-items:baseline;gap:10px}.main-feedback .feedback-tag[data-v-0b0d4e4c]{color:#c62828;font-weight:600;font-size:13px;flex-shrink:0}.main-feedback .feedback-text[data-v-0b0d4e4c]{color:#666;font-size:13px;line-height:1.55}