@charset "UTF-8";
.cfo-page[data-v-ba3489b6] {
  padding: 12px 16px 24px;
  background: #f5f7fa;
  min-height: 100%;
}
.cfo-shell[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 18px;
}

/* ─── Header ─── */
.cfo-header[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 4px 0;
}
.cfo-header__title[data-v-ba3489b6] {
  margin: 0;
  font-size: 22px;
  color: #0d4f5e;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-weight: 700;
}
.cfo-header__title i[data-v-ba3489b6] {
  color: #0d9488;
}
.cfo-header__phase[data-v-ba3489b6] {
  font-size: 11px;
  color: #fff;
  background: #0d9488;
  padding: 2px 8px;
  border-radius: 10px;
  font-weight: 500;
}
.cfo-header__sub[data-v-ba3489b6] {
  margin: 4px 0 0;
  font-size: 13px;
  color: #606266;
}
.cfo-header__right[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
}
.cfo-period[data-v-ba3489b6] {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  background: #fff;
  border: 1px solid #e4e7ed;
  border-radius: 6px;
  overflow: hidden;
}
.cfo-period__btn[data-v-ba3489b6] {
  background: transparent;
  border: none;
  padding: 6px 14px;
  font-size: 13px;
  cursor: pointer;
  color: #606266;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.cfo-period__btn[data-v-ba3489b6]:hover {
  color: #0d4f5e;
}
.cfo-period__btn.is-active[data-v-ba3489b6] {
  background: #0d4f5e;
  color: #fff;
}
.cfo-export-btn[data-v-ba3489b6] {
  background: #0d9488;
  color: #fff;
  border: none;
  padding: 7px 16px;
  border-radius: 6px;
  font-size: 13px;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
}
.cfo-export-btn[data-v-ba3489b6]:hover {
  background: rgb(10.5291925466, 119.8708074534, 110.151552795);
}

