/* OpenEduWisdom · 全平台统一字体与响应式字号（以 7200 首页实际渲染为基准） */
@font-face {
  font-family: "OpenEdu Sans";
  src: url("/assets/fonts/openedu-sans-regular.woff") format("woff");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "OpenEdu Sans";
  src: url("/assets/fonts/openedu-sans-bold.woff") format("woff");
  font-style: normal;
  font-weight: 600 900;
  font-display: swap;
}
@font-face {
  font-family: "OpenEdu Serif";
  src: url("/assets/fonts/openedu-serif-bold.woff") format("woff");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: "OpenEdu Brand";
  src: url("/assets/fonts/openedu-brand.woff") format("woff");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

:root {
  --font: "OpenEdu Sans", sans-serif;
  --font-serif: "OpenEdu Serif", serif;
  --font-brand: "OpenEdu Brand", sans-serif;
  --mono: "OpenEdu Sans", sans-serif;
  font-family: "OpenEdu Sans", sans-serif;
}
body, body * { font-family: "OpenEdu Sans", sans-serif !important; }
body { font-size: 15px; }
.portal-brand strong,
.brand strong,
.login-brand { font-family: "OpenEdu Brand", sans-serif !important; }
.portal-hero h1 em,
.sucheng-slides-copy h2,
.material-standards-copy h2,
.desktop-promo-copy h2 { font-family: "OpenEdu Serif", serif !important; font-style: normal; }

/* 7200 聚合首页：辅助信息不低于 12px，卡片正文保持清晰层级。 */
.portal-brand small,
.future-brand small { font-size: 12px; }
.portal-nav a { font-size: 15px; }
.motion-toggle { font-size: 12px; }
.portal-eyebrow { font-size: 12px; letter-spacing: .13em; }
.hero-description { font-size: 16px; }
.portal-composer textarea { font-size: 17px; }
.composer-left select { font-size: 14px; }
.composer-hint { font-size: 12px; }
.composer-submit { font-size: 15px; }
.prompt-row { font-size: 13px; }
.prompt-row button { font-size: 13px; }
.case-kicker { font-size: 12px; }
.case-heading h2 { font-size: 24px; }
.case-heading p { font-size: 13px; }
.case-meta { font-size: 12px; }
.case-copy strong { font-size: 15.5px; line-height: 1.45; }
.case-copy small { font-size: 12px; line-height: 1.55; }
.case-access { font-size: 12px; }
.portal-footer { font-size: 12px; }
.login-description,
.login-dialog form > label { font-size: 14px; }
.login-dialog input { font-size: 15px; }

/* 7200 工作台：导航、输入和卡片三级层级。 */
.brand small { font-size: 12px; }
.new-task { font-size: 15px; }
.new-task kbd { font-size: 12px; }
.nav-label { font-size: 12px; }
.rail-nav a { font-size: 14.5px; }
.rail-nav a i,
.rail-nav a b { font-size: 12px; }
.rail-foot small { font-size: 12px; }
.topbar { font-size: 14px; }
.eyebrow { font-size: 12px; }
.agent-intro > p:last-child { font-size: 15px; }
.composer textarea { font-size: 16px; }
.intent-select-wrap select { font-size: 14px; }
.composer-note { font-size: 12px; }
.prompt-examples button { font-size: 13px; }
.section-line h2 { font-size: 20px; }
.section-line > span { font-size: 12px; }
.quick-item strong { font-size: 15px; }
.quick-item small { font-size: 12px; line-height: 1.5; }
.quick-item > b,
.quick-item > i { font-size: 12px; }
.topic-top { font-size: 12px; }
.feature-topic p { font-size: 14px; line-height: 1.75; }
.resource-links > a > strong { font-size: 14px; }
.resource-links > a > span { font-size: 12px; }
.desktop-card p { font-size: 13px; }
.workspace-footer { font-size: 12px; }

/* 7400 共享页面与智能体工作区。 */
button { font-size: 14px !important; }
input, select, textarea { font-size: 15px !important; }
small { font-size: 12px !important; }
th, td { font-size: 14px !important; }
.brand-sub,
.badge,
.tag,
.label,
.meta,
.hint,
.note,
.muted { font-size: 12px !important; }
.site-nav a,
.nav-links a,
.top-nav a,
.nav-item { font-size: 14px !important; }
.hero-sub { font-size: 17px !important; }
.hero-gen { font-size: 16px !important; }
.hero-note,
.hero-hints,
.hero-link-btn,
.flow-chip { font-size: 13px !important; }
.hstat-lbl { font-size: 13px !important; line-height: 1.6; }
.section-desc { font-size: 16px !important; }
.card p,
.feature-card p { font-size: 15px !important; }
.sucheng-slides-kicker,
.sucheng-slides-kicker::before,
.sucheng-slides-tags span,
.sucheng-slides-samples-head span,
.eq-op,
.eq-plus { font-size: 12px !important; }
.sucheng-slides-sample b { font-size: 13px !important; }
.sucheng-slides-sample small { font-size: 12px !important; }
.sucheng-slides-deliver { font-size: 13px !important; }
.brand-chip,
.cover-src,
.lv-badge,
.seal-tb,
.school-badge { font-size: 12px !important; }
.flow-chip .n { font-size: 12px !important; }
.mat-chip .mc-meta,
.mat-item-meta,
.mat-item-note,
.study-note,
.study-mode { font-size: 12px !important; }
.msg-meta,
.msg-time,
.composer-hint,
.char-count { font-size: 12px !important; }
.message,
.msg-content,
.stream-content { font-size: 15px !important; line-height: 1.75; }
.app-footer,
.site-footer { font-size: 12px !important; }

/* React 专题：材料规范与苏城智页共用同一字体，控件不再使用微型字号。 */
#root, #root * { font-family: "OpenEdu Sans", sans-serif !important; }
#root h1, #root h2 { font-family: "OpenEdu Serif", serif !important; font-style: normal; }
#root button { font-size: 14px !important; }
#root input,
#root select,
#root textarea { font-size: 15px !important; }
#root small { font-size: 12px !important; }
#root [class*="meta"],
#root [class*="hint"],
#root [class*="label"],
#root .local-badge > span,
#root .huijiao-side > span,
#root .hero-footnote > span,
#root .hero-stage-head > b,
#root .hero-stage-foot > span,
#root .hero-stage-foot > .hero-cover-title,
#root .home-sample-style > span,
#root .workflow-step > span,
#root .app-sidebar nav button > em,
#root .sidebar-progress > div > span,
#root .sidebar-progress > div > b,
#root .training-material-stack > span > i,
#root .training-phase-node > em,
#root .material-flow-link > span { font-size: 12px !important; }

@media (max-width: 1100px) {
  .portal-nav a { font-size: 14px; }
  .case-copy strong { font-size: 14.5px; }
  .case-copy small { font-size: 12px; }
  .case-meta { font-size: 12px; }
}
@media (max-height: 820px) and (min-width: 761px) {
  .hero-description { font-size: 15px; }
  .portal-composer textarea { font-size: 16px; }
  .case-heading h2 { font-size: 21px; }
  .case-copy strong { font-size: 14.5px; }
  .case-copy small { font-size: 12px; }
  .case-access { font-size: 12px; }
  .agent-intro > p:last-child { font-size: 14px; }
}
@media (max-width: 760px) {
  body { font-size: 15px; }
  .portal-eyebrow { font-size: 12px; }
  .hero-description { font-size: 15px; }
  .portal-composer textarea { font-size: 16px; }
  .prompt-row,
  .prompt-row button { font-size: 12px; }
  .case-heading p { font-size: 13px; }
  .case-copy strong { font-size: 15px; }
  .case-copy small { font-size: 12px; }
  .case-meta,
  .case-access { font-size: 12px; }
  .quick-item strong { font-size: 14px; }
  .quick-item small { font-size: 12px; }
  .feature-topic p { font-size: 14px; }
}

/* 旧页面局部控件：保留信息层级，但不使用 9–11px 的功能文字。 */
.login-entry { flex-shrink: 0; white-space: nowrap; }
.rail-foot p,
.service-state,
.input-count,
.composer-note kbd,
.topic-top b,
.topic-sample,
.resource-links > a > i,
.desktop-card > span,
.desktop-card > a,
.workspace-footer nav a,
.logout-button,
.entry-button { font-size: 12px; }
.role-badge,
.unit-badge,
.tb-mini-m,
.proj-badge,
.proj-tags span,
.mono,
.course-tags span,
.course-cover .cover-badge,
.session-meta,
.msg-head .time,
.artifact-meta,
.tl-meta,
.thought-item .tk,
.skill-hit-meta,
.score-pill,
.trust-badge,
.web-cand-host,
.strategy-tag,
.stat-card .h,
.self-tag,
.deploy-step .ms,
.env-item .k { font-size: 12px !important; }
#root .nav-caption,
#root .nav-count,
#root .home-sample-kicker,
#root .home-sample-featured,
#root .home-sample-en,
#root .home-sample-blank-note,
#root .template-category,
#root .template-use { font-size: 12px !important; }
#root [class*="home-sample"] a,
#root [class*="home-sample"] b { font-size: 12px !important; }

@media (max-height: 820px) and (min-width: 761px) {
  .portal-main { padding-top: 6px; padding-bottom: 6px; }
  .portal-hero h1 { font-size: 40px; }
  .hero-description { font-size: 14px; }
  .portal-composer textarea { min-height: 60px; }
  .case-heading h2 { font-size: 20px; }
  .case-card { min-height: 82px; padding-top: 6px; padding-bottom: 6px; }
  .case-visual svg { height: 58px; }
  .case-copy small { line-height: 1.4; }
  .context-panel { padding-top: 12px; }
  .feature-topic { padding: 16px; }
  .feature-topic p { font-size: 13px; line-height: 1.6; }
  .topic-icon { margin-top: 10px; }
  .topic-sample { margin-top: 8px; }
  .resource-links { margin-top: 12px; }
  .resource-links > a { min-height: 30px; padding-top: 6px; padding-bottom: 6px; }
  .desktop-card { margin-top: 10px; padding-top: 10px; }
}
@media (max-width: 760px) {
  .portal-actions { margin-right: 50px; }
  .login-entry { padding-right: 9px; padding-left: 9px; }
  .login-entry svg { display: none; }
}
