/* =========================================================
   知遇 · Module font sizes
   Final overrides per product spec. Load after content-20.css.
   ========================================================= */

/* 概览 */
body .metric-value { font-size: 39px !important; }
body .ring-value { font-size: 31px !important; }
body .stage-bar-num { font-size: 20px !important; }

/* 日常工作 */
body .wb-stat strong { font-size: 20px !important; }
body .wb-panel-head h3 { font-size: 17px !important; }
body .wb-panel * { font-size: 11px !important; }
body .wb-panel-head h3 { font-size: 17px !important; }
body .wb-panel-head em { font-size: 12px !important; }
body .wb-panel-head .panel-eyebrow { font-size: 10px !important; }
body .wb-board-body * { font-size: 11px !important; }
body .wb-board-head { font-size: 14px !important; }
body .wb-board-head em { font-size: 12px !important; }

/* 工作表 */
body .worklog-stat strong { font-size: 20px !important; }
body .worklog-table th,
body .worklog-table td { font-size: 15px !important; }
body .worklog-table .wl-note { font-size: 15px !important; }
body .worklog-table .wl-actions { font-size: 11px !important; }

/* OA */
body .oa-main .report-kpi strong { font-size: 22px !important; }
body .oa-main .report-table th,
body .oa-main .report-table td { font-size: 12px !important; }
body .oa-main .oa-content { font-size: 12px !important; }
body .oa-main .time-scope,
body .oa-main .time-scope * { font-size: 10px !important; }

/* 报表 */
body .reports-main .report-kpi strong { font-size: 22px !important; }
body .reports-main .report-table th { font-size: 15px !important; }
body .reports-main .report-table td { font-size: 12px !important; }
body .reports-main .time-analysis-cell,
body .reports-main .time-analysis-cell * { font-size: 10px !important; }
body .reports-main .time-analysis-cell strong { font-size: 20px !important; }
body .reports-main .daily-detail-row,
body .reports-main .daily-detail-row * { font-size: 11px !important; }

/* 人才库 */
body .talent-table th { font-size: 15px !important; }
body .talent-table td { font-size: 12px !important; }
body .talent-table .col-company .cell-strong,
body .talent-table .col-title span,
body .talent-table .col-level .cell-strong { font-size: 11.5px !important; }
body .talent-table .tag { font-size: 11px !important; }

/* 论文库 */
body .paper-card h3 { font-size: 18px !important; }
body .paper-card-abstract { font-size: 10.5px !important; }
body .paper-stat strong { font-size: 24px !important; }
body .paper-index-head strong { font-size: 11.5px !important; }
body .paper-index-head > div > span { font-size: 12px !important; }

/* 互联网公司 */
body .company-stat strong { font-size: 22px !important; }
body .company-name-cell strong { font-size: 12px !important; }
body .company-table th,
body .company-table td { font-size: 12px !important; }

/* 候选人档案 */
body .candidate-hero-name h2 { font-size: 28px !important; }
body .drawer-section-title { font-size: 17px !important; }
body .drawer-summary { font-size: 12.5px !important; }
body .info-label { font-size: 12px !important; }
body .info-value { font-size: 11px !important; }
body .info-value.salary { font-size: 15px !important; }

/* 弹窗 / 表单 */
body .modal-title { font-size: 24px !important; }
body .modal-sub { font-size: 11.5px !important; }
body .field label { font-size: 10.5px !important; }
body .field input,
body .field select,
body .field textarea { font-size: 13.5px !important; }
body .btn { font-size: 12.5px !important; }

/* 侧栏 */
body .nav-link { font-size: 13.5px !important; }

/* OA has higher specificity than the generic report table */
body .reports-main.oa-main .report-table th,
body .reports-main.oa-main .report-table td {
  font-size: 12px !important;
}

body .reports-main.oa-main .report-kpi strong {
  font-size: 22px !important;
}

