/* The small title face is the only webfont used by the default interface.
   The full face is referenced only by the explicit huiwen-full preference. */
@font-face {
  font-family: "Huiwen Mincho Headings";
  src: url("/fonts/huiwen-mincho-headings-da361ec1dede.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+20-7D,U+B7,U+2013-2014,U+201D,U+2026,U+2190,U+2192,U+2197,U+2212,U+3001-3002,U+300A-3011,U+4E0B,U+4E0E,U+4E2D,U+4E66,U+4EE3,U+4EF6,U+4F5C,U+4F7F,U+4FDD,U+4FEE,U+5145,U+5168,U+5173,U+5185,U+51C6,U+5217,U+5219,U+5220,U+5237,U+524D,U+52A8-52A9,U+534F,U+539F,U+53C2,U+53D1,U+53D6,U+53F7,U+5408,U+540D,U+542F,U+5458,U+58F0,U+5904,U+5B58,U+5BB9,U+5BF9,U+5DEE,U+5E2E,U+5E93,U+5F02,U+5F0F,U+5F55,U+5F85,U+6027,U+6240,U+63D0,U+6539,U+6574,U+6587,U+6599,U+65B0,U+65F6,U+660E,U+6697,U+6700,U+672C,U+6743,U+6821,U+6838,U+6A21,U+6B64,U+6D3B,U+6D4B,U+6D88,U+7248,U+7406,U+7528,U+754C,U+767B,U+7684,U+76EE,U+76F8,U+786E,U+793A,U+7AE0,U+7BA1,U+7CFB,U+7EA0,U+7F16,U+7F6E,U+7F72,U+7FFB,U+8003,U+8005,U+8054,U+81F4,U+8282,U+8865,U+8868,U+89C4,U+89C8,U+8BA2,U+8BA4,U+8BBE,U+8BD1,U+8BF4,U+8BF7,U+8BFB,U+8C22,U+8D26,U+8D44,U+8F7D,U+8F88,U+8F91,U+8FD1,U+9080,U+90E8,U+9519,U+95ED,U+9605,U+9664,U+9762,U+9879,U+9884,U+9ED1,U+FF01,U+FF08-FF09,U+FF0B-FF0C,U+FF1A,U+FF1F;
}
@font-face {
  font-family: "Huiwen Mincho";
  src: url("/fonts/huiwen-mincho-v1-1ea5d045.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
:root {
  --ui-system-sans: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;
  --ui-system-serif: "STSong", "SimSun", "Songti SC", serif;
  --ui-dengxian: "DengXian", "等线", var(--ui-system-sans);
  --huiwen: "Huiwen Mincho", var(--ui-system-serif);
  --huiwen-headings: "Huiwen Mincho Headings", var(--ui-system-serif);
  --sans: var(--ui-system-sans);
  --serif: var(--ui-system-serif);
  --ui-heading-font: var(--huiwen-headings);
}
/* Preserve the existing huiwen preference without requiring a settings rewrite. */
:root[data-ui-font="huiwen"] {
  --sans: var(--ui-system-sans);
  --serif: var(--ui-system-serif);
  --ui-heading-font: var(--huiwen-headings);
}
:root[data-ui-font="sans"] {
  --sans: var(--ui-system-sans);
  --serif: var(--ui-system-serif);
  --ui-heading-font: var(--ui-system-sans);
}
:root[data-ui-font="serif"] {
  --sans: var(--ui-system-serif);
  --serif: var(--ui-system-serif);
  --ui-heading-font: var(--ui-system-serif);
}
:root[data-ui-font="huiwen-full"] {
  --sans: var(--huiwen);
  --serif: var(--huiwen);
  --ui-heading-font: var(--huiwen);
}
:root[data-ui-font="dengxian"] {
  --sans: var(--ui-dengxian);
  --serif: var(--ui-dengxian);
  --ui-heading-font: var(--ui-dengxian);
}
/* A personal selection wins over the site setting without rewriting it.
   DengXian is a local font: no proprietary font file is downloaded or hosted. */
:root[data-font-choice="dengxian"] {
  --sans: var(--ui-dengxian);
  --serif: var(--ui-dengxian);
  --ui-heading-font: var(--ui-dengxian);
}
:root[data-font-choice="sans"] {
  --sans: var(--ui-system-sans);
  --serif: var(--ui-system-sans);
  --ui-heading-font: var(--ui-system-sans);
}
:root[data-font-choice="serif"] {
  --sans: var(--ui-system-serif);
  --serif: var(--ui-system-serif);
  --ui-heading-font: var(--ui-system-serif);
}
:root[data-font-choice="huiwen-full"] {
  --sans: var(--huiwen);
  --serif: var(--huiwen);
  --ui-heading-font: var(--huiwen);
}
body, button, input, select, textarea {
  font-family: var(--sans);
}
h1, h2, h3, .brand strong, .brand-mark, .mobile-brand,
.cover-glyph, .project-title-button {
  font-family: var(--ui-heading-font);
}
#ui-editor-panel, #ui-editor-panel button, #ui-editor-panel input,
#ui-editor-panel select, #ui-editor-panel textarea {
  font-family: var(--sans);
}
:root[data-font-choice] .proof-source .proof-text,
:root[data-font-choice] .proof-source .proof-edit-text {
  font-family: var(--serif);
}
.font-choice {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  max-width: 100%;
  color: var(--muted);
  font-size: 12px;
  white-space: nowrap;
}
.font-choice select {
  width: 146px;
  max-width: 100%;
  min-height: 36px;
  font-size: 12px;
  padding: 7px 24px 7px 9px;
  white-space: nowrap;
}
@media (max-width: 640px) {
  .font-choice { font-size: 11px; }
  .font-choice select { width: 138px; min-height: 35px; font-size: 11px; }
}
