/* 七上文言文：共享纸本版式，正文与原有练习内容保持独立。 */
.prose-chentaiqiu .hero { background-image: url("prose-chentaiqiu-courtyard.jpg"); }
.prose-lunyu .hero { background-image: url("prose-lunyu-teaching.jpg"); }
.prose-jiezishu .hero { background-image: url("prose-jiezishu-study.jpg"); }
.prose-lang .hero { background-image: url("prose-lang-wolves.jpg"); }
.prose-chuanjing .hero { background-image: url("prose-chuanjing-well.jpg"); }
.prose-qiren .hero { background-image: url("prose-qiren-sky.jpg"); }

.prose-page .hero-content { width: min(62%, 750px); }
.prose-page .hero-lead { max-width: 530px; }
.prose-page .chapters,
.prose-page .passages {
  display: block;
  overflow: hidden;
  border: 1px solid #b9ae9b;
  border-radius: 0;
  background: #fbf8f0;
  box-shadow: 0 14px 30px rgba(43,38,28,.07);
}
.prose-page .chapters > .chapter,
.prose-page .passages > .passage {
  display: grid;
  grid-template-columns: minmax(0,1.72fr) minmax(350px,1fr);
  margin: 0;
  overflow: hidden;
  border: 0;
  border-top: 1px solid #c9c0b2;
  border-radius: 0;
  background: #fbf8f0;
  box-shadow: none;
}
.prose-page .chapter-number,
.prose-page .passage-number { display: none; }
.prose-page .chapter .original,
.prose-page .passage .original {
  grid-area: 1 / 1;
  padding: 25px 68px 31px 28px;
  color: #263336;
  font-size: clamp(20px,2vw,26px);
  line-height: 2.15;
}
.prose-page .chapter .chapter-translate,
.prose-page .passage .translate-toggle {
  position: relative;
  grid-area: 1 / 1;
  place-self: end;
  width: 34px;
  height: 34px;
  margin: 0 15px 15px 0;
  border: 1px solid #9e4435;
  border-radius: 0;
  background: #a94737;
  color: #fff9ed;
  font-size: 14px;
}
.prose-page .chapter .chapter-translate[aria-pressed="true"],
.prose-page .passage .translate-toggle[aria-pressed="true"] { background: #6e2f29; color: #fff; }
.prose-page .inline-translation,
.prose-page .visible-translation {
  grid-area: 1 / 2;
  min-width: 0;
  padding: 25px 27px;
  border-left: 1px solid #c4b9a6;
  background: #f7f1e4;
}
.prose-page .inline-translation p,
.prose-page .visible-translation p {
  color: #34403c;
  font: 600 18px/1.8 "Noto Serif SC", "Songti SC", serif;
}
.prose-page .poem-sheet > .poem-unit + .poem-unit { border-top: 1px solid #c9c0b2; }
.prose-page .poem-sheet .prose-unit .original-cell {
  align-items: flex-start;
  justify-content: flex-start;
  min-height: 0;
  padding: 24px 66px 31px 28px;
}
.prose-page .prose-unit .prose {
  color: #263336;
  font-size: clamp(21px,2vw,26px);
  line-height: 2.15;
}
.prose-page .prose-unit .translation-cell { padding: 24px 27px; }
.prose-page .prose-unit .translation-body p { font-size: 18px; line-height: 1.8; }

.prose-title-row {
  display: grid;
  grid-template-columns: minmax(0,1.72fr) minmax(350px,1fr);
  min-height: 116px;
  background: #f2ecdf;
}
.prose-title-row .original-cell {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 19px 65px 22px 25px;
}
.prose-title-row h3 {
  margin: 0;
  color: #273431;
  font: 800 clamp(27px,2.8vw,36px)/1.45 "Noto Serif SC", "Songti SC", serif;
  text-align: center;
}
.prose-title-row h3 small {
  display: block;
  margin-top: 2px;
  color: #736d62;
  font: 600 13px/1.5 "Noto Serif SC", "Songti SC", serif;
}
.prose-title-row .title-translate {
  position: absolute;
  right: 15px;
  bottom: 15px;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid #9e4435;
  border-radius: 0;
  background: #a94737;
  color: #fff9ed;
  font: 700 14px/1 "Noto Serif SC", "Songti SC", serif;
  cursor: pointer;
}
.prose-title-row .title-translate[aria-pressed="true"] { background: #6e2f29; }
.prose-title-row .title-translation {
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 22px 27px;
  border-left: 1px solid #c4b9a6;
  background: #f7f1e4;
}
.prose-title-row .title-translation p {
  margin: 0;
  color: #34403c;
  font: 600 18px/1.8 "Noto Serif SC", "Songti SC", serif;
}
.prose-title-row .title-translation[data-visible="false"] p { visibility: hidden; }
.prose-page .poem-sheet > .prose-title-row + .poem-unit { border-top: 1px solid #c9c0b2; }
.prose-page .focus-surface[data-focus-original="true"] .prose-title-row { grid-template-columns: 1fr; }
.prose-page .focus-surface[data-focus-original="true"] .title-translation,
.prose-page .focus-surface[data-focus-original="true"] .title-translate { display: none; }
.prose-page .chapters.focus-surface[data-focus-original="true"] .chapter,
.prose-page .passages.focus-surface[data-focus-original="true"] .passage { grid-template-columns: 1fr; }

@media (max-width: 900px) {
  .prose-page .chapters > .chapter,
  .prose-page .passages > .passage,
  .prose-title-row { display: block; }
  .prose-page .inline-translation,
  .prose-page .visible-translation,
  .prose-title-row .title-translation {
    border-left: 0;
    border-top: 1px solid #c4b9a6;
  }
  .prose-page .inline-translation[data-visible="false"],
  .prose-page .visible-translation[data-visible="false"],
  .prose-title-row .title-translation[data-visible="false"] { display: none; }
  .prose-page .chapter .original,
  .prose-page .passage .original { padding: 20px 59px 27px 24px; }
  .prose-page .chapter .chapter-translate,
  .prose-page .passage .translate-toggle { position: absolute; right: 13px; bottom: 13px; margin: 0; }
  .prose-page .inline-translation p,
  .prose-page .visible-translation p,
  .prose-page .prose-unit .translation-body p,
  .prose-title-row .title-translation p { font-size: 17px; }
}

@media (max-width: 700px) {
  .prose-page .hero { min-height: 485px; background-position: 68% top; }
  .prose-page .hero-content { width: 100%; padding-top: 245px; }
  .prose-page .hero h1 { font-size: clamp(35px,9vw,48px); line-height: 1.2; }
  .prose-page .hero-lead { font-size: 13px; }
  .prose-title-row .original-cell { min-height: 101px; padding: 18px 48px 22px 13px; }
  .prose-title-row h3 { font-size: 27px; }
  .prose-page .chapter .original,
  .prose-page .passage .original { padding: 18px 51px 24px 13px; font-size: 19px; line-height: 2.18; }
  .prose-page .poem-sheet .prose-unit .original-cell { padding: 18px 51px 26px 13px; }
  .prose-page .prose-unit .prose { font-size: 19px; line-height: 2.18; }
  .prose-page .inline-translation,
  .prose-page .visible-translation,
  .prose-page .prose-unit .translation-cell,
  .prose-title-row .title-translation { padding: 17px 19px; }
}

@media (max-width: 360px) {
  .prose-page .hero-content { padding-top: 225px; }
  .prose-page .chapter .original,
  .prose-page .passage .original,
  .prose-page .prose-unit .prose { font-size: 18px; }
}
