
.monthly-overview[data-v-076b34b9] { max-width: 1700px; margin: 0 auto; color: #17243a;
}
.intro-card[data-v-076b34b9] { margin-bottom: 16px;
}
.intro-row[data-v-076b34b9], .toolbar[data-v-076b34b9], .section-heading[data-v-076b34b9], .mobile-head[data-v-076b34b9] { display: flex; align-items: center; justify-content: space-between; gap: 20px;
}
.intro-row h2[data-v-076b34b9] { margin: 3px 0 6px; font-size: 23px; font-weight: 650;
}
.intro-row p[data-v-076b34b9], .section-heading p[data-v-076b34b9] { margin: 0; color: #708097;
}
.eyebrow[data-v-076b34b9] { color: #2869b1; font-size: 12px; font-weight: 600; letter-spacing: .08em;
}
.content-card[data-v-076b34b9] { margin-top: 16px;
}
.toolbar[data-v-076b34b9] { margin-bottom: 24px; flex-wrap: wrap;
}
.month-control[data-v-076b34b9], .toolbar-actions[data-v-076b34b9] { display: flex; align-items: center; gap: 12px;
}
.toolbar-actions[data-v-076b34b9] { flex-wrap: wrap;
}
.month-control > span[data-v-076b34b9] { color: #59677d; font-weight: 500;
}
.update-time[data-v-076b34b9] { color: #8b96a7; font-size: 12px;
}.pending-filter[data-v-076b34b9] { display: flex; align-items: center; gap: 7px; color: #607089; font-size: 12px; white-space: nowrap;
}
.feedback[data-v-076b34b9] { margin: 16px 0;
}
.retry[data-v-076b34b9] { padding-left: 0;
}
.summary-grid[data-v-076b34b9] { display: grid; grid-template-columns: 1.4fr repeat(5, 1fr); border: 1px solid #e8edf3; border-radius: 10px; overflow: hidden; background: #fff;
}
.summary-item[data-v-076b34b9] { display: flex; flex-direction: column; min-height: 100px; padding: 17px 20px; border-right: 1px solid #e8edf3; color: #738097; font-size: 12px;
}
.summary-item[data-v-076b34b9]:last-child { border-right: 0;
}
.summary-item.emphasis[data-v-076b34b9] { background: #f4f8ff;
}
.summary-item strong[data-v-076b34b9] { margin-top: 8px; color: #17243a; font-size: 25px; line-height: 1.2; font-weight: 650;
}
.summary-item strong small[data-v-076b34b9] { margin-left: 4px; font-size: 12px; font-weight: normal;
}
.summary-item .approved[data-v-076b34b9] { color: #237b59;
}
.summary-item .rejected[data-v-076b34b9] { color: #b7514c;
}
.summary-foot[data-v-076b34b9] { margin-top: 5px; color: #456c9f;
}
.section-heading[data-v-076b34b9] { margin: 30px 0 14px;
}
.section-heading h3[data-v-076b34b9] { margin: 0 0 4px; font-size: 17px;
}
.section-heading > span[data-v-076b34b9] { color: #708097; font-size: 12px;
}
.batch-bar[data-v-076b34b9] { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 14px; padding: 12px 16px; border: 1px solid #d6e5f7; border-radius: 8px; background: #f7faff;
}
.batch-copy[data-v-076b34b9] { display: flex; flex-direction: column; gap: 3px;
}.batch-copy strong[data-v-076b34b9] { color: #234975;
}.batch-copy span[data-v-076b34b9] { color: #6f7f96; font-size: 12px;
}
.batch-actions[data-v-076b34b9] { display: flex; align-items: center; flex: 0 0 auto;
}.mobile-identity[data-v-076b34b9] { display: flex; align-items: center; gap: 9px;
}
.desktop-table strong[data-v-076b34b9], .desktop-table small[data-v-076b34b9] { display: block;
}
.desktop-table strong[data-v-076b34b9] { color: #24344e; font-weight: 550;
}
.desktop-table small[data-v-076b34b9] { margin-top: 3px; color: #8b96a7; font-size: 12px;
}
.money[data-v-076b34b9] { font-variant-numeric: tabular-nums; font-weight: 600;
}
.plan-cell[data-v-076b34b9] { overflow-wrap: anywhere;
}.product-text[data-v-076b34b9] { display: block; margin-top: 7px; color: #2869b1; font-size: 12px;
}
.cell-label[data-v-076b34b9] { margin-right: 8px; color: #78869a; font-size: 12px;
}.goal-copy[data-v-076b34b9] { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-bottom: 8px; line-height: 1.6;
}
.approval-progress > div + div[data-v-076b34b9] { margin-top: 9px;
}.mobile-topic[data-v-076b34b9], .mobile-goal[data-v-076b34b9] { margin-top: 10px; overflow-wrap: anywhere; line-height: 1.6;
}.mobile-goal[data-v-076b34b9] { font-size: 13px;
}
.stage-label[data-v-076b34b9] { font-size: 12px; font-weight: 600;
}
.is-approved[data-v-076b34b9] { color: #237b59;
}.is-rejected[data-v-076b34b9] { color: #b7514c;
}.is-pending[data-v-076b34b9] { color: #b67822;
}.is-muted[data-v-076b34b9] { color: #9aa5b4;
}
.empty-state[data-v-076b34b9] { display: flex; flex-direction: column; align-items: center; gap: 9px; padding: 54px 12px; color: #8996a8; text-align: center;
}
.empty-state .anticon[data-v-076b34b9] { color: #b4c5dd; font-size: 31px;
}.empty-state strong[data-v-076b34b9] { color: #53627a;
}
.mobile-list[data-v-076b34b9] { display: none;
}
@media (max-width: 1100px) {
.summary-grid[data-v-076b34b9] { grid-template-columns: repeat(3, 1fr);
}.summary-item[data-v-076b34b9]:nth-child(3) { border-right: 0;
}.summary-item[data-v-076b34b9]:nth-child(-n+3) { border-bottom: 1px solid #e8edf3;
}
}
@media (max-width: 720px) {
.intro-row[data-v-076b34b9] { align-items: flex-start; flex-direction: column;
}.intro-row h2[data-v-076b34b9] { font-size: 20px;
}
.toolbar[data-v-076b34b9], .batch-bar[data-v-076b34b9] { align-items: flex-start; flex-direction: column; gap: 12px;
}.toolbar-actions[data-v-076b34b9] { width: 100%; justify-content: space-between; flex-wrap: wrap;
}.batch-actions[data-v-076b34b9] { width: 100%; justify-content: space-between;
}
.summary-grid[data-v-076b34b9] { grid-template-columns: repeat(2, 1fr);
}.summary-item[data-v-076b34b9] { min-height: 84px; padding: 13px;
}.summary-item[data-v-076b34b9]:nth-child(3) { border-right: 1px solid #e8edf3;
}.summary-item[data-v-076b34b9]:nth-child(even) { border-right: 0;
}.summary-item[data-v-076b34b9]:nth-child(-n+4) { border-bottom: 1px solid #e8edf3;
}
.desktop-table[data-v-076b34b9] { display: none;
}.mobile-list[data-v-076b34b9] { display: block;
}.mobile-list.is-loading[data-v-076b34b9] { opacity: .55;
}
.mobile-card[data-v-076b34b9] { margin-bottom: 12px; padding: 16px; border: 1px solid #e8edf3; border-radius: 9px; background: #fff; cursor: pointer;
}
.mobile-head[data-v-076b34b9] { gap: 8px;
}.mobile-title[data-v-076b34b9] { display: block; margin: 13px 0 5px; font-size: 15px;
}
.mobile-meta[data-v-076b34b9] { margin-top: 3px; color: #738097; font-size: 12px;
}
.mobile-stages[data-v-076b34b9] { display: grid; gap: 7px; margin-top: 13px; padding-top: 12px; border-top: 1px solid #edf1f5;
}
.mobile-stages > div[data-v-076b34b9] { display: flex; justify-content: space-between; gap: 10px; font-size: 12px;
}.mobile-stages span[data-v-076b34b9] { color: #738097;
}
.mobile-review[data-v-076b34b9] { margin-top: 8px; padding-left: 0;
}
}
