/* Shared admin typography. Load after page styles so dense tables and drawers stay readable. */
:root {
  --font-ui: "Yunding Admin Sans", "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", system-ui, sans-serif;
}

:is(.admin-app, .login-page) {
  font-family: var(--font-ui);
  font-size: 14px;
  font-weight: 400;
  font-style: normal;
  font-synthesis: none;
  font-variant-ligatures: none;
  line-height: 1.7;
  letter-spacing: normal;
  -webkit-font-smoothing: auto;
}

:is(.admin-app, .login-page) :is(button, input, select, textarea, code, pre, kbd, samp),
.admin-app :is(.stats article > strong, .todo-count strong, .todo-item strong, .section-number, .summary-strip strong, .account-totals strong) {
  font-family: var(--font-ui);
}

:is(.admin-app, .login-page) :is(h1, h2, h3) {
  font-weight: 600;
  letter-spacing: normal;
}

:is(.admin-app, .login-page) :is(strong, b) { font-weight: 600; }
:is(.admin-app, .login-page) small { font-size: 12px; line-height: 1.75; }
.admin-app { --muted: #5f7087; }
.admin-app .nav-text { font-size: 14px; font-weight: 500; }
.admin-app .nav-item.active .nav-text { font-weight: 600; }
.admin-app .brand strong { font-size: 16px; }
.admin-app :is(.brand small, .account-copy small) { color: #a0b0c7; font-size: 12px; }
.admin-app .account-copy strong { font-size: 13px; }
.admin-app .breadcrumb { font-size: 13px; }
.admin-app :is(.platform-label, .page-date) { font-size: 12px; color: #64748b; }
.admin-app .module-tab { font-size: 14px; }
.admin-app .workspace-footer { font-size: 12px; color: #607086; }

.admin-app table { font-size: 14px; }
.admin-app th { color: #52637b; font-size: 13px; font-weight: 600; line-height: 1.7; }
.admin-app td { color: #3f5069; line-height: 1.8; }
.admin-app td strong { font-size: 14px; font-weight: 600; }
.admin-app td small { font-size: 12px; color: #617188; line-height: 1.8; }
.admin-app .dashboard-tables table { font-size: 14px; }
.admin-app .dashboard-tables td small { font-size: 12px; }
.admin-app .user-directory-table td > strong { font-size: 14px; font-weight: 600; }
.admin-app :is(.inline-details, .inline-details summary, .table-scroll-hint, .pagination-bar, .pagination-bar strong) { font-size: 13px; }
.admin-app :is(.user-cell-muted, .permission-summary, .permission-summary span, .user-source, .template-key) { font-size: 12px; }
.admin-app :is(.pagination-bar, .pagination-bar strong, .table-scroll-hint, .template-key, .user-source) { color: #617188; }
.admin-app .badge { font-size: 12px; line-height: 1.65; }
.admin-app .count-label { color: #536681; font-size: 12px; font-weight: 500; }

:is(.admin-app, .login-page) :is(input, select, textarea) { font-size: 14px; line-height: 1.7; }
:is(.admin-app, .login-page) ::placeholder { color: #69788d; opacity: 1; }
.admin-app :is(button, .button) { font-size: 13px; font-weight: 500; }
.admin-app :is(.small-button, td button, td .button) { font-size: 12px; }
.admin-app .utilitybar .page-actions :is(button, .button) { font-size: 13px; }
.admin-app :is(.form-field > span, .filterbar > label, .check, .lookup-notes > span, .menu-content-grid label > span, .response-button-head > span, .menu-button-row label) { color: #536680; font-size: 13px; }
.admin-app :is(.form-help, .form-field small, .stage-note, .drawer-head p, .panel-subtitle) { color: #617188; font-size: 12px; line-height: 1.8; }
.admin-app :is(.panel-head h2, .inner-card h3) { font-size: 15px; font-weight: 600; }
.admin-app .panel-head > :is(small, span, a) { font-size: 12px; }
.admin-app .panel-head > :is(small, span) { color: #617188; }
.admin-app :is(.record-facts dt, .record-facts dd, .notice-strip, .summary-strip > div, .stats article > span, .metric-head, .compact-stats span) { font-size: 13px; }
.admin-app :is(.record-facts dt, .notice-strip, .summary-strip > div, .stats article > span, .metric-head) { color: #617188; }
.admin-app .stats article > small { color: #617188; font-size: 12px; }
.admin-app :is(.quick-link strong, .quick-link small, .empty strong, .empty p, .todo-header p, .todo-item, .todo-count) { font-size: 13px; }
.admin-app :is(.quick-link small, .empty p, .todo-header p) { color: #617188; }

.admin-app :is(.settings-nav, .settings-nav small, .settings-nav-item small, .settings-status, .settings-save-note, .settings-panel-description, .settings-sidebar-note, .permission-summary span) { font-size: 12px; }
.admin-app :is(.guarantee-tabs a, .guarantee-subnav a) { font-size: 14px; }
.admin-app :is(.guarantee-note, .guarantee-pre, .guarantee-workspace .check-line, .guarantee-facts dt, .guarantee-chart-row, .summary-strip span) { font-size: 13px; }
.admin-app :is(.guarantee-facts dt, .guarantee-note, .summary-strip span) { color: #617188; }

.login-page .login-form input { font-size: 16px; }
.login-page :is(.login-intro, .login-access-note, .login-footnote) { font-size: 13px; }
.login-page :is(.login-brand small, .login-story-footer) { font-size: 12px; letter-spacing: normal; }
.login-page .login-story h2 { letter-spacing: normal; font-weight: 600; }
.login-page .login-heading > span { font-size: 12px; }

@media (max-width: 600px) {
  .admin-app :is(.summary-strip > div, .page-actions button) { font-size: 12px; }
  .admin-app .module-tab { font-size: 13px; }
  .admin-app .nav-text { font-size: 14px; }
}