/* ─── CFO 结论 ─── */
.cfo-summary[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  background: linear-gradient(135deg, #0d4f5e 0%, #0d9488 100%);
  border-radius: 10px;
  padding: 18px 22px;
  color: #fff;
}
.cfo-summary__main[data-v-ba3489b6] {
  -webkit-box-flex: 1.2;
      -ms-flex: 1.2;
          flex: 1.2;
  min-width: 0;
}
.cfo-summary__eyebrow[data-v-ba3489b6] {
  font-size: 11px;
  opacity: 0.85;
  letter-spacing: 1px;
  margin-bottom: 6px;
}
.cfo-summary__text[data-v-ba3489b6] {
  font-size: 14px;
  line-height: 1.7;
}
.cfo-summary__states[data-v-ba3489b6] {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
}
.cfo-state[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 6px 10px;
  background: rgba(255, 255, 255, 0.12);
  border-radius: 6px;
  min-width: 0;
}
.cfo-state__label[data-v-ba3489b6] {
  font-size: 11px;
  opacity: 0.85;
}
.cfo-state__value[data-v-ba3489b6] {
  font-size: 16px;
  font-weight: 700;
  margin: 2px 0;
}
.cfo-state__detail[data-v-ba3489b6] {
  font-size: 11px;
  opacity: 0.8;
}
.cfo-state.is-good[data-v-ba3489b6] {
  background: rgba(103, 194, 58, 0.25);
}
.cfo-state.is-warn[data-v-ba3489b6] {
  background: rgba(230, 162, 60, 0.35);
}
.cfo-state.is-danger[data-v-ba3489b6] {
  background: rgba(245, 108, 108, 0.35);
}

/* ─── Section ─── */
.cfo-section[data-v-ba3489b6] {
  background: #fff;
  border-radius: 10px;
  padding: 16px 18px;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
}
.cfo-section__header[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid #f0f2f5;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.cfo-section__title[data-v-ba3489b6] {
  font-size: 16px;
  font-weight: 700;
  color: #0d4f5e;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
}
.cfo-section__title i[data-v-ba3489b6] {
  color: #0d9488;
  font-size: 18px;
}
.cfo-section__num[data-v-ba3489b6] {
  background: #0d9488;
  color: #fff;
  font-size: 11px;
  padding: 1px 7px;
  border-radius: 8px;
  font-weight: 600;
  margin: 0 4px;
}
.cfo-section__sub[data-v-ba3489b6] {
  font-size: 12px;
  color: #909399;
}
.cfo-section__phase[data-v-ba3489b6] {
  font-size: 11px;
  color: #e6a23c;
  margin-left: auto;
}

/* ─── Grid 通用 ─── */
.cfo-grid[data-v-ba3489b6] {
  display: grid;
  gap: 12px;
}
.cfo-grid--3col[data-v-ba3489b6] {
  grid-template-columns: repeat(3, 1fr);
}
.cfo-grid--4col[data-v-ba3489b6] {
  grid-template-columns: repeat(4, 1fr);
}
.cfo-grid--6-6[data-v-ba3489b6] {
  grid-template-columns: 1fr 1fr;
}
@media (max-width: 1280px) {
.cfo-grid--4col[data-v-ba3489b6] {
    grid-template-columns: repeat(2, 1fr);
}
.cfo-grid--3col[data-v-ba3489b6] {
    grid-template-columns: repeat(2, 1fr);
}
.cfo-summary__states[data-v-ba3489b6] {
    grid-template-columns: repeat(2, 1fr);
}
}
/* ─── 章节 1 · Hero ─── */
.cfo-hero-grid[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
@media (max-width: 1280px) {
.cfo-hero-grid[data-v-ba3489b6] {
    grid-template-columns: repeat(2, 1fr);
}
}
.cfo-hero[data-v-ba3489b6] {
  background: #fff;
  border: 1px solid #ebeef5;
  border-radius: 8px;
  padding: 14px 16px;
  min-height: 180px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.cfo-hero.is-pending[data-v-ba3489b6] {
  background: linear-gradient(135deg, #fafbfc 0%, #f0f2f5 100%);
  border-style: dashed;
}
.cfo-hero__head[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.cfo-hero__label[data-v-ba3489b6] {
  font-size: 13px;
  color: #606266;
  font-weight: 600;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 5px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.cfo-hero__label i[data-v-ba3489b6] {
  color: #0d9488;
}
.cfo-hero__badge[data-v-ba3489b6] {
  font-size: 10px;
  padding: 2px 8px;
  border-radius: 8px;
  background: #f4f4f5;
  color: #909399;
}
.cfo-hero__badge.is-active[data-v-ba3489b6] {
  background: rgba(13, 148, 136, 0.12);
  color: #0d9488;
}
.cfo-hero__badge.is-warn[data-v-ba3489b6] {
  background: rgba(230, 162, 60, 0.15);
  color: #e6a23c;
}
.cfo-hero__placeholder[data-v-ba3489b6] {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 6px;
  color: #c0c4cc;
  font-size: 13px;
}
.cfo-hero__placeholder i[data-v-ba3489b6] {
  font-size: 36px;
}
.cfo-hero__placeholder small[data-v-ba3489b6] {
  font-size: 11px;
  max-width: 80%;
  text-align: center;
}
.cfo-hero__main[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 10px;
  margin-top: 4px;
}
.cfo-hero__big[data-v-ba3489b6] {
  font-size: 30px;
  font-weight: 700;
  color: #303133;
  line-height: 1;
}
.cfo-hero__unit[data-v-ba3489b6] {
  font-size: 14px;
  color: #909399;
  margin-left: 3px;
  font-weight: 500;
}
.cfo-hero__delta[data-v-ba3489b6] {
  font-size: 12px;
  padding: 2px 6px;
  border-radius: 4px;
}
.cfo-hero__delta.is-positive[data-v-ba3489b6] {
  color: #67c23a;
  background: rgba(103, 194, 58, 0.1);
}
.cfo-hero__delta.is-negative[data-v-ba3489b6] {
  color: #f56c6c;
  background: rgba(245, 108, 108, 0.1);
}
.cfo-hero__breakdown[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4px;
  padding-top: 6px;
  border-top: 1px dashed #f0f2f5;
}
.cfo-bd[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 12px;
}
.cfo-bd__label[data-v-ba3489b6] {
  color: #909399;
}
.cfo-bd__value[data-v-ba3489b6] {
  font-weight: 600;
}
.cfo-bd__value.positive[data-v-ba3489b6] {
  color: #67c23a;
}
.cfo-bd__value.negative[data-v-ba3489b6] {
  color: #f56c6c;
}
.cfo-bd__value.mute[data-v-ba3489b6] {
  color: #606266;
}
.cfo-hero__sub-text[data-v-ba3489b6] {
  font-size: 12px;
  color: #606266;
  padding: 8px;
  background: rgba(13, 148, 136, 0.06);
  border-radius: 4px;
  line-height: 1.5;
}
.cfo-hero__sub-text.is-warn[data-v-ba3489b6] {
  color: #e6a23c;
  background: rgba(230, 162, 60, 0.08);
}
.cfo-hero__sub-text i[data-v-ba3489b6] {
  color: #0d9488;
  margin-right: 4px;
}
.cfo-hero__sub-text.is-warn i[data-v-ba3489b6] {
  color: #e6a23c;
}
.cfo-hero__spark[data-v-ba3489b6] {
  height: 40px;
}
.cfo-hero__compliance[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.cfo-cdim[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: 70px 1fr 38px;
  gap: 6px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 11px;
}
.cfo-cdim__label[data-v-ba3489b6] {
  color: #606266;
}
.cfo-cdim__bar[data-v-ba3489b6] {
  background: #f4f4f5;
  height: 6px;
  border-radius: 3px;
  overflow: hidden;
}
.cfo-cdim__fill[data-v-ba3489b6] {
  height: 100%;
  -webkit-transition: width 0.3s;
  transition: width 0.3s;
}
.cfo-cdim__fill.is-good[data-v-ba3489b6] {
  background: #67c23a;
}
.cfo-cdim__fill.is-warn[data-v-ba3489b6] {
  background: #e6a23c;
}
.cfo-cdim__fill.is-danger[data-v-ba3489b6] {
  background: #f56c6c;
}
.cfo-cdim__value[data-v-ba3489b6] {
  font-weight: 600;
  text-align: right;
}
.cfo-cdim__value.is-good[data-v-ba3489b6] {
  color: #67c23a;
}
.cfo-cdim__value.is-warn[data-v-ba3489b6] {
  color: #e6a23c;
}

/* ─── Card 通用 ─── */
.cfo-card[data-v-ba3489b6] {
  background: #fff;
  border: 1px solid #ebeef5;
  border-radius: 8px;
  padding: 14px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.cfo-card--full[data-v-ba3489b6] {
  grid-column: 1/-1;
}
.cfo-card.is-pending[data-v-ba3489b6] {
  background: linear-gradient(135deg, #fafbfc 0%, #f0f2f5 100%);
  border-style: dashed;
}
.cfo-card__head[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.cfo-card__title[data-v-ba3489b6] {
  font-size: 13px;
  font-weight: 600;
  color: #303133;
}
.cfo-card__title i[data-v-ba3489b6] {
  color: #0d9488;
  margin-right: 4px;
}
.cfo-card__sub[data-v-ba3489b6] {
  font-size: 11px;
  color: #909399;
}
.cfo-card__badge[data-v-ba3489b6] {
  font-size: 10px;
  padding: 2px 8px;
  background: #f4f4f5;
  color: #909399;
  border-radius: 8px;
}
.cfo-card__footer[data-v-ba3489b6] {
  font-size: 12px;
  color: #606266;
  padding-top: 8px;
  border-top: 1px dashed #f0f2f5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.cfo-card__link[data-v-ba3489b6] {
  color: #0d9488;
  cursor: pointer;
}
.cfo-card__link[data-v-ba3489b6]:hover {
  color: rgb(9.7055900621, 110.4944099379, 101.5354037267);
}
.cfo-pending[data-v-ba3489b6] {
  padding: 20px;
  text-align: center;
  color: #c0c4cc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
}
.cfo-pending i[data-v-ba3489b6] {
  font-size: 28px;
}
.cfo-pending small[data-v-ba3489b6] {
  font-size: 11px;
}

/* ─── 现金流瀑布 ─── */
.cfo-chart--lg[data-v-ba3489b6] {
  height: 260px;
  width: 100%;
}

/* ─── Settlement ─── */
.cfo-settle-list[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
}
.cfo-settle[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: 70px 1fr auto;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8px;
  background: #fafbfc;
  border-radius: 6px;
  font-size: 12px;
}
.cfo-settle__weeks[data-v-ba3489b6] {
  background: #0d9488;
  color: #fff;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 600;
  display: inline-block;
  text-align: center;
}
.cfo-settle__time[data-v-ba3489b6] {
  display: block;
  font-size: 11px;
  color: #909399;
  margin-top: 2px;
}
.cfo-settle__shop[data-v-ba3489b6] {
  color: #606266;
}
.cfo-settle__amount[data-v-ba3489b6] {
  font-weight: 700;
  color: #0d4f5e;
  text-align: right;
}
.cfo-settle__cny[data-v-ba3489b6] {
  display: block;
  font-size: 10px;
  color: #909399;
  font-weight: normal;
}

/* ─── FX ─── */
.cfo-fx-list[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
}
.cfo-fx[data-v-ba3489b6] {
  padding: 8px 10px;
  background: #fafbfc;
  border-radius: 6px;
  font-size: 12px;
}
.cfo-fx__line[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.cfo-fx__line + .cfo-fx__line[data-v-ba3489b6] {
  margin-top: 3px;
}
.cfo-fx__currency[data-v-ba3489b6] {
  background: #0d4f5e;
  color: #fff;
  padding: 1px 7px;
  border-radius: 3px;
  font-size: 11px;
  font-weight: 600;
}
.cfo-fx__bank[data-v-ba3489b6] {
  color: #909399;
  font-size: 11px;
}
.cfo-fx__amt[data-v-ba3489b6] {
  font-weight: 600;
  color: #303133;
}
.cfo-fx__rate[data-v-ba3489b6] {
  color: #909399;
  font-size: 11px;
}
.cfo-fx__cny[data-v-ba3489b6] {
  color: #0d9488;
  font-size: 11px;
  font-weight: 600;
}
.cfo-fx__status[data-v-ba3489b6] {
  font-size: 11px;
}
.cfo-fx__status.is-done[data-v-ba3489b6] {
  color: #67c23a;
}
.cfo-fx__status.is-partial[data-v-ba3489b6] {
  color: #e6a23c;
}
.cfo-fx__status.is-pending[data-v-ba3489b6] {
  color: #909399;
}

/* ─── 应收账龄 ─── */
.cfo-aging[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
.cfo-aging__row[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: 80px 1fr 70px;
  gap: 8px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 12px;
}
.cfo-aging__label[data-v-ba3489b6] {
  color: #606266;
}
.cfo-aging__bar-wrap[data-v-ba3489b6] {
  background: #f4f4f5;
  height: 8px;
  border-radius: 4px;
  overflow: hidden;
}
.cfo-aging__bar[data-v-ba3489b6] {
  height: 100%;
}
.cfo-aging__bar.is-good[data-v-ba3489b6] {
  background: #67c23a;
}
.cfo-aging__bar.is-mid[data-v-ba3489b6] {
  background: #0d9488;
}
.cfo-aging__bar.is-warn[data-v-ba3489b6] {
  background: #e6a23c;
}
.cfo-aging__bar.is-danger[data-v-ba3489b6] {
  background: #f56c6c;
}
.cfo-aging__value[data-v-ba3489b6] {
  text-align: right;
  font-weight: 600;
  color: #303133;
}
.cfo-aging__alert[data-v-ba3489b6] {
  padding: 8px;
  background: rgba(245, 108, 108, 0.08);
  color: #f56c6c;
  font-size: 12px;
  border-radius: 4px;
  line-height: 1.5;
}
.cfo-aging__alert i[data-v-ba3489b6] {
  margin-right: 4px;
}

/* ─── 报税倒计时 ─── */
.cfo-deadline[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid #ebeef5;
  border-radius: 8px;
}
.cfo-deadline.is-warn[data-v-ba3489b6] {
  border-color: #e6a23c;
  background: rgba(230, 162, 60, 0.04);
}
.cfo-deadline.is-danger[data-v-ba3489b6] {
  border-color: #f56c6c;
  background: rgba(245, 108, 108, 0.06);
}
.cfo-deadline.is-good[data-v-ba3489b6] {
  border-color: #d3f4f0;
}
.cfo-deadline__day[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 50px;
  padding: 4px 0;
  border-right: 1px dashed #f0f2f5;
}
.cfo-deadline__day strong[data-v-ba3489b6] {
  font-size: 26px;
  line-height: 1;
  color: #0d4f5e;
  font-weight: 700;
}
.cfo-deadline.is-warn .cfo-deadline__day strong[data-v-ba3489b6] {
  color: #e6a23c;
}
.cfo-deadline.is-danger .cfo-deadline__day strong[data-v-ba3489b6] {
  color: #f56c6c;
}
.cfo-deadline__day small[data-v-ba3489b6] {
  font-size: 10px;
  color: #909399;
  margin-top: 2px;
}
.cfo-deadline__body[data-v-ba3489b6] {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.cfo-deadline__tax[data-v-ba3489b6] {
  font-size: 13px;
  font-weight: 600;
  color: #303133;
}
.cfo-deadline__date[data-v-ba3489b6] {
  font-size: 11px;
  color: #909399;
}
.cfo-deadline__status[data-v-ba3489b6] {
  font-size: 11px;
  color: #606266;
}

/* ─── 出口退税 ─── */
.cfo-rebate-stats[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.cfo-rebate-stat[data-v-ba3489b6] {
  padding: 10px;
  background: #fafbfc;
  border-radius: 6px;
  text-align: center;
}
.cfo-rebate-stat__label[data-v-ba3489b6] {
  font-size: 11px;
  color: #909399;
  display: block;
}
.cfo-rebate-stat__num[data-v-ba3489b6] {
  font-size: 22px;
  font-weight: 700;
  color: #303133;
  display: block;
  margin: 4px 0 2px;
}
.cfo-rebate-stat__num.is-positive[data-v-ba3489b6] {
  color: #67c23a;
}
.cfo-rebate-stat__num.is-warn[data-v-ba3489b6] {
  color: #e6a23c;
}
.cfo-rebate-stat__num.is-danger[data-v-ba3489b6] {
  color: #f56c6c;
}
.cfo-rebate-stat__amt[data-v-ba3489b6] {
  font-size: 11px;
  color: #606266;
}
.cfo-rebate-progress[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 4px;
  border-top: 1px dashed #f0f2f5;
}
.cfo-rebate-progress__bar[data-v-ba3489b6] {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background: #f4f4f5;
  height: 8px;
  border-radius: 4px;
  overflow: hidden;
}
.cfo-rebate-progress__fill[data-v-ba3489b6] {
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#0d9488), to(#67c23a));
  background: linear-gradient(to right, #0d9488, #67c23a);
  -webkit-transition: width 0.3s;
  transition: width 0.3s;
}
.cfo-rebate-progress__text[data-v-ba3489b6] {
  font-size: 12px;
  color: #606266;
}

/* ─── 政策红利 ─── */
.cfo-policy-list[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
}
.cfo-policy[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: 28px 1fr auto;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8px 10px;
  border-radius: 6px;
  font-size: 12px;
}
.cfo-policy.is-used[data-v-ba3489b6] {
  background: rgba(103, 194, 58, 0.06);
}
.cfo-policy.is-unused[data-v-ba3489b6] {
  background: rgba(230, 162, 60, 0.06);
  border-left: 3px solid #e6a23c;
}
.cfo-policy__icon[data-v-ba3489b6] {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.cfo-policy.is-used .cfo-policy__icon[data-v-ba3489b6] {
  background: rgba(103, 194, 58, 0.15);
  color: #67c23a;
}
.cfo-policy.is-unused .cfo-policy__icon[data-v-ba3489b6] {
  background: rgba(230, 162, 60, 0.15);
  color: #e6a23c;
}
.cfo-policy__icon i[data-v-ba3489b6] {
  font-size: 16px;
}
.cfo-policy__name[data-v-ba3489b6] {
  font-weight: 600;
  color: #303133;
}
.cfo-policy__desc[data-v-ba3489b6] {
  font-size: 11px;
  color: #909399;
  margin-top: 2px;
}
.cfo-policy__amount[data-v-ba3489b6] {
  text-align: right;
}
.cfo-policy__amount span[data-v-ba3489b6] {
  font-weight: 700;
  font-size: 14px;
}
.cfo-policy__amount span.is-used[data-v-ba3489b6] {
  color: #67c23a;
}
.cfo-policy__amount span.is-unused[data-v-ba3489b6] {
  color: #e6a23c;
}
.cfo-policy__amount small[data-v-ba3489b6] {
  display: block;
  font-size: 10px;
  color: #909399;
  margin-top: 2px;
}

/* ─── 金税四期 ─── */
.cfo-jinshui[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
@media (max-width: 1280px) {
.cfo-jinshui[data-v-ba3489b6] {
    grid-template-columns: repeat(2, 1fr);
}
}
.cfo-jinshui__cell[data-v-ba3489b6] {
  padding: 10px;
  background: #fafbfc;
  border-radius: 6px;
}
.cfo-jinshui__cell.is-pending[data-v-ba3489b6] {
  background: #f5f7fa;
  border: 1px dashed #d3d7dc;
}
.cfo-jinshui__cell.is-good[data-v-ba3489b6] {
  border-left: 3px solid #67c23a;
}
.cfo-jinshui__cell.is-warn[data-v-ba3489b6] {
  border-left: 3px solid #e6a23c;
}
.cfo-jinshui__cell.is-danger[data-v-ba3489b6] {
  border-left: 3px solid #f56c6c;
}
.cfo-jinshui__label[data-v-ba3489b6] {
  font-size: 12px;
  color: #606266;
  font-weight: 600;
}
.cfo-jinshui__value[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  margin-top: 4px;
}
.cfo-jinshui__value strong[data-v-ba3489b6] {
  font-size: 16px;
  color: #303133;
}
.cfo-jinshui__benchmark[data-v-ba3489b6] {
  font-size: 10px;
  color: #909399;
}
.cfo-jinshui__pending[data-v-ba3489b6] {
  font-size: 11px;
  color: #909399;
  margin-top: 4px;
}
.cfo-jinshui__pending i[data-v-ba3489b6] {
  -webkit-animation: spin-ba3489b6 1.5s linear infinite;
          animation: spin-ba3489b6 1.5s linear infinite;
}
.cfo-jinshui__status[data-v-ba3489b6] {
  font-size: 10px;
  color: #909399;
  margin-top: 2px;
}
@-webkit-keyframes spin-ba3489b6 {
from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
}
to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
}
}
@keyframes spin-ba3489b6 {
from {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
}
to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
}
}
/* ─── 合规率卡片 ─── */
.cfo-rate-card[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 10px;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid #ebeef5;
  border-radius: 8px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.cfo-rate-card__icon[data-v-ba3489b6] {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 22px;
}
.cfo-rate-card__icon.is-good[data-v-ba3489b6] {
  background: rgba(103, 194, 58, 0.12);
  color: #67c23a;
}
.cfo-rate-card__icon.is-warn[data-v-ba3489b6] {
  background: rgba(230, 162, 60, 0.12);
  color: #e6a23c;
}
.cfo-rate-card__icon.is-danger[data-v-ba3489b6] {
  background: rgba(245, 108, 108, 0.12);
  color: #f56c6c;
}
.cfo-rate-card__label[data-v-ba3489b6] {
  font-size: 12px;
  color: #606266;
}
.cfo-rate-card__value[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 4px;
}
.cfo-rate-card__value strong[data-v-ba3489b6] {
  font-size: 22px;
  font-weight: 700;
  color: #303133;
}
.cfo-rate-card__value.is-good strong[data-v-ba3489b6] {
  color: #67c23a;
}
.cfo-rate-card__value.is-warn strong[data-v-ba3489b6] {
  color: #e6a23c;
}
.cfo-rate-card__value.is-danger strong[data-v-ba3489b6] {
  color: #f56c6c;
}
.cfo-rate-card__unit[data-v-ba3489b6] {
  font-size: 12px;
  color: #909399;
}
.cfo-rate-card__delta[data-v-ba3489b6] {
  font-size: 11px;
  padding: 1px 5px;
  border-radius: 3px;
  margin-left: 4px;
}
.cfo-rate-card__delta.is-positive[data-v-ba3489b6] {
  color: #67c23a;
  background: rgba(103, 194, 58, 0.1);
}
.cfo-rate-card__delta.is-negative[data-v-ba3489b6] {
  color: #f56c6c;
  background: rgba(245, 108, 108, 0.1);
}
.cfo-rate-card__note[data-v-ba3489b6] {
  font-size: 11px;
  color: #909399;
  margin-top: 2px;
}

/* ─── 资质到期 ─── */
.cfo-qual-list[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
}
.cfo-qual[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: 60px 1fr auto;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px;
  border-radius: 6px;
}
.cfo-qual.is-high[data-v-ba3489b6] {
  background: rgba(245, 108, 108, 0.06);
  border-left: 3px solid #f56c6c;
}
.cfo-qual.is-mid[data-v-ba3489b6] {
  background: rgba(230, 162, 60, 0.06);
  border-left: 3px solid #e6a23c;
}
.cfo-qual.is-low[data-v-ba3489b6] {
  background: #fafbfc;
}
.cfo-qual__day[data-v-ba3489b6] {
  text-align: center;
  font-weight: 700;
  color: #0d4f5e;
  font-size: 18px;
}
.cfo-qual__day small[data-v-ba3489b6] {
  font-size: 10px;
  color: #909399;
  font-weight: normal;
  margin-left: 1px;
}
.cfo-qual.is-high .cfo-qual__day[data-v-ba3489b6] {
  color: #f56c6c;
}
.cfo-qual.is-mid .cfo-qual__day[data-v-ba3489b6] {
  color: #e6a23c;
}
.cfo-qual__name[data-v-ba3489b6] {
  font-size: 13px;
  font-weight: 600;
  color: #303133;
}
.cfo-qual__entity[data-v-ba3489b6] {
  font-size: 11px;
  color: #909399;
  margin-top: 2px;
}
.cfo-qual__btn[data-v-ba3489b6] {
  padding: 4px 12px;
  background: #0d9488;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 11px;
  cursor: pointer;
}
.cfo-qual__btn[data-v-ba3489b6]:hover {
  background: rgb(10.5291925466, 119.8708074534, 110.151552795);
}

/* ─── 派活待办 ─── */
.cfo-task-list[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
}
.cfo-task[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: 32px 1fr auto;
  gap: 10px;
  padding: 10px;
  border-radius: 6px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.cfo-task.is-high[data-v-ba3489b6] {
  background: rgba(245, 108, 108, 0.04);
  border-left: 3px solid #f56c6c;
}
.cfo-task.is-mid[data-v-ba3489b6] {
  background: rgba(230, 162, 60, 0.04);
  border-left: 3px solid #e6a23c;
}
.cfo-task__priority[data-v-ba3489b6] {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.cfo-task.is-high .cfo-task__priority[data-v-ba3489b6] {
  background: rgba(245, 108, 108, 0.15);
  color: #f56c6c;
}
.cfo-task.is-mid .cfo-task__priority[data-v-ba3489b6] {
  background: rgba(230, 162, 60, 0.15);
  color: #e6a23c;
}
.cfo-task__priority i[data-v-ba3489b6] {
  font-size: 16px;
}
.cfo-task__title[data-v-ba3489b6] {
  font-size: 13px;
  font-weight: 600;
  color: #303133;
}
.cfo-task__detail[data-v-ba3489b6] {
  font-size: 11px;
  color: #909399;
  margin-top: 2px;
}
.cfo-task__assign[data-v-ba3489b6] {
  font-size: 11px;
  color: #606266;
  margin-top: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
}
.cfo-task__assign i[data-v-ba3489b6] {
  color: #0d9488;
  margin-right: 3px;
}
.cfo-task__amount[data-v-ba3489b6] {
  font-size: 14px;
  font-weight: 700;
  color: #f56c6c;
  -ms-flex-item-align: center;
      align-self: center;
}

/* ─── 财务报表卡 ─── */
.cfo-fm-card[data-v-ba3489b6] {
  padding: 14px 16px;
  background: #fff;
  border: 1px solid #ebeef5;
  border-radius: 8px;
  min-height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
}
.cfo-fm-card.is-pending[data-v-ba3489b6] {
  background: linear-gradient(135deg, #fafbfc 0%, #f0f2f5 100%);
  border-style: dashed;
}
.cfo-fm-card__label[data-v-ba3489b6] {
  font-size: 12px;
  color: #606266;
  font-weight: 600;
}
.cfo-fm-card__pending[data-v-ba3489b6] {
  color: #c0c4cc;
  font-size: 12px;
}
.cfo-fm-card__pending i[data-v-ba3489b6] {
  -webkit-animation: spin-ba3489b6 1.5s linear infinite;
          animation: spin-ba3489b6 1.5s linear infinite;
  margin-right: 4px;
}
.cfo-fm-card__value[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 6px;
}
.cfo-fm-card__value strong[data-v-ba3489b6] {
  font-size: 22px;
  font-weight: 700;
  color: #0d4f5e;
}
.cfo-fm-card__unit[data-v-ba3489b6] {
  font-size: 12px;
  color: #909399;
}
.cfo-fm-card__benchmark[data-v-ba3489b6] {
  font-size: 10px;
  color: #909399;
  margin-left: auto;
}
.cfo-fm-card__status[data-v-ba3489b6] {
  font-size: 11px;
}
.cfo-fm-card__status.is-good[data-v-ba3489b6] {
  color: #67c23a;
}
.cfo-fm-card__status.is-warn[data-v-ba3489b6] {
  color: #e6a23c;
}

/* ─── 风险列表 ─── */
.cfo-risk-list[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
.cfo-risk[data-v-ba3489b6] {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #ebeef5;
}
.cfo-risk.is-high[data-v-ba3489b6] {
  border-left: 4px solid #f56c6c;
}
.cfo-risk.is-mid[data-v-ba3489b6] {
  border-left: 4px solid #e6a23c;
}
.cfo-risk.is-low[data-v-ba3489b6] {
  border-left: 4px solid #909399;
}
.cfo-risk__icon[data-v-ba3489b6] {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 22px;
}
.cfo-risk.is-high .cfo-risk__icon[data-v-ba3489b6] {
  background: rgba(245, 108, 108, 0.12);
  color: #f56c6c;
}
.cfo-risk.is-mid .cfo-risk__icon[data-v-ba3489b6] {
  background: rgba(230, 162, 60, 0.12);
  color: #e6a23c;
}
.cfo-risk.is-low .cfo-risk__icon[data-v-ba3489b6] {
  background: #f4f4f5;
  color: #909399;
}
.cfo-risk__head[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.cfo-risk__type[data-v-ba3489b6] {
  font-size: 11px;
  color: #909399;
  background: #f4f4f5;
  padding: 2px 7px;
  border-radius: 3px;
}
.cfo-risk__severity[data-v-ba3489b6] {
  font-size: 11px;
  padding: 2px 7px;
  border-radius: 3px;
  font-weight: 600;
}
.cfo-risk__severity.is-high[data-v-ba3489b6] {
  background: rgba(245, 108, 108, 0.12);
  color: #f56c6c;
}
.cfo-risk__severity.is-mid[data-v-ba3489b6] {
  background: rgba(230, 162, 60, 0.12);
  color: #e6a23c;
}
.cfo-risk__severity.is-low[data-v-ba3489b6] {
  background: #f4f4f5;
  color: #909399;
}
.cfo-risk__amount[data-v-ba3489b6] {
  margin-left: auto;
  font-size: 14px;
  font-weight: 700;
  color: #f56c6c;
}
.cfo-risk__title[data-v-ba3489b6] {
  font-size: 14px;
  font-weight: 600;
  color: #303133;
  margin-top: 6px;
}
.cfo-risk__detail[data-v-ba3489b6] {
  font-size: 12px;
  color: #606266;
  margin-top: 4px;
  line-height: 1.5;
}
.cfo-risk__action[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px dashed #f0f2f5;
}
.cfo-risk__suggestion[data-v-ba3489b6] {
  font-size: 12px;
  color: #606266;
}
.cfo-risk__suggestion i[data-v-ba3489b6] {
  color: #0d9488;
  margin-right: 4px;
}
.cfo-risk__btn[data-v-ba3489b6] {
  padding: 5px 14px;
  background: #0d9488;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 12px;
  cursor: pointer;
}
.cfo-risk__btn[data-v-ba3489b6]:hover {
  background: rgb(10.5291925466, 119.8708074534, 110.151552795);
}

/* ─── Footer ─── */
.cfo-footer[data-v-ba3489b6] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
  padding: 14px 18px;
  background: #fafbfc;
  border: 1px dashed #d3d7dc;
  border-radius: 8px;
  font-size: 12px;
  color: #606266;
}
.cfo-footer__phase strong[data-v-ba3489b6] {
  color: #0d4f5e;
  margin-right: 8px;
}