/* Ensure table/form descendants follow the module size, not the 20px base. */
body .talent-table td,
body .talent-table td * { font-size: 12px !important; }
body .talent-table .col-company .cell-strong,
body .talent-table .col-company .cell-strong *,
body .talent-table .col-title span,
body .talent-table .col-title span *,
body .talent-table .col-level .cell-strong,
body .talent-table .col-level .cell-strong * { font-size: 11.5px !important; }
body .talent-table .tag,
body .talent-table .tag * { font-size: 11px !important; }

body .reports-main .report-table td,
body .reports-main .report-table td * { font-size: 12px !important; }
body .reports-main.oa-main .report-table td,
body .reports-main.oa-main .report-table td * { font-size: 12px !important; }

body .worklog-table td,
body .worklog-table td * { font-size: 15px !important; }
body .worklog-table .wl-actions,
body .worklog-table .wl-actions * { font-size: 11px !important; }

body .company-table td,
body .company-table td * { font-size: 12px !important; }

body .field label,
body .field label * { font-size: 10.5px !important; }
body .nav-link,
body .nav-link * { font-size: 13.5px !important; }
body .info-value,
body .info-value * { font-size: 11px !important; }
body .info-value.salary,
body .info-value.salary * { font-size: 15px !important; }

/* Author verification / nickname editor match author name size */
body .author-verify-link,
body .author-verify-link *,
body .paper-index-foot .paper-author-nickname-edit,
body .paper-index-foot .paper-author-nickname-edit *,
body [data-action="paper-author-edit-nickname"] { font-size: 11.5px !important; }

/* Candidate phone in drawer hero */
body .hero-contact-phone,
body .hero-contact-phone *,
body .talent-table .phone-cell,
body .talent-table .phone-cell * { font-size: 13px !important; font-weight: 600 !important; }

/* Experience drawer: fixed viewport, scroll long descriptions */
body .experience-scroll { max-height: 300px; overflow-y: auto; padding-right: 6px; overscroll-behavior: contain; }


/* Remote update banner: never re-render the page under the user's cursor */
.workspace-update-banner {
  position: fixed;
  left: 50%;
  bottom: 24px;
  z-index: 80;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px 10px 16px;
  border: 1px solid rgba(47, 107, 88, 0.28);
  border-radius: 999px;
  background: #fbfaf5;
  box-shadow: 0 12px 34px rgba(28, 54, 45, 0.18);
  color: #1c362d;
  font-size: 12px;
  white-space: nowrap;
}
.workspace-update-banner[hidden] { display: none; }
@media (max-width: 560px) {
  .workspace-update-banner { left: 12px; right: 12px; bottom: 12px; transform: none; white-space: normal; justify-content: space-between; }
}


/* Resume storage location */
.resume-location {
  display: block;
  margin-top: 4px;
  color: #6a756e;
  font-size: 10.5px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.resume-location code {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 10px;
  color: #3f5b4e;
}
.resume-location.is-muted { color: #9a9f99; }


/* Explainable job matches */
.match-reasons { display: flex; flex-wrap: wrap; gap: 3px; margin-top: 4px; }
.match-reasons span { padding: 1px 5px; border-radius: 999px; background: #edf3ee; color: #45624f; font-size: 9px; }


/* Candidate hero: phone + city right after the favorite star */
.candidate-hero-name { flex-wrap: wrap; row-gap: 4px; }
.candidate-hero-phone,
.candidate-hero-city {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: 8px;
  padding: 2px 7px;
  border-radius: 999px;
  color: rgba(249, 242, 231, 0.86);
  background: rgba(249, 242, 231, 0.08);
  font-family: var(--sans);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.5;
}
.candidate-hero-phone { border: 1px solid rgba(249, 242, 231, 0.14); cursor: pointer; }
.candidate-hero-phone:hover { color: #fff9ee; background: rgba(249, 242, 231, 0.14); }
.candidate-hero-city { font-size: 11px; font-weight: 500; color: rgba(249, 242, 231, 0.64); }


/* Clickable candidate chips */
.candidate-skill-chip,
.candidate-availability-chip { cursor: pointer; border: 1px solid rgba(28, 54, 45, 0.12); }
.candidate-skill-chip:hover,
.candidate-availability-chip:hover { background: #eef4ef; color: #1c4a3a; }
.candidate-availability-chip { font-weight: 600; }
