/* PingFang keeps its quiet character; data and controls use readable real weights.
   Typography is shared by the dashboard, login and workspace selection. */
/* Official ZCOOL XiaoWei subset: only the four company-name characters.
   Self hosted; all other glyphs retain the existing PingFang fallback. */
@font-face {
  font-family: "ZCOOL XiaoWei";
  src: url("/company-brand-r02/zcool-xiaowei-company-v1.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  unicode-range: U+57DF, U+5E8F, U+6DF1, U+6F9C;
}
@layer portalTypography {
  html, body, body *, body *::before, body *::after,
  input::placeholder, textarea::placeholder {
    font-family: "PingFang SC", "PingFang SC Light", "PingFangSC-Light",
      "Microsoft YaHei", "Noto Sans CJK SC", sans-serif !important;
    font-synthesis: none;
  }
  body, body * { font-weight: 400 !important; }
  h1, h2, h3, h4, h5, h6, th,
  strong, b, .metric-value, .target-ring strong,
  .wb-summary-item > strong, .npr-total, .tab.active, .inner-tab.active,
  .subtab.active, .primary-button, .tide-enter { font-weight: 500 !important; }
  .entry h1.company-tide, .entry h1.company-tide span,
  .company-caption { font-weight: 300 !important; }
  .eyebrow, .subtle, .panel-note, .metric-note, .cell-subline,
  .context-badge, .read-only-badge, .npr-status, .npr-legend, small {
    font-weight: 400 !important;
  }
  .tide-brand strong, .workspace-brand strong,
  .entry h1.company-tide, .entry h1.company-tide span,
  .wait-eyebrow, .wait-caption,
  .dc-site-footer > span:first-of-type, .dc-site-copyright {
    font-family: "ZCOOL XiaoWei", "PingFang SC", "PingFang SC Light", "PingFangSC-Light",
      "Microsoft YaHei", "Noto Sans CJK SC", sans-serif !important;
  }
}

:root { --ink: #27323a; --muted: #5f6a73; --chart-ink: #53626d; }
body:not(.entry-body) { color: var(--ink); }
body:not(.entry-body) :is(input, select, textarea) { color: #2e3c45; }
body:not(.entry-body) :is(input, textarea)::placeholder { color: #67747c; opacity: 1; }
.tab-panel :is(td, .filter-summary, .wb-filter-summary) { color: #35444d; }
.tab-panel :is(th, label, .metric-label, .eyebrow, .subtle, .panel-note,
  .metric-note, .cell-subline, .context-badge, .read-only-badge,
  .filter-summary span, .npr-status, .npr-legend) { color: #5a6670; }
.tab-panel :is(td.number, .metric-value) { color: #273740; }
.tab-panel :is(.metric-label, .metric-note, .subtle, .panel-note,
  .cell-subline, .eyebrow, .context-badge, .read-only-badge) { opacity: 1; }
.tab-panel :is(.subtab, .inner-tab):not(.active) { color: #5b6872; }
.tab-panel :is(.subtab, .inner-tab).active { color: #344f5d; }
.tab-panel :is(.metric-note, .panel-note, .cell-subline) { font-size: max(11px, .75rem); }
.tab-panel th { font-size: max(11px, .75rem); }
body.workbench-r06 main :is(small, .wb-breadcrumb, .wb-breadcrumbs, .wb-filter-summary,
  .wb-range-caption, .rf-range-caption, .wb-media-stamp, .rf-media-stamp,
  .wb-chart-legend, .wb-export-file-copy > span, .wb-report-date-note,
  .wb-report-family-actions > span, .wb-report-period-summary p,
  .wb-store-date, .wb-freshness-summary, .wb-freshness-meta) { color: #5b6870; }
body.workbench-r06 main :is(.wb-summary-item > span, .wb-store-copy > span,
  .wb-filter-label, .wb-report-empty, .wb-report-generation-note) { color: #5e6a72; }
.tabs .workspace-brand small { font-size: 9px; }
/* Dark surfaces retain their own light ink instead of inheriting table ink. */
#heroMetrics > .metric-card:first-child .metric-value { color: #f1f5f7; }
#heroMetrics > .metric-card:first-child .metric-label { color: #d0dce5; }
#heroMetrics > .metric-card:first-child .metric-note { color: #bccbd6; }
.tabs .workspace-brand strong { color: #e1e9ed; }
.tabs .workspace-brand small, .tabs .nav-caption { color: #aebac3; opacity: 1; }
.tabs .tab { color: #c3cdd4; }
.tabs .tab.active { color: #e5edf2; }
.topbar :is(.eyebrow, .workspace-actions a, .workspace-actions button) { color: #c0ccd6; }
.topbar .data-status { color: #d0dbe4; }
.entry-body :is(.login-kicker, .login-form label, .workspace-eyebrow,
  .workspace-info > span, .entry-kicker, .entry-bottom, .dc-site-copyright) { color: #b2c4d1; }
.entry-body :is(.login-form input, .workspace-info strong) { color: #e2ecf3; }
.entry-body .login-form input::placeholder { color: #a4b8c8; opacity: 1; }
.entry-body :is(.company-caption, .tide-brand small, #workspaceUser) { color: #b9ccd9; }
.entry-body :is(.login-panel h2, .workspace-picker h1) { color: #e0eaf1; }
@media (max-width: 640px) {
  .tab-panel :is(input, select, textarea) { font-size: 14px; }
}

/* The complete copyright line and company English share one tiny local face.
   The original four-character wordmark face, adjacent ICP and body stay intact. */
@font-face {
  font-family: "ZCOOL XiaoWei Company";
  src: url("/company-brand-r02/zcool-xiaowei-footer-v1.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  unicode-range: U+0020, U+002C, U+002E, U+0030-0039, U+0043-0044, U+004C,
    U+0063-0065, U+006D-0070, U+0072, U+0074-0075, U+00A9, U+516C, U+52A1,
    U+53F8, U+5546, U+57DF, U+5B50, U+5E8F, U+6210, U+6709, U+6DF1,
    U+6F9C, U+7535, U+90FD, U+9650;
}
@layer portalTypography {
  .dc-site-copyright,
  .workspace-brand > div > small,
  .entry-copy > .entry-kicker {
    font-family: "ZCOOL XiaoWei Company", "PingFang SC", "Microsoft YaHei",
      "Noto Sans CJK SC", sans-serif !important;
  }
}
