.tax-bi-page {
  padding: 0 16px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.tax-bi-grid {
  display: grid;
  gap: 16px;
}

.tax-bi-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tax-bi-card,
.tax-bi-panel {
  background: #fff;
  border: 1px solid var(--office-border, #edf0f5);
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}

.tax-bi-card {
  min-height: 112px;
  padding: 16px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.tax-bi-card__meta {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.tax-bi-card__meta span {
  color: #8c8c8c;
  font-size: 13px;
}

.tax-bi-card__meta strong {
  color: #1a1a1a;
  font-size: 24px;
  line-height: 1.15;
  font-weight: 650;
}

.tax-bi-card__meta em {
  color: #6b7280;
  font-size: 12px;
  font-style: normal;
}

.tax-bi-card__icon {
  width: 38px;
  height: 38px;
  border-radius: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.tax-bi-layout {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  gap: 16px;
}

.tax-bi-panel {
  padding: 16px;
  min-width: 0;
}

.tax-bi-panel--wide {
  min-width: 0;
}

.tax-bi-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.tax-bi-panel__head h3 {
  margin: 0;
  color: #1a1a1a;
  font-size: 15px;
  font-weight: 650;
}

.tax-bi-panel__head .btn-toolbar {
  flex-shrink: 0;
}

.tax-link-btn {
  border: 0;
  background: #eef4ff;
  color: var(--office-blue, #1890FF);
  border-radius: 6px;
  padding: 6px 10px;
  font-size: 12px;
  cursor: pointer;
}

.tax-bi-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.tax-bi-split h4 {
  margin: 0 0 12px;
  color: #4b5563;
  font-size: 13px;
  font-weight: 600;
}

.tax-bar-row {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr) 42px;
  gap: 10px;
  align-items: center;
  margin: 12px 0;
  font-size: 12px;
  color: #4b5563;
}

.tax-bar-track {
  height: 10px;
  background: #f3f4f6;
  border-radius: 999px;
  overflow: hidden;
}

.tax-bar-fill {
  height: 100%;
  border-radius: 999px;
}

.tax-bar-row strong {
  color: #1f2937;
  text-align: right;
  font-weight: 600;
}

.tax-bi-table-wrap {
  overflow-x: auto;
  border: 1px solid #f0f0f0;
  border-radius: 8px;
}

.tax-bi-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
  font-size: 13px;
}

.tax-bi-table th {
  background: #fafafa;
  color: #8c8c8c;
  font-weight: 600;
  text-align: left;
  padding: 10px 12px;
  border-bottom: 1px solid #f0f0f0;
  white-space: nowrap;
}

.tax-bi-table td {
  color: #3f4652;
  padding: 12px;
  border-bottom: 1px solid #f5f5f5;
  white-space: nowrap;
}

.tax-quick-actions {
  display: grid;
  gap: 10px;
}

.tax-quick-actions button {
  border: 1px solid #edf2f7;
  background: #f8fafc;
  color: #374151;
  border-radius: 8px;
  padding: 10px 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  cursor: pointer;
}

.tax-quick-actions button:hover {
  border-color: #cfe6ff;
  color: var(--office-blue, #1890FF);
  background: #f3f8ff;
}

.tax-filter-mask {
  position: fixed;
  inset: 0;
  z-index: 60;
  background: rgba(17, 24, 39, 0.46);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
}

.tax-filter-modal {
  width: min(1120px, calc(100vw - 64px));
  max-height: min(820px, calc(100vh - 64px));
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, 0.24);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.tax-filter-head {
  height: 64px;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #f6f7f9;
  border-bottom: 1px solid #eef0f3;
}

.tax-filter-head h3 {
  margin: 0;
  color: #111827;
  font-size: 18px;
  font-weight: 700;
}

.tax-filter-head button {
  border: 0;
  background: transparent;
  color: #4b5563;
  cursor: pointer;
}

.tax-filter-body {
  min-height: 520px;
  display: grid;
  grid-template-columns: 188px minmax(0, 1fr);
  padding: 18px;
  overflow: hidden;
}

.tax-filter-nav {
  background: #f7f8fa;
  border: 1px solid #edf0f5;
  border-right: 0;
  border-radius: 8px 0 0 8px;
  padding: 12px 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.tax-filter-nav button {
  border: 0;
  background: transparent;
  color: #374151;
  text-align: left;
  padding: 9px 18px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  position: relative;
}

.tax-filter-nav button.is-active {
  color: var(--office-blue, #1890FF);
  background: #fff;
}

.tax-filter-nav button.is-active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 3px;
  background: var(--office-blue, #1890FF);
}

.tax-filter-content {
  border: 1px solid #edf0f5;
  border-radius: 0 8px 8px 0;
  padding: 24px 28px;
  overflow-y: auto;
}

.tax-filter-section h4 {
  margin: 0 0 18px;
  color: #1f2937;
  font-size: 16px;
  font-weight: 700;
}

.tax-filter-date,
.tax-filter-range {
  display: flex;
  align-items: center;
  gap: 0;
}

.tax-filter-date button,
.tax-filter-date input,
.tax-filter-range input {
  height: 38px;
  border: 1px solid #dfe3eb;
  background: #fff;
  color: #374151;
  padding: 0 14px;
  min-width: 150px;
  font-size: 14px;
  outline: none;
}

.tax-filter-date button {
  border-radius: 8px 0 0 8px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.tax-filter-date input:last-of-type {
  border-radius: 0 8px 8px 0;
}

.tax-filter-date span,
.tax-filter-range span {
  padding: 0 14px;
  color: #9ca3af;
}

.tax-filter-check-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 18px 28px;
}

.tax-filter-tree {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.tax-filter-tree-group__title {
  margin: 0 0 12px;
  color: #111827;
  font-size: 13px;
  font-weight: 700;
}

.tax-filter-tree-group .tax-filter-check-grid {
  grid-template-columns: repeat(3, minmax(120px, 1fr));
}

.tax-filter-check-grid label,
.tax-filter-radio-row label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #374151;
  font-size: 14px;
  font-weight: 600;
}

.tax-filter-check-grid input,
.tax-filter-radio-row input {
  width: 16px;
  height: 16px;
  accent-color: var(--office-blue, #1890FF);
}

.tax-filter-radio-row {
  display: flex;
  gap: 120px;
}

.tax-filter-foot {
  height: 72px;
  background: #f6f7f9;
  border-top: 1px solid #eef0f3;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
}

.tax-filter-reset,
.tax-filter-confirm {
  border: 0;
  border-radius: 8px;
  height: 38px;
  padding: 0 20px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}

.tax-filter-reset {
  background: transparent;
  color: var(--office-blue, #1890FF);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.tax-filter-confirm {
  background: var(--office-blue, #1890FF);
  color: #fff;
}

.tax-filter-empty {
  color: #9ca3af;
  font-size: 14px;
}

@media (max-width: 1200px) {
  .tax-bi-grid--4,
  .tax-bi-layout,
  .tax-bi-split {
    grid-template-columns: 1fr;
  }
}

/* 外账筛选弹窗与 BI 表格同步销售系统浅灰线条风格 */
.tax-bi-card,
.tax-bi-panel,
.tax-bi-table-wrap {
  border-color: var(--office-border, #edf0f5);
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}
.tax-bi-table th {
  background: var(--office-head, #f8fafc);
  color: var(--office-title, #1f2733);
  border-bottom-color: var(--office-border, #edf0f5);
}
.tax-bi-table td {
  color: var(--office-text, #303846);
  border-bottom-color: var(--office-border, #edf0f5);
}

.tax-bi-table tbody tr:hover td {
  background: #f8fbff;
}

.tax-filter-mask {
  z-index: 130;
  background: rgba(17, 24, 39, 0.42);
  padding: 24px;
}
.tax-filter-modal {
  width: min(1120px, calc(100vw - 48px));
  max-height: min(820px, calc(100vh - 48px));
  border: 1px solid #dce3ee;
  border-radius: 8px;
  box-shadow: 0 18px 56px rgba(17, 24, 39, 0.22);
}
.tax-filter-head {
  height: 56px;
  padding: 0 24px;
  background: #f4f6f9;
  border-bottom-color: var(--office-border, #edf0f5);
}
.tax-filter-head h3 {
  color: #1d2633;
  font-size: 17px;
  font-weight: 700;
}
.tax-filter-head button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border-radius: 8px;
  color: #667282;
  flex-shrink: 0;
}
.tax-filter-head button svg,
.tax-filter-head button i {
  display: block;
  width: 20px;
  height: 20px;
  margin: 0;
}
.tax-filter-head button:hover {
  background: #e9edf3;
  color: #2d3746;
}
.tax-filter-body {
  padding: 18px 20px;
}
.tax-filter-nav,
.tax-filter-content {
  border-color: var(--office-border, #edf0f5);
}
.tax-filter-nav {
  background: #f7f8fb;
  border-radius: 8px 0 0 8px;
}
.tax-filter-nav button {
  color: #303846;
  font-weight: 600;
}
.tax-filter-nav button.is-active {
  color: var(--office-blue, #1890FF);
  background: #fff;
}
.tax-filter-nav button.is-active::before {
  background: var(--office-blue, #1890FF);
}
.tax-filter-content {
  border-radius: 0 8px 8px 0;
}
.tax-filter-section h4 {
  color: #1f2733;
  font-size: 15px;
}
.tax-filter-date button,
.tax-filter-date input,
.tax-filter-range input {
  border-color: #dfe5ee;
  color: #303846;
}
.tax-filter-check-grid input,
.tax-filter-radio-row input {
  accent-color: var(--office-blue, #1890FF);
}
.tax-filter-foot {
  height: 64px;
  background: #f4f6f9;
  border-top-color: var(--office-border, #edf0f5);
  justify-content: flex-end;
  padding: 0 24px;
  gap: 12px;
}
.tax-filter-reset,
.tax-filter-confirm {
  height: 36px;
  min-width: 78px;
  border-radius: 8px;
}
.tax-filter-reset {
  border: 1px solid #dfe5ee;
  background: #fff;
  color: #374151;
}
.tax-filter-reset:hover {
  border-color: #b8ddff;
  color: var(--office-blue, #1890FF);
}
.tax-filter-confirm {
  background: var(--office-blue, #1890FF);
}
.tax-filter-confirm:hover {
  background: #40a9ff;
}

/* 外账 BI 三页增强：主控台、监视页、工作台 */
.tax-bi-page {
  padding: 0 16px 24px;
  gap: 14px;
}

.tax-bi-page--main-console {
  gap: 14px;
}

/* BI 顶栏筛选：复用列表页 page-toolbar + filter-chip + btn-toolbar */
.tax-bi-page .page-toolbar--bi.tax-bi-filter-strip {
  margin-bottom: 0;
  border: 1px solid var(--office-border, #edf0f5);
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}

.tax-bi-filter-strip__chips {
  min-width: 0;
  flex: 1;
  overflow-x: auto;
}

.tax-bi-filter-strip__actions {
  flex-shrink: 0;
}

.tax-bi-filter-strip--secondary {
  padding: 10px 14px 8px;
  border: 1px solid var(--office-border, #edf0f5);
  border-radius: 8px;
  background: var(--office-panel, #fff);
  box-shadow: none;
}

.tax-bi-filter-strip--secondary .filter-chip {
  font-size: 12px;
}

.tax-bi-sync-line {
  min-height: 34px;
  padding: 8px 12px;
  background: #f8fafc;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  display: flex;
  align-items: center;
  gap: 18px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  line-height: 1.5;
  flex-wrap: wrap;
}

.tax-command-hero {
  min-height: auto;
  padding: 22px 24px;
  border: 1px solid #dcecff;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(24, 144, 255, 0.10) 0%, rgba(255, 255, 255, 0.94) 46%, rgba(16, 185, 129, 0.08) 100%),
    #fff;
  box-shadow: 0 10px 30px rgba(31, 95, 168, 0.08);
  display: block;
}

.tax-command-hero__copy {
  min-width: 0;
}

.tax-command-hero__copy h2 {
  margin: 0 0 8px;
  color: #142033;
  font-size: 24px;
  line-height: 1.25;
  font-weight: 750;
  letter-spacing: 0;
}

.tax-command-hero__copy p {
  max-width: 760px;
  margin: 0;
  color: #4b5563;
  font-size: 13px;
  line-height: 1.75;
}

.tax-command-hero__summary {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.tax-command-hero__summary button {
  min-width: 0;
  min-height: 104px;
  padding: 14px;
  border: 1px solid rgba(24, 144, 255, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
  text-align: left;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 6px;
  transition: border-color .15s, box-shadow .15s, transform .15s;
}

.tax-command-hero__summary button:hover {
  border-color: #91caff;
  box-shadow: 0 8px 22px rgba(24, 144, 255, 0.10);
  transform: translateY(-1px);
}

.tax-command-hero__summary em {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
}

.tax-command-hero__summary strong {
  color: #142033;
  font-size: 25px;
  line-height: 1.12;
  font-weight: 750;
}

.tax-command-hero__summary span {
  color: #4b5563;
  font-size: 12px;
  line-height: 1.35;
}

.tax-status-ribbon {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.tax-status-ribbon__item {
  position: relative;
  min-width: 0;
  padding: 16px;
  border: 1px solid #edf0f5;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.tax-status-ribbon__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.tax-status-ribbon__main {
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.tax-status-ribbon__label {
  color: #8c8c8c;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 500;
  margin-bottom: 6px;
}

.tax-status-ribbon__icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  opacity: .9;
}

.tax-status-ribbon__icon svg,
.tax-status-ribbon__icon i {
  width: 16px;
  height: 16px;
}

.tax-status-ribbon__value {
  color: #1a1a1a;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: -0.01em;
}

.tax-status-ribbon__trend {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 500;
}

.tax-status-ribbon__trend.is-up {
  color: #00c48c;
}

.tax-status-ribbon__trend.is-down {
  color: #ff4d4f;
}

.tax-status-ribbon__trend-icon,
.tax-status-ribbon__trend-icon svg {
  width: 14px;
  height: 14px;
}

.tax-status-ribbon__sub {
  display: block;
  margin-top: 4px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  line-height: 1.45;
}

.tax-status-ribbon__spark {
  height: 44px;
}

.tax-status-ribbon__spark svg {
  display: block;
  width: 100%;
  height: 100%;
}

.tax-chain-board {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tax-chain-board__row {
  display: grid;
  grid-template-columns: 168px minmax(0, 1fr);
  gap: 12px;
  padding: 12px;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  background: #fbfcfe;
}

.tax-chain-board__label {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.tax-chain-board__label strong {
  color: #1f2733;
  font-size: 14px;
  font-weight: 700;
}

.tax-chain-board__label span {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  line-height: 1.45;
}

.tax-chain-board__steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.tax-chain-step {
  min-width: 0;
  min-height: 74px;
  border: 1px solid #e6edf6;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  text-align: left;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 4px;
  transition: border-color .15s, background .15s, transform .15s;
}

.tax-chain-step:hover {
  border-color: #b8ddff;
  background: #f8fbff;
}

.tax-chain-step span,
.tax-risk-heatmap__cell span {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
}

.tax-chain-step strong,
.tax-risk-heatmap__cell strong {
  color: #1f2733;
  font-size: 18px;
  line-height: 1.1;
  font-weight: 750;
}

.tax-chain-step em,
.tax-risk-heatmap__cell em {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 1.35;
}

.tax-chain-step.red,
.tax-risk-heatmap__cell.red {
  border-color: #ffd4d4;
  background: #fff7f7;
}

.tax-chain-step.orange,
.tax-risk-heatmap__cell.orange {
  border-color: #ffe3b0;
  background: #fffaf0;
}

.tax-chain-step.green,
.tax-risk-heatmap__cell.green {
  border-color: #c9f0dc;
  background: #f5fffa;
}

.tax-chain-step.blue,
.tax-risk-heatmap__cell.blue {
  border-color: #cfe6ff;
  background: #f7fbff;
}

.tax-chain-step.purple,
.tax-risk-heatmap__cell.purple {
  border-color: #ddd6fe;
  background: #fbf9ff;
}

.tax-chain-step.cyan,
.tax-risk-heatmap__cell.cyan {
  border-color: #b5f5ec;
  background: #f0fffc;
}

.tax-risk-heatmap {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 14px;
}

.tax-risk-heatmap__cell {
  min-height: 82px;
  border: 1px solid #e6edf6;
  border-radius: 8px;
  background: #fff;
  padding: 10px;
  text-align: left;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.tax-mini-trend {
  height: 138px;
  padding: 10px 8px 0;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  background: #fbfcfe;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 7px;
  align-items: end;
}

.tax-mini-trend__item {
  min-width: 0;
  display: grid;
  gap: 5px;
  justify-items: center;
}

.tax-mini-trend__bar {
  width: 100%;
  max-width: 28px;
  min-height: 18px;
  border-radius: 6px 6px 2px 2px;
  background: linear-gradient(180deg, #8fd0ff 0%, var(--office-blue, #1890FF) 100%);
}

.tax-mini-trend__item span,
.tax-mini-trend__item strong {
  color: var(--office-muted, #8a93a3);
  font-size: 11px;
  line-height: 1.1;
}

.tax-mini-trend__item strong {
  color: #1f2733;
  font-weight: 700;
}

.tax-bi-page--main-console .tax-status-ribbon__item {
  border-radius: 10px;
}

.tax-bi-page--main-console .tax-chain-board__row {
  grid-template-columns: 144px minmax(0, 1fr);
  align-items: stretch;
}

.tax-bi-page--main-console .tax-chain-board__steps {
  gap: 10px;
}

.tax-bi-page--main-console .tax-chain-step {
  min-height: 92px;
  padding: 12px;
  justify-content: space-between;
}

.tax-bi-page--main-console .tax-chain-step strong {
  font-size: 20px;
}

.tax-main-console-grid {
  align-items: stretch;
}

.tax-main-trend-board {
  display: grid;
  grid-template-columns: minmax(240px, .72fr) minmax(0, 1.28fr);
  gap: 16px;
}

.tax-main-trend-board h4 {
  margin: 0 0 10px;
  color: #303846;
  font-size: 13px;
  font-weight: 700;
}

.tax-main-trend-board .tax-mini-trend {
  height: 208px;
}

.tax-main-trend-board .tax-flow-columns {
  height: 208px;
}

.tax-main-trend-board .tax-flow-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.tax-bi-page--main-console .tax-risk-heatmap {
  margin-bottom: 12px;
}

.tax-bi-page--main-console .tax-quick-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tax-bi-page--main-console .tax-quick-actions button {
  min-height: 68px;
  align-items: flex-start;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
}

.tax-bi-page--main-console .tax-quick-actions button svg,
.tax-bi-page--main-console .tax-quick-actions button i {
  color: var(--office-blue, #1890FF);
}

.tax-bi-page--main-console .tax-quick-actions button span {
  color: #1f2733;
  font-weight: 700;
}

.tax-bi-page--main-console .tax-quick-actions button em {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 1.35;
}

.tax-bi-grid--8 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tax-bi-grid--6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.tax-bi-card,
.tax-bi-panel {
  border-radius: 8px;
}

.tax-bi-card {
  width: 100%;
  min-height: 118px;
  text-align: left;
  border: 1px solid var(--office-border, #edf0f5);
  background: #fff;
}

button.tax-bi-card {
  cursor: pointer;
}

.tax-bi-card--interactive:hover {
  border-color: #b8ddff;
  box-shadow: 0 6px 18px rgba(47, 143, 243, 0.08);
}

.tax-bi-card__meta strong {
  font-size: 23px;
  letter-spacing: 0;
}

.tax-bi-card__meta b {
  color: #303846;
  font-size: 12px;
  font-weight: 600;
}

.tax-bi-layout--main {
  grid-template-columns: minmax(0, 2.1fr) minmax(320px, .9fr);
}

.tax-bi-panel__head {
  align-items: flex-start;
}

.tax-bi-panel__head h3 {
  font-size: 15px;
  color: #1f2733;
}

.tax-bi-panel__head p {
  margin: 5px 0 0;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  line-height: 1.55;
}

.tax-bi-panel__head .btn-toolbar {
  flex-shrink: 0;
}

.tax-link-btn {
  border: 1px solid #d9ecff;
  background: #eef6ff;
}

.tax-link-btn:hover {
  border-color: #91caff;
  background: #e6f4ff;
}

.tax-flow-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.tax-flow-card {
  min-width: 0;
  padding: 14px;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  background: #fbfcfe;
}

.tax-flow-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.tax-flow-card__head span {
  color: #303846;
  font-size: 13px;
  font-weight: 700;
}

.tax-flow-card__head strong {
  color: #1f2733;
  font-size: 13px;
}

.tax-flow-card .tax-bar-row {
  grid-template-columns: 64px minmax(0, 1fr) 38px;
  margin: 10px 0;
}

.tax-calendar-list,
.tax-rule-list,
.tax-health-list,
.tax-timeline,
.tax-batch-pool {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.tax-calendar-item,
.tax-timeline-item {
  width: 100%;
  border: 1px solid #edf0f5;
  background: #fff;
  border-radius: 8px;
  cursor: pointer;
  transition: border-color .15s, background .15s;
}

.tax-calendar-item {
  padding: 10px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  text-align: left;
}

.tax-calendar-item:hover,
.tax-timeline-item:hover {
  border-color: #b8ddff;
  background: #f8fbff;
}

.tax-calendar-item__date {
  height: 38px;
  border-radius: 8px;
  background: #f4f6f9;
  color: #303846;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.tax-calendar-item__body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tax-calendar-item__body strong,
.tax-health-item strong,
.tax-batch-card__body strong,
.tax-timeline-item strong {
  color: #1f2733;
  font-size: 13px;
  font-weight: 700;
}

.tax-calendar-item__body em,
.tax-health-item span,
.tax-batch-card__body span,
.tax-timeline-item em,
.tax-rule-item em {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

.tax-rule-item {
  padding: 12px;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  background: #fbfcfe;
}

.tax-rule-item span {
  display: block;
  margin-bottom: 6px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
}

.tax-rule-item strong {
  display: block;
  margin-bottom: 5px;
  color: #1f2733;
  font-size: 15px;
  font-weight: 700;
}

.tax-health-item {
  padding: 12px;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  background: #fff;
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.tax-health-item > div:first-child {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.tax-health-item__right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
  flex-shrink: 0;
}

.tax-health-item__right em {
  color: #303846;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
}

.tax-distribution {
  display: grid;
  gap: 12px;
}

.tax-distribution-row {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr) 44px;
  align-items: center;
  gap: 12px;
}

.tax-distribution-row__label {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tax-distribution-row__label span {
  color: #303846;
  font-size: 13px;
  font-weight: 700;
}

.tax-distribution-row__label em {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
}

.tax-distribution-row__bar {
  height: 14px;
  background: #f1f4f8;
  border-radius: 999px;
  overflow: hidden;
}

.tax-distribution-row__bar i {
  display: block;
  height: 100%;
  border-radius: 999px;
}

.tax-distribution-row strong {
  color: #1f2733;
  font-size: 12px;
  text-align: right;
}

.tax-batch-card {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 12px;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  background: #fff;
}

.tax-batch-card__icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tax-batch-card__icon.green {
  color: #10b981;
  background: #e8f8f1;
}

.tax-batch-card__icon.orange {
  color: #f59e0b;
  background: #fff7e6;
}

.tax-batch-card__icon.blue {
  color: var(--office-blue, #1890FF);
  background: #e8f3ff;
}

.tax-batch-card__icon.purple {
  color: #8b5cf6;
  background: #f3edff;
}

.tax-batch-card__body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tax-batch-card button {
  height: 30px;
  padding: 0 10px;
  border: 1px solid #d9ecff;
  border-radius: 6px;
  background: #eef6ff;
  color: var(--office-blue, #1890FF);
  font-size: 12px;
  cursor: pointer;
}

.tax-timeline-item {
  padding: 11px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  text-align: left;
}

.tax-timeline-item > span {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.tax-timeline-item div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tax-live-feed {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.tax-live-feed__item {
  width: 100%;
  padding: 11px;
  border: 1px solid #edf0f5;
  background: #fff;
  border-radius: 8px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  text-align: left;
  cursor: pointer;
  transition: border-color .15s, background .15s;
}

.tax-live-feed__item:hover {
  border-color: #b8ddff;
  background: #f8fbff;
}

.tax-live-feed__item.is-new {
  border-color: #cfe6ff;
  background: #f7fbff;
}

.tax-live-feed__item > span {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.tax-live-feed__item div {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tax-live-feed__item strong {
  color: #1f2733;
  font-size: 13px;
  font-weight: 700;
}

.tax-live-feed__item em {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

.tax-priority-grid .tax-rule-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tax-bi-table-wrap {
  max-width: 100%;
}

.tax-bi-table tr.is-completed td {
  color: #98a2b3;
  background: #f8fafc;
}

.tax-bi-table tr.is-completed td:nth-child(4) {
  text-decoration: line-through;
}

.tax-bi-table tr.is-processing td {
  background: #fffaf0;
}

.tax-bi-table tr.is-task-created td {
  background: #f6fffb;
}

.tax-batch-card.is-processing {
  border-color: #cfe6ff;
  background: #f7fbff;
}

.tax-link-btn + .tax-link-btn {
  margin-left: 6px;
}

.tax-action-state {
  display: inline-flex;
  align-items: center;
  height: 24px;
  margin-right: 6px;
  padding: 0 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  vertical-align: middle;
}

.tax-action-state.green {
  color: #067647;
  background: #e8f8f1;
}

.tax-action-state.orange {
  color: #b45309;
  background: #fff7e6;
}

.tax-action-state.blue {
  color: #1264b3;
  background: #e8f3ff;
}

.tax-link-btn:disabled,
.tax-batch-card button:disabled,
.tax-bi-filter-strip__actions .btn-toolbar:disabled,
.tax-bi-panel__head .btn-toolbar:disabled {
  color: #98a2b3;
  border-color: #e4e7ec;
  background: #f2f4f7;
  cursor: not-allowed;
}

.drawer-process-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.drawer-process-summary div {
  padding: 12px;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  background: #fbfcfe;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.drawer-process-summary span {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
}

.drawer-process-summary strong {
  color: #1f2733;
  font-size: 14px;
  font-weight: 700;
}

.drawer-process-timeline {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 2px 0;
}

.drawer-process-timeline__item {
  position: relative;
  padding-bottom: 16px;
}

.drawer-process-timeline__item:last-child {
  padding-bottom: 0;
}

.drawer-process-timeline__item::before {
  content: "";
  position: absolute;
  left: 8px;
  top: 20px;
  bottom: 0;
  width: 1px;
  background: #e5e9f0;
}

.drawer-process-timeline__item:last-child::before {
  display: none;
}

.drawer-process-timeline__head {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 24px;
}

.drawer-process-timeline__head > i {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  width: 10px;
  height: 10px;
  margin-left: 3px;
  border-radius: 999px;
  background: #9aa6b5;
  box-shadow: 0 0 0 4px #f4f6f9;
}

.drawer-process-timeline__item.is-current .drawer-process-timeline__head > i {
  background: var(--office-blue, #1890FF);
  box-shadow: 0 0 0 4px #e8f3ff;
}

.drawer-process-timeline__meta {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 0;
  flex-wrap: wrap;
}

.drawer-process-timeline__meta span,
.drawer-process-timeline__meta em {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 24px;
}

.drawer-process-timeline__detail {
  margin: 6px 0 0 28px;
}

.drawer-process-timeline__body {
  min-width: 0;
  padding: 12px;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  background: #fff;
  text-align: left;
}

.drawer-process-timeline__item.is-current .drawer-process-timeline__body {
  border-color: #cfe6ff;
  background: #f8fbff;
}

.drawer-process-timeline__detail strong,
.drawer-process-timeline__body strong {
  display: block;
  margin-bottom: 5px;
  color: #1f2733;
  font-size: 14px;
  font-weight: 700;
}

.drawer-process-timeline__detail p,
.drawer-process-timeline__body p,
.drawer-process-notes p {
  margin: 0;
  color: #4b5563;
  font-size: 12px;
  line-height: 1.55;
}

#drawer-audit-trail .drawer-process-timeline__body,
#drawer-audit-trail .drawer-process-timeline__detail {
  padding: 0;
  margin-left: 28px;
  margin-top: 6px;
  border: none;
  border-radius: 0;
  background: transparent;
}

#drawer-audit-trail .drawer-process-timeline__item.is-current .drawer-process-timeline__body,
#drawer-audit-trail .drawer-process-timeline__item.is-current .drawer-process-timeline__detail {
  border: none;
  background: transparent;
}

.drawer-process-notes {
  margin-top: 2px;
  margin-bottom: 14px;
  padding: 10px 12px;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  background: #fbfcfe;
  display: grid;
  gap: 5px;
}

.drawer-process-note {
  margin-top: 2px;
  padding: 12px;
  border: 1px solid #edf0f5;
  border-radius: 8px;
  background: #fbfcfe;
  display: grid;
  gap: 10px;
}

.drawer-process-note textarea {
  width: 100%;
  min-height: 76px;
  resize: vertical;
  border: 1px solid #dfe5ee;
  border-radius: 8px;
  padding: 10px 12px;
  color: #303846;
  font-size: 13px;
  outline: none;
}

.drawer-process-note textarea:focus {
  border-color: #91caff;
  box-shadow: 0 0 0 3px rgba(24, 144, 255, 0.1);
}

.drawer-process-note button {
  justify-self: flex-end;
  height: 32px;
  padding: 0 12px;
  border: 1px solid var(--office-blue, #1890FF);
  border-radius: 6px;
  background: var(--office-blue, #1890FF);
  color: #fff;
  font-size: 12px;
  cursor: pointer;
}

/* ===== 主控台2 · 去卡片化优化 ===== */
.tax-bi-page--main-console-v2 {
  gap: 12px;
}

.tax-bi-page--main-console-v2 .tax-bi-layout--main,
.tax-bi-page--main-console-v2 .tax-bi-layout--analysis {
  align-items: start;
}

.tax-bi-page--main-console-v2 .tax-bi-filter-strip--v2.page-toolbar--bi {
  padding: 10px 16px;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

.tax-text-tabs {
  display: flex;
  align-items: center;
  gap: 24px;
}

.tax-text-tab {
  position: relative;
  padding: 6px 0 10px;
  border: none;
  background: transparent;
  color: #303846;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  cursor: pointer;
  transition: color .15s;
}

.tax-text-tab:hover {
  color: var(--office-blue, #1890FF);
}

.tax-text-tab.is-active {
  color: var(--office-blue, #1890FF);
  font-weight: 600;
}

.tax-text-tab.is-active::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  border-radius: 2px;
  background: var(--office-blue, #1890FF);
}

.tax-text-tab--sm {
  padding: 4px 0 8px;
  font-size: 13px;
}

.tax-bi-filter-strip__right {
  margin-left: auto;
}

.tax-entity-select {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 30px;
  padding: 0 10px;
  border: 1px solid #e6edf6;
  border-radius: 6px;
  background: #fff;
  color: #303846;
  font-size: 13px;
  cursor: pointer;
  transition: border-color .15s, background .15s;
}

.tax-entity-select:hover {
  border-color: #cfe6ff;
  background: #f8fbff;
}

.tax-refresh-icon {
  width: 30px;
  height: 30px;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #667085;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: color .15s, background .15s;
}

.tax-refresh-icon:hover {
  color: var(--office-blue, #1890FF);
  background: #f4f8ff;
}

.tax-data-update {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  white-space: nowrap;
}

.tax-page-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  padding: 2px 0 4px;
}

.tax-page-heading h2 {
  margin: 0;
  color: #1a1a1a;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

.tax-page-heading__status {
  margin: 0;
  color: var(--office-muted, #8a93a3);
  font-size: 13px;
  line-height: 1.5;
}

.tax-bi-page--main-console-v2 .tax-status-ribbon__icon {
  width: 30px;
  height: 30px;
  background: #f4f7fb !important;
  color: #94a3b8 !important;
  opacity: .92;
}

.tax-bi-page--main-console-v2 .tax-status-ribbon__item {
  border-radius: 10px;
}

.tax-bi-panel--compact .tax-bi-panel__head {
  margin-bottom: 10px;
}

.tax-bi-panel--compact {
  padding: 14px 16px;
}

.tax-bi-layout--analysis {
  display: grid;
  grid-template-columns: minmax(0, 2.75fr) minmax(260px, 1fr);
  gap: 16px;
  align-items: stretch;
}

.tax-bi-panel--trend {
  padding: 16px 18px 12px;
}

.tax-bi-panel--workspace {
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
}

.tax-progress-board--model {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
}

.tax-progress-board--model .tax-progress-board__col {
  padding: 0;
  border-right: none;
}

.tax-progress-board--model .tax-progress-board__col.has-divider .tax-progress-board__inner {
  border-right: 1px solid #edf0f5;
}

.tax-progress-board--model .tax-progress-board__col:first-child .tax-progress-board__inner {
  padding-left: 0;
}

.tax-progress-board--model .tax-progress-board__col:last-child .tax-progress-board__inner {
  padding-right: 0;
}

.tax-progress-board__inner {
  min-height: 0;
  padding: 0 14px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tax-progress-board__col--receipt .tax-progress-board__inner {
  background: linear-gradient(180deg, rgba(16, 185, 129, 0.07) 0%, rgba(16, 185, 129, 0.02) 42%, transparent 100%);
  border-radius: 8px;
  padding: 10px 14px;
}

.tax-progress-board__col--invoice .tax-progress-board__inner {
  background: linear-gradient(180deg, rgba(24, 144, 255, 0.07) 0%, rgba(24, 144, 255, 0.02) 42%, transparent 100%);
  border-radius: 8px;
  padding: 10px 14px;
}

.tax-progress-board__col--declare .tax-progress-board__inner {
  background: linear-gradient(180deg, rgba(100, 116, 139, 0.07) 0%, rgba(100, 116, 139, 0.02) 42%, transparent 100%);
  border-radius: 8px;
  padding: 10px 14px;
}

.tax-progress-board__name {
  color: #303846;
  font-size: 13px;
  font-weight: 700;
}

.tax-progress-board__hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.tax-progress-board__main {
  min-width: 0;
}

.tax-progress-board__value {
  display: block;
  color: #1a1a1a;
  font-size: 24px;
  line-height: 1.15;
  font-weight: 650;
  letter-spacing: -.01em;
}

.tax-progress-board__desc {
  display: block;
  margin-top: 2px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
}

.tax-progress-board__rate-badge {
  flex-shrink: 0;
  text-align: right;
}

.tax-progress-board__rate-badge strong {
  display: block;
  color: var(--office-blue, #1890FF);
  font-size: 20px;
  line-height: 1.1;
  font-weight: 700;
}

.tax-progress-board__rate-badge span {
  display: block;
  margin-top: 2px;
  color: var(--office-muted, #8a93a3);
  font-size: 11px;
  line-height: 1.3;
}

.tax-progress-board__segment-bar {
  display: flex;
  width: 100%;
  height: 6px;
  border-radius: 999px;
  overflow: hidden;
  background: #edf0f5;
}

.tax-progress-board__segment-bar i {
  display: block;
  height: 100%;
  min-width: 0;
}

.tax-progress-board__segment-labels {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
}

.tax-progress-board__segment-labels span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--office-muted, #8a93a3);
  font-size: 11px;
  line-height: 1.3;
}

.tax-progress-board__segment-labels span i {
  width: 8px;
  height: 8px;
  border-radius: 2px;
  flex-shrink: 0;
}

.tax-progress-board__foot {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  padding-top: 2px;
  font-size: 12px;
  color: #4b5563;
}

.tax-progress-board__foot strong {
  font-weight: 700;
  color: #1f2733;
}

.tax-progress-board__foot .is-danger,
.tax-progress-board__foot .is-danger strong {
  color: #ff4d4f;
}

.tax-progress-board__foot .is-warn,
.tax-progress-board__foot .is-warn strong {
  color: #d48806;
}

.tax-risk-overview__summary {
  margin: -2px 0 10px;
  color: #4b5563;
  font-size: 12px;
  line-height: 1.5;
}

.tax-risk-overview__list {
  display: flex;
  flex-direction: column;
}

.tax-risk-row {
  width: 100%;
  padding: 13px 4px;
  border: none;
  background: transparent;
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  text-align: left;
  cursor: pointer;
  transition: background .15s;
}

.tax-risk-row.has-divider {
  border-bottom: 1px solid #edf0f5;
}

.tax-risk-row:hover {
  background: #f8fafc;
}

.tax-risk-row__dot {
  width: 8px;
  height: 8px;
  margin-top: 6px;
  border-radius: 50%;
}

.tax-risk-row__dot--red { background: #ff4d4f; }
.tax-risk-row__dot--orange { background: #f59e0b; }

.tax-risk-row__body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tax-risk-row__body strong {
  color: #1f2733;
  font-size: 13px;
  font-weight: 700;
}

.tax-risk-row__body em {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

.tax-risk-row__count {
  color: #1f2733;
  font-size: 16px;
  font-weight: 700;
  white-space: nowrap;
  padding-top: 1px;
}

.tax-integrity-block {
  margin-top: 12px;
  padding: 12px 10px;
  border-radius: 8px;
  background: #f8fafc;
}

.tax-integrity-block__title {
  display: block;
  margin-bottom: 10px;
  color: #303846;
  font-size: 12px;
  font-weight: 700;
}

.tax-integrity-block__cols {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tax-integrity-block__col {
  text-align: center;
  padding: 0 8px;
}

.tax-integrity-block__col.has-divider {
  border-right: 1px solid #e6edf6;
}

.tax-integrity-block__col strong {
  display: block;
  color: #1a1a1a;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 700;
}

.tax-integrity-block__col span {
  display: block;
  margin-top: 4px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
}

.tax-risk-actions {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #edf0f5;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

.tax-risk-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 34px;
  padding: 6px 8px;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: var(--office-blue, #1890FF);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s;
}

.tax-risk-actions button:hover {
  background: #f0f7ff;
}

.tax-trend-analysis__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}

.tax-trend-meta {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px 18px;
  min-width: 0;
}

.tax-trend-meta__period {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
}

.tax-trend-meta__main {
  color: #4b5563;
  font-size: 13px;
}

.tax-trend-meta__main strong {
  color: #1a1a1a;
  font-size: 22px;
  font-weight: 700;
  margin-left: 4px;
}

.tax-trend-meta__change {
  font-size: 12px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 999px;
}

.tax-trend-meta__change.is-up {
  color: #00a870;
  background: #e8f8f1;
}

.tax-trend-meta__change.is-down {
  color: #ff4d4f;
  background: #fff1f0;
}

.tax-trend-meta__peak {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
}

.tax-trend-analysis__tabs {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}

.tax-area-chart--pro {
  position: relative;
  height: 280px;
  min-height: 280px;
  margin-top: 4px;
  padding: 8px 0 0;
  border-top: 1px solid #f1f5f9;
  overflow: visible;
}

.tax-area-chart--pro svg {
  display: block;
  width: 100%;
  height: 100%;
}

.tax-area-chart--pro svg text {
  font-family: inherit;
}

.tax-area-chart__title {
  fill: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-weight: 600;
}

.tax-area-chart__grid {
  stroke: #e8e8e8;
  stroke-width: 1;
}

.tax-area-chart__axis {
  stroke: #e8e8e8;
  stroke-width: 1;
}

.tax-area-chart__ylabel,
.tax-area-chart__xlabel {
  fill: #595959;
  font-size: 12px;
}

.tax-area-chart__cursor {
  stroke: #d9d9d9;
  stroke-width: 1;
  pointer-events: none;
  visibility: hidden;
}

.tax-area-chart__active-dot {
  fill: #1890FF;
  stroke: none;
  pointer-events: none;
  visibility: hidden;
}

.tax-area-chart--pro.is-hovering .tax-area-chart__cursor,
.tax-area-chart--pro.is-hovering .tax-area-chart__active-dot {
  visibility: visible;
}

.tax-area-chart__tooltip {
  position: absolute;
  z-index: 3;
  min-width: 124px;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  font-size: 12px;
  line-height: 1.4;
  color: #262626;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
}

.tax-area-chart--pro.is-hovering .tax-area-chart__tooltip {
  visibility: visible;
  opacity: 1;
}

.tax-area-chart__tooltip-label {
  margin-bottom: 6px;
  color: #8c8c8c;
}

.tax-area-chart__tooltip-row {
  display: flex;
  align-items: center;
  gap: 8px;
}

.tax-area-chart__tooltip-row i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #1890FF;
  flex-shrink: 0;
}

.tax-area-chart__tooltip-row span {
  flex: 1;
  color: #595959;
}

.tax-area-chart__tooltip-row b {
  font-weight: 600;
  color: #1a1a1a;
  font-variant-numeric: tabular-nums;
}

.tax-area-chart__dot {
  fill: #fff;
  stroke: var(--office-blue, #1890FF);
  stroke-width: 2;
  transition: r .15s;
}

.tax-area-chart__point:hover .tax-area-chart__dot {
  r: 5;
}

.tax-area-chart__val {
  fill: #1f2733;
  font-size: 11px;
  font-weight: 700;
}

.tax-todo-workspace {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.tax-todo-workspace__stats {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #edf0f5;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
}

.tax-todo-workspace__stat--red { color: #ff4d4f; font-weight: 600; }
.tax-todo-workspace__stat--orange { color: #d48806; font-weight: 600; }
.tax-todo-workspace__stat--blue { color: #597ef7; font-weight: 600; }

.tax-todo-list {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.tax-todo-list__item {
  width: 100%;
  padding: 0;
  border: none;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: background .15s;
}

.tax-todo-list__item.has-divider {
  border-bottom: 1px solid #edf0f5;
}

.tax-todo-list__row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  padding: 11px 6px;
  transition: background .15s;
}

.tax-todo-list__item:hover .tax-todo-list__row {
  background: #f4f8fc;
  border-radius: 6px;
}

.tax-todo-list__content {
  min-width: 0;
}

.tax-todo-list__head {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 4px;
}

.tax-todo-list__head strong {
  color: #1f2733;
  font-size: 13px;
  font-weight: 700;
}

.tax-todo-list__priority {
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  padding: 3px 7px;
  border-radius: 4px;
  flex-shrink: 0;
}

.tax-todo-list__priority--red { color: #ff4d4f; background: #fff1f0; }
.tax-todo-list__priority--orange { color: #d48806; background: #fff7e6; }
.tax-todo-list__priority--blue { color: #597ef7; background: #f0f5ff; }

.tax-todo-list__tag {
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 999px;
  white-space: nowrap;
}

.tax-todo-list__tag--red { color: #ff4d4f; background: #fff1f0; }
.tax-todo-list__tag--orange { color: #d48806; background: #fff7e6; }
.tax-todo-list__tag--blue { color: #597ef7; background: #f0f5ff; }

.tax-todo-list__content em {
  display: block;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

.tax-todo-list__arrow {
  color: #c5cdd8;
  margin-top: 4px;
  opacity: 0;
  transition: opacity .15s, color .15s, transform .15s;
}

.tax-todo-list__item:hover .tax-todo-list__arrow {
  opacity: 1;
  color: var(--office-blue, #1890FF);
  transform: translateX(2px);
}

.tax-link-more {
  border: none;
  background: transparent;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  cursor: pointer;
  padding: 0;
  transition: color .15s;
}

.tax-link-more:hover {
  color: var(--office-blue, #1890FF);
}

/* ===== 主控台3 · 基于 1fda092 第一轮结构优化 ===== */
.tax-bi-page--main-console-v3 {
  gap: 10px;
  background: transparent;
}

.tax-bi-page--main-console-v3 .tax-bi-panel,
.tax-bi-page--main-console-v3 .tax-v3-dashboard-panel,
.tax-bi-page--main-console-v3 .tax-status-ribbon__item,
.tax-bi-page--main-console-v3 .tax-v3-greeting,
.tax-bi-page--main-console-v3 .tax-v3-overview-card,
.tax-bi-page--main-console-v3 .tax-v3-declaration-card,
.tax-bi-page--main-console-v3 .tax-v3-business-row {
  border: none;
}

.tax-bi-page--main-console-v3 .tax-v3-overview-card:hover,
.tax-bi-page--main-console-v3 .tax-v3-declaration-card:hover,
.tax-bi-page--main-console-v3 .tax-v3-business-row:hover {
  border: none;
}

.tax-bi-page--main-console-v3 [data-tax-v3-dashboard-body] {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}

.tax-v3-hero-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  align-items: stretch;
  padding: 0;
}

.tax-v3-greeting {
  grid-column: 4 / 5;
  min-height: 70px;
  min-width: 0;
  padding: 11px 16px;
  border: none;
  border-radius: 8px;
  background:
    radial-gradient(circle at 93% 20%, rgba(255, 176, 0, .17), transparent 18%),
    linear-gradient(135deg, #ffffff 0%, #fffdfa 100%);
  box-shadow: 0 8px 22px rgba(28, 40, 56, .04);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
}

.tax-v3-greeting__title {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px 12px;
}

.tax-v3-greeting__title h2 {
  margin: 0;
  color: #0f172a;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 800;
}

.tax-v3-greeting__title span,
.tax-v3-greeting p {
  color: #65758b;
  font-size: 12px;
  line-height: 1.45;
}

.tax-v3-greeting p {
  margin: 5px 0 0;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.tax-v3-greeting__weather {
  display: none;
  position: relative;
  height: 50px;
}

.tax-v3-greeting__weather i,
.tax-v3-greeting__weather b {
  position: absolute;
  border-radius: 999px;
}

.tax-v3-greeting__weather i {
  right: 10px;
  top: 0;
  width: 34px;
  height: 34px;
  background: linear-gradient(135deg, #ffd35a, #ff9f0a);
}

.tax-v3-greeting__weather b {
  right: 26px;
  bottom: 4px;
  width: 50px;
  height: 28px;
  background: linear-gradient(180deg, rgba(255,255,255,.9), #fff3df);
  box-shadow: 18px 0 0 rgba(255, 242, 220, .92);
}

.tax-v3-hero-tools {
  grid-column: 1 / 4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-width: 0;
  min-height: 70px;
  padding: 0 16px;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(28, 40, 56, .04);
}

.tax-v3-period-tabs {
  min-width: 0;
}

.tax-v3-filter-actions {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  white-space: nowrap;
}


.tax-v3-filter-actions .tax-data-update {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
}

.tax-bi-page--main-console-v3 .tax-status-ribbon {
  margin: 0;
  gap: 10px;
}

.tax-bi-page--main-console-v3 .tax-bi-panel {
  padding: 14px 16px;
}

.tax-bi-page--main-console-v3 .tax-bi-panel__head {
  margin-bottom: 12px;
}

.tax-v3-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: auto;
  gap: 10px;
  align-items: stretch;
  padding: 0;
}

.tax-v3-overview-panel {
  grid-column: 1 / 4;
  grid-row: 1;
  height: auto;
  align-self: stretch;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding-bottom: 32px;
}

.tax-v3-side-stack {
  grid-column: 4 / 5;
  grid-row: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 0;
  min-width: 0;
  align-self: stretch;
}

.tax-v3-risk-panel,
.tax-v3-actions-panel {
  grid-column: auto;
}

.tax-v3-risk-panel {
  grid-row: auto;
}

.tax-v3-dashboard-panel {
  min-width: 0;
  border: none;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(28, 40, 56, 0.045);
}

.tax-v3-risk-panel {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.tax-v3-actions-panel {
  flex: 0 0 auto;
  height: auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding-bottom: 10px;
}

.tax-v3-actions-panel .tax-v3-panel-head {
  margin-bottom: 6px;
  flex-shrink: 0;
}

.tax-v3-actions-panel .tax-v3-action-grid {
  flex: 0 0 auto;
  min-height: 0;
  align-content: start;
  gap: 6px;
}

.tax-v3-panel-head {
  min-height: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.tax-v3-panel-head h3 {
  margin: 0;
  color: #0f172a;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 800;
}

.tax-v3-panel-link {
  padding: 0;
  border: none;
  background: transparent;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-weight: 650;
  white-space: nowrap;
  cursor: pointer;
}

.tax-v3-panel-link:hover {
  color: var(--office-blue, #1890FF);
}

.tax-bi-page--main-console-v3 .tax-status-ribbon__item {
  padding: 16px;
  border: none;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(28, 40, 56, .045);
}

.tax-bi-page--main-console-v3 .tax-status-ribbon__head {
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 12px;
}

.tax-bi-page--main-console-v3 .tax-status-ribbon__icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
}

.tax-bi-page--main-console-v3 .tax-status-ribbon__label {
  color: #8c8c8c;
  font-weight: 500;
}

.tax-bi-page--main-console-v3 .tax-status-ribbon__value {
  color: #1a1a1a;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 600;
}

.tax-bi-page--main-console-v3 .tax-status-ribbon__spark {
  height: 44px;
}

.tax-v3-overview-grid {
  display: grid;
  grid-template-columns: minmax(168px, 0.42fr) minmax(0, 1.58fr);
  gap: 12px;
  align-items: stretch;
  box-sizing: border-box;
  padding-bottom: 24px;
}

.tax-v3-overview-unit {
  color: #94a3b8;
  font-size: 11px;
  font-weight: 650;
  white-space: nowrap;
}

.tax-v3-overview-body {
  flex: 0 0 auto;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.tax-v3-overview-pane {
  display: none;
}

.tax-v3-overview-pane.is-active {
  display: flex;
  flex: 0 0 407px;
  height: 407px;
  flex-direction: column;
  min-height: 0;
}

.tax-v3-overview-pane.is-active .tax-v3-overview-grid {
  flex: 0 0 407px;
  height: 407px;
  min-height: 407px;
  max-height: 407px;
  margin-bottom: 0;
}

.tax-v3-invoice-metrics {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  height: 100%;
  min-height: 0;
}

.tax-v3-invoice-metrics__row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  flex: 1;
  min-height: 0;
  align-items: stretch;
}

.tax-v3-invoice-metric {
  position: relative;
  min-width: 0;
  height: 100%;
  padding: 12px 12px 12px 16px;
  border: none;
  border-radius: 10px;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: background .15s;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.tax-v3-invoice-metric:hover,
.tax-v3-invoice-metric.is-selected,
.tax-v3-invoice-metric.is-selected:hover {
  z-index: 1;
  background: linear-gradient(180deg, #e8f4ff 0%, #ffffff 100%);
}

.tax-v3-list-modal {
  width: min(520px, calc(100vw - 48px));
  max-height: min(640px, calc(100vh - 64px));
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, 0.24);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.tax-v3-list-modal__body {
  padding: 8px 20px 16px;
  overflow: auto;
}

.tax-v3-list-modal__body .tax-v3-todo-item,
.tax-v3-list-modal__body .tax-v3-risk-row {
  flex: none;
}

.tax-v3-invoice-metric__label {
  display: block;
  margin-bottom: 12px;
  color: #8c8c8c;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 500;
}

.tax-v3-invoice-metric__value {
  display: block;
  color: #1a1a1a;
  font-size: 22px;
  line-height: 1.15;
  font-weight: 600;
  letter-spacing: -.02em;
}

.tax-v3-invoice-metric__value em {
  margin-left: 2px;
  color: #1a1a1a;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
}

.tax-v3-invoice-metric--orange .tax-v3-invoice-metric__value,
.tax-v3-invoice-metric--orange .tax-v3-invoice-metric__value em {
  color: #d48806;
}

.tax-v3-overview-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.tax-v3-overview-card {
  min-width: 0;
  padding: 13px 13px;
  border: none;
  border-radius: 8px;
  background: #fbfdff;
  text-align: left;
  cursor: pointer;
  transition: transform .15s, border-color .15s, box-shadow .15s;
}

.tax-v3-overview-card:hover,
.tax-v3-declaration-card:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(24, 144, 255, .08);
}

.tax-v3-overview-card--green {
  background: linear-gradient(135deg, #f4fffb 0%, #f9fdff 100%);
}

.tax-v3-overview-card--blue {
  background: linear-gradient(135deg, #f4f8ff 0%, #fbfdff 100%);
}

.tax-v3-overview-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  color: var(--office-blue, #1890FF);
  background: #eaf4ff;
}

.tax-v3-overview-card--green .tax-v3-overview-card__icon {
  color: #10b981;
  background: #dff8ef;
}

.tax-v3-overview-card__name {
  display: block;
  margin-top: 11px;
  color: #1f2937;
  font-size: 13px;
  font-weight: 800;
}

.tax-v3-overview-card strong {
  display: block;
  margin-top: 7px;
  color: #0f172a;
  font-size: 24px;
  line-height: 1.1;
  font-weight: 850;
}

.tax-v3-overview-card em {
  display: block;
  margin-top: 6px;
  color: #64748b;
  font-size: 12px;
  font-style: normal;
  font-weight: 650;
}

.tax-v3-overview-card__issues {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 18px;
}

.tax-v3-overview-card__issues span {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.tax-v3-overview-card__issues i {
  color: #64748b;
  font-size: 12px;
  font-style: normal;
  font-weight: 650;
}

.tax-v3-overview-card__issues b {
  color: #0f172a;
  font-size: 14px;
  line-height: 1.1;
  font-weight: 800;
}

.tax-v3-overview-card__issues .is-red b {
  color: #ff4d4f;
}

.tax-v3-overview-card__issues .is-orange b {
  color: #d48806;
}

.tax-v3-overview-card small {
  display: block;
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid #e8eef7;
  color: #667085;
  font-size: 12px;
  font-weight: 650;
}

.tax-v3-declaration-stack {
  display: grid;
  gap: 8px;
}

.tax-v3-declaration-card {
  padding: 10px 12px;
  border: none;
  border-radius: 8px;
  background: #fff;
  text-align: left;
  cursor: pointer;
  transition: transform .15s, border-color .15s, box-shadow .15s;
}

.tax-v3-declaration-card span {
  display: block;
  color: #334155;
  font-size: 12px;
  font-weight: 800;
}

.tax-v3-declaration-card strong {
  display: block;
  margin-top: 6px;
  color: #0f172a;
  font-size: 19px;
  line-height: 1.1;
  font-weight: 850;
}

.tax-v3-declaration-card em {
  display: block;
  margin-top: 5px;
  color: #64748b;
  font-size: 11px;
  line-height: 1.35;
  font-style: normal;
}

.tax-v3-overview-trend {
  min-width: 0;
  min-height: 0;
  height: 100%;
  padding: 0 0 8px 4px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.tax-v3-trend-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 6px;
}

.tax-v3-trend-title strong {
  color: #0f172a;
  font-size: 13px;
  font-weight: 800;
}

.tax-v3-trend-title span {
  color: #94a3b8;
  font-size: 11px;
  font-weight: 650;
}

.tax-v3-trend-title__meta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.tax-v3-trend-chart-wrap {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tax-v3-trend-chart-wrap .tax-area-chart--scrollable {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 0;
  margin-bottom: 0;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.tax-v3-trend-chart-wrap .tax-area-chart--scrollable::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.tax-v3-overview-trend .tax-v3-trend-chart-wrap .tax-area-chart--pro {
  padding-bottom: 0;
}

.tax-v3-trend-scroll-rail {
  flex: 0 0 10px;
  height: 10px;
  border-radius: 999px;
  background: #f1f5f9;
  position: relative;
  cursor: pointer;
  box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.18);
  opacity: 0;
  pointer-events: none;
  transition: opacity .15s ease;
}

.tax-v3-trend-scroll-thumb {
  height: 10px;
  border-radius: 999px;
  background: #cbd5e1;
  width: 48px;
  will-change: transform;
  box-shadow: none;
}

.tax-v3-trend-scroll-rail:hover .tax-v3-trend-scroll-thumb {
  background: #94a3b8;
}

.tax-v3-trend-chart-wrap:hover .tax-v3-trend-scroll-rail,
.tax-v3-overview-trend:hover .tax-v3-trend-scroll-rail {
  opacity: 1;
  pointer-events: auto;
}

.tax-v3-trend-chart-wrap.is-scroll-hidden .tax-v3-trend-scroll-rail {
  opacity: 0;
  pointer-events: none;
}

.tax-v3-overview-trend .tax-area-chart--pro {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  height: auto;
  min-height: 0;
  max-height: none;
  margin-top: 0;
  padding: 0 0 12px;
  border-top: none;
  box-sizing: border-box;
}

.tax-v3-overview-trend .tax-area-chart--pro svg {
  width: 100%;
  height: 100%;
}

.tax-v3-overview-trend .tax-area-chart--scrollable svg {
  width: auto;
  min-width: 100%;
  height: 100%;
  display: block;
  flex-shrink: 0;
}

.tax-area-chart--scrollable {
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
}

.tax-area-chart--scrollable svg {
  display: block;
  width: auto;
  min-width: 100%;
  height: 100%;
  flex-shrink: 0;
}

.tax-v3-overview-trend .tax-area-chart__title {
  display: none;
}

.tax-v3-overview-trend .tax-area-chart__grid {
  stroke: #e8e8e8;
}

.tax-v3-business-band {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.tax-v3-business-row {
  display: grid;
  grid-template-columns: minmax(132px, .5fr) minmax(0, 2.8fr);
  overflow: hidden;
  border: none;
  border-radius: 8px;
  background: #fbfdff;
  transition: border-color .15s, background .15s;
}

.tax-v3-business-row:hover {
  background: #f8fbff;
}

.tax-v3-business-row__label {
  padding: 14px 16px;
  background: #f4f8fc;
  border-right: 1px solid #e8eef6;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
}

.tax-v3-business-row__label strong {
  color: #1f2733;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 700;
}

.tax-v3-business-row__label span {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  line-height: 1.4;
}

.tax-v3-business-row__metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tax-v3-business-metric {
  min-width: 0;
  padding: 13px 16px;
  border: none;
  border-left: 1px solid #edf1f7;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: background .15s;
}

.tax-v3-business-metric:first-child {
  border-left: none;
}

.tax-v3-business-metric:hover {
  background: rgba(24, 144, 255, 0.035);
}

.tax-v3-business-metric strong {
  display: block;
  color: #1f2733;
  font-size: 20px;
  line-height: 1.15;
  font-weight: 750;
}

.tax-v3-business-metric span {
  display: block;
  margin-top: 5px;
  color: #4b5563;
  font-size: 12px;
  font-weight: 650;
}

.tax-v3-business-metric em {
  display: block;
  margin-top: 3px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 1.35;
}

.tax-v3-business-metric.is-red strong {
  color: #ff4d4f;
}

.tax-v3-business-metric.is-orange strong {
  color: #d48806;
}

.tax-v3-panel-head--trend {
  margin-bottom: 8px;
}

.tax-v3-text-tabs {
  display: inline-flex;
  align-items: center;
  gap: 20px;
}

.tax-v3-text-tabs button {
  position: relative;
  padding: 0 0 6px;
  border: none;
  background: transparent;
  color: #303846;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 700;
  cursor: pointer;
}

.tax-v3-text-tabs button.is-active {
  color: var(--office-blue, #1890FF);
}

.tax-v3-text-tabs button.is-active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  border-radius: 999px;
  background: var(--office-blue, #1890FF);
}

.tax-v3-trend-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-bottom: 6px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  line-height: 1.45;
}

.tax-v3-trend-meta .is-up {
  color: #0f9f6e;
  font-weight: 700;
}

.tax-v3-trend-chart {
  min-width: 0;
}

.tax-v3-trend-chart__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 4px;
}

.tax-v3-trend-chart__head h4,
.tax-v3-completion h4 {
  margin: 0;
  color: #303846;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 700;
}

.tax-v3-trend-chart__head span {
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  white-space: nowrap;
}

.tax-v3-trend-chart .tax-area-chart--pro {
  height: 252px;
  min-height: 252px;
  margin-top: 0;
  padding: 0;
  border-top: none;
}

.tax-v3-trend-chart .tax-area-chart--pro svg {
  height: 100%;
}

.tax-v3-trend-chart .tax-area-chart__title {
  display: none;
}

.tax-v3-trend-chart .tax-area-chart__grid {
  stroke: #edf2f7;
}

.tax-v3-completion {
  min-width: 0;
}

.tax-v3-completion__item {
  padding: 13px 0;
  border-bottom: 1px solid #edf1f7;
}

.tax-v3-completion__item:last-child {
  border-bottom: none;
}

.tax-v3-completion__item div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.tax-v3-completion__item span {
  color: #303846;
  font-size: 13px;
  font-weight: 650;
}

.tax-v3-completion__item strong {
  color: #1f2733;
  font-size: 24px;
  line-height: 1.1;
  font-weight: 750;
}

.tax-v3-completion__item em {
  display: block;
  margin-top: 5px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 1.35;
}

.tax-v3-completion__item > i {
  display: block;
  height: 3px;
  margin-top: 9px;
  border-radius: 999px;
  background: #edf2f7;
  overflow: hidden;
}

.tax-v3-completion__item > i b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--office-blue, #1890FF);
}

.tax-v3-todo-panel {
  display: flex;
  flex-direction: column;
}

.tax-v3-todo-panel .tax-bi-panel__head .btn-toolbar {
  border: none;
  background: transparent;
  color: var(--office-muted, #8a93a3);
  padding: 0;
}

.tax-v3-todo-list {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

.tax-v3-todo-item {
  width: 100%;
  flex: 1;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-height: 0;
  padding: 8px 2px;
  border: none;
  border-bottom: 1px solid #f5f6f8;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: background .15s;
}

.tax-v3-todo-item:last-child {
  border-bottom: none;
}

.tax-v3-todo-item:hover {
  background: #f8fbff;
}

.tax-v3-priority {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 30px;
  height: 20px;
  border-radius: 4px;
  font-size: 11px;
  line-height: 1;
  font-weight: 700;
}

.tax-v3-priority--red { color: #ff4d4f; background: #fff1f0; }
.tax-v3-priority--orange { color: #d48806; background: #fff7e6; }
.tax-v3-priority--blue { color: #597ef7; background: #f0f5ff; }

.tax-v3-todo-item strong {
  display: block;
  color: #1f2733;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
}

.tax-v3-todo-item em {
  display: block;
  margin-top: 2px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tax-v3-todo-tag {
  align-self: center;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 700;
  white-space: nowrap;
}

.tax-v3-todo-tag--red { color: #ff4d4f; background: #fff1f0; }
.tax-v3-todo-tag--orange { color: #d48806; background: #fff7e6; }
.tax-v3-todo-tag--blue { color: #597ef7; background: #f0f5ff; }

.tax-v3-risk-panel {
  display: flex;
  flex-direction: column;
}

.tax-v3-risk-panel .tax-v3-todo-item {
  padding-top: 11px;
  padding-bottom: 11px;
}

.tax-v3-risk-panel .tax-v3-todo-item strong {
  line-height: 1.5;
}

.tax-v3-risk-panel .tax-v3-todo-item em {
  margin-top: 4px;
  line-height: 1.5;
}

.tax-v3-risk-summary {
  margin: -3px 0 6px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  line-height: 1.45;
}

.tax-v3-risk-list {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

.tax-v3-risk-row {
  width: 100%;
  flex: 1;
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-height: 0;
  padding: 8px 2px;
  border: none;
  border-bottom: 1px solid #f5f6f8;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: background .15s;
}

.tax-v3-risk-row:last-child {
  border-bottom: none;
}

.tax-v3-risk-row:hover {
  background: #f8fbff;
}

.tax-v3-risk-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
}

.tax-v3-risk-dot--red { background: #ff4d4f; }
.tax-v3-risk-dot--orange { background: #f59e0b; }

.tax-v3-risk-row strong {
  display: block;
  color: #1f2733;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 700;
}

.tax-v3-risk-row em {
  display: block;
  margin-top: 2px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tax-v3-risk-row b {
  color: #1f2733;
  font-size: 15px;
  font-weight: 750;
  white-space: nowrap;
}

.tax-v3-action-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

.tax-v3-action {
  position: relative;
  min-width: 0;
  min-height: 52px;
  padding: 7px 6px;
  border: none;
  border-radius: 8px;
  background: #f8fbff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  color: #334155;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
  isolation: isolate;
  transition:
    transform .22s cubic-bezier(.22, 1, .36, 1),
    box-shadow .22s cubic-bezier(.22, 1, .36, 1),
    background .2s ease,
    color .2s ease;
}

.tax-v3-action::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: currentColor;
  opacity: 0;
  transform: translate(-50%, -50%) scale(0);
  pointer-events: none;
  z-index: 0;
}

.tax-v3-action::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle at 50% 0%, rgba(255, 255, 255, .55), transparent 68%);
  opacity: 0;
  pointer-events: none;
  transition: opacity .22s ease;
  z-index: 0;
}

.tax-v3-action > * {
  position: relative;
  z-index: 1;
}

.tax-v3-action svg {
  width: 18px;
  height: 18px;
  transition: transform .22s cubic-bezier(.22, 1, .36, 1);
}

.tax-v3-action--green {
  color: #0f9f6e;
  background: #effdf7;
}

.tax-v3-action--blue {
  color: var(--office-blue, #1890FF);
  background: #f2f8ff;
}

.tax-v3-action--orange {
  color: #d48806;
  background: #fff8ed;
}

.tax-v3-action:hover {
  transform: translateY(-2px);
}

.tax-v3-action:hover::after {
  opacity: 1;
}

.tax-v3-action:hover svg {
  transform: translateY(-1px) scale(1.06);
}

.tax-v3-action:active {
  transform: translateY(0) scale(.96);
  transition-duration: .1s;
}

.tax-v3-action:active svg {
  transform: none;
}

.tax-v3-action.is-firing {
  animation: tax-v3-action-fire .5s cubic-bezier(.22, 1, .36, 1);
}

.tax-v3-action.is-firing::before {
  animation: tax-v3-action-ripple .48s ease-out;
}

.tax-v3-action.is-firing::after {
  opacity: 1;
}

.tax-v3-action--green:hover,
.tax-v3-action--green.is-firing {
  color: #0b8a5e;
  background: linear-gradient(180deg, #f3fef9 0%, #e8faf2 100%);
  box-shadow: 0 6px 14px rgba(15, 159, 110, .08);
}

.tax-v3-action--green:active {
  background: #dff7ec;
  box-shadow: 0 2px 6px rgba(15, 159, 110, .06);
}

.tax-v3-action--blue:hover,
.tax-v3-action--blue.is-firing {
  color: #0d7de0;
  background: linear-gradient(180deg, #f5faff 0%, #ebf4ff 100%);
  box-shadow: 0 6px 14px rgba(24, 144, 255, .07);
}

.tax-v3-action--blue:active {
  background: #e3f0ff;
  box-shadow: 0 2px 6px rgba(24, 144, 255, .05);
}

.tax-v3-action--orange:hover,
.tax-v3-action--orange.is-firing {
  color: #c47a00;
  background: linear-gradient(180deg, #fffaf2 0%, #fff3e3 100%);
  box-shadow: 0 6px 14px rgba(212, 136, 6, .07);
}

.tax-v3-action--orange:active {
  background: #ffecd0;
  box-shadow: 0 2px 6px rgba(212, 136, 6, .05);
}

@keyframes tax-v3-action-fire {
  0% {
    transform: translateY(0) scale(1);
    filter: none;
  }
  30% {
    transform: translateY(1px) scale(.94);
    filter: brightness(.98);
  }
  62% {
    transform: translateY(-3px) scale(1.04);
    filter: brightness(1.06);
  }
  100% {
    transform: translateY(0) scale(1);
    filter: none;
  }
}

@keyframes tax-v3-action-ripple {
  0% {
    opacity: .28;
    transform: translate(-50%, -50%) scale(0);
  }
  70% {
    opacity: .12;
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(14);
  }
}

.tax-v3-action:focus-visible {
  outline: none;
}

.tax-v3-action--green:focus-visible {
  box-shadow: 0 0 0 2px rgba(15, 159, 110, .16);
}

.tax-v3-action--blue:focus-visible {
  box-shadow: 0 0 0 2px rgba(24, 144, 255, .14);
}

.tax-v3-action--orange:focus-visible {
  box-shadow: 0 0 0 2px rgba(212, 136, 6, .14);
}

@media (max-width: 1280px) {
  .tax-v3-trend-block {
    grid-template-columns: 1fr;
  }

  .tax-v3-business-row {
    grid-template-columns: 1fr;
  }

  .tax-v3-business-row__label {
    border-right: none;
    border-bottom: 1px solid #e8eef6;
  }
}

@media (max-width: 960px) {
  .tax-v3-dashboard-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }

  .tax-v3-overview-grid {
    grid-template-columns: 1fr;
  }

  .tax-v3-overview-panel,
  .tax-v3-side-stack,
  .tax-v3-risk-panel,
  .tax-v3-actions-panel {
    grid-column: auto;
    grid-row: auto;
    height: auto;
    min-height: 0;
  }

  .tax-v3-side-stack {
    flex-direction: column;
  }

  .tax-v3-risk-panel {
    flex: 0 0 auto;
    min-height: 240px;
  }

  .tax-v3-actions-panel {
    min-height: 0;
  }

  .tax-v3-business-row__metrics {
    grid-template-columns: 1fr;
  }

  .tax-v3-business-metric,
  .tax-v3-business-metric:first-child {
    border-left: none;
    border-top: 1px solid #edf1f7;
  }

  .tax-v3-business-metric:first-child {
    border-top: none;
  }
}

/* ===== 主控台2 · 重新梳理版 ===== */
.tax-bi-page--main-console-v2 .tax-main-overview {
  display: grid;
  grid-template-columns: minmax(0, 2.75fr) minmax(300px, .85fr);
  gap: 0;
  padding: 0;
  overflow: hidden;
}

.tax-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.tax-section-head h3 {
  margin: 0;
  color: #1a1a1a;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
}

.tax-section-head p {
  margin: 4px 0 0;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  line-height: 1.5;
}

.tax-main-overview__primary {
  min-width: 0;
  padding: 16px 20px 18px;
  display: flex;
  flex-direction: column;
}

.tax-main-overview__body {
  flex: 1;
  display: grid;
  grid-template-columns: minmax(190px, .34fr) minmax(0, .66fr);
  gap: 24px;
  align-items: start;
}

.tax-core-metrics {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.tax-core-metrics__hero strong {
  display: block;
  color: var(--office-blue, #1890FF);
  font-size: 36px;
  font-weight: 750;
  line-height: 1.08;
}

.tax-core-metrics__hero span {
  display: block;
  margin-top: 6px;
  color: #303846;
  font-size: 14px;
  font-weight: 650;
}

.tax-core-metrics__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.tax-core-metrics__badges span {
  display: inline-flex;
  align-items: center;
  height: 24px;
  padding: 0 9px;
  border-radius: 6px;
  background: #f4f8ff;
  color: #48617d;
  font-size: 12px;
  font-weight: 600;
}

.tax-core-metrics__badges .is-up {
  background: #edf8f2;
  color: #0f9f6e;
}

.tax-core-metrics__rows {
  margin-top: 14px;
  border-top: 1px solid #edf0f5;
}

.tax-core-metrics__rows div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid #edf0f5;
}

.tax-core-metrics__rows span {
  color: var(--office-muted, #8a93a3);
  font-size: 13px;
}

.tax-core-metrics__rows strong {
  color: #1f2733;
  font-size: 16px;
  font-weight: 700;
  white-space: nowrap;
}

.tax-main-trend {
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.tax-main-trend__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 6px;
}

.tax-main-trend__top h4,
.tax-work-block h4,
.tax-month-process__col h4 {
  margin: 0;
  color: #303846;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}

.tax-main-trend__top p {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 16px;
  margin: 5px 0 0;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  line-height: 1.45;
}

.tax-main-trend__top p strong {
  color: #0f9f6e;
  font-weight: 700;
}

.tax-main-trend .tax-area-chart--pro {
  height: 250px;
  min-height: 250px;
  margin-top: 2px;
  padding: 0;
  border-top: none;
}

.tax-main-trend .tax-area-chart--pro svg {
  height: 100%;
}

.tax-main-trend .tax-area-chart__title {
  display: none;
}

.tax-main-trend .tax-area-chart__grid {
  stroke: #edf2f7;
}

.tax-today-work {
  min-width: 0;
  padding: 16px 18px;
  border-left: 1px solid #edf0f5;
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.tax-section-head--work {
  align-items: center;
  margin-bottom: 14px;
}

.tax-work-block + .tax-work-block {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #edf0f5;
}

.tax-work-block h4 {
  margin-bottom: 8px;
}

.tax-bi-page--main-console-v2 .tax-risk-row {
  padding: 5px 2px;
}

.tax-bi-page--main-console-v2 .tax-risk-row:hover {
  background: transparent;
}

.tax-bi-page--main-console-v2 .tax-risk-row__count {
  font-size: 14px;
}

.tax-bi-page--main-console-v2 .tax-risk-row__body {
  gap: 2px;
}

.tax-bi-page--main-console-v2 .tax-risk-row__body strong {
  font-size: 12px;
}

.tax-bi-page--main-console-v2 .tax-risk-row__body em {
  font-size: 11px;
  line-height: 1.35;
}

.tax-bi-page--main-console-v2 .tax-integrity-block {
  margin-top: 6px;
  padding: 8px;
  background: #f5f8fc;
}

.tax-bi-page--main-console-v2 .tax-integrity-block__title {
  margin-bottom: 6px;
  font-size: 11px;
}

.tax-bi-page--main-console-v2 .tax-integrity-block__col strong {
  font-size: 15px;
}

.tax-bi-page--main-console-v2 .tax-integrity-block__col span {
  font-size: 11px;
}

.tax-bi-page--main-console-v2 .tax-todo-workspace__stats {
  display: none;
}

.tax-bi-page--main-console-v2 .tax-todo-list__row {
  padding: 7px 2px;
}

.tax-bi-page--main-console-v2 .tax-todo-list__item:hover .tax-todo-list__row {
  background: transparent;
}

.tax-bi-page--main-console-v2 .tax-todo-list__head {
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 2px;
}

.tax-bi-page--main-console-v2 .tax-todo-list__head strong {
  font-size: 12px;
}

.tax-bi-page--main-console-v2 .tax-todo-list__priority {
  padding: 2px 6px;
}

.tax-bi-page--main-console-v2 .tax-todo-list__tag {
  padding: 2px 6px;
}

.tax-bi-page--main-console-v2 .tax-todo-list__content em {
  font-size: 11px;
  line-height: 1.35;
}

.tax-bi-page--main-console-v2 .tax-todo-list__arrow {
  display: none;
}

.tax-bi-page--main-console-v2 .tax-work-block--todo .tax-todo-list__item:first-child .tax-todo-list__row,
.tax-bi-page--main-console-v2 .tax-work-block--todo .tax-todo-list__item:nth-child(2) .tax-todo-list__row {
  padding-left: 8px;
  border-left: 2px solid #ff4d4f;
}

.tax-bi-page--main-console-v2 .tax-month-process {
  padding: 16px 20px 18px;
}

.tax-month-process__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
}

.tax-month-process__col {
  min-width: 0;
  padding: 0 24px;
  border-left: 1px solid #edf0f5;
}

.tax-month-process__col:first-child {
  padding-left: 0;
  border-left: none;
}

.tax-month-process__col:last-child {
  padding-right: 0;
}

.tax-month-process__col > strong {
  display: block;
  margin-top: 10px;
  color: #1f2733;
  font-size: 23px;
  line-height: 1.15;
  font-weight: 750;
}

.tax-month-process__col > em {
  display: block;
  margin-top: 5px;
  color: var(--office-muted, #8a93a3);
  font-size: 12px;
  font-style: normal;
}

.tax-month-process__rows {
  margin-top: 14px;
}

.tax-month-process__rows div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 0;
  border-top: 1px solid #f1f4f8;
}

.tax-month-process__rows span {
  color: #667085;
  font-size: 13px;
}

.tax-month-process__rows b {
  color: #1f2733;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.tax-month-process__rows .is-danger {
  color: #ff4d4f;
}

.tax-month-process__rows .is-warn {
  color: #d48806;
}

@media (max-width: 1440px) {
  .tax-bi-grid--6 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1280px) {
  .tax-command-hero,
  .tax-main-trend-board {
    grid-template-columns: 1fr;
  }

  .tax-bi-page--main-console-v2 .tax-main-overview,
  .tax-main-overview__body {
    grid-template-columns: 1fr;
  }

  .tax-today-work {
    border-left: none;
    border-top: 1px solid #edf0f5;
  }

  .tax-month-process__col {
    padding: 2px 18px 0;
  }

  .tax-progress-board--model {
    grid-template-columns: 1fr;
  }

  .tax-progress-board--model .tax-progress-board__col.has-divider .tax-progress-board__inner {
    border-right: none;
    border-bottom: 1px solid #edf0f5;
    margin-bottom: 8px;
    padding-bottom: 12px;
  }

  .tax-bi-layout--analysis {
    grid-template-columns: 1fr;
  }

  .tax-integrity-block__cols {
    grid-template-columns: 1fr;
  }

  .tax-integrity-block__col.has-divider {
    border-right: none;
    border-bottom: 1px solid #e6edf6;
    padding-bottom: 8px;
    margin-bottom: 8px;
  }

  .tax-risk-actions {
    grid-template-columns: 1fr;
  }

  .tax-bi-grid--8,
  .tax-status-ribbon {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tax-flow-columns,
  .tax-chain-board__steps,
  .tax-priority-grid .tax-rule-list {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 1200px) {
  .tax-bi-layout--main,
  .tax-flow-columns,
  .tax-chain-board__row,
  .tax-chain-board__steps,
  .tax-risk-heatmap,
  .drawer-process-summary,
  .tax-priority-grid .tax-rule-list {
    grid-template-columns: 1fr;
  }

  .tax-bi-page--main-console .tax-chain-board__row,
  .tax-command-hero__summary,
  .tax-bi-page--main-console .tax-quick-actions {
    grid-template-columns: 1fr;
  }

  .tax-main-trend-board .tax-flow-columns,
  .tax-main-trend-board .tax-mini-trend {
    height: auto;
  }

  .tax-month-process__grid {
    grid-template-columns: 1fr;
  }

  .tax-month-process__col,
  .tax-month-process__col:first-child,
  .tax-month-process__col:last-child {
    padding: 16px 0;
    border-left: none;
    border-top: 1px solid #edf0f5;
  }

  .tax-month-process__col:first-child {
    padding-top: 0;
    border-top: none;
  }

  .tax-main-trend__top,
  .tax-section-head {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 640px) {
  .tax-bi-page--main-console-v2 {
    padding-left: 10px;
    padding-right: 10px;
  }

  .tax-main-overview__primary,
  .tax-today-work,
  .tax-bi-page--main-console-v2 .tax-month-process {
    padding-left: 14px;
    padding-right: 14px;
  }

  .tax-core-metrics__hero strong {
    font-size: 32px;
  }

  .tax-main-trend .tax-area-chart--pro,
  .tax-main-trend .tax-area-chart--pro svg {
    min-height: 240px;
    height: 240px;
  }

  .tax-month-process__col > strong {
    font-size: 24px;
  }
}

/* 表13 年度报税矩阵 */
.tax-matrix-table thead th {
  text-align: center;
  vertical-align: middle;
}

.tax-matrix-row--plan td:first-child {
  background: #f6ffed;
}

.tax-matrix-row--actual td:first-child {
  background: #e6f4ff;
}

.tax-matrix-row--exec td:first-child {
  background: #fff7e6;
}

.tax-matrix-row {
  cursor: default;
}

/* 表14 多级表头 */
.tax-multi-header-row th {
  background: #fafafa;
  font-weight: 600;
}

.tax-multi-header-table thead tr:last-child th {
  font-size: 12px;
}

/* 表15 注销公司标识 */
.tax-row-deregistered td {
  background: #fff1f0 !important;
  color: #a8071a;
}

/* 表15 审核锁定行 */
.tax-row-locked td {
  background: #fafafa !important;
}
.tax-row-locked td:first-child {
  box-shadow: inset 3px 0 0 #faad14;
}

/* 表15 工具栏批量操作弹窗 */
.tax-declare-modal-root {
  position: fixed;
  inset: 0;
  z-index: 70;
  pointer-events: none;
  visibility: hidden;
}
.tax-declare-modal-root.open {
  pointer-events: auto;
  visibility: visible;
}
.tax-declare-modal-root .tax-declare-modal-mask {
  position: fixed;
  inset: 0;
  z-index: 1;
  background: rgba(17, 24, 39, 0.42);
  opacity: 0;
  transition: opacity 0.2s ease;
}
.tax-declare-modal-root.open .tax-declare-modal-mask {
  opacity: 1;
}
.tax-declare-modal {
  position: fixed;
  z-index: 2;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -48%) scale(0.98);
  width: min(520px, calc(100vw - 48px));
  max-height: min(640px, calc(100vh - 48px));
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 24px 80px rgba(15, 23, 42, 0.24);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.tax-declare-modal-root.open .tax-declare-modal {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1;
}
.tax-declare-modal-body {
  padding: 20px 24px;
  overflow-y: auto;
}
.tax-declare-modal-foot {
  padding: 12px 24px 20px;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  border-top: 1px solid #eef0f3;
}
.tax-declare-modal-intro {
  font-size: 13px;
  color: #595959;
  line-height: 1.6;
  margin-bottom: 14px;
}
.tax-declare-modal-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 16px;
}
.tax-declare-modal-stats span {
  font-size: 12px;
  color: #595959;
  padding: 6px 10px;
  border-radius: 6px;
  background: #f6f8fb;
  border: 1px solid #edf0f5;
}
.tax-declare-modal-stats .is-ok { color: #389e0d; border-color: #b7eb8f; background: #f6ffed; }
.tax-declare-modal-stats .is-warn { color: #d48806; border-color: #ffe58f; background: #fffbe6; }
.tax-declare-modal-stats .is-muted { color: #8c8c8c; }
.tax-declare-modal-field {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 12px;
}
.tax-declare-radio {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #262626;
  cursor: pointer;
}
.tax-declare-date-input {
  height: 36px;
  padding: 0 12px;
  border: 1px solid #d9d9d9;
  border-radius: 6px;
  font-size: 13px;
  max-width: 220px;
}
.tax-declare-date-input:disabled {
  background: #f5f5f5;
  color: #bfbfbf;
}
.tax-declare-modal-note {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  font-size: 12px;
  color: #8c8c8c;
  line-height: 1.5;
  margin: 0;
}
.tax-declare-modal-list {
  margin: 0;
  padding-left: 18px;
  font-size: 13px;
  color: #595959;
  line-height: 1.8;
}
.tax-declare-modal-label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #262626;
  margin-bottom: 8px;
}
.tax-declare-textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #d9d9d9;
  border-radius: 6px;
  font-size: 13px;
  line-height: 1.5;
  resize: vertical;
  box-sizing: border-box;
}
.tax-declare-textarea:focus {
  outline: none;
  border-color: #1890ff;
  box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.12);
}

/* 申请税款支付 · 表单弹窗（字段样式对齐详情抽屉 drawer-form） */
.tax-declare-modal-root.is-tax-pay-form .tax-declare-modal {
  width: min(760px, calc(100vw - 48px));
  max-height: min(820px, calc(100vh - 40px));
}
.tax-declare-modal-root.is-tax-pay-form .tax-declare-modal-body {
  padding: 20px 36px 20px 24px;
}
.tax-declare-modal-root.is-tax-pay-form .tax-declare-modal-foot {
  padding-right: 36px;
}
.tax-declare-modal-root.is-tax-pay-form .tax-declare-modal-intro.drawer-rule-hint {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 16px;
}
.tax-declare-modal-root.is-tax-pay-form .tax-declare-modal-intro.drawer-rule-hint i,
.tax-declare-modal-root.is-tax-pay-form .tax-declare-modal-intro.drawer-rule-hint svg {
  flex-shrink: 0;
  margin-top: 1px;
  width: 14px;
  height: 14px;
}
.tax-declare-modal-root.is-tax-pay-form .tax-pay-form {
  margin-bottom: 0;
  gap: 14px 28px;
}
.tax-declare-modal-root.is-tax-pay-form .drawer-input-field:not(.drawer-input-field--full) .drawer-input-control {
  max-width: none;
  flex: 1;
}
.tax-declare-modal-root.is-tax-pay-form .drawer-input-field:not(.drawer-input-field--full) .drawer-input,
.tax-declare-modal-root.is-tax-pay-form .drawer-input-field:not(.drawer-input-field--full) .drawer-select {
  max-width: none;
}
.tax-declare-modal-root.is-tax-pay-form .drawer-input-label {
  width: 88px;
}
.tax-declare-modal-root.is-tax-pay-form .drawer-input-field--upload:not(.drawer-input-field--upload-compact) {
  flex-direction: row;
  align-items: center;
  gap: 8px;
}
.tax-declare-modal-root.is-tax-pay-form .drawer-input-field--upload:not(.drawer-input-field--upload-compact) .drawer-input-label {
  width: 88px;
  text-align: right;
  line-height: 36px;
  padding-top: 0;
  padding-right: 4px;
}
.tax-declare-modal-root.is-tax-pay-form .drawer-input-field--upload:not(.drawer-input-field--upload-compact) .drawer-input-control {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
}
.tax-declare-modal-root.is-tax-pay-form .drawer-upload-zone {
  width: auto;
  max-width: 100%;
  height: 36px;
  padding: 0 12px;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  text-align: left;
}
.tax-declare-modal-root.is-tax-pay-form .drawer-upload-zone__icon {
  margin-bottom: 0;
}
.tax-declare-modal-root.is-tax-pay-form .drawer-upload-zone__hint {
  margin-top: 0;
}

/* 表16 税负统计 · 矩阵报表（对齐 list-panel + expense-grid-wrap 列表规范） */
.page-subtabs--tax-burden .tax-burden-subtab-row,
.page-list-shell--tax-burden-report .tax-burden-subtab-row {
  align-items: flex-end;
  overflow: visible;
}

/* 横向滚动容器：留 1px 给选中 Tab 白底压线，避免 overflow-x:auto 裁切底边 */
.page-subtabs--tax-burden .tax-burden-subtab-scroll,
.page-list-shell--tax-burden-report .tax-burden-subtab-scroll,
.page-subtabs--tax-burden .tax-burden-subtab-row [role="tablist"],
.page-list-shell--tax-burden-report .tax-burden-subtab-row [role="tablist"] {
  flex: 1;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 1px;
  margin-bottom: -1px;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.page-subtabs--tax-burden .tax-burden-subtab-scroll::-webkit-scrollbar,
.page-list-shell--tax-burden-report .tax-burden-subtab-scroll::-webkit-scrollbar,
.page-subtabs--tax-burden .tax-burden-subtab-row [role="tablist"]::-webkit-scrollbar,
.page-list-shell--tax-burden-report .tax-burden-subtab-row [role="tablist"]::-webkit-scrollbar {
  display: none;
}

.page-subtabs--tax-burden .brand-tab-active,
.page-list-shell--tax-burden-report .brand-tab-active {
  margin-bottom: -1px;
  z-index: 2;
}

.page-subtabs--tax-burden .page-toolbar-icons,
.page-list-shell--tax-burden-report .page-toolbar-icons {
  align-self: center;
  padding-bottom: 0;
  flex-shrink: 0;
}

.page-list-shell--tax-burden-report #list-table-host {
  padding: 12px 14px 12px !important;
}

.page-list-shell--tax-burden-report .tax-burden-report-page {
  gap: 12px;
  padding-bottom: 0;
}

.tax-burden-report-page {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  height: 100%;
  gap: 12px;
}

.page-list-shell--tax-burden-report .tax-burden-matrix-wrap {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

.page-list-shell--tax-burden-report .tax-burden-matrix-table {
  width: 100%;
  min-width: max-content;
  height: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.page-list-shell--tax-burden-report .tax-burden-matrix-table th,
.page-list-shell--tax-burden-report .tax-burden-matrix-table td {
  height: auto;
  min-height: 46px;
  padding-top: 10px;
  padding-bottom: 10px;
  vertical-align: middle;
  box-sizing: border-box;
}

.page-list-shell--tax-burden-report .tax-burden-matrix-table tbody tr {
  transition: height 0.12s ease;
}

.tax-burden-kpi-strip {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
  flex-shrink: 0;
}

.tax-burden-kpi-card {
  background: var(--office-head, #fafafa);
  border: 1px solid var(--office-border, #edf0f5);
  border-radius: 8px;
  padding: 10px 12px;
  min-height: 64px;
  text-align: center;
}

.tax-burden-kpi-card__label {
  font-size: 12px;
  color: #8c8c8c;
  margin-bottom: 6px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tax-burden-kpi-card__value {
  font-size: 18px;
  font-weight: 600;
  color: #262626;
  line-height: 1.2;
}

.tax-burden-kpi__value--strong {
  color: #1890ff;
}

.tax-burden-kpi__value--warn {
  color: #cf1322;
}

.tax-burden-kpi__value--info {
  color: #d46b08;
}

.tax-burden-matrix-table thead th {
  text-align: center;
  vertical-align: middle;
  background: var(--office-head, #fafafa);
  font-weight: 700;
  white-space: nowrap;
}

.tax-burden-matrix-table thead .tax-burden-matrix-sticky {
  z-index: 5;
  background: var(--office-head, #fafafa);
}

.tax-burden-matrix-th--year-total,
.tax-burden-matrix-cell--year-total {
  background: var(--office-blue-soft, #f0f7ff) !important;
  font-weight: 600;
}

.tax-burden-matrix-sticky {
  position: sticky;
  z-index: 2;
  background: #fff;
  white-space: nowrap;
  text-align: center;
}

.tax-burden-matrix-sticky--list {
  left: 0;
  min-width: 72px;
  max-width: 72px;
  color: var(--office-text, #263241);
  font-weight: 600;
  border-right: 1px solid var(--office-border, #edf0f5);
  box-shadow: 6px 0 8px -6px rgba(15, 23, 42, 0.08);
}

.tax-burden-matrix-sticky--tax {
  left: 72px;
  min-width: 200px;
  max-width: 280px;
  text-align: center;
  box-shadow: 6px 0 8px -6px rgba(15, 23, 42, 0.08);
}

.tax-burden-matrix-sticky--bold {
  font-weight: 700;
}

.tax-burden-matrix-row--total {
  background: var(--office-head, #fafafa);
}

.tax-burden-matrix-row--total .tax-burden-matrix-sticky,
.tax-burden-matrix-row--total td {
  background: var(--office-head, #fafafa);
}

.tax-burden-matrix-row--rate .tax-burden-matrix-sticky--tax {
  color: #687282;
}

.tax-burden-matrix-row:hover .tax-burden-matrix-sticky {
  background: #f8fbff;
}

.tax-burden-matrix-table tbody tr:hover td {
  background: #f8fbff;
}

.tax-burden-matrix-table tbody tr.tax-burden-matrix-row--total:hover td,
.tax-burden-matrix-table tbody tr.row-summary:hover td {
  background: var(--office-head, #fafafa) !important;
}

.tax-burden-matrix-cell {
  cursor: pointer;
  transition: background-color 0.15s ease;
  text-align: center;
}

.tax-burden-matrix-cell:hover {
  background: #f8fbff !important;
}

.tax-burden-matrix-cell--total-row {
  font-weight: 600;
}

.tax-burden-field-hint {
  margin-left: 4px;
  color: #8c8c8c;
  font-size: 12px;
  cursor: help;
}

.tax-rate-cell {
  font-variant-numeric: tabular-nums;
}

.tax-rate-high {
  color: #cf1322;
  font-weight: 600;
}

.tax-rate-low {
  color: #d46b08;
  font-weight: 600;
}

.tax-rate-highlight {
  box-shadow: inset 0 0 0 2px currentColor;
}

.tax-burden-empty {
  padding: 32px 16px;
  text-align: center;
  color: #bfbfbf;
  font-size: 14px;
}

@media (max-width: 1400px) {
  .tax-burden-kpi-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  .tax-burden-kpi-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* 旧版列表卡片样式保留兼容 */
.tax-burden-page {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.tax-burden-block {
  border: 1px solid var(--office-border, #edf0f5);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.tax-burden-block__head {
  padding: 12px 16px;
  border-bottom: 1px solid var(--office-border, #edf0f5);
}

.tax-burden-block__head h3 {
  font-size: 14px;
  font-weight: 600;
  color: #262626;
}

.tax-burden-block__head p {
  margin-top: 4px;
  font-size: 12px;
  color: #8c8c8c;
}

.tax-burden-row {
  cursor: pointer;
}

/* 列表勾选列 · 对齐薪酬绩效 col-check */
.expense-grid-table th.col-check,
.expense-grid-table td.col-check {
  width: 42px;
  min-width: 42px;
  max-width: 42px;
  padding-left: 10px;
  padding-right: 10px;
  text-align: center;
  vertical-align: middle;
}

.expense-grid-table th.col-check input[type="checkbox"],
.expense-grid-table td.col-check input[type="checkbox"] {
  width: 14px;
  height: 14px;
  margin: 0;
  cursor: pointer;
  accent-color: var(--office-blue, #1890ff);
}

.expense-grid-table.expense-grid-table--sticky-actions th.col-check,
.expense-grid-table.expense-grid-table--sticky-actions td.col-check {
  position: sticky;
  left: 0;
  z-index: 3;
  background: #fff;
  border-right: 1px solid #f0f0f0;
  box-shadow: 6px 0 8px -6px rgba(0, 0, 0, 0.08);
}

.expense-grid-table.expense-grid-table--sticky-actions thead th.col-check {
  z-index: 5;
  background: #fafafa;
}

.expense-grid-table.expense-grid-table--sticky-actions tbody tr.row-detail:hover td.col-check {
  background: #fafafa !important;
}

.expense-grid-table.expense-grid-table--sticky-actions tbody tr.row-selected td.col-check {
  background: #e6f4ff !important;
}

/* 批量操作栏 · 对齐薪酬绩效 payroll-batch-bar */
.list-batch-bar {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-shrink: 0;
  height: 44px;
  padding: 0 16px;
  margin: 0 0 8px;
  background: #e6f7ff;
  border: 1px solid #bae7ff;
  border-radius: 4px;
  font-size: 13px;
  color: var(--office-blue, #1890ff);
}

.list-batch-bar.hidden { display: none; }

.list-batch-count {
  flex-shrink: 0;
  color: var(--office-blue, #1890ff);
}

.list-batch-count strong { font-weight: 600; }

.list-batch-actions {
  display: flex;
  align-items: center;
  gap: 24px;
  flex: 1;
  min-width: 0;
  flex-wrap: wrap;
}

.list-batch-action {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: none;
  background: none;
  color: var(--office-blue, #1890ff);
  font-size: 13px;
  cursor: pointer;
  padding: 4px 0;
}

.list-batch-action:hover { opacity: 0.85; }

.list-batch-action svg { width: 14px; height: 14px; stroke-width: 2; }

.list-batch-close {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border: none;
  background: transparent;
  color: var(--office-blue, #1890ff);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.list-batch-close:hover {
  background: rgba(24, 144, 255, 0.08);
  border-radius: 4px;
}

.list-batch-close svg { width: 16px; height: 16px; }

.list-action-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border: 1px solid #d7e4f5;
  background: #fff;
  color: #344054;
  font-size: 12px;
  white-space: nowrap;
  cursor: pointer;
  transition: border-color .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.list-action-btn i {
  flex-shrink: 0;
  stroke-width: 2;
}

.list-action-btn span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.list-action-btn--main {
  height: 28px;
  padding: 0 10px;
  border-radius: 6px;
  font-weight: 600;
  line-height: 26px;
}

.list-action-btn--primary {
  color: #fff;
  background: var(--office-blue, #1890ff);
  border-color: var(--office-blue, #1890ff);
  box-shadow: 0 2px 6px rgba(24, 144, 255, .18);
}

.list-action-btn--primary:hover:not(:disabled):not(.is-disabled) {
  color: #fff;
  background: #40a9ff;
  border-color: #40a9ff;
}

.list-action-btn--main.list-action-btn--neutral {
  color: #1264b3;
  border-color: #cfe6ff;
  background: #f3f9ff;
  box-shadow: none;
}

.list-action-btn--main.list-action-btn--neutral:hover:not(:disabled):not(.is-disabled) {
  color: #0958b8;
  border-color: #91caff;
  background: #e6f4ff;
}

.list-action-btn--main.list-action-btn--warning {
  color: #ad6800;
  border-color: #ffd591;
  background: #fff7e6;
  box-shadow: none;
}

.list-action-btn--main.list-action-btn--warning:hover:not(:disabled):not(.is-disabled) {
  color: #874d00;
  border-color: #ffc069;
  background: #fff1d6;
}

.list-action-btn--main.list-action-btn--danger {
  color: #cf1322;
  border-color: #ffa39e;
  background: #fff1f0;
  box-shadow: none;
}

.list-action-btn--main.list-action-btn--danger:hover:not(:disabled):not(.is-disabled) {
  color: #a8071a;
  border-color: #ff7875;
  background: #fff0f0;
}

.list-action-more {
  position: relative;
  flex: 0 0 auto;
}

.list-action-more__trigger {
  width: 28px;
  height: 28px;
  border: 1px solid #d7e4f5;
  border-radius: 6px;
  background: #fff;
  color: #667085;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease;
}

.list-action-more__trigger:hover,
.list-action-more:focus-within .list-action-more__trigger {
  color: var(--office-blue, #1890ff);
  border-color: #91caff;
  background: #f3f9ff;
  box-shadow: 0 0 0 2px rgba(24, 144, 255, .08);
}

.list-action-more__menu {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: 30;
  min-width: 148px;
  max-width: 168px;
  padding: 4px;
  border: 1px solid #e4eaf3;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .16);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(4px);
  transition: opacity .15s ease, transform .15s ease, visibility .15s ease;
  contain: layout style;
}

.list-action-more:hover .list-action-more__menu,
.list-action-more:focus-within .list-action-more__menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.list-action-more__menu::before {
  content: "";
  position: absolute;
  top: -7px;
  right: 10px;
  width: 10px;
  height: 10px;
  border-top: 1px solid #e4eaf3;
  border-left: 1px solid #e4eaf3;
  background: #fff;
  transform: rotate(45deg);
}

.list-action-menu-btn {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 30px;
  justify-content: flex-start;
  padding: 0 8px;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #344054;
  font-weight: 500;
  line-height: 30px;
  box-shadow: none;
}

.list-action-menu-btn:hover:not(:disabled):not(.is-disabled) {
  color: var(--office-blue, #1890ff);
  background: #f3f9ff;
}

.list-action-menu-btn.list-action-btn--accent {
  color: var(--office-blue, #1890ff);
}

.list-action-menu-btn.list-action-btn--accent:hover:not(:disabled):not(.is-disabled) {
  color: #0958b8;
  background: #f3f9ff;
}

.list-action-menu-btn.list-action-btn--warning {
  color: #ad6800;
}

.list-action-menu-btn.list-action-btn--warning:hover:not(:disabled):not(.is-disabled) {
  color: #874d00;
  background: #fff7e6;
}

.list-action-menu-btn.list-action-btn--danger {
  color: #cf1322;
}

.list-action-menu-btn.list-action-btn--danger:hover:not(:disabled):not(.is-disabled) {
  color: #a8071a;
  background: #fff1f0;
}

.list-action-btn.is-disabled,
.list-action-btn:disabled {
  color: #bfbfbf;
  border-color: #f0f0f0;
  background: #fafafa;
  box-shadow: none;
  cursor: not-allowed;
}

.tax-declare-drill-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 8px;
  padding: 8px 12px;
  border-radius: 6px;
  background: #e6f4ff;
  border: 1px solid #91caff;
  color: #0958d9;
  font-size: 13px;
}

.tax-declare-drill-banner__close {
  border: none;
  background: transparent;
  color: #1677ff;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  padding: 0 4px;
}

.expense-grid-table th.tax-col-drill-highlight,
.expense-grid-table td.tax-col-drill-highlight {
  background: #fffbe6 !important;
  box-shadow: inset 0 -2px 0 #faad14;
}

.btn-drawer.is-disabled,
.btn-drawer:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
