/* 本人与公开报告共用阅读层；原始图表、数值及指标解释均来自原组件。 */
.jp-reading {
  --reading-bg: var(--ft-bg-card, #fffaf2);
  --reading-text: var(--ft-text-primary, #262a33);
  --reading-muted: var(--ft-text-secondary, #5c554c);
  --reading-rule: var(--ft-border, rgba(38, 42, 51, .12));
  --reading-accent: var(--ft-claret, #990f3d);
  --reading-serif: var(--ft-font-serif, Georgia, 'Noto Serif SC', 'Songti SC', serif);
  max-width: 1440px !important;
  width: 100% !important;
  margin: 0 auto !important;
  color: var(--reading-text) !important;
}
.jp-reading *, .jp-reading *::before, .jp-reading *::after { box-sizing: border-box; }
.jp-reading > .result-command { margin: 0 0 20px !important; }
.jp-reading > .section-nav { display: none !important; }
.jp-reading > .ep-public-jump { display: none !important; }
.jp-reading .jp-reading-layout {
  display: grid !important;
  grid-template-columns: 290px minmax(0, 1fr) !important;
  align-items: start !important;
  border: 1px solid var(--reading-rule) !important;
  background: var(--reading-bg) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.jp-reading .jp-reading-rail { min-width: 0; align-self: stretch; border-right: 1px solid var(--reading-rule); }
.jp-reading .jp-reading-rail-inner { position: sticky; top: 92px; max-height: calc(100dvh - 108px); overflow-y: auto; scrollbar-width: thin; padding: 26px 26px; }
.jp-reading .jp-reading-rail .hero-card {
  display: flex !important; flex-direction: column !important; gap: 0 !important;
  margin: 0 !important; padding: 0 !important; min-height: 0 !important;
  border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important;
}
.jp-reading .hero-copy { padding: 0 !important; border: 0 !important; min-width: 0 !important; }
.jp-reading .hero-aside { order: -1; padding: 0 !important; border: 0 !important; min-width: 0 !important; background: transparent !important; }
.jp-reading .hero-aside .single-portrait { margin: 0 !important; padding: 0 !important; background: transparent !important; border: 0 !important; }
.jp-reading .hero-aside .single-portrait > span,
.jp-reading .hero-copy .tendency-label,
.jp-reading .hero-copy .hero-insights { display: none !important; }
.jp-reading .hero-card .type-portrait, .jp-reading .hero-card .quick-type-portrait {
  width: 200px !important; max-width: 100% !important; height: 200px !important;
  margin: 0 auto 18px !important; padding: 0 !important;
  border: 0 !important; box-shadow: none !important; background: transparent !important;
}
.jp-reading .hero-card .type-portrait img, .jp-reading .hero-card .quick-type-portrait img {
  width: 100% !important; height: 100% !important; object-fit: contain !important; border-radius: 0 !important;
}
.jp-reading .hero-card .dual-portraits { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
.jp-reading .hero-card .tendency-card { padding: 0 !important; border: 0 !important; box-shadow: none !important; background: transparent !important; min-width: 0 !important; }
.jp-reading .hero-card .dual-portraits .type-portrait { width: 84px !important; height: 100px !important; margin-bottom: 4px !important; }
.jp-reading .hero-card .tendency-card > span, .jp-reading .hero-card .tendency-card > small { font-size: 10px !important; line-height: 1.5 !important; }
.jp-reading .hero-card .tendency-card > strong { font-size: 16px !important; }
.jp-reading .hero-copy .hero-kicker { margin: 0 0 6px !important; font-size: 11px !important; letter-spacing: .12em !important; color: var(--reading-muted) !important; }
.jp-reading .hero-card h1 { font-size: 44px !important; line-height: 1.25 !important; margin: 8px 0 12px !important; }
.jp-reading .hero-card h1.dual-title { font-size: 25px !important; }
.jp-reading .hero-card h1.dual-title span { font-size: 18px !important; }
.jp-reading .hero-card .full-label { font-size: 12px !important; line-height: 1.9 !important; margin: 0 !important; color: var(--reading-muted) !important; }
.jp-reading .hero-card .seal-row { display: flex !important; flex-wrap: wrap; gap: 5px !important; margin: 6px 0 !important; }
.jp-reading .hero-card .seal-row .rep-chip { display: none !important; }
.jp-reading .hero-card .type-seal { font-size: 10px !important; padding: 3px 5px !important; border-color: var(--reading-rule) !important; }
.jp-reading .jp-reading-toc { display: flex; flex-direction: column; gap: 2px; margin-top: 28px; }
.jp-reading .jp-reading-toc h2, .jp-reading .jp-reading-quality h2 { font-size: 12px !important; font-weight: 600 !important; margin: 0 0 12px !important; color: var(--reading-muted) !important; }
@layer debater-visual-system {
html body #jp-reading-toc .jp-reading-link {
  display: flex !important; align-items: center !important; justify-content: flex-start !important; gap: 10px !important;
  width: 100% !important; min-height: 34px !important; min-width: 0 !important;
  padding: 6px 7px !important; margin: 0 !important; border: 0 !important; border-left: 2px solid transparent !important;
  border-radius: 0 !important; background: transparent !important; box-shadow: none !important;
  text-align: left !important; color: var(--reading-muted) !important; font: inherit !important; font-size: 14px !important; line-height: 1.5 !important; cursor: pointer;
}
.jp-reading .jp-reading-link .jp-reading-number { flex: 0 0 18px; font: 11px var(--ft-font-mono, monospace); opacity: .75; }
html body #jp-reading-toc .jp-reading-current { border-left-color: var(--reading-accent) !important; color: var(--reading-accent) !important; font-weight: 700 !important; }
.jp-reading .jp-reading-toc .jp-reading-link:hover { background: var(--ft-claret-tint) !important; }
.jp-reading .jp-reading-toc button:focus-visible, .jp-reading summary:focus-visible { outline: 2px solid var(--reading-accent) !important; outline-offset: 2px !important; }
}
.jp-reading .jp-reading-quality { margin-top: 28px; border-top: 1px solid var(--reading-rule); padding-top: 20px; }
.jp-reading .jp-reading-quality-values { margin: 0; }
.jp-reading .jp-reading-quality-values > div { display: flex; justify-content: space-between; gap: 8px; margin: 8px 0; font-size: 12px; line-height: 1.6; }
.jp-reading .jp-reading-quality-values dt { color: var(--reading-muted); }
.jp-reading .jp-reading-quality-values dd { margin: 0; font-variant-numeric: tabular-nums; color: var(--reading-text); font-weight: 600; }
.jp-reading .jp-reading-metric-note { margin: 12px 0 !important; font-size: 12px !important; line-height: 1.7 !important; color: var(--reading-muted) !important; }
.jp-reading .jp-reading-quality-details > summary { font-size: 12px; cursor: pointer; padding: 6px 0; }
.jp-reading .jp-reading-quality-details .quality-band { display: block !important; margin: 8px 0 0 !important; padding: 0 !important; background: transparent !important; border: 0 !important; }
.jp-reading .jp-reading-quality-details .quality-intro { display: none !important; }
.jp-reading .jp-reading-quality-details .quality-metrics { display: block !important; }
.jp-reading .jp-reading-quality-details .quality-metrics article { padding: 12px 0 !important; border: 0 !important; background: transparent !important; }
.jp-reading .jp-reading-quality-details .quality-metrics article > strong { font-size: 16px !important; }
.jp-reading .jp-reading-quality-details .metric-interpretation { font-size: 11px !important; }
.jp-reading .jp-reading-layout > .report-flow, .jp-reading .jp-reading-layout > .result-grid { display: block !important; min-width: 0 !important; padding: 28px 38px 38px !important; margin: 0 !important; }
.jp-reading .jp-reading-intro { margin: 0 0 24px !important; padding-bottom: 20px !important; border-bottom: 1px solid var(--reading-accent) !important; scroll-margin-top: 100px; }
.jp-reading .jp-reading-intro-head { display: flex; justify-content: space-between; align-items: start; gap: 20px; }
.jp-reading .jp-reading-eyebrow { color: var(--reading-accent) !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .06em; margin: 0 !important; }
.jp-reading .jp-reading-intro .public-user { margin: 0 !important; padding: 0 !important; display: flex !important; gap: 8px !important; text-align: right; border: 0 !important; }
.jp-reading .jp-reading-intro .public-user > img { width: 30px !important; height: 30px !important; }
.jp-reading .jp-reading-intro .public-user span { font-size: 12px !important; }
.jp-reading .jp-reading-intro .public-user small { display: block !important; margin-top: 3px !important; font-size: 10px !important; line-height: 1.5 !important; }
.jp-reading .jp-reading-lede { font-family: var(--reading-serif) !important; font-weight: 700 !important; font-size: 34px !important; line-height: 1.5 !important; margin: 14px 0 16px !important; max-width: 30em; color: var(--reading-text) !important; }
.jp-reading .jp-reading-intro .style-commentary { display: block !important; font-size: 16px !important; line-height: 1.9 !important; margin: 0 !important; max-width: none !important; color: var(--reading-muted) !important; }
.jp-reading .jp-reading-intro .style-commentary.jp-profile-source { display: none !important; }
.jp-reading .jp-reading-profile { margin: 0; color: var(--reading-text); }
.jp-reading .jp-reading-profile .jp-profile-overview { margin: 0 0 12px !important; font-size: 16px !important; line-height: 1.9 !important; color: var(--reading-text) !important; }
.jp-reading .jp-reading-profile .jp-profile-scope { margin: 0 0 22px !important; font-size: 12px !important; line-height: 1.8 !important; color: var(--reading-muted) !important; }
.jp-reading .jp-profile-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 30px; }
.jp-reading .jp-profile-section { min-width: 0; padding-top: 12px; border-top: 1px solid var(--reading-rule); }
.jp-reading .jp-profile-section h3 { margin: 0 0 8px !important; font-size: 16px !important; font-weight: 650; line-height: 1.6 !important; color: var(--reading-text) !important; }
.jp-reading .jp-profile-section p { margin: 0 !important; font-size: 14px !important; line-height: 1.9 !important; color: var(--reading-muted) !important; }
.jp-reading .jp-profile-section:last-child { grid-column: 1 / -1; }
@media (max-width: 700px) { .jp-reading .jp-profile-grid { grid-template-columns: 1fr; gap: 20px; } }
.jp-reading .jp-reading-original { margin-top: 12px; color: var(--reading-muted); font-size: 11px; }
.jp-reading .jp-reading-original summary { cursor: pointer; }
.jp-reading .jp-reading-original blockquote { margin: 12px 0 0 !important; padding: 0 0 0 12px !important; border-left: 2px solid var(--reading-rule) !important; font-size: 13px !important; line-height: 1.8 !important; }
.jp-reading .report-flow > .report-section,
.jp-reading .result-grid > .section-card,
.jp-reading .report-flow > .jsy-report,
.jp-reading .jp-reading-resume {
  border: 0 !important; border-bottom: 1px solid var(--reading-rule) !important; border-radius: 0 !important;
  background: transparent !important; box-shadow: none !important; margin: 0 !important;
  padding: 24px 0 !important; scroll-margin-top: 104px;
}
.jp-reading .report-flow .section-head { gap: 14px !important; margin: 0 0 18px !important; }
.jp-reading .section-head > span, .jp-reading .section-number { font-family: var(--reading-serif) !important; color: var(--reading-accent) !important; font-size: 24px !important; line-height: 1.3 !important; }
.jp-reading .report-flow .section-head h2, .jp-reading .result-grid > .section-card h2 { font-family: var(--reading-serif) !important; font-size: 28px !important; line-height: 1.45 !important; }
.jp-reading .report-flow .section-head p, .jp-reading .result-grid > .section-card .muted { font-size: 12px !important; line-height: 1.7 !important; margin-top: 5px !important; color: var(--reading-muted) !important; }
.jp-reading .section-summary { display: none !important; }
.jp-reading .report-flow .axis-list { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 24px !important; }
.jp-reading .axis-group { padding: 0 !important; background: transparent !important; border: 0 !important; }
.jp-reading .axis-title b { font-size: 13px !important; }
.jp-reading .axis-title > strong { font-size: 17px !important; color: var(--reading-accent) !important; }
.jp-reading .axis-title small { font-size: 10px !important; line-height: 1.65 !important; }
.jp-reading .axis { margin: 14px 8px !important; }
.jp-reading .axis-endpoints { font-size: 11px !important; gap: 12px !important; }
.jp-reading .report-flow .metric-interpretation, .jp-reading .result-grid .metric-interpretation { background: transparent !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; margin: 12px 0 0 !important; font-size: 14px !important; line-height: 1.85 !important; color: var(--reading-muted) !important; }
.jp-reading .metric-interpretation > strong { display: block !important; font-size: 12px !important; font-weight: 600 !important; margin-bottom: 3px !important; color: var(--reading-text) !important; }
.jp-reading .proof-composition { display: block !important; }
.jp-reading .proof-ranking { display: block !important; }
.jp-reading .proof-item { padding: 16px 0 !important; border: 0 !important; border-bottom: 1px solid var(--reading-rule) !important; gap: 16px !important; background: transparent !important; }
.jp-reading .proof-item:last-child { border-bottom: 0 !important; }
.jp-reading .proof-rank { width: 24px !important; height: 28px !important; font: 16px var(--reading-serif) !important; background: var(--ft-claret-tint) !important; }
.jp-reading .proof-copy { display: grid !important; grid-template-columns: 210px minmax(0, 1fr) 52px !important; gap: 0 18px !important; align-items: center !important; }
.jp-reading .proof-copy > div:first-child { grid-column: 1 !important; grid-row: 1 !important; }
.jp-reading .proof-copy > div:first-child > b { font-size: 15px !important; }
.jp-reading .proof-copy > div:first-child > small { display: none !important; }
.jp-reading .proof-copy > strong { grid-column: 3 !important; grid-row: 1 !important; font-size: 15px !important; color: var(--reading-accent) !important; text-align: right !important; }
.jp-reading .proof-copy > strong > small { font-size: 9px !important; font-weight: 400 !important; }
.jp-reading .proof-copy > .proof-track.jp-spectrum-track { grid-column: 2 !important; grid-row: 1 !important; margin: 4px 6px !important; width: calc(100% - 12px) !important; height: 6px !important; }
.jp-reading .proof-copy > .jp-spectrum-ends { display: none !important; }
.jp-reading .proof-copy > .metric-interpretation { grid-column: 1 / -1 !important; font-size: 14px !important; margin-top: 8px !important; }
.jp-reading .proof-copy > .metric-interpretation > strong { display: none !important; }
.jp-reading .proof-conclusion { margin: 12px 0 0 !important; padding: 12px 0 0 !important; border: 0 !important; border-top: 1px solid var(--reading-rule) !important; background: transparent !important; }
.jp-reading .proof-conclusion > span { font-size: 11px !important; }
.jp-reading .proof-conclusion h3 { margin: 6px 0 !important; font-size: 15px !important; }
.jp-reading .proof-conclusion p, .jp-reading .proof-conclusion dl { font-size: 11px !important; line-height: 1.7 !important; margin: 6px 0 !important; }
.jp-reading .proof-conclusion dl { display: inline-block !important; }
.jp-reading .jp-reading-proof-note { margin: 12px 0 0; color: var(--reading-muted); }
.jp-reading .jp-reading-proof-note > summary { font-size: 12px; line-height: 1.7; cursor: pointer; padding: 8px 0; }
.jp-reading .modifier-workbench { grid-template-columns: minmax(230px, .9fr) minmax(0, 1.1fr) !important; gap: 24px !important; }
.jp-reading .radar-overview { position: static !important; padding: 0 !important; background: transparent !important; border: 0 !important; min-width: 0 !important; }
.jp-reading .modifier-groups { min-width: 0 !important; }
.jp-reading .jsy-report h2 { font-family: var(--reading-serif) !important; font-size: 24px !important; }
.jp-reading .jsy-headline { font-size: 18px !important; line-height: 1.7 !important; }
.jp-reading .jsy-report p { font-size: 13px !important; line-height: 1.85 !important; }
.jp-reading .jsy-report summary { font-size: 13px !important; min-height: 42px; }
.jp-reading .jsy-section { border-color: var(--reading-rule) !important; }
.jp-reading .jsy-section-body { padding: 4px 12px 14px !important; }
.jp-reading .report-flow > .vp-integration, .jp-reading .report-flow > .ep-shell { margin: 0 !important; padding: 24px 0 !important; border-bottom: 1px solid var(--reading-rule) !important; scroll-margin-top: 104px; }
.jp-reading .ep-card, .jp-reading .vp-card { background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; }
.jp-reading .report-flow > .ep-shell h2, .jp-reading .report-flow > .vp-integration h2 { font-family: var(--reading-serif) !important; font-size: 23px !important; }
.jp-reading .jp-reading-resume > summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; font: 23px var(--reading-serif); cursor: pointer; }
.jp-reading .jp-reading-resume > summary small { font: 11px var(--ft-font-sans, sans-serif); color: var(--reading-muted); }
.jp-reading .jp-reading-resume > .jr-archive { margin-top: 22px !important; }
.jp-reading .report-disclaimer, .jp-reading > .disclaimer { margin: 20px 0 !important; font-size: 11px !important; line-height: 1.8 !important; color: var(--reading-muted) !important; }
.jp-reading :is(#jp-engine, #jp-proof, #jp-modifiers, #judge-synthesis-report, #jp-history):focus { outline: 0; }
.jp-reading-quick .hero-card { text-align: left !important; }
.jp-reading-quick .hero-card .quick-type-visual { order: -1; margin: 0 !important; }
.jp-reading-quick .hero-card h1 { font-family: var(--reading-serif) !important; font-size: 22px !important; line-height: 1.6 !important; }
.jp-reading-quick .hero-card .eyebrow { font-size: 11px !important; letter-spacing: 0 !important; }
app-judge-profile-quick-result[data-public-reading] .quick-result-shell { padding-top: 24px !important; }
@layer debater-visual-system {
  .jp-reading-quick .result-grid > .section-card { border: 0 !important; border-bottom: 1px solid var(--reading-rule) !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; margin: 0 !important; padding: 24px 0 !important; }
}
.jp-reading-quick .jp-reading-intro > p { font-size: 13px !important; line-height: 1.85 !important; margin: 12px 0 !important; }
.jp-reading-quick .result-grid > .section-card .section-number { margin: 0 0 8px !important; }
.jp-reading-quick .axis-row, .jp-reading-quick .proof-row { margin: 22px 0 0 !important; }
@media (max-width: 1100px) {
  .jp-reading .jp-reading-layout { grid-template-columns: 200px minmax(0, 1fr) !important; }
  .jp-reading .jp-reading-rail-inner { padding: 22px 16px; }
  .jp-reading .jp-reading-layout > .report-flow, .jp-reading .jp-reading-layout > .result-grid { padding: 26px !important; }
  .jp-reading .proof-copy { grid-template-columns: 160px minmax(0, 1fr) 44px !important; gap: 0 12px !important; }
  .jp-reading .modifier-workbench { grid-template-columns: 1fr !important; }
  .jp-reading .report-flow .axis-list { grid-template-columns: 1fr !important; }
}
@media (max-width: 760px) {
  .jp-reading { max-width: none !important; }
  .jp-reading > .result-command { margin-bottom: 12px !important; }
  .jp-reading .jp-reading-layout { display: flex !important; flex-direction: column !important; }
  .jp-reading .jp-reading-rail { width: 100%; border-right: 0; border-bottom: 1px solid var(--reading-rule); }
  .jp-reading .jp-reading-rail-inner { position: static; max-height: none; overflow: visible; padding: 20px 16px 14px; }
  .jp-reading .jp-reading-rail .hero-card { display: grid !important; grid-template-columns: minmax(0, 1fr) 96px !important; gap: 14px !important; }
  .jp-reading .hero-aside, .jp-reading-quick .hero-card .quick-type-visual { order: 0; grid-column: 2; grid-row: 1; align-self: center; }
  .jp-reading .hero-copy { grid-column: 1; grid-row: 1; }
  .jp-reading .hero-card h1 { font-size: 29px !important; margin: 6px 0 !important; }
  .jp-reading .hero-card .type-portrait, .jp-reading .hero-card .quick-type-portrait { width: 96px !important; height: 112px !important; margin: 0 !important; }
  .jp-reading .hero-card .dual-portraits { gap: 4px !important; }
  .jp-reading .hero-card .dual-portraits .type-portrait { width: 44px !important; height: 64px !important; }
  .jp-reading .hero-card .dual-portraits .tendency-card > small { display: none !important; }
  .jp-reading .hero-card .dual-portraits .tendency-card > strong { font-size: 11px !important; }
  .jp-reading .hero-card .full-label { font-size: 11px !important; }
  .jp-reading .jp-reading-toc { flex-direction: row; flex-wrap: nowrap; overflow-x: auto; gap: 4px; margin-top: 16px; padding-bottom: 4px; }
  .jp-reading .jp-reading-toc h2 { display: none !important; }
  @layer debater-visual-system {
    html body #jp-reading-toc .jp-reading-link { width: auto !important; flex: 0 0 auto; min-height: 44px !important; padding: 8px !important; gap: 5px !important; font-size: 12px !important; border-left: 0 !important; border-bottom: 2px solid transparent !important; white-space: nowrap; }
    html body #jp-reading-toc .jp-reading-current { border-bottom-color: var(--reading-accent) !important; }
  }
  .jp-reading .jp-reading-toc .jp-reading-number { display: none; }
  .jp-reading .jp-reading-quality { margin-top: 12px; padding-top: 12px; }
  .jp-reading .jp-reading-quality h2 { display: none !important; }
  .jp-reading .jp-reading-quality-values { display: flex; flex-wrap: wrap; gap: 4px 14px; }
  .jp-reading .jp-reading-quality-values > div { margin: 0; gap: 6px; font-size: 12px; }
  .jp-reading .jp-reading-metric-note { margin: 8px 0 0 !important; }
  .jp-reading .jp-reading-layout > .report-flow, .jp-reading .jp-reading-layout > .result-grid { padding: 22px 16px !important; width: 100%; }
  .jp-reading .jp-reading-intro-head { gap: 10px; }
  .jp-reading .jp-reading-intro .public-user small { max-width: 185px; }
  .jp-reading .jp-reading-lede { font-size: 22px !important; line-height: 1.65 !important; }
  .jp-reading .jp-reading-intro .style-commentary { font-size: 14px !important; }
  .jp-reading .report-flow .axis-list { grid-template-columns: 1fr !important; gap: 26px !important; }
  .jp-reading .report-flow .section-head h2, .jp-reading .result-grid > .section-card h2 { font-size: 21px !important; }
  .jp-reading .section-head > span { font-size: 22px !important; }
  .jp-reading .proof-copy { grid-template-columns: minmax(0, 1fr) 48px !important; gap: 0 8px !important; }
  .jp-reading .proof-copy > .proof-track.jp-spectrum-track { grid-column: 1 / -1 !important; grid-row: 2 !important; margin: 14px 7px 8px !important; }
  .jp-reading .proof-copy > strong { grid-column: 2 !important; }
  .jp-reading .proof-item { gap: 10px !important; }
  .jp-reading .jp-reading-resume > summary { font-size: 21px; }
  .jp-reading .jp-reading-resume > summary small { font-size: 10px; }
  .jp-reading-quick .hero-card { display: flex !important; }
  .jp-reading-quick .hero-card h1 { font-size: 21px !important; grid-column: 1; }
  .jp-reading-quick .hero-card .eyebrow { grid-column: 1; }
  .jp-reading .history table { width: 100% !important; min-width: 0 !important; }
}
/* 下滚区紧凑总览：通栏原量表，正文与辅助资料按需展开。 */
@layer debater-visual-system {
  html body .jp-compact #jp-modifiers { position: relative; padding: 20px 0 !important; }
  html body .jp-compact #jp-modifiers .section-head { padding-right: 130px !important; margin-bottom: 14px !important; }
  html body .jp-compact #jp-modifiers .section-head p { margin-top: 4px !important; }
  html body .jp-compact #jp-modifiers .modifier-workbench { display: block !important; }
  html body .jp-compact #jp-modifiers .modifier-groups { display: block !important; width: 100% !important; }
  html body .jp-compact #jp-modifiers .modifier-group { margin: 14px 0 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
  html body .jp-compact #jp-modifiers .modifier-group > summary { display: flex !important; justify-content: space-between !important; align-items: center !important; padding: 8px 0 !important; min-height: 36px !important; border: 0 !important; border-bottom: 1px solid var(--reading-rule) !important; border-radius: 0 !important; background: transparent !important; font-size: 14px !important; }
  html body .jp-compact #jp-modifiers .modifier-group > summary small { display: none !important; }
  html body .jp-compact #jp-modifiers .modifier-group > summary em { font-style: normal; font-size: 11px; color: var(--reading-muted); }
  html body .jp-compact #jp-modifiers .modifier-group-body { display: block !important; padding: 0 !important; }
  html body .jp-compact #jp-modifiers .modifier-row { display: block !important; padding: 0 !important; margin: 0 !important; border: 0 !important; border-bottom: 1px solid var(--reading-rule) !important; background: transparent !important; }
  html body .jp-compact #jp-modifiers .jpc-row > summary { display: list-item !important; list-style-position: outside !important; margin-left: 14px !important; padding: 9px 0 !important; min-height: 42px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; color: var(--reading-text) !important; cursor: pointer; }
  html body .jp-compact #jp-modifiers .jpc-row > summary::marker { content: normal !important; color: var(--reading-accent); font-size: 10px; }
  html body .jp-compact #jp-modifiers .jpc-row-line { display: inline-grid !important; width: 100%; grid-template-columns: minmax(180px, .3fr) minmax(0, 1fr); align-items: center; gap: 18px; vertical-align: middle; }
  html body .jp-compact #jp-modifiers .modifier-line { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; padding: 0 !important; }
  html body .jp-compact #jp-modifiers .modifier-line > b { font-size: 13px !important; font-weight: 600 !important; }
  html body .jp-compact #jp-modifiers .modifier-line > strong { font-size: 14px !important; color: var(--reading-text) !important; font-variant-numeric: tabular-nums; }
  html body .jp-compact #jp-modifiers .modifier-scale { display: grid !important; grid-template-columns: 116px minmax(90px, 1fr) 120px !important; gap: 12px !important; align-items: center !important; margin: 0 !important; }
  html body .jp-compact #jp-modifiers .modifier-scale > span:not(.modifier-track) { font-size: 11px !important; line-height: 1.45 !important; color: var(--reading-muted) !important; }
  html body .jp-compact #jp-modifiers .modifier-scale > span:last-child { text-align: right !important; }
  html body .jp-compact #jp-modifiers .modifier-scale .jp-spectrum-track { height: 6px !important; width: 100% !important; margin: 0 !important; }
  html body .jp-compact #jp-modifiers .jpc-row-body { margin: 0 0 8px 14px; padding: 10px 14px; background: var(--ft-glass-tint); border-left: 2px solid var(--reading-rule); }
  html body .jp-compact #jp-modifiers .jpc-row-body > small { display: block; color: var(--reading-muted); font-size: 11px; line-height: 1.65; margin-bottom: 6px; }
  html body .jp-compact #jp-modifiers .jpc-row-body .modifier-meaning { margin: 0 !important; padding: 0 !important; background: transparent !important; border: 0 !important; font-size: 13px !important; line-height: 1.8 !important; }
  html body .jp-compact #jp-modifiers .jpc-row-body .modifier-meaning > strong { font-size: 12px !important; margin-bottom: 3px !important; }
  html body .jp-compact #jp-modifiers .jpc-radar { margin: 0 !important; }
  html body .jp-compact #jp-reading-radar > summary { position: absolute; right: 0; top: 24px; cursor: pointer; color: var(--reading-muted); font-size: 12px; padding: 6px 0; }
  html body .jp-compact #jp-reading-radar > .radar-overview { max-width: 560px !important; margin: 8px auto 20px !important; padding: 16px !important; border: 1px solid var(--reading-rule) !important; }
  html body .jp-compact .jpc-fold { position: relative; border: 0; border-bottom: 1px solid var(--reading-rule); padding: 0; margin: 0; scroll-margin-top: 104px; }
  html body .jp-compact .jpc-fold > summary { display: list-item !important; list-style-position: outside !important; margin-left: 14px !important; padding: 14px 0 !important; min-height: 48px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; cursor: pointer; color: var(--reading-text) !important; }
  html body .jp-compact .jpc-fold > summary::marker { content: normal !important; color: var(--reading-accent); font-size: 10px; }
  html body .jp-compact .jpc-fold-line { display: inline-flex; align-items: center; gap: 16px; width: 100%; vertical-align: middle; }
  html body .jp-compact .jpc-fold-title { flex: 0 0 auto; font-family: var(--reading-serif); font-size: 18px; }
  html body .jp-compact .jpc-fold-meta { font-size: 12px; line-height: 1.6; color: var(--reading-muted); }
  html body .jp-compact .jpc-fold-state { margin-left: auto; font-size: 11px; line-height: 1.5; color: var(--reading-muted); }
  html body .jp-compact #jp-reading-fold-synthesis > summary { padding-right: 125px !important; }
  html body .jp-compact #jp-reading-fold-synthesis .jpc-provenance { position: absolute !important; top: 11px; right: 0; min-height: 30px !important; padding: 3px 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; color: var(--reading-muted) !important; font-size: 12px !important; font-weight: 500 !important; }
  html body .jp-compact #jp-reading-fold-synthesis .jpc-provenance[hidden],
  html body .jp-compact #jp-reading-supplements .jpc-retry[hidden] { display: none !important; }
  html body .jp-compact .jpc-fold-body { padding: 4px 0 18px; }
  html body .jp-compact #judge-synthesis-report { margin: 0 !important; padding: 14px 0 0 !important; border: 0 !important; box-shadow: none !important; background: transparent !important; }
  html body .jp-compact #judge-synthesis-report > h2 { display: none !important; }
  html body .jp-compact #judge-synthesis-report .jsy-headline { font-size: 18px !important; margin: 6px 0 14px !important; }
  html body .jp-compact #judge-synthesis-report .jsy-content > summary { display: none !important; }
  html body .jp-compact #judge-synthesis-report .jsy-section { margin: 0 !important; border: 0 !important; border-bottom: 1px solid var(--reading-rule) !important; border-radius: 0 !important; background: transparent !important; }
  html body .jp-compact #judge-synthesis-report .jsy-section > summary { min-height: 44px !important; padding: 12px 0 !important; font-size: 13px !important; }
  html body .jp-compact #jp-reading-supplements { padding: 12px 0 0; border-bottom: 1px solid var(--reading-rule); margin: 0; }
  html body .jp-compact #jp-reading-supplements .jpc-supplement-head { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 14px; margin-bottom: 8px; }
  html body .jp-compact #jp-reading-supplements .jpc-supplement-head h2 { margin: 0; font-size: 14px; line-height: 1.6; font-weight: 600; }
  html body .jp-compact #jp-reading-supplements .jpc-availability { font-size: 11px; line-height: 1.6; color: var(--reading-muted); }
  html body .jp-compact #jp-reading-supplements .jpc-retry { min-height: 28px !important; padding: 3px 8px !important; border: 1px solid var(--reading-rule) !important; border-radius: 4px !important; background: transparent !important; box-shadow: none !important; color: var(--reading-muted) !important; font-size: 11px !important; }
  html body .jp-compact #jp-reading-supplements .jpc-fold { border-bottom: 0; border-top: 1px solid var(--reading-rule); }
  html body .jp-compact #jp-reading-supplements .jpc-fold > summary { min-height: 36px !important; padding: 8px 0 !important; }
  html body .jp-compact #jp-reading-supplements .jpc-fold-title { flex-basis: 110px; font: 13px var(--ft-font-sans, sans-serif); font-weight: 600; }
  html body .jp-compact #jp-reading-supplements :is(.vp-integration, .ep-shell) { margin: 0 !important; padding: 14px 0 !important; }
  html body .jp-compact #jp-reading-supplements :is(.vp-card, .ep-card) { background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; padding: 0 !important; }
  html body .jp-compact #jp-reading-supplements :is(.vp-card, .ep-card) h2 { font-size: 19px !important; }
  html body .jp-compact #jp-reading-resume { padding: 0 !important; }
  html body .jp-compact #jp-reading-resume > summary { display: list-item !important; min-height: 48px !important; padding: 14px 0 !important; margin-left: 14px; font: 600 14px var(--ft-font-sans, sans-serif) !important; }
  html body .jp-compact #jp-reading-resume > summary small { margin-left: 30px; font-size: 11px !important; }
  html body .jp-compact #jp-reading-fold-history .jpc-fold-title { font: 600 14px var(--ft-font-sans, sans-serif); }
  html body .jp-compact #jp-reading-fold-history #jp-history { padding: 14px 0 !important; border: 0 !important; }
  html body .jp-compact .jpc-fold:focus { outline: 0; }
  html body .jp-compact :is(.jpc-fold, .jpc-row) > summary:focus-visible { outline: 2px solid var(--reading-accent) !important; outline-offset: 2px; }
  @media (max-width: 1100px) {
    html body .jp-compact #jp-modifiers .jpc-row-line { grid-template-columns: minmax(140px, .3fr) minmax(0, 1fr); gap: 14px; }
    html body .jp-compact #jp-modifiers .modifier-scale { grid-template-columns: 78px minmax(60px, 1fr) 90px !important; gap: 8px !important; }
    html body .jp-compact #jp-reading-fold-synthesis .jpc-fold-meta { max-width: 175px; }
  }
  @media (max-width: 850px) {
    html body .jp-compact #jp-modifiers .jpc-row-line { grid-template-columns: 1fr; gap: 8px; }
    html body .jp-compact #jp-modifiers .modifier-scale { grid-template-columns: 88px minmax(70px, 1fr) 100px !important; }
    html body .jp-compact #jp-modifiers .jpc-row > summary { padding: 10px 0 !important; }
    html body .jp-compact #jp-reading-fold-synthesis > summary { padding-right: 0 !important; }
    html body .jp-compact #jp-reading-fold-synthesis .jpc-fold-meta { max-width: none; }
    html body .jp-compact #jp-reading-fold-synthesis .jpc-provenance { position: static !important; flex-basis: 100%; margin: 0 !important; min-height: 36px !important; justify-content: flex-start !important; }
    html body .jp-compact .jpc-fold-line { flex-wrap: wrap; gap: 4px 12px; vertical-align: top; }
  }
  @media (max-width: 760px) {
    html body .jp-compact #jp-modifiers .section-head { padding-right: 0 !important; }
    html body .jp-compact #jp-reading-radar > summary { position: static; width: fit-content; margin: 0 0 12px auto; min-height: 36px; }
    html body .jp-compact #jp-modifiers .modifier-scale { grid-template-columns: 78px minmax(65px, 1fr) 92px !important; }
    html body .jp-compact #jp-modifiers .jpc-row-body { padding: 10px; }
    html body .jp-compact .jpc-fold-title { font-size: 17px; }
    html body .jp-compact .jpc-fold-meta { font-size: 11px; }
    html body .jp-compact #jp-reading-supplements .jpc-retry,
    html body .jp-compact #jp-reading-fold-synthesis .jpc-provenance { min-height: 44px !important; }
    html body .jp-compact #jp-reading-resume > summary small { margin-left: 14px; font-size: 10px !important; }
  }
}
@media print {
  .jp-reading .jp-reading-rail-inner { position: static; max-height: none; }
  .jp-reading .jp-reading-toc { display: none; }
}

/* 封面与阅读层共用范围：这些规则同时覆盖两种入口，避免旧封面层重新把插画置顶。 */
@layer debater-visual-system {
  html body .jp-reading.jpc-cover-wrap > .jpc-cover {
    grid-template-columns: minmax(0, 1.35fr) minmax(220px, .65fr) !important;
    min-height: 0 !important; padding: 28px 32px !important; gap: 24px !important;
  }
  html body .jp-reading.jpc-cover-wrap .jpc-cover :is(.type-portrait, .quick-type-portrait) { height: 240px !important; }
  html body .jp-reading.jpc-cover-wrap .jpc-cover .dual-portraits .type-portrait { height: 190px !important; }
  html body .jp-reading.jpc-cover-wrap .jpc-cover .tendency-card > :is(span, strong, small) { display: none !important; }
  html body .jp-reading.jpc-cover-wrap .jpc-cover :is(h1, #profile-title) { text-wrap: balance; }
  html body .jp-reading .jp-reading-layout,
  html body .jp-reading .jp-reading-layout > :is(.report-flow, .result-grid) {
    background: var(--reading-bg) !important; background-image: none !important;
  }
  html body .jp-reading > .jpc-cover-explanation { display: none !important; }
  html body .jp-reading .jp-reading-quality-values dd { color: var(--reading-text) !important; }
  html body .jp-reading .jp-reading-quality-values > div,
  html body .jp-reading .jp-reading-metric-note { font-size: 12px !important; }
  html body .jp-reading .jp-reading-axis-direction {
    margin: 0 0 10px !important; color: var(--reading-text) !important; font-size: 15px !important; font-weight: 650; line-height: 1.7;
  }
  html body .jp-reading .axis-group > .jp-reading-axis-direction ~ .metric-interpretation > strong { display: none !important; }
  html body .jp-reading .axis-title > strong { font-size: 13px !important; color: var(--reading-muted) !important; }
  html body .jp-reading .axis-title > strong::before { content: attr(data-judge-axis-label); font-size: 12px; font-weight: 400; }
  html body .jp-reading .axis-title small,
  html body .jp-reading .axis-endpoints { font-size: 12px !important; }
  html body .jp-reading .jp-reading-intro:has(.style-commentary) > .jp-reading-lede { margin-bottom: 12px !important; }
  html body .jp-reading .report-flow > .jp-report-entry {
    margin: 0 !important; padding: 12px 0 !important; border: 0 !important; border-bottom: 1px solid var(--reading-rule) !important;
    border-radius: 0 !important; background: transparent !important;
  }
  html body .jp-reading .report-flow > .jp-report-entry > div:first-child { display: none !important; }
  @media (max-width: 760px) {
    html body .jp-reading > .result-command { display: flex !important; flex-wrap: nowrap !important; align-items: center !important; gap: 8px !important; }
    html body .jp-reading > .result-command > a#jp-reading-back {
      display: inline-flex !important; align-items: center !important; justify-content: center !important;
      flex: 0 0 44px !important; width: 44px !important; min-width: 44px !important; height: 44px !important;
      min-height: 44px !important; padding: 0 !important; font-size: 0 !important; white-space: nowrap !important;
    }
    html body .jp-reading > .result-command > a > span { display: none !important; }
    html body .jp-reading > .result-command > a::before { content: '←'; font-size: 20px; line-height: 1; }
    html body .jp-reading > .result-command > a:has(svg)::before { display: none; }
    html body .jp-reading > .result-command .command-context { display: none !important; }
    html body .jp-reading > .result-command .command-actions {
      display: flex !important; flex: 1 1 auto !important; flex-wrap: nowrap !important; justify-content: flex-end !important;
      align-items: center !important; min-width: 0 !important; gap: 8px !important;
    }
    html body .jp-reading > .result-command .version-select { flex: 1 1 auto; min-width: 0 !important; max-width: 190px; }
    html body .jp-reading > .result-command .version-select select { min-width: 0 !important; width: 100% !important; }
    html body .jp-reading > .result-command .command-actions > :is(button, details) { flex: 0 0 auto; }
    html body .jp-reading.jpc-cover-wrap > .jpc-cover {
      display: grid !important; grid-template-columns: minmax(0, 1fr) 76px !important;
      padding: 18px 16px !important; gap: 12px !important; margin-bottom: 12px !important;
    }
    html body .jp-reading.jpc-cover-wrap .jpc-cover :is(.hero-copy, .jpc-cover-copy) { grid-column: 1; grid-row: 1; order: 0 !important; }
    html body .jp-reading.jpc-cover-wrap .jpc-cover :is(.hero-aside, .quick-type-visual) {
      grid-column: 2; grid-row: 1; order: 1 !important; align-self: start !important; margin-top: 6px !important;
    }
    html body .jp-reading.jpc-cover-wrap .jpc-cover :is(.type-portrait, .quick-type-portrait) { width: 76px !important; height: 88px !important; }
    html body .jp-reading.jpc-cover-wrap .jpc-cover .dual-portraits { gap: 4px !important; }
    html body .jp-reading.jpc-cover-wrap .jpc-cover .dual-portraits .type-portrait { width: 36px !important; height: 54px !important; }
    html body .jp-reading.jpc-cover-wrap .jpc-cover :is(h1, #profile-title) { font-size: 30px !important; margin: 8px 0 !important; line-height: 1.35 !important; }
    html body .jp-reading.jpc-cover-wrap .jpc-cover :is(h1, #profile-title).dual-title { font-size: 25px !important; }
    html body .jp-reading.jpc-cover-wrap .jpc-cover-quick :is(h1, #profile-title) { font-size: 22px !important; line-height: 1.5 !important; }
    html body .jp-reading.jpc-cover-wrap .jpc-cover :is(.jp-reading-lede, .jpc-cover-meaning, blockquote) { font-size: 16px !important; line-height: 1.75 !important; padding-top: 10px !important; }
    html body .jp-reading.jpc-cover-wrap .jpc-cover .full-label { font-size: 13px !important; }
    html body .jp-reading .jp-reading-toc { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2px 4px; overflow: visible; }
    html body .jp-reading #jp-reading-toc .jp-reading-link { width: 100% !important; white-space: normal !important; justify-content: center !important; text-align: center !important; font-size: 12px !important; padding: 6px 3px !important; }
    html body .jp-reading .jp-reading-quality-values { display: grid; grid-template-columns: 1fr; gap: 4px; }
    html body .jp-reading .jp-reading-quality-values > div { justify-content: space-between; }
  }
}

/* 判准速览：原节点、原分数与原事件；方向轴和独立程度采用不同图形。 */
@layer debater-visual-system {
  body:has(.jp-overview) { overflow-anchor: none; }
  html body .jp-reading.jp-overview {
    --jpo-page: #f4f7fb; --jpo-surface: #ffffff; --jpo-text: #162334;
    --jpo-muted: #526477; --jpo-line: #d5dee8; --jpo-axis: #8090a1;
    --jpo-accent: #245b8a; --jpo-fill: #0f766e; --jpo-soft: #eaf1f7; --jpo-track: #dce4ec;
    --reading-bg: var(--jpo-surface); --reading-text: var(--jpo-text); --reading-muted: var(--jpo-muted);
    --reading-rule: var(--jpo-line); --reading-accent: var(--jpo-accent);
    --jpc-surface: var(--jpo-surface); --jpc-text: var(--jpo-text); --jpc-muted: var(--jpo-muted);
    --jpc-line: var(--jpo-line); --jpc-accent: var(--jpo-accent);
    --ft-text-primary: var(--jpo-text); --ft-text-secondary: var(--jpo-muted); --ft-text-muted: var(--jpo-muted);
    --ft-claret: var(--jpo-accent); --ft-claret-tint: var(--jpo-soft); --ft-bg-card: var(--jpo-surface);
    --ft-border: var(--jpo-line); --ft-text: var(--jpo-text); --ft-muted: var(--jpo-muted);
    width: min(1240px, 100%) !important; max-width: 1240px !important;
    margin: 0 auto !important; padding: 0 24px 32px !important;
    background: var(--jpo-surface) !important; color: var(--jpo-text) !important;
    font: 16px/1.7 var(--ft-font-sans, 'Microsoft YaHei', sans-serif) !important;
  }
  html[data-ft-mode='ink'] body .jp-reading.jp-overview {
    --jpo-page: #0a1220; --jpo-surface: #111b2a; --jpo-text: #eef4fc;
    --jpo-muted: #bdccdc; --jpo-line: #34475a; --jpo-axis: #a5b8ca;
    --jpo-accent: #9ae8eb; --jpo-fill: #9ae8eb; --jpo-soft: #1b3043; --jpo-track: #2a3d50;
  }
  html body:has(.jp-overview) :is(.result-shell, .quick-result-shell) {
    background: var(--jpo-page, #f4f7fb) !important; padding: 76px 20px 40px !important;
  }
  html[data-ft-mode='ink'] body:has(.jp-overview) :is(.result-shell, .quick-result-shell) { background: #0a1220 !important; }
  html body:has(.jp-overview) [aria-label='主导航'] { background: #ffffff !important; border-color: #d5dee8 !important; }
  html[data-ft-mode='ink'] body:has(.jp-overview) [aria-label='主导航'] { background: #111b2a !important; border-color: #34475a !important; }
  html body .jp-overview *, html body .jp-overview *::before, html body .jp-overview *::after { box-sizing: border-box; }
  html body .jp-overview :is(button, select, summary, a):focus-visible { outline: 2px solid var(--jpo-accent) !important; outline-offset: 3px; }
  html body .jp-overview :is([hidden], .jpo-communication[hidden], .jpo-legacy[hidden]) { display: none !important; }
  html body .jp-overview > .result-command {
    min-height: 62px !important; margin: 0 !important; padding: 8px 0 !important;
    background: var(--jpo-surface) !important; color: var(--jpo-text) !important; border-bottom: 1px solid var(--jpo-line) !important;
  }
  html body .jp-overview .result-command :is(button, select, a, summary) { color: var(--jpo-text) !important; min-height: 44px !important; background: var(--jpo-soft) !important; border-color: var(--jpo-line) !important; }
  html body .jp-overview .result-command :is(.command-context, .command-context small) { color: var(--jpo-muted) !important; }
  html body .jp-reading.jp-overview .jp-reading-layout { display: block !important; width: 100% !important; border: 0 !important; background: transparent !important; }
  html body .jp-reading.jp-overview .jp-reading-rail {
    position: sticky !important; top: 76px; z-index: 30; width: 100% !important;
    border: 0 !important; border-bottom: 1px solid var(--jpo-line) !important; background: var(--jpo-surface) !important;
  }
  html body .jp-reading.jp-overview .jp-reading-rail-inner { position: static !important; padding: 0 !important; overflow: visible !important; max-height: none !important; }
  html body .jp-overview #jp-reading-toc { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; gap: 0 8px; margin: 0 !important; padding: 0 !important; }
  html body .jp-overview #jp-reading-toc :is(h2, .jp-reading-number) { display: none !important; }
  html body .jp-overview #jp-reading-toc .jp-reading-link {
    flex: 0 0 auto !important; width: auto !important; min-height: 48px !important; padding: 10px 12px !important;
    border: 0 !important; border-bottom: 2px solid transparent !important; border-radius: 0 !important;
    color: var(--jpo-muted) !important; background: transparent !important; font: 600 14px/1.5 var(--ft-font-sans, sans-serif) !important;
  }
  html body .jp-overview #jp-reading-toc .jp-reading-current { color: var(--jpo-accent) !important; border-bottom-color: var(--jpo-accent) !important; }
  html body .jp-overview .jpo-chapter-select { display: none; }
  html body .jp-reading.jp-overview .jp-reading-layout > :is(.report-flow, .result-grid) { display: block !important; padding: 0 !important; margin: 0 !important; width: 100% !important; }
  html body .jp-reading.jp-overview .jpc-cover {
    display: grid !important; grid-template-columns: minmax(0, 1fr) 80px !important; gap: 18px !important;
    min-height: 100px !important; padding: 18px 0 12px !important; margin: 0 !important; border: 0 !important;
    border-radius: 0 !important; overflow: visible !important; background: transparent !important;
  }
  html body .jp-reading.jp-overview .jpc-cover :is(.hero-copy, .jpc-cover-copy) { display: flex !important; gap: 0 !important; grid-column: 1; grid-row: 1; order: 0 !important; }
  html body .jp-reading.jp-overview .jpc-cover :is(.hero-kicker, .eyebrow, .seal-row, .type-seal, .full-label, .jp-reading-lede, .jpc-cover-meaning, .jpc-cover-repeated, .tendency-label) { display: none !important; }
  html body .jp-reading.jp-overview .jpc-cover .public-user { margin: 0 0 3px !important; gap: 8px !important; }
  html body .jp-reading.jp-overview .jpc-cover .public-user > div > span { font-size: 16px !important; line-height: 1.5 !important; }
  html body .jp-reading.jp-overview .jpc-cover .public-user small { margin: 0 !important; color: var(--jpo-muted) !important; font-size: 14px !important; line-height: 1.5 !important; }
  html body .jp-reading.jp-overview .jpc-cover :is(h1, #profile-title) { font: 600 18px/1.4 var(--ft-font-sans, sans-serif) !important; margin: 0 !important; letter-spacing: 0 !important; }
  html body .jp-reading.jp-overview .jpc-cover :is(h1, #profile-title).dual-title > span { display: inline !important; font-size: 16px !important; margin: 0 0 0 12px !important; }
  html body .jp-reading.jp-overview .jpc-cover :is(.hero-aside, .quick-type-visual) { grid-column: 2; grid-row: 1; order: 1 !important; width: 80px !important; margin: 0 !important; align-self: center !important; }
  html body .jp-reading.jp-overview .jpc-cover :is(.type-portrait, .quick-type-portrait) { width: 68px !important; height: 68px !important; border-radius: 4px !important; margin: 0 !important; }
  html body .jp-reading.jp-overview .jpc-cover :is(.type-portrait, .quick-type-portrait) img { border-radius: 4px !important; }
  html body .jp-reading.jp-overview .jpc-cover .dual-portraits { gap: 4px !important; }
  html body .jp-reading.jp-overview .jpc-cover .dual-portraits .type-portrait { width: 38px !important; height: 54px !important; }
  html body .jp-reading.jp-overview .jpc-cover .tendency-card > :is(span, strong, small) { display: none !important; }
  html body .jp-reading.jp-overview .jpc-cover .portrait-fallback { min-height: 50px !important; font-size: 18px !important; }
  html body .jp-overview .jpo-summary { display: flex; align-items: center; gap: 28px; margin: 0 !important; padding: 16px 0 22px !important; border-bottom: 1px solid var(--jpo-line); scroll-margin-top: 142px; }
  html body .jp-overview .jpo-title { flex: 0 1 auto; margin: 0 !important; font: 700 30px/1.4 var(--ft-font-sans, sans-serif) !important; color: var(--jpo-text) !important; }
  html body .jp-overview .jpo-lead { flex: 1; padding-left: 28px; border-left: 1px solid var(--jpo-line); margin: 0 !important; font-size: 16px !important; line-height: 1.7 !important; color: var(--jpo-muted) !important; }
  html body .jp-overview .jpo-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; padding: 22px 0; border-bottom: 1px solid var(--jpo-line); }
  html body .jp-overview .jpo-metrics > section { min-width: 0; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; border-radius: 0 !important; box-shadow: none !important; }
  html body .jp-overview .jpo-metrics > section + section { border-left: 1px solid var(--jpo-line) !important; padding-left: 28px !important; }
  html body .jp-overview .jpo-metrics :is(.section-head > span, .section-number, .section-summary, .proof-rank, .axis-title, .jp-reading-axis-direction) { display: none !important; }
  html body .jp-overview .jpo-metrics :is(.section-head, .section-head > div) { display: block !important; margin: 0 0 12px !important; padding: 0 !important; }
  html body .jp-overview .jpo-metrics :is(.section-head h2, h2) { margin: 0 !important; font: 650 19px/1.5 var(--ft-font-sans, sans-serif) !important; color: var(--jpo-accent) !important; }
  html body .jp-overview .jpo-metrics :is(.section-head p, .muted) { font: 14px/1.5 var(--ft-font-sans, sans-serif) !important; color: var(--jpo-muted) !important; margin: 3px 0 0 !important; }
  html body .jp-overview .jpo-metrics .engine-section .section-head p { display: none !important; }
  html body .jp-overview .jpo-metrics .axis-list { display: grid !important; grid-template-columns: 1fr !important; gap: 24px !important; padding: 8px 6px 0 !important; }
  html body .jp-overview .jpo-metrics .axis-group { display: grid !important; grid-template-rows: auto 10px; row-gap: 12px; padding: 0 !important; }
  html body .jp-overview .jpo-metrics .axis-endpoints { grid-row: 1; display: flex !important; justify-content: space-between; margin: 0 !important; font-size: 14px !important; line-height: 1.5 !important; color: var(--jpo-text) !important; }
  html body .jp-overview .jpo-metrics .axis { grid-row: 2; height: 2px !important; width: 100% !important; margin: 0 !important; background: var(--jpo-axis) !important; border: 0 !important; border-radius: 0 !important; overflow: visible !important; box-shadow: none !important; }
  html body .jp-overview .jpo-metrics .axis::after { content: ''; position: absolute; left: 50%; top: -4px; height: 10px; width: 1px; background: var(--jpo-axis); }
  html body .jp-overview .jpo-metrics .axis > i { width: 12px !important; height: 12px !important; top: 50% !important; margin: 0 !important; transform: translate(-50%,-50%) !important; background: var(--jpo-accent) !important; border: 1px solid var(--jpo-surface) !important; box-shadow: none !important; }
  html body .jp-overview .jpo-metrics :is(.proof-ranking, .proof-composition) { display: block !important; margin: 0 !important; }
  html body .jp-overview .jpo-metrics .proof-item { display: block !important; padding: 6px 0 !important; margin: 0 !important; border: 0 !important; }
  html body .jp-overview .jpo-metrics .proof-copy { display: grid !important; grid-template-columns: 120px minmax(0,1fr) 44px !important; column-gap: 14px !important; row-gap: 0 !important; }
  html body .jp-overview .jpo-metrics .proof-copy > div:first-child { grid-column: 1 !important; grid-row: 1 !important; }
  html body .jp-overview .jpo-metrics .proof-copy b { font-size: 15px !important; font-weight: 500 !important; color: var(--jpo-text) !important; }
  html body .jp-overview .jpo-metrics .proof-copy > strong { grid-column: 3 !important; grid-row: 1 !important; font-size: 16px !important; color: var(--jpo-text) !important; }
  html body .jp-overview .jpo-metrics .proof-copy > strong > small { display: none !important; }
  html body .jp-overview .jpo-metrics :is(.proof-track.jp-spectrum-track, .proof-row > .jp-spectrum-track) { grid-column: 2 !important; grid-row: 1 !important; width: 100% !important; height: 9px !important; margin: 0 !important; overflow: hidden !important; background: var(--jpo-track) !important; box-shadow: none !important; border: 0 !important; border-radius: 3px !important; }
  html body .jp-overview .jpo-metrics .jp-spectrum-track::before { content: ''; display: block; width: var(--jp-score); height: 100%; background: var(--jpo-fill); border-radius: inherit; }
  html body .jp-overview .jpo-metrics .jp-spectrum-track::after { display: none !important; }
  html body .jp-overview .jpo-metrics .jp-spectrum-marker { display: none !important; }
  html body .jp-overview .jpo-metrics .jp-spectrum-ends { display: none !important; }
  html body .jp-overview :is(.jpo-explanations, .jpo-profile, .jpo-legacy) { margin: 0 !important; border: 0 !important; border-bottom: 1px solid var(--jpo-line) !important; background: transparent !important; border-radius: 0 !important; }
  html body .jp-overview :is(.jpo-explanations, .jpo-profile, .jpo-legacy) > summary { min-height: 44px; padding: 10px 0; font-size: 14px; font-weight: 600; color: var(--jpo-text); cursor: pointer; }
  html body .jp-overview .jpo-legacy > summary { font-size: 13px; color: var(--jpo-muted); }
  html body .jp-overview .jpo-legacy p { font-size: 14px; line-height: 1.7; margin: 0 0 12px; color: var(--jpo-muted); }
  html body .jp-overview :is(.jpo-profile, .jpo-explanations)[open] { padding-bottom: 18px !important; }
  html body .jp-overview .jpo-explanations .metric-interpretation { margin: 16px 0 !important; font-size: 16px !important; line-height: 1.8 !important; }
  html body .jp-overview .jpo-explanations .metric-interpretation > strong { display: block !important; font-size: 16px !important; }
  html body .jp-overview .jpo-profile .jp-reading-intro { padding: 12px 0 !important; margin: 0 !important; border: 0 !important; }
  html body .jp-overview .jpo-profile :is(.jp-profile-section p, .jp-profile-scope, .jp-reading-quality, .jp-reading-original, .jp-reading-original blockquote, .jp-reading-intro > p) { font-size: 16px !important; line-height: 1.8 !important; }
  html body .jp-overview .jpo-profile .jp-reading-quality { padding-top: 16px !important; margin-top: 16px !important; }
  html body .jp-overview .jpo-profile .jp-reading-quality :is(dt,dd) { font-size: 14px !important; }
  html body .jp-overview .jpo-profile .jp-reading-original summary { min-height: 44px; padding: 8px 0; }
  html body .jp-overview .jpo-communication { padding: 18px 0; border-bottom: 1px solid var(--jpo-line); }
  html body .jp-overview .jpo-communication h2 { color: var(--jpo-accent) !important; font: 650 19px/1.5 var(--ft-font-sans, sans-serif) !important; margin: 0 0 6px !important; }
  html body .jp-overview .jpo-communication p { font-size: 16px; line-height: 1.8; margin: 0; }
  html body .jp-overview :is(.report-section, .jpc-fold, .jpc-supplements, .jp-reading-resume, .jpo-profile) { scroll-margin-top: 142px !important; }
  html body .jp-overview .report-flow .section-head h2 { font-family: var(--ft-font-sans, sans-serif) !important; color: var(--jpo-accent) !important; font-size: 22px !important; }
  html body .jp-overview .modifier-scale { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 9px 16px !important; width: 100% !important; }
  html body .jp-overview .modifier-scale > span { font-size: 14px !important; color: var(--jpo-muted) !important; }
  html body .jp-overview .modifier-scale > span:last-child { grid-column: 2; grid-row: 1; text-align: right; }
  html body .jp-overview .modifier-scale > .modifier-track.jp-spectrum-track { grid-column: 1/-1; grid-row: 2; margin: 0 6px !important; width: calc(100% - 12px) !important; height: 2px !important; background: var(--jpo-axis) !important; border-radius: 0 !important; box-shadow: none !important; }
  html body .jp-overview .modifier-track.jp-spectrum-track::after { top: -4px !important; bottom: -4px !important; background: var(--jpo-axis) !important; box-shadow: none !important; }
  html body .jp-overview .modifier-track .jp-spectrum-marker { width: 12px !important; min-width: 12px !important; max-width: 12px !important; height: 12px !important; border: 1px solid var(--jpo-surface) !important; background: var(--jpo-accent) !important; box-shadow: none !important; }
  html body .jp-overview .jpc-row-line { display: grid !important; grid-template-columns: 1fr !important; row-gap: 8px !important; }
  html body .jp-overview .jpc-row-summary { padding: 12px 6px !important; }
  html body .jp-overview .modifier-line :is(b,strong) { font-size: 16px !important; color: var(--jpo-text) !important; }
  html body .jp-overview :is(.jpc-fold-title, .jpc-supplement-head h2, .jp-reading-resume > summary) { color: var(--jpo-text) !important; font-size: 18px !important; }
  html body .jp-overview :is(.jpc-fold-meta, .jpc-fold-state, .jpc-availability, .jsy-report p, .jsy-report summary, .report-disclaimer, .disclaimer) { font-size: 14px !important; line-height: 1.7 !important; color: var(--jpo-muted) !important; }
  html body .jp-overview :is(#value-preferences-report, #expression-preferences-report) { background: var(--jpo-surface) !important; color: var(--jpo-text) !important; border-color: var(--jpo-line) !important; }
  html body .jp-overview .jpo-profile .jp-reading-quality-values { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; }
  html body .jp-overview .jpo-profile .jp-reading-quality-values > div { display: block; }
  html body .jp-overview .jpo-profile .jp-reading-quality-values dd { margin: 4px 0 0; font-weight: 700; }
  html body .jp-overview.jp-reading-quick .jpc-cover h1 { display: none !important; }
  html body .jp-overview.quick-result-wrap > nav { display: flex !important; align-items: center; min-height: 52px; padding: 6px 0 !important; margin: 0 !important; border-bottom: 1px solid var(--jpo-line); }
  html body .jp-overview.quick-result-wrap > nav a { color: var(--jpo-accent) !important; font-size: 14px !important; min-height: 40px; display: inline-flex; align-items: center; }
  html body .jp-overview.jp-reading-quick .jpc-cover .provisional-note { font-size: 14px !important; color: var(--jpo-muted) !important; margin: 4px 0 0 !important; }
  /* 简易页原路由容器已经避让全局导航，不能再次累计顶部留白。 */
  html body:has(.jp-overview.quick-result-wrap) .quick-result-shell { padding-top: 0 !important; }
  html body .jp-overview.jp-reading-quick .jpc-cover .provisional-note { display: none !important; }
  html body .jp-overview.jp-reading-quick #jp-overview-summary ~ .jpo-metrics > .section-card { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important; }
  html body .jp-overview.jp-reading-quick .jpo-metrics .section-card > :is(.summary, .muted) { display: none !important; }
  html body .jp-overview.jp-reading-quick .axis-row { margin: 22px 6px !important; }
  html body .jp-overview.jp-reading-quick .axis-row > div { display: flex !important; justify-content: space-between; margin: 0 0 12px !important; gap: 12px; }
  html body .jp-overview.jp-reading-quick .axis-row b { font-size: 14px !important; }
  html body .jp-overview.jp-reading-quick .axis-row > span { display: block !important; height: 2px !important; width: 100% !important; background: var(--jpo-axis) !important; border: 0 !important; overflow: visible !important; }
  html body .jp-overview.jp-reading-quick .axis-row > span i { width: 12px !important; height: 12px !important; top: 50% !important; margin: 0 !important; transform: translate(-50%,-50%) !important; background: var(--jpo-accent) !important; border: 1px solid var(--jpo-surface) !important; box-shadow: none !important; }
  html body .jp-overview.jp-reading-quick .proof-row { display: grid !important; grid-template-columns: 120px minmax(0,1fr) 44px; gap: 12px; align-items: center; margin: 14px 0 !important; }
  html body .jp-overview.jp-reading-quick .proof-row > div:first-child { display: contents !important; }
  html body .jp-overview.jp-reading-quick .proof-row b { grid-column: 1; grid-row: 1; font-weight: 500 !important; }
  html body .jp-overview.jp-reading-quick .proof-row strong { grid-column: 3; grid-row: 1; text-align: right; }
  html body .jp-overview.jp-reading-quick .proof-row :is(b,strong) { font-size: 15px !important; color: var(--jpo-text) !important; }
  @media (max-width: 900px) {
    html body .jp-reading.jp-overview { padding: 0 18px 24px !important; }
    html body .jp-overview .jpo-summary { display: block; }
    html body .jp-overview .jpo-lead { border: 0; padding: 6px 0 0; }
    html body .jp-overview .jpo-title { font-size: 27px !important; }
    html body .jp-overview .jpo-metrics { gap: 20px; }
    html body .jp-overview .jpo-metrics > section + section { padding-left: 20px !important; }
    html body .jp-overview .jpo-metrics .proof-copy { grid-template-columns: minmax(0,1fr) 44px !important; }
    html body .jp-overview .jpo-metrics .proof-copy > strong { grid-column: 2 !important; }
    html body .jp-overview .jpo-metrics .proof-copy > .proof-track.jp-spectrum-track { grid-column: 1/-1 !important; grid-row: 2 !important; margin-top: 6px !important; }
  }
  @media (max-width: 760px) {
    html body:has(.jp-overview) :is(.result-shell, .quick-result-shell) { padding: 70px 0 0 !important; }
    html body .jp-reading.jp-overview { width: 100% !important; padding: 0 16px 24px !important; }
    html body .jp-overview > .result-command { min-height: 52px !important; padding: 4px 0 !important; }
    html body .jp-overview .result-command .version-select { max-width: 170px; }
    html body .jp-overview .result-command .version-select select { font-size: 14px !important; }
    html body .jp-reading.jp-overview .jp-reading-rail { top: 70px; padding: 4px 0 !important; }
    html body .jp-overview #jp-reading-toc { display: none !important; }
    html body .jp-overview .jpo-chapter-select { display: block !important; width: 100%; min-height: 44px; padding: 8px 12px; border: 1px solid var(--jpo-line); border-radius: 6px; background: var(--jpo-surface); color: var(--jpo-text); font: 600 16px/1.5 var(--ft-font-sans,sans-serif); }
    html body .jp-reading.jp-overview .jpc-cover { grid-template-columns: minmax(0,1fr) 68px !important; gap: 12px !important; min-height: 92px !important; padding: 12px 0 !important; }
    html body .jp-reading.jp-overview .jpc-cover :is(.hero-aside, .quick-type-visual) { width: 68px !important; }
    html body .jp-reading.jp-overview .jpc-cover :is(.type-portrait, .quick-type-portrait) { width: 60px !important; height: 60px !important; }
    html body .jp-reading.jp-overview .jpc-cover .dual-portraits .type-portrait { width: 30px !important; height: 44px !important; }
    html body .jp-reading.jp-overview .jpc-cover :is(h1, #profile-title).dual-title > span { display: block !important; margin-left: 0 !important; font-size: 14px !important; }
    html body .jp-overview .jpo-summary { padding: 10px 0 14px !important; }
    html body .jp-overview .jpo-title { font-size: 26px !important; line-height: 1.4 !important; }
    html body .jp-overview .jpo-lead { font-size: 14px !important; line-height: 1.6 !important; padding-top: 4px; }
    html body .jp-overview .jpo-metrics { display: block; padding: 16px 0; }
    html body .jp-overview .jpo-metrics > section + section { border-left: 0 !important; padding: 16px 0 0 !important; margin-top: 16px !important; border-top: 1px solid var(--jpo-line) !important; }
    html body .jp-overview .jpo-metrics :is(.section-head h2, h2) { font-size: 18px !important; }
    html body .jp-overview .jpo-metrics .section-head { margin-bottom: 10px !important; }
    html body .jp-overview .jpo-metrics .axis-list { gap: 18px !important; padding-top: 0 !important; }
    html body .jp-overview .jpo-metrics .axis-group { row-gap: 9px; }
    html body .jp-overview .jpo-metrics .proof-item { padding: 6px 0 !important; }
    html body .jp-overview .jpo-metrics .proof-copy { row-gap: 0 !important; }
    html body .jp-overview .jpo-communication { display: none !important; }
    html body .jp-overview .jpo-legacy > summary { min-height: 36px; padding: 6px 0; }
    html body .jp-overview .jpo-profile .jp-reading-quality-values { grid-template-columns: 1fr; }
    html body .jp-overview .jpo-profile .jp-reading-quality-values > div { display: flex; justify-content: space-between; gap: 12px; }
    html body .jp-overview.jp-reading-quick .proof-row { grid-template-columns: minmax(0,1fr) 44px; margin: 12px 0 !important; }
    html body .jp-overview.jp-reading-quick .proof-row strong { grid-column: 2; }
    html body .jp-overview.jp-reading-quick .jpo-metrics .proof-row > .jp-spectrum-track { grid-column: 1/-1 !important; grid-row: 2 !important; }
  }
  /* 高优先级覆盖既有封面和图谱的局部 ID 规则，不改变全站主题选择。 */
  html body .jp-reading.jp-overview.jp-compact .jp-reading-layout > :is(.report-flow, .result-grid) { border: 0 !important; background: transparent !important; box-shadow: none !important; }
  html body .jp-reading.jp-overview.jp-compact .jp-reading-rail-inner { padding: 0 !important; }
  html body .jp-reading.jp-overview.jp-compact .jpc-cover { box-shadow: none !important; }
  html body .jp-reading.jp-overview.jp-compact :is(#jp-engine, #jp-proof, #jp-modifiers, .hero-card, .jpo-summary, .jpo-profile) :is(h1,h2,h3,p,b,strong,small,span,summary,dt,dd) { font-family: var(--ft-font-sans, 'Microsoft YaHei', sans-serif) !important; }
  html body .jp-reading.jp-overview.jp-compact #jp-modifiers .jpc-row-line { display: grid !important; grid-template-columns: 1fr !important; row-gap: 8px !important; }
  html body .jp-reading.jp-overview.jp-compact #jp-modifiers .modifier-scale { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 9px 16px !important; width: 100% !important; }
  html body .jp-reading.jp-overview.jp-compact #jp-modifiers .modifier-scale > span { font-size: 14px !important; color: var(--jpo-muted) !important; }
  html body .jp-reading.jp-overview.jp-compact #jp-modifiers .modifier-scale > span:last-child { grid-column: 2; grid-row: 1; text-align: right; }
  html body .jp-reading.jp-overview.jp-compact #jp-modifiers .modifier-scale > .modifier-track.jp-spectrum-track { grid-column: 1/-1; grid-row: 2; margin: 0 6px !important; width: calc(100% - 12px) !important; height: 2px !important; background: var(--jpo-axis) !important; border-radius: 0 !important; box-shadow: none !important; }
  html body .jp-reading.jp-overview.jp-compact #jp-modifiers .modifier-track .jp-spectrum-marker { width: 12px !important; min-width: 12px !important; max-width: 12px !important; height: 12px !important; border: 1px solid var(--jpo-surface) !important; background: var(--jpo-accent) !important; box-shadow: none !important; }
  html body .jp-reading.jp-overview.jp-compact #jp-modifiers .modifier-line :is(b,strong) { font-size: 16px !important; }
  html body .jp-reading.jp-overview.jp-compact #jp-modifiers .jpc-row-body .modifier-meaning { font-size: 16px !important; line-height: 1.75 !important; color: var(--jpo-muted) !important; background: var(--jpo-soft) !important; }
  html body .jp-reading.jp-overview.jp-compact #jp-modifiers .modifier-group > summary { color: var(--jpo-accent) !important; font-size: 16px !important; }
}
